2021-11-12

python day04循环练习
1、求两个数最大公约数
代码如下:

a=int(input('请输入一个数:'))
b=int(input('请输入一个数:'))
if a>b:
    min=b
else:
    min=a
for i in range (1,min+1):
    if(a%i==0)and (b%i==0):
        c=i
print(f'这两个数的最大公约数为:{c}')

结果:

请输入一个数:20
请输入一个数:30
这两个数的最大公约数为:10

2、实现整数反转:如12345,输出54321

代码如下:

num=int(input('请输入你想反转的数:'))
while True:
    yu=num%10
    print(yu,end='')
    num=num//10
    if num==0:
        break

结果:

请输入你想反转的数:205
502

3、1~10之间的整数相加,得到累加值大于20的当前数

代码如下:

sum = 0
for i in range(1,11):
    sum = sum + i
    if sum>20:
        print(i)
        break

结果:

6

4、输入从周一至周五每天的学习时间(以小时为单位),并计算每日平均学习时间。

代码如下:

sum = 0
for i in range(1,6):
    hours = int(input(f'请输入星期{i},您的学习时间:'))
    sum = sum + hours
aver = sum / 5
print(f'您这个星期每日的平均学习时间为:{aver}小时')

运行结果如下:

请输入星期1,您的学习时间:4
请输入星期2,您的学习时间:5
请输入星期3,您的学习时间:10
请输入星期4,您的学习时间:9
请输入星期5,您的学习时间:6
您这个星期每日的平均学习时间为:6.8小时

5、输出10000以下的完全数。如果一个正整数等于除它本身之外其它所有除数之和,就称之为完全数。 如6就是第一个完全数,因为6=1+2+3
代码:

for i in range(1, 10000):
    sum = 0
    for j in range(1, i):
        if i % j == 0:
            sum += j;
    if sum == i:
        print(i)

结果:

6
28
496
8128

6、用户玩游戏,每次玩5局(效果图如下) (1)不足5局则不能晋级 (2)在5局游戏中,如果80%达到80分以上,为一级,如果 60%达到80分以上为二级,否则不能晋级。
代码:

count = 0
for i in range(1,6):
    score = int(input('请输入你本局成绩:'))
    b = input(f'你正在玩第{i}局游戏,成绩为:{score}\n是否继续(yes/no)')
    if b == 'yes':
        if score > 80:
            count += 1
    else:
        print('您已退出游戏')
        break
else:
    print('游戏结束')
    if count >=4:
        print('恭喜通过一级')
    elif count ==3:
        print('恭喜通过二级')
    else:
        print('抱歉。未晋级')

7、菜单自动循环,只要不输入3,就循环 欢迎进入xxx系统 1登录 2注册 3退出 请选择:1 登录
代码:

answer = input(9 * '*'+'菜单功能'+9 * '*'+'\n\t\t1.登录\n\t\t2.注册\n\t\t3.退出\n请选择功能:')
while True:
    while answer == '1':
        user = input('登录\n账号:')
        pwd = input('密码:')
        if user == '1503938233' and pwd == '123456':
            print('登录成功')
            answer = input(9 * '*' + '菜单功能' + 9 * '*' + '\n\t\t1.登录\n\t\t2.注册\n\t\t3.退出\n请选择功能:')
        else:
            print('账号密码有错,请重新输入!')
    while answer == '2':
        print('2.注册\n注册成功')
        answer = input(9 * '*' + '菜单功能' + 9 * '*' + '\n\t\t1.登录\n\t\t2.注册\n\t\t3.退出\n请选择功能:')
    while answer == '3':
        print('你已退出系统!')
        break
    break

结果:

*********菜单功能*********
		1.登录
		2.注册
		3.退出
请选择功能:1
登录

8、打印图形 1 21 321 4321 54321 654321
代码:

for i in range(1,7):
    print(' ' * 2 * (6 - i), end='')
    for j in range(i, 0, -1):
        print(j, end=" ")
    print()

结果:

          1 
        2 1 
      3 2 1 
    4 3 2 1 
  5 4 3 2 1 
6 5 4 3 2 1 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值