Python练习(第二次01)

  1. 打印五个三角图案

  2. 判断一个数是否是质数(素数)

  3. 设计一个程序,完成(英雄)商品的购买(界面就是第一天打印的界面) 展示商品信息(折扣)->输入商品价格->输入购买数量->提示付款 输入付款金额->打印购买小票(扩展)

  4. 有一些四位数,百位数字都是3,十位数字都是6,并且它们既能被2整除,又能被3整除,求这样的四位数中最大的和最小的两数各是几?

  5. 编程求一个四位自然数ABCD,它乘以A后变成DCBA

  6. 用户输入两个数a、b。如果a能被b整除或a加b大于1000,则输出a;否则输出b。

  7. 请输入一个数,判断这个数是偶数还是奇数,如果使用偶数,请判断从1到该数是3的倍数有哪些,如果是奇数,请判断从1到该数是5的倍数有哪些

  8. 某商店T恤的价格为35元/件(2件9折,3件以上8折),裤子的价格为120 元/条(2条以上9折).小明在该店买了3件T恤和2条裤子,请计算并显示小明应该付多少钱?

  9. 鸡兔同笼,从上面看有35个头,从下面看有94只脚,请问鸡有几只,兔有几只?

  10. 猜数字游戏(使用random模块完成) 电脑随机一个范围内的数,用户输入数据判断, 如果数大了,提供”数大了“ 成功之后,加上用户是否继续功能

  11. 猜拳游戏:石头、剪刀、布的游戏

1.打印五个三角图案

layer = int(input("请输入行数:"))

for i in range(1,layer + 1):
   for j in range(layer - i ):
       print(" ",end="")
   for j in range(i):
       print("*",end="")
   print()     

layer = int(input("请输入行数:"))

while layer % 2 ==0:
    layer = int(input("请输入奇数:"))

