说明是分配平均猫头鹰和每个动物园的平均猫头鹰。将平均owls打印为整数。然而,数学上的例子输入总是出错。即使我用手做数学题。代码如下
给定的样本输入为1 2 4
avg_owls = 0.0
num_owls_zooA = int(input())
num_owls_zooB = int(input())
num_owls_zooC = int(input())
avg_owls = int(num_owls_zooA + num_owls_zooB + num_owls_zooC / 3)
print('Average owls per zoo:', int(avg_owls))
你的产出 每个动物园平均猫头鹰数量:4只 预期产量 每个动物园平均猫头鹰数量:2只
我已经编写并只能修改代码avg_owls=int(num_owls_zooA+num_owls_zooB+num_owls_zooC/3)
我不明白当实际的数学结果是2.333时,它怎么会变成4
我做错了什么
这里有两个问题。在pemdas或germdas,除法先于加法。所以你需要在加法的周围加上括号。此外,如果您执行
int(4.3)
,您将得到4
。float将为您提供所需的输出我还建议使用
f strings
运算符优先级和数学规则都说
将计算为
您需要一些括号才能得到所需的结果:
另外,将
int
应用于结果可能感觉是错误的。这将导致它总是向下取整。对于平均值,您通常希望将其保持为浮点值,或者至少四舍五入到最接近的值,而不是始终向下相关问题 更多 >
编程相关推荐