未満です。私のプログラムでは、3進数のときに12000未満の最大値を取得したいのですが、代わりに1つ高い数値になります。whileループの最大数が
count = 0
cubed = 1
while cubed < 12000:
count += 1
cubed = count ** 3
print("The largest integer <12000 is", count)
未満です。私のプログラムでは、3進数のときに12000未満の最大値を取得したいのですが、代わりに1つ高い数値になります。whileループの最大数が
count = 0
cubed = 1
while cubed < 12000:
count += 1
cubed = count ** 3
print("The largest integer <12000 is", count)
while
ループは、ときにのみcubed >= 12000
停止します。
その前に停止したい場合は、(count+1)**3 < 12000
を確認してからcount += 1
を実行する必要があります。
count = 0
while (count+1)**3 < 12000:
count += 1
print("The largest integer <12000 is", count)
PS:より簡単な方法は、12000のキューブルートを取り、整数に切り捨てることです。
ありがとうございます。学校のためのその割り当ては、明らかに単純な方法は、回答ではありません – savannah
@ savannah笑。あなた自身のプロジェクト/オープンソースのコードを書いた場合、どのような学校の割り当てが必要なのかにかかわらず、より簡単な方法を使います。 – udiboy1209
試してみてください: 'print("最大の整数<12000は "、count - 1)' – John1024
答えでカウントを編集せずにプログラムに見せてもらう方法はありますか? – savannah
あなたのプログラムは、**キューブが12,000未満の最大番号を見つけようとします。**あなたの最大の数字は12,000未満です。あなたは明確にするべきです。 – John1024