python 實驗3 循環結構


實驗一   九九乘法表

‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪描述:輸出一個九九乘法表,格式如下:‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪

1*1=1‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪

1*2=2 2*2=4‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪

1*3=3 2*3=6 3*3=9‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪

1*4=4 2*4=8 3*4=12 4*4=16‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪

1*5=5 2*5=10 3*5=15 4*5=20 5*5=25‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪

1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪

1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪

1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪

1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81

for i in range(1,10):
    for j in range(1,10):
        print(j,"*",i,"=",j*i," ",end="")
        if(j==i):
            print()
            break

運行結果(直接截取結果圖)

 

實驗二  數列求和

 ‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪描述:給定某數字a(1≤a≤9)以及非負整數n(0≤n≤100000),求數列之和sum=a+aa+aaa+⋯+aa⋯a(n個a)。例如a=2, n=3時,sum=2+22+222=246。

a=eval(input("請輸入數字a(1≤a≤9)"))
n=eval(input("非負整數n(0≤n≤100000)"))
sum=0
b=a
for j in range(n):
    for i in range(j):
        sum = sum + b
        b=b*10+a
print("總和為:",sum)

運行結果(直接截取結果圖)

 

 

實驗三  密碼強度判斷

描述:‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪用戶輸入一個字符串做為密碼,判斷密碼強度,規則為:密碼長度小於8弱密碼,密碼長度大於等於8且包含至少2種字符為中等強度、密碼包含3種字符為強、包含全部4種字符為極強。

提示:‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪

string.digits 可返回'0123456789'
string.ascii_lowercase 可返回'abcdefghijklmnopqrstuvwxyz'
string.ascii_uppercase 可返回'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
string.punctuation 可返回'!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'

import string
pwd=input("請輸入密碼")
word=1
if(len(pwd)<8):
    print("密碼強度弱")
else:
    for i in pwd:
        if(i in string.digits):
            word=word+1
            break;

    for i in pwd:
        if (i in string.ascii_lowercase):
            word = word + 1
            break

    for i in pwd:
        if (i in string.ascii_uppercase):
            word = word + 1
            break;
    for i in pwd:
        if (i in string.punctuation):
            word = word + 1
            break;
    if(word==2):
        print("密碼強度中等")
    elif(word==3):
        print("密碼強度強")
    else:
        print("密碼強度極強")

運行結果(直接截取結果圖)

 

 

實驗四   棋盤放米

 ‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪描述:相傳古代印度國王舍罕要褒賞他的聰明能干的宰相達依爾 (國際象棋發明者),問他需要什么,達依爾回答說:“國王只要在國際象棋的棋盤第一個格子里放一粒麥子,第二個格子里放兩粒,第三個格子里放四粒,按此比例以后每一格加一倍,一直放到64格(國際象棋棋盤是8×8=64格),我就感恩不盡,其他的我什么也不要了,”國王想:“這有多少,還不容易!”讓人扛來一袋小麥,但不到一會兒全用沒了,再來一袋很快又沒有了,結果全印度的糧食全部用完還不夠,國王納悶,怎樣也算不清這筆賬,請你幫國王計算一下,共需多少粒麥子,寫出程序。

num=0
for i in range(64):
    num=num+pow(2,i)
print("共需要",num,"粒麥子")

運行結果(直接截取結果圖)

 

 

實驗五   階乘求和

 ‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪描述‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪1!+2!+3!+...的前n項的和,n從鍵盤輸入

n=eval(input("求1!+2!+3!+...的前n項的和,請輸入n="))
sum=0
def mui(i):
    if(i<=1):
        return 1
    else:
        return mui(i-1)*i
for i in range(n):
    sum=sum+mui(i+1)
print(sum)

運行結果(直接截取結果圖)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM