pythont条件控制语句

1 取1000以内所有水仙花数

水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153

#方法一:通过整除分别获取个十百位数

i = 100
num = 0
while i < 1000:
    b = (i // 100)
    s = ((i - b * 100) // 10)
    g = (i - 100 * b - 10 * s)
    if i == b ** 3 + s ** 3 + g ** 3:
         print('第{}个水仙花数是:{}'.format(num + 1, i))  
         num += 1  
    i += 1

#方法二:字符串切片法获取个十百位数

i=100
while i<1000:
    a = str(i)    #将数字转化为字符串,注意参与计算时还得转回来
    b = int(a[0])  #百位
    s = int(a[1])   #十位
    g = int(a[2])   #个位
    if i == b** 3 + s** 3 + g** 3:
       print(i)
    i+=1

2 判断用户输入是否为质数

while True:
    num = input("请输入一个数字: ")
    if num.isdigit(): #判断输入内容是否所有都为整形数字
       num=int(num)
       if num <= 1:  # 增加了对于1和0的判断
           print(num, "不是质数,质数是指在大于1的自然数")
       elif num ==2 or num ==3:
           print(num, "是质数")
       elif num>2:
           for i in range(2, num):
            if (num % i) == 0:
                print(num, "不是质数")
                print(i, "乘于", num // i, "是", num)
                break
            elif num == i+1:
                print(num, "是质数")
            else:
                i += 1
       else:
           print(num, "是质数")
    else:
        print("输入内容非法,请重新输入!")

3 猜拳游戏:

import random
a = eval(input('猜拳游戏,0:剪刀,1:石头,2:布,请输入:'))
b = random.randint(0,2)
print('电脑选择:',b)
if a ==2 and b ==0:
    print('电脑获胜')
elif a == b:
    print('此局平局')
elif a>b or (a==0 and b==2):
    print('玩家获胜')
else:
    print('电脑获胜')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值