讀程序壶辜,總結(jié)程序功能:
1.
numbers=1
for i in range(0,20):
numbers*=2
print(numbers)
該程序就是計算2的20次方的過程涯竟。
"""
numbers=1
i=0 numbers+=2 numbers=numbers2
i=1 numbers+=2 numbers=numbers2
....
i=19 numbers+=2 numbers=numbers*2
結(jié)束循環(huán)
print(numbers)
"""
2.
summation=0
num=1
while num<=100:
if (num%3==0 or num%7==0) and num%21!=0:
summation+=1
num+=1
print(summation)
該程序是統(tǒng)計1~100之間能被3或7整除馍佑,但不能同時被3和7整除的數(shù)字的個數(shù)。
"""
summation=o
num=1
當(dāng)num<=100時枪向,如果num能被4或7整除且不能被3和7同時整除忍宋,summation+=1,num+=1,再判斷num<=100是否為True,若為True
執(zhí)行循環(huán)溜徙。若為False,結(jié)束循環(huán)湃缎。
輸出summation
"""
編程實現(xiàn)(for和while各寫一遍)
1.求1~100之間所有數(shù)的和、平均值蠢壹。
summation=0
num1=0
for num in range(1,101):
summation+=num
num1+=1
print('和',summation)
print('平均值',summation/num1)
summation=0
num=0
while num<=100:
summation+=num
num+=1
print('和',summation)
print('平均值',summation/(num-1))
2.計算1~100之間能被3整除的數(shù)的和
summation=0
for num in range(1,101):
if num%3==0:
summation+=num
print(summation)
summation=0
num=1
while num<=100:
if num % 3 ==0:
summation+=num
num+=1
print(summation)
3.計算1~100之間不能被7整除的數(shù)的和
summation=0
for num in range(1,101):
if num%7!=0:
summation+=num
print(summation)
summation=0
num=1
while num<=100:
if num%7!=0:
summation+=num
num+=1
print(summation)
偏難
1.求斐波那契數(shù)列中第n個數(shù)的值:1,1,2,3,5,8,13,21,34...
num=int(input('請輸入n:'))
num1=0
a=0
b=1
while num1<num:
a,b =b,a+b
num1+=1
print(a)
2.判斷101~200之間有多少個素數(shù)嗓违,并輸出所有素數(shù)。判斷素數(shù)的方法:用一個數(shù)分別除2到sqrt(這個數(shù))图贸,如果能被整除蹂季,則表明這個數(shù)不是素數(shù),反之則是素數(shù)疏日。
n=0
for num in range(101,201):
for num1 in range(2,num):
if num%num1==0:
break
else:
print(num)
n+=1
print('101~200之間素數(shù)有',n,'個')
3.打印出所有的水仙花數(shù)偿洁,所謂水仙花數(shù)是指一個三位數(shù),其各位數(shù)字立方和等于該數(shù)本身沟优。例如153是一個水仙花數(shù)涕滋,因為153=13+53+3**3。
for num in range(100,1000):
a=num//100
b=num//10%10
c=num%10
if a**3+b**3+c**3==num:
print(num)
4.有一份數(shù)序列:2/1,3/2,5/3,8/5,13/8....求出這個數(shù)列的第20個分?jǐn)?shù)分子:上一個分?jǐn)?shù)的分母 挠阁,分母:上一個分?jǐn)?shù)的分子fz=2 fm=1 fz+fm/fz
fz=2
fm=1
fs=fz/fm
for i in range(1,21):
if i<20:
fz,fm=fm+fz,fz
i+=1
print(fz,'/',fm)
5.給我一個正整數(shù)宾肺,要求;1.求它是幾位數(shù)2.逆序打印出各位數(shù)字
num1=0
num=int(input('請輸入一個正整數(shù):'))
while num!=0:
print(num%10)
num=num//10
num1+=1
print('它是',num1,'位數(shù)')