python 综合练习1

1、求两个数最大公约数

num_1 = int(input())
num_2 = int(input())
for i in range(num_1, 0, -1):
    if num_2 % i == 0 and num_1 % 2 == 0:
        print(i)

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

num_3 = 12345
sum_1 = 0
num_3 = str(num_3)
for i in num_3:
    sum_1 = sum_1 + (int(i) * 10**(int(i)-1))
print(sum_1)

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

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

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

sum_4 = 0
for i in range(6):
    time = int(input(f"请输入{i}天的学习时间:(小时)"))
    sum_4 += time
print(f"平均每天学习为{sum_4/5}小时")

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

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

6、用户玩游戏,每次玩5局(效果图如下)

(1)不足5局则不能晋级
(2)在5局游戏中,如果80%达到80分以上,为一级,如果 60%达到80分以上为二级,否则不能晋级
count_1 = count_2 = 0
i = over = 1
while i <= 5:
    game = int(input(f"你正在玩第{i}局。成绩为:"))
    if game > 80:
        count_1 += 1
        count_2 += 1
    elif game > 60:
        count_2 += 1
    i += 1
    if i <= 5:
        over = int(input("1:继续;2:结束"))
    if over == 2:
        break
if i == 6:
    if count_1 / 5 >= 0.8:
        print("恭喜,通过一级")
    elif count_2 / 5 >= 0.6:
        print("恭喜,通过二级")
else:
    print("对不起,你未能晋级!")

7、菜单自动循环,只要不输入3,就循环

欢迎进入xxx系统
1登录
2注册
3退出
请选择:1
登录

while True:

    a = int(input("欢迎进入无名系统。\n1:登录;\n2:注册;\n3:退出"))
    if a == 1:
        print("登录")
    elif a == 2:
        print("注册。")
    else:
        break

8、打印图形

1
21
321
4321
54321
654321
for i in range(7):
    for j in range(i, 0, -1):
        print(j)
    print()
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值