1:Python基础-Day4-循环和分支练习

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('输入错误!')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值