<p>我需要计算一下末班车上有多少人。
我没找到工作。在</p>
<p>我知道我计算的第一个也错了。它一定是“//”,但它不起作用,然后用了“round()”,它对我有用。在</p>
<p>所以如果我选择:</p>
<p>人数259,座位数40,那么答案必须是</p>
<ul>
<li>需要的公共汽车数为7,最后一辆公共汽车的座位数为19</li>
</ul>
<p>但我得到:</p>
<ul>
<li>需要6辆公共汽车,最后一辆公共汽车有19个座位</li>
</ul>
<p>我的代码:</p>
<pre><code>peop = int(input("Number of people: "))
bus = int(input("Number of bus seats: "))
div = round(peop / bus)
if (div <= 0) :
print("Number of bus needed: " + str(1))
else:
print("Number of bus needed: " + str(div))
cal = round(peop % bus)
if (cal == 0):
print("In last bus number of people: " + str(bus))
else:
print("In last bus number of people: " + str(cal))
</code></pre>
<p><code>round()</code>提供最接近浮点值的整数。259/40是6.475,最接近的整数是6。
你需要的是下一个比你的浮点数高的整数。您可以使用<code>math.ceil(x)</code>进行此操作:</p>
<pre><code>import math
div = math.ceil(peop / bus)
</code></pre>