基礎(chǔ)
讀程序,總結(jié)程序的功能:
numbers=1
#將1賦值給numbers
for i in range(0,20): numbers*=2
#numbers自乘2,總共二十次
print(numbers)
#輸出結(jié)果2e20
求2的20次方
summation=0
#將0賦值給summation
num=1
#將0賦值給num
while num<=100:
#當num小于等于100的時候就執(zhí)行下面語句
if (num%3==0 or num%7==0) and num%21!=0:
summation += 1
#當num能被三整除或者被七整除的同時不能被21整除的時候,summation自加一
num+=1
#num自加一
print(summation)
#輸出summation的值
功能:求100以內(nèi)能被3整除或者被7整除的同時不能被21整除的個數(shù)
編程實現(xiàn)(for和while各寫一遍):
1.求1到100之間所有數(shù)的和、平均值
x = 0
s = 0
for x in range(1, 101):
s += x
print('1加到100的和是:%d,平均值是:%.2f' % (s, s/100))
x = 100
s = 0
while x != 0:
s += x
x -= 1
print('1加到100的和是:%d,平均值是:%.2f' % (s, s/100))
#1加到100的和是:5050,平均值是:50.50
#1加到100的和是:5050,平均值是:50.50
2.計算1-100之間能3整除的數(shù)的和
x = 0
s = 0
for x in range(1, 101):
if x % 3 == 0:
s += x
print('一百以內(nèi)能被三整除的數(shù)的和:%d' % s)
x = 100
s = 0
while x != 0:
if x % 3 == 0:
s += x
x -= 1
print('一百以內(nèi)能被三整除的數(shù)的和:%d' % s)
#一百以內(nèi)能被三整除的數(shù)的和:1683
#一百以內(nèi)能被三整除的數(shù)的和:1683
3.計算1-100之間不能被7整除的數(shù)的和
x = 0
s = 0
for x in range(1, 101):
if x % 7 != 0:
s += x
x -= 1
print('一百以內(nèi)能不被七整除的數(shù)的和:%d' % s)
x = 100
s = 0
while x != 0:
if x % 7 != 0:
s += x
x -= 1
print('一百以內(nèi)能不被七整除的數(shù)的和:%d' % s)
#一百以內(nèi)能不被七整除的數(shù)的和:4315
#一百以內(nèi)能不被七整除的數(shù)的和:4315
稍微困難
1.求斐波那契數(shù)列列中第n個數(shù)的值:1,1,2,3,5,8,13,21,34....
x = 0
s = 1
y = int(input())
q = 0
while True:
s = x + s
x = s - x
q += 1
if q == y:
break
print(x)
2.判斷101-200之間有多少個素數(shù),并輸出所有素數(shù)。判斷素數(shù)的方法:一個數(shù)分別除2到sqrt(這個數(shù)),如果能被整除,則表明此數(shù)不是素數(shù),反之是素數(shù)
i = 0
for x in range(100, 200):
z = 2
while True:
if x % z != 0:
z += 1
if z == x:
print(x)
i += 1
elif x % z ==0:
break
print('總共有%d個' % i)
3.打印出所有的水仙花數(shù),所謂水仙花數(shù)是指一個三位數(shù),其各位數(shù)字立方和等于該數(shù)本身。例如:153是一個仙花數(shù),因為153 = 1^3 + 5^3
for i in range(100,1000):
a = i % 10
b = i // 10 % 10
c = i // 100
if a ** 3 + b ** 3 + c ** 3 == i:
print(i)
4.有一分數(shù)序列列:2/1,3/2,5/3,8/5,13/8,21/13...求出這個數(shù)列列的第20個分數(shù)分子:上一個分數(shù)的分子加分母 分母: 上一個分數(shù)的分子 fz = 2 fm = 1 fz+fm / fz
x = 1
y = 1
z = 20
while z != 0:
y = x + y
x = y - x
z -= 1
print(y)
5.給一個正整數(shù),要求:1、求它是幾位數(shù) 2.逆序打印出各位數(shù)字
a = input()
print(len(a), a[::-1])