1. 程式人生 > >python中的while迴圈解決簡單的數學問題

python中的while迴圈解決簡單的數學問題

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

執行結果: 在這裡插入圖片描述