ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Python练习:分支结构与流程控制

2022-02-04 18:00:48  阅读:145  来源: 互联网

标签:Python 流程 练习 int lis print input 剪刀 输入


1.用分支结构做一个猜拳游戏,要有提示

方法1:分别用0,1,2 代表石头,剪刀,布。其差值表示输赢

import random
print("==========猜拳游戏开始========")
print("输入 0表示石头 1表示剪刀 2表示布 ")
lis = ["石头", "剪刀", "布"]
x = int(input("请输入你出什么:"))
y = random.randint(0, 2)
z = x - y
if z == 0:
    print("平局!你出的是{}, 电脑出的是{}".format(lis[x], lis[y]))
elif z in [-1, 2]:
    # 石头->剪刀:-1、 剪刀->布:-1、 布->石头:2
    print("恭喜你赢得了比赛!你出的是{},电脑出的是{}".format(lis[x], lis[y]))
else:
    # 剪刀->石头:1、 布->剪刀:1、 石头->布:-2
print("很可惜你输了比赛!你出的是{},电脑出的是{}".format(lis[x], lis[y]))

方法2:

import random
x = input("请输入你出什么:")
lis = ['石头', '剪刀', '布']
y = random.randint(0,2)
y = lis[y]  # 把整数转化为要得到石头剪刀布
if (x == '石头' and y == '剪刀') or (x == '剪刀' and y == '布') or (x == '布' and y == '石头'):
    print("你赢了")
elif x == y:
    print('平局')
else:
    print('你输了')

2.输入3个数,找出最大值,要有提示

方法1:循环结构

x = int(input("请输入一个数x:"))
y = int(input("请输入一个数y:"))
z = int(input("请输入一个数z:"))
l = [y, z]
my_max = x
for i in l:
    if my_max < i:
        my_max = i
print(my_max)

方法2:

x = int(input("请输入一个数x:"))
y = int(input("请输入一个数y:"))
z = int(input("请输入一个数z:"))
if x>y and x>z:
    print("最大值为x:", x)
elif y>z:
    print("最大值为y:", y)
else:
    print("最大值为z:", z)

3.100元买100只鸡的问题 公鸡5元一只 母鸡3元一只 小鸡1元两只

for i in range(0,21):
    for j in range(0,34):
        m = 100-i-j
        if 5*i+3*j+m/2 == 100:
            print(f"公鸡{i}只,母鸡{j}只,小鸡{m}只")

4.输入一个数,求2到这个数的所有质数

a=int(input("请输入一个大于1的数:"))
flag = 0
for i in range(2,a+1):
    for j in range(2,i):
        if i%j == 0:
            print(f"{i}不是质数,他可以被{j}整除")
            flag = 1
            break
    else:
        print("{}是质数".format(i))

5. 输出1000以内的所有水仙花数

   水仙花数是指一个3位数,它的每个位上的数字的3次幂之和等于它本身,

   例如:1^3+5^3+3^3=153

for i in range(100,1000):
    x1 = i%10
    x2 = (i//10)%10
    x3 = i//100
    if x1**3+x2**3+x3**3 == i:
        print("{}是水仙花数。".format(i))

标签:Python,流程,练习,int,lis,print,input,剪刀,输入
来源: https://blog.csdn.net/qq_48051316/article/details/122784332

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有