for i in range(1,layer // 2 + 2):
    for j in range(layer - i):
        print(" ",end="")
    for k in range(2 *i - 1):
        print("*",end="")
    print()

for i in range(layer // 2, 0 , -1):
    for j in range(layer - i):
        print(" ",end="")
    for k in range(2 * i - 1):
        print("*",end="")
    print()

layer = int(input("请输入行数:"))


while layer % 2 ==0:
    layer = int(input("请输入奇数:"))

for i in range(1,layer // 2 + 2):
    for j in range(layer - i):
        print(" ",end="")
    for k in range(2 *i - 1):
        print("*",end="")
    print()

for i in range(layer // 2, 0 , -1):
    for j in range(layer - i):
        print(" ",end="")
    for k in range(2 * i - 1):
        print("*",end="")
    print()

layer = int(input("请输入行数:"))

while layer % 2 ==0:
    layer = int(input("请输入奇数:"))

for i in range(1,layer // 2 + 2):
    for j in range(layer - i):
        print(" ",end="")
    for k in range(2 *i - 1):
        if k == 0 or k ==2 * i  - 2 or i == layer // 2 + 1 or k == i - 1: 
           print("*",end="")
        else:
            print(" ",end="")
    print()

for i in range(layer // 2, 0 , -1):
    for j in range(layer - i):
        print(" ",end="")
    for k in range(2 * i - 1):
         if k == 0 or k ==2 * i  - 2 or k == i - 1: 
           print("*",end="")
         else:
            print(" ",end="")
    print()

layer = int(input("请输入行数:"))

while layer % 2 ==0:
    layer = int(input("请输入奇数:"))

for i in range(1,layer // 2 + 2):
    for j in range(layer - i):
        print(" ",end="")
    for k in range(2 *i - 1):
        if k == 0 or k == 2 * i - 2:
            print("*",end="")
        else:
            print(" ",end="")
    print()

for i in range(layer // 2, 0 , -1):
    for j in range(layer - i):
        print(" ",end="")
    for k in range(2 * i - 1):
       if k == 0 or k == 2 * i - 2:
            print("*",end="")
       else:
            print(" ",end="")
    print()

2.判断一个数是否是质数(素数)

a = int(input("请随机输入一个正整数"))
flag = True
for i in range(2,a):
    if(a % i == 0):
        flag = False
        break

if flag:
    print("该数是质数")
else:
    print("该数不是质数")

3.设计一个程序,完成(英雄)商品的购买(界面就是第一天打印的界面) 展示商品信息(折扣)->输入商品价格->输入购买数量->提示付款 输入付款金额->打印购买小票(扩展)

print("                   英雄商城购买英雄                  ")
print("英雄购买票据                                        ")
print("~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~")
print("       英雄名称:盲僧(史诗)                        ")
print("       英雄属性:生命值428(+85)/能量值200(+0)/移动速度425/攻击力55.8(+3.2)")
print("               攻击速度0.651(+3.1%)/护甲值24(+1.25)/攻击距离125")
print("       英雄座右铭:一人之行可灭世,众人之勤可救世!                        ")
print("       英雄价格:3000                        ")
print("       活动折扣:9.5                        ")
print("插播广告:当风云变色,当流离失所,世界不再是旧日模样                     ")
print("你是否会为了自己的梦想战斗,直至力战身亡,直至彼岸他乡                   ")
print("~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~")
shuzi = float(input("请输入花费金额:"))
shiji = shuzi * 0.95
shuzi1 = float(input("请输入购买数量:"))
zongji = shuzi1 * shiji
print(f'请付款:{zongji}')
shuzi2 = float(input("请输入付款金额:"))
print("恭喜您购买成功!!!")
 
 
 
yingfu = 3000 * shuzi1
zhaoling = yingfu - zongji
print("                   英雄商城购买英雄                  ")
print("英雄购买票据                                        ")
print("~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~")
print("       英雄名称:盲僧(史诗)                        ")
print("       英雄价格:3000                        ")
print("       活动折扣:9.5                         ")
print(f'      应付付款:{yingfu}                   ')
print(f'      实际付款:{zongji}                   ')
print(f'      找零:    {zhaoling}                   ')
print("插播广告:当风云变色,当流离失所,世界不再是旧日模样                     ")
print("你是否会为了自己的梦想战斗,直至力战身亡,直至彼岸他乡                   ")
print("~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~")
shuzi4 = float(input("(温馨提示)按任意键返回上一级菜单:"))

4.有一些四位数,百位数字都是3,十位数字都是6,并且它们既能被2整除,又能被3整除,求这样的四位数中最大的和最小的两数各是几?

sz = 1000
while sz < 10000:
    a = sz // 100 % 10
    b = sz // 10 % 10
    if a == 3 and b == 6 and sz % 2 == 0 and sz % 3 ==0:
        print(f'最小值为{sz}')
        break 
    else:
        sz +=1 

sz1 = 10000
while sz1 > 1000:
    c = sz1 // 100 % 10
    d = sz1 // 10 % 10
    if c == 3 and d == 6 and sz1 % 2 == 0 and sz1 % 3 ==0:
        print(f'最大值为{sz1}')
        break
    else:
        sz1 -=1 

5.编程求一个四位自然数ABCD,它乘以A后变成DCBA

sz = 1000
while sz < 10000:
    a = sz // 1000 
    b = sz // 100 % 10
    c = sz // 10 % 10
    d = sz % 10
    if sz * a ==d * 1000 + c * 100 + b * 10 + a:
        print(sz)
    sz +=1

6.用户输入两个数a、b。如果a能被b整除或a加b大于1000,则输出a;否则输出b。

a = float(input("请输入一个数"))
b = float(input("请再次输入一个数"))

if a % b == 0 or a + b > 1000:
    print(a)
else:
    print(b)

7.请输入一个数,判断这个数是偶数还是奇数,如果使用偶数,请判断从1到该数是3的倍数有哪些,如果是奇数,请判断从1到该数是5的倍数有哪些

a = int (input("请输入一个数:"))
 
if a % 2 == 0:
	for b in range(1,a+1):
		if b % 3 == 0:
			print(b)
 
else:
	for b in range(1,a+1):
		if b % 5 == 0:
			print(b)

8.某商店T恤的价格为35元/件(2件9折,3件以上8折),裤子的价格为120 元/条(2条以上9折).小明在该店买了3件T恤和2条裤子,请计算并显示小明应该付多少钱?

short = 35
tr = 120
sum = 3 * short * 0.8 + 2 * tr * 0.9
print(f'应付款:{sum}')

9.鸡兔同笼,从上面看有35个头,从下面看有94只脚,请问鸡有几只,兔有几只?

import random as r
a = r.randint(0,35)
b = r.randint(0,35)
while True:
    if a + b == 35 and 2 * a + 4 * b ==94:
        print(f'{a},{b}')
        break
    else:
        a = r.randint(0,35)
        b = r.randint(0,35)

10.猜数字游戏(使用random模块完成) 电脑随机一个范围内的数,用户输入数据判断, 如果数大了,提供”数大了“ 成功之后,加上用户是否继续功能

import random as r
a = r.randint(0 , 100)
while True:
    b = int(input("请输入一个0 - 100的整数:"))

    if b > a:
        print("对不起,你猜大了")
    elif b < a:
        print("对不起,你猜小了")
    else:
        print("恭喜你,猜正确了")
        c = input("如果继续请输入y/Y,输入其它符号退出")
        if c == 'y' or c == 'Y' :
            a = r.randint(0 , 100)
        else:
            break

11.猜拳游戏:石头、剪刀、布的游戏

import random as r
b = int(input("猜拳开始,请输入一个数(石头:0,剪刀:1,布:2):"))
a = r.randint(0,2)
print(f'电脑输出的数为:{a}')
if a == b:
    print("平局")
elif (b == 0 and a ==1) or (b == 1 and a ==2) or (b == 2 and a == 0):
    print("你赢了")
else:
    print("你输了")

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值