1:Python基础-Day4-循环和分支练习
程序员文章站
2022-03-02 12:13:54
...
1.求斐波那契数列中的第n个数的值:1,1,2,3,4,5,8,13,21,34…
while True:
n=int(input("请输入斐波那契数的序号:"))
qian=1
hou=1
if n<=0:
print('请输入正数')
elif n<=2:
print('斐波那契数列第',n,'位是',1)
else:
for i in range(n-2):
qian,hou = hou,qian+hou
print('斐波那契数列第',n,'位是',hou)
2.判断101-200之间有多少个素数,并输出所有的素数。方法:用一个数分别除2到sqrt(这个数),如果能被整除,则表明次数不是素数反之是素数。
prime_count=0 # 定义素数的数量 for i in range(101,201): # 外循环查找素数
judge = True # 先假定为素数
for j in range(2,i):
if(i%j==0): # 内循环查找,一旦发现有除过1和它本身的因数,立马判断为非素数
judge = False
break
else:
prime_count +=1
print(i)
print('101-200素数的数量是', prime_count)
3.打印出所有的水仙花数,所谓水仙花数是指一个三位数,其各位数字立方和等于该数字本身,例如153是一个水仙花数,因为153=1^3 +5^3 +3^3
print('水仙花数有:')
for i in range(100,1000):
hundred_number = i // 100 # 获取百位
decade_number = i // 10 % 10 # 获取十位
last_number = i % 10 # 获取个位
if i == hundred_number**3+decade_number**3+last_number**3:
print(i)
print('结束')
4.有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13…求出这个数列的第20个分数。 分子:上一个分数的分子加分母,分母: 上一个分数的分子
fz = 2
fm = 1
for _ in range(19):
fz,fm = fz+fm,fz #先执行右边,再赋值运算给左边
print(fz,'/',fm)
5.给一个正整数,要求:1、求它是几位数 2.逆序打印出各位数:
while True:
number = input('请输入一个正整数:')
if (number.isdigit()):
number = int(number)
total_number = 0
print('逆序打印各位数字:')
while number % 10 != 0:
print(number % 10,end="")
number = number // 10
total_number += 1
print('\n该正整数有',total_number,'位')
else:
print('输入错误!')
上一篇: Python 初探3 条件分支与while循环,逻辑操作
下一篇: python6张思维导图