python中的while迴圈解決簡單的數學問題
阿新 • • 發佈:2018-12-18
python中的while迴圈
用while解決簡單的數學問題 案例1:求解1~100的數的和
i=0
sum=0
while i<=100:
sum=sum+i
i=i+1
print(sum)
執行結果: 案例2:求解1~100之間奇數(偶數)的和
i=0
sum=0
while i<=100:
if i%2!=0:
sum=sum+i
i=i+1
print(sum)
執行結果: 求偶數時,只需要將if條件中的!=改為=即可 案例3:求解100~1000之間的迴文數(迴文數即從左到右與從右到左的位數相同,eg:121,131)
i=100 while i<=1000 and i>=100: j=i//100 #取整,bai k=i%100//10 #shi z=i-j*100-k*10 #ge x=z*100+k*10+j*1 if i==x: print(i,end=" ") i=i+1
執行結果: …… 案例4:求解100~1000之間的水仙花數(水仙花數即某一個數等於它每個位上的數的三次方的和sum=百位 ^3 + 十位 ^3 + 個位 ^3),與之相關的還有4次方所對應的數,5次方等
i=100
while i<1000 and i>=100:
j=i//100 #取整,bai
k=i%100//10 #shi
z=i-j*100-k*10 #ge
x=z**3+k**3+j**3
if i==x:
print(i)
i=i+1
執行結果: 案例5:求解1~100之間數的階乘的和(1+12+123+……+123……*100) ,學習函式(遞迴)時可以用此例作為練習 這裡只計算到10
i=1
#i的值所對應的乘積
result=1
#最終和
sum=0
while i<10:
result=result*i
sum=sum+result
i=i+1
print(sum)
執行結果: 案例六:求解1~1000之間的斐波那契數列(斐波那契數列數列即前兩項的和等於下一項)
i=0
j=1
while i<1000 and j<1000:
print(i,end=" ")
print(j,end=" ")
i=i+j
j=i+j
執行結果: 案例七:99乘法表(用for實現更加容易,兩層巢狀即可)
i=1 while i<=9: j=1 while j<=i: print("%d*%d=%d"%(j,i,j*i),end="\t") j=j+1 print() i=i+1
執行結果: