我有我的代碼的困境,首先有一個練習,我不得不寫,將實現以下Python的while循環while循環
練習
爲了創建一個文件完成這個練習。編寫一個程序,生成100個隨機數(範圍在1-1000),並保持這些隨機數有多少是偶數,有多少是奇數。將結果顯示在屏幕上,如下面的示例輸出所示。提示:使用while循環循環100次。
我的結果:
import random
num = 0
odd = 0
even = 0
while num < 100:
random.randint(1,1000)
num = num + 1
#print(num)
if random.randint(1,1000)%2==0:
even = even + 1
else:
odd = odd + 1
print ("Out of 100 Random Numbers,",even,"were even and",odd,"were Odd")
輸出:
Out of 100 Random Numbers, 50 were even and 50 were Odd
所有肉汁!
下一個活動:
添加另一個while循環,重複部分a 10次。將結果顯示在屏幕上,如下面的示例輸出所示。
像這樣的輸出:
Out of 100 random numbers, 56 were odd, and 44 were even.
Out of 100 random numbers, 60 were odd, and 40 were even.
Out of 100 random numbers, 47 were odd, and 53 were even.
Out of 100 random numbers, 54 were odd, and 46 were even.
Out of 100 random numbers, 48 were odd, and 52 were even.
Out of 100 random numbers, 53 were odd, and 47 were even.
Out of 100 random numbers, 46 were odd, and 54 were even.
Out of 100 random numbers, 52 were odd, and 48 were even.
Out of 100 random numbers, 53 were odd, and 47 were even.
所以我寫了:導致輸出
import random
num = 0
odd = 0
even = 0
loop = 0
while loop < 10:
loop = loop +1
while num < 100:
num = num + 1
rand = random.randint(1,1000)
#print(num)
if rand%2==0:
even = even + 1
else:
odd = odd + 1
result = print ("Out of 100 Random Numbers,",even,"were even and",odd,"were Odd")
:
Out of 100 Random Numbers, 50 were even and 50 were Odd
Out of 100 Random Numbers, 50 were even and 50 were Odd
Out of 100 Random Numbers, 50 were even and 50 were Odd
Out of 100 Random Numbers, 50 were even and 50 were Odd
Out of 100 Random Numbers, 50 were even and 50 were Odd
Out of 100 Random Numbers, 50 were even and 50 were Odd
Out of 100 Random Numbers, 50 were even and 50 were Odd
Out of 100 Random Numbers, 50 were even and 50 were Odd
Out of 100 Random Numbers, 50 were even and 50 were Odd
Out of 100 Random Numbers, 50 were even and 50 were Odd
燦你一個精細的程序員給我解釋爲什麼我得到的結果和/或修改代碼以獲得預期的結果。
解釋爲什麼它不工作,以及如何解決這個問題將是可取的,因爲你知道他們說什麼,給一個男人一條魚,他會吃一天教他魚,他會吃一輩子。
謝謝你的時間。
Inner while將在第一次循環後不執行,因爲它將在該點達到100。您必須初始化第一個循環內的num值。 – thavan 2013-03-28 10:16:21