1、打印图案
(1)直角三角形
#多层循环layer = int(input("请输入您要打印的层数: "))index = 1
while index <= layer : #外层循环控制层数j = 1while j <= index : #内层循环控制每层个数print ("*",end = "")j += 1print()index += 1
(2)九九乘法表
layer = 9index = 1
while index <= layer:j = 1while j <= index:print(f'{j}*{index}={j*index}',end=" ")#或者end="\t"j+=1print()index += 1
(3)胖三角形
layer = int(input("输入层数 "))#rang(layer):for i in range(1, layer + 1):
#保证层数可选,例如输入第一层的话 i=1 (1,2)1可选,2不可选for j in range(1, 2*i): #内层循环控制个数,每行个数为2倍行数-1print("*",end="")print()
(4)反直角三角形
#反直角三角形layer = int(input("层数: "))for i in range(layer) : #(1,layer+1)for j in range(layer-i-1,0,-1): #(layer - i)print (" ",end="")for k in range(0,i+1,1): #(i)print ("*",end="")print()#第二种方法for i range(layer):print(" " * (layer -i - 1),end "")print("*" * (i+1))
(6)等腰三角形
layer =int(input("层数:"))#第一种方法for i in range(1,layer+1):for j in range(layer - i):print(" ",end="")for j in range(2 * i - 1):print("*",end = "")print()#第二种方法
for i in range(1,layer+1):print(" " * (layer - i),end="")print("*" * (2 * i - 1))
(7)倒立等腰三角
#饭等腰三角形layer = int(input("层数:"))#第一种
for i in range(layer) :for j in range (0,i):print(" ",end="")for k in range(2*(layer-1-i)+1,0,-1):print("*",end="")print()#第二种
for i in range(1,layer+1):print(" " * (i-1),end="")print("*" * (2*(layer-i)+1))#第三种
for i in range(layer,0,-1):print(" " * (layer - i),end="")print("*" * (2 * i - 1))
(8)菱形
#实心菱形
layer = int(input("层数: "))#判断输出是否有误,灵活运用
while layer % 2== 0: layer = int(input("对不起,请输入奇数行: "))#上半部分
for i in range(1,layer//2+1+1):print(" " * (layer - i),end="")print("*" * (2 * i - 1))#下半部分
for i in range(layer//2,0,-1):print(" " * (layer - i),end="")print("*" * (2 * i - 1))
(9)空心菱形
#kong心菱形
layer = int(input("层数: "))#判断输出是否有误,灵活运用
while layer % 2== 0: layer = int(input("对不起,请输入奇数行: "))#上半部分
for i in range(1,layer//2+2):print(" " * (layer - i),end="")for j in range(2 * i - 1):#判断第一个和最后一个if j == 0 or j == 2*i -2:print("*",end="")else:print(" ",end="")print()#下半部分
for i in range(layer//2,0,-1): #跟上面反过来就可以,上面多一行,下面少一行print(" " * (layer - i),end="")for j in range (2*i-1):if j == 0 or j== 2*i-2:print("*",end="")else:print(" ",end="")print()
(10)对角线菱形(风筝)
#对角线菱形layer = int(input("层数: "))#判断输出是否有误,灵活运用
while layer % 2== 0: layer = int(input("对不起,请输入奇数行: "))#上半部分
for i in range(1,layer//2+2):print(" " * (layer - i),end="")for j in range(2 * i - 1):#判断第一个和最后一个if j == 0 or j == 2*i -2 or i == layer//2+1 or j == i-1:print("*",end="")else:print(" ",end="")print()#下半部分
for i in range(layer//2,0,-1): #跟上面反过来就可以,上面多一行,下面少一行print(" " * (layer - i),end="")for j in range (2*i-1):if j == 0 or j== 2*i-2 or j== i-1:print("*",end="")else:print(" ",end="")print()
2、判断一个数是否是质数(素数)
prime = int(input("任意一个数: "))flag = True
for i in range(2,prime):if prime % i == 0:flag = False #表示一种标识符,如果整出来,它就变错breakif flag:print("是质数")
else:print("不是")
3、设计一个程序,完成(英雄)商品的购买(界面就是第一天打印的界面) 展示商品信息(折扣)->输入商品价格->输入购买数量->提示付款 输入付款金额->打印购买小票(扩展)
# -*- coding: utf-8 -*-
while True: #循环print("\t\t\t英雄商城登录界面\n")print("~*"*38)print("\t\t\t1.用户登录\n")print("\t\t\t2.用户注册\n")print("\t\t\t3.退出系统\n")print("~*"*38)choice = input("请输入您的选择:")if choice == "1": #用户需要登录username = input("请输入您的用户名称:")password = input("请输入您的用户密码:")if username == "admin" and password == "888888":print("登录成功......\n")while True: #第二个界面的循环 在第二个界面上选择了3,才会退回到第一个界面print("\t\t\t英雄商城首页\n")print("~*"*40)print("\t\t\t1.进入英雄超市\n")print("\t\t\t2.休闲小游戏\n")print("\t\t\t3.退出登录\n")print("~*"*40)choice = input("请输入您的选择:") if choice == "1":print("欢迎来到英雄超市")print("~*"*40)print("1.纳尔 迷失之牙 3500 100 丛林不会原谅盲目与无知")print("2.锐雯 放逐之刃 4000 100 她是残忍高效的战士")print("~*"*40)choice = input("请输入您的选择:") if choice =="1":print("你选择的英雄是纳尔")print("英雄联盟新款皮肤折扣3.8折,需要支付70元人民币\n") a =int (input("请输入购买数量:"))b = 70 * aprint("你购买的皮肤,所需金额为%s"%b)c =int (input("请支付商品需要的金额:"))if b == c:print(" ")print(" 支付成功")print(" ")print("~*"*40)print("英雄购买票据")print(f"英雄名称:纳尔 英雄价格:100 活动折扣:3.8 应付付款:{b} 实际付款:{b} 找零:0")print("~*"*40)input("温馨提示)按任意键返回上一级菜单: ")else:print(" ")print("支付金额错误,请重新支付")if choice == "2":passelif choice == "2":print("各种休闲小游戏")else:breakelse: #这是登录错误的情况input("用户名或密码错误,请重新登录,按任意键继续:")elif choice == "2": #用户需要注册passelif choice == "3": #用户需要退出系统break
print("game 0ver")
4、有一些四位数,百位数字都是3,十位数字都是6,并且它们既能被2整除,又能被3整除,求这样的四位数中最大的和最小的两数各是几?
l=[]
for n in range(1,10):for m in range(1,10):num = 1000 * n + 100*3 + 10 * 6 + mif num %2 == 0 and num % 3 == 0:#print (f'{num}')l.append(num) #把这些数数存在列表中c=max(l) #用max关键字 从列表中取出最大的
print(c)
d=min(l) #用min关键字 从列表中取出最小的
print(d)
5、编程求一个四位自然数ABCD,它乘以A后变成DCBA
for a in range(1,10):for b in range(1,10):for c in range(1,10):for d in range (1,10):num = 1000 *a + 100 *b + 10 *c + dif num*a == 1000 *d +100*c +10*b +a:print(num,end=" ")
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的倍数有哪些
num = int(input("请输入一个数: "))
if num %2 == 0:print(f'{num}是偶数')for a in range(1,num+1):if a %3== 0:print(a,end=" ")elif num %2 == 1:print(f'{num}是奇数')for b in range(1,num+1):if b %5== 0:print(b,end=" ")
8、某商店T恤的价格为35元/件(2件9折,3件以上8折),裤子的价格为120 元/条(2条以上9折).小明在该店买了3件T恤和2条裤子,请计算并显示小明应该付多少钱?
T_price = 35
P_price = 120
T_num = int(input("请问您需要几件衬衫: "))
P_num = int(input("请问您需要几条裤子: "))
T_su = 0
P_su = 0
if T_num == 2:T_su = T_price * 2 * 0.9print(f'衬衫单价为35元,您选择{T_num}件,打九折,折后价为{T_su}')
elif T_num >= 3:T_su = T_price * T_num * 0.8print(f'衬衫单价为35元,您选择{T_num}件,打八折,折后价为{T_su}')
else:T_su = T_num * T_price print(f'衬衫单价为35元,您选择{T_num}件,不打折,折后价为{T_su}')if P_num >=2:P_su = P_price * 0.9 *P_numprint(f'裤子的单价为120元,您选择{P_num}条,打九折,折后价为{P_su}')
else:P_su = P_price * P_numprint(f'裤子的单价为120元,您选择{P_num}条,不打折,折后价为{P_su}')print(f'请付款{T_su+P_su}元')
9、鸡兔同笼,从上面看有35个头,从下面看有94只脚,请问鸡有几只,兔有几只?
head_num ,feet_num = map(int,input().split(','))
#表示将输入的以逗号分开,如果括号里没有东西默认以空格隔开m = (feet_num-(head_num*2))/2 #兔子的数量
n = (head_num*4-feet_num)/2 #小鸡的数量if m<0 or n<0 or n-int(n)!=0 : #n和m必须是正整数或者一者为0print("数量不符合现实")
else:print(f'兔子的数量是{int(m)},小鸡的数量是{int(n)}')
10、猜数字游戏(使用random模块完成) 电脑随机一个范围内的数,用户输入数据判断, 如果数大了,提供”数大了“ 成功之后,加上用户是否继续功能
"""
import random
random.randint(0,20)表示随机生成0-20的一个整数
"""import random as r #r是别名compute = r.randint(0,100)#一直猜 死循环
while True:my = int (input("请输入一个数: "))if my > compute:print("您财大了")elif my < compute:print("菜小了")else:print("撒花")#breakchoice = input("是否继续(Y)")if choice == "Y":compute = r.randint(0,100)else:print("拜拜")break
11、猜拳游戏:石头、剪刀、布的游戏
import random
computer = random.randint(0,2)while True:my = int(input("请输入一个数0--石头 1--布 2--剪刀: "))if(my==computer):print("平局")elif(my==0 and computer==1)or(my==1 and computer==2)or(my==2 and computer==0):print("你输了")elif(my==0 and computer==2)or(my==1 and computer==0)or(my==2 and computer==1):print("你赢了")choice =input("是否下一轮(Y)")if choice == "Y" :computer = random.randint(0,2)else:print("game over")break