作业1:计算器: 请输入两个数和一个符号,完成两个数的+ - * / % // **
解法:简单的加减乘除
print("请输入两个数字及一个符号(+、-、*、/、%)")
a = float(input("第一个数为:"))
b = float(input("第二个数为:"))
c = input("符号为:")
if c=="+":
print("%.3s"%(a+b))
elif c=="-":
print("%.3s"%(a-b))
elif c=="*":
print("%.3s"%(a*b))
elif c=="/":
print("%.3s"%(a/b))
elif c=="%":
print("%.3s"%(a%b))
else:
print("无效操作")
作业2:设计一个程序,完成(英雄)商品的购买(界面就是第一天打印的界面) 展示商品信息(折扣)->输入商品价格->输入购买数量->提示付款 输入付款金额->打印购买小票(扩展) 解法:简单的if语句应用
print("\t 英雄联盟商城登陆界面\t\t\t")
print("~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*")
print("\t\t1.用户登录\t\t\t")
print("\t\t2.用户注册\t\t\t")
print("\t\t3.退出游戏\t\t\t")
print("~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*")
print("请输入您的选项: ",end="")
choice = int(input())
if choice == 1:
username = input("请输入您的用户名:")
password = input("请输入您的密码:")
if username == "Jeff" and password == "123":
print("登陆成功 ,欢迎{}进入游戏".format(username))
print("\n")
while True:
print("\t\t英雄联盟界面\t\t\t")
print("~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~")
print("\t\t1.商城中心\t\t\t")
print("\t\t2.开启排位\t\t\t")
print("\t\t3.退出登录\t\t\t")
print("~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~")
choice = int(input("请输入您的选项: "))
if choice == 1:
print("\n")
print("欢迎来到商城中心,尽情购物吧~")
print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~")
print("\t\t1.英雄\t\t\t")
print("\t\t2.铭文\t\t\t")
print("\t\t敬请期待~\t\t\t")
print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~\n")
print("请输入您的选项: ",end="")
choice = int(input())
if choice == 1:
print("\n")
print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~* ~* ~* ~* ~")
print("\t\t本期为您推荐的英雄是:亚索(100¥)")
print("\t亚索是一位近战爆发AD刺客,双突进的技能设置使得他在中单游刃有余。")
print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~* ~* ~* ~* ~\n")
print("是否需要购买(Y/N)")
num = input("请输入您的选项:")
if num == "Y":
print("购买成功!!!快去练练新英雄吧~")
print("\n")
elif num == "N":
print("购买失败,在考虑一下吧~")
print("\n")
else :
print("无效操作!!!")
elif choice == 2:
print("\n")
print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~\n")
print("\t\t本期为您推荐的是攻击铭文(100¥):")
print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~\n")
print("是否需要购买(Y/N)")
num = input("请输入您的选项:")
if num == "Y":
print("购买成功!!!快去装备起来吧~")
print("\n")
elif num == "N":
print("购买失败,在考虑一下吧~")
print("\n")
else :
print("无效操作!!!")
else:
input("对不起,没有找到您需要的选项!请重新选择,按任意键继续\n")
elif choice == 2:
pass
elif choice == 3:
sys.exit()
else:
input("对不起,找不到您的信息!请重新登录,按任意键继续\n")
elif choice == 2:
pass
elif choice == 3:
sys.exit()
else:
print("您的输入有误,请重新输入!")
部分效果图如下:
作业3: 健康计划 用户输入身高(m),体重(kg) 计算公式:BMI = 体重 / 身高^2
BMI < 18.5:过轻
18.5≤ BMI <24:正常
24 ≤ BMI <27:过重
27 ≤ BMI < 30:轻度肥胖
30 ≤ BMI < 35:中度肥胖
BMI ≥ 35:重度肥胖
解法:仍然是简单的if语句
print("请输入您的身高(m)和体重(kg)")
high = float(input("您的身高(m):"))
weight = float(input("您的体重(kg):"))
BMI = weight/(high*high)
if BMI<18.5:
print("过轻")
elif BMI >=18.5 and BMI<24:
print("正常")
elif BMI>=24 and BMI<27:
print("过重")
elif BMI>=27 and BMI<30:
print("轻度肥胖")
elif BMI>=30 and BMI<35:
print("中度肥胖")
else:
print("重度肥胖")
部分效果图如下:
作业4:打印如下图案(直三角形): * ** *** **** ***** ****** 解法:对于循环有一定的了解,且需要发现其规律
a = int(input("请输入你想要的层数:"))
b = 1
while b<=a:
c = 1
while c<=2*b-1:
print("*",end = "")
c = c + 1
print()
b=b+1
打印普通三角形:
layer = int(input("请输入你想要的层数:"))
for i in range(1,layer+1):
space = layer - i
start = 2*i-1
for j in range(space):
print(" ",end="")
for k in range(start):
print("*",end="")
print()
打印倒立三角形:
layer = int(input("请输入您要打印的层数:"))
for i in range(layer, 0, -1):
# 求出空格的数量
space_nums = layer - i
# 求*的数量
star_nums = 2 * i - 1
print(" "*space_nums + "*"*star_nums)
打印菱形:
layer = int(input("请输入需要打印的行数:"))
while layer%2 ==0 or layer < 2:
layer = int(input("对不起,输入有误,请重新输入,按任意键继续~"))
for i in range(1,layer
space = layer-i
start = 2*i-1
for j in range(space):
print(" ",end="")
for k in range(start):
print("*",end="")
print()
for i in range(layer
space = layer-i
start = 2*i-1
for j in range(space):
print(" ",end="")
for k in range(start):
print("*",end="")
print()
打印空菱形:
layer = int(input("请输入需要打印的行数:"))
while layer%2 ==0 or layer < 2:
layer = int(input("对不起,输入有误,请重新输入,按任意键继续~"))
for i in range(1,layer
space = layer-i
start = 2*i-1
for j in range(space):
print(" ",end="")
for k in range(start):
"""注意这里为什么要加2,因为上半部分打印的是长的,即多出来一行"""
if k == 0 or k == start-1 or i==layer
print("*",end="")
else:
print(" ",end="")
print()
for i in range(layer
space = layer-i
start = 2*i-1
for j in range(space):
print(" ",end="")
for k in range(start):
"""注意这里是下半部分的打印;注意分析条件"""
if k == 0 or k == start-1:
print("*",end="")
else:
print(" ",end="")
print()
作业5: 输入数,判断这个数是否是质数 解法:了解质数的定义
print("请输入一个整数,判断其是否为素数:")
num = int(input())
flag = True
for i in range(2,num):
if num % i==0:
flag = False
break
if flag:
print(f"{num}是质数")
else:
print(f"{num}不是质数")
作业6: 让用户输入一个月份,判断这个月是哪个季节?假定3到 4月是春季,5到8月是夏季,9到10是秋季,11、12、1、2月是冬季 解法:if语句的应用
n = int(input("请输入月份:"))
if n==1 or n==2 or n==11 or n==12:
print(f"{n}月是冬季")
elif n==3 or n==4:
print(f"{n}月是春季")
elif n==5 or n==6 or n==7 or n==8:
print(f"{n}月是夏季")
elif n==9 or n==10:
print(f"{n}月是秋季")
else:
print("无效操作!!!")
作业7: 提示用户输入用户名,然后再提示输入密码,如果用户名 是“admin”并且密码是“88888”,则提示正确,否则,如果 用户名不是admin还提示用户用户名不存在,如果用户名是 admin则提示密码错误。
name = input("请输入用户名:")
password = input("请输入密码:")
if name =="admin" and password == "88888":
print("欢迎回家!!!")
elif name !="admin" and password=="88888":
print("用户名不存在!!!")
elif name =="admin" and password!="88888":
print("密码错误")
else:
print("无效输入")
作业8:有一些四位数,百位数字都是3,十位数字都是6,并且它们既能被2整除,又能被3整除,求这样的四位数中最大的和最小的两数各是几?
numbers = []
for i in range(1, 10):
for j in range(10):
number = i * 1000 + 3 * 100 + 6 * 10 + j
if number % 2 == 0 and number % 3 == 0:
numbers.append(number)
print("max:", max(numbers))
print("min:", min(numbers))
作业9:编程求一个四位自然数ABCD,它乘以A后变成DCBA
def count():
for a in range(0,10):
for b in range(0,10):
for c in range(0,10):
for d in range(0,10):
num=a*1000+b*100+c*10+d
if num*a==d*1000+c*100+b*10+a:
if num==0:
continue
else:
print(num)
count()
作业10:用户输入两个数a、b。如果a能被b整除或a加b大于1000,则输出a;否则输出b。
a = int(input("请输入a的值: "))
b = int(input("请输入b的值: "))
if(a%b==0 or a+b>1000):
print("输出的值为: %s"%(a))
else:
print("输出的值为: %s"%(b))
作业11:输入赵本山的考试成绩,显示所获奖励 成绩==100分,爸爸给他买辆车 成绩>=90分,妈妈给他买MP4 90分>成绩>=60分,妈妈给他买本参考书 成绩<60分,什么都不买
achievement = float(input("请输入赵本山考生的成绩:"))
if achievement == 100:
print("爸爸给他买辆车")
elif achievement>90 or achievement==90:
print("妈妈给他买MP4")
elif achievement >60 or achievement==60:
print("妈妈给他买本参考书")
else:
print("什么都不买")
作业12:请输入一个数,判断这个数是偶数还是奇数,如果使用偶数,请判断从1到该数是3的倍数有哪些,如果是奇数,请判断从1到该数是5的倍数有哪些
num = float(input("请输入一个数字:"))
i = 1
j = 1
if num%2==0:
while i<=num:
if i%3==0:
print(f"{i}是偶数且还是3的倍数")
i+=1
else:
while j <=num:
if j %5==0:
print(f"{j}是奇数且还是5的倍数")
j+=1
作业14:某商店T恤的价格为35元/件(2件9折,3件以上8折),裤子的价格为120 元/条(2条以上9折).(例如:小明在该店买了3件T恤和2条裤子,请计算并显示小明应该付多少钱?)
tshirt = int(input("请输入购买T恤的件数: "))
trousers = int(input("请输入购买裤子的件数: "))
if(tshirt == 2 and trousers >= 2):
print("%s"%(tshirt*0.9*35 + trousers*0.9*120))
elif(tshirt >= 3 and trousers >=2):
print("%s"%(tshirt*0.8*35 + trousers*0.9*120))
elif(tshirt == 2 and trousers == 1):
print("%s"%(tshirt*0.9*35 + trousers*120))
elif(tshirt == 1 and trousers >= 2):
print("%s"%(tshirt*35 + trousers*0.9*120))
elif(tshirt == 3 and trousers == 1):
print("%s"%(tshirt*35*0.8 + trousers*120))
elif(tshirt == 1 and trousers == 1):
print("%s"%(tshirt*35 + trousers*120))
elif(tshirt == 1 ):
print("%s"%(tshirt*35))
elif(trousers == 1 ):
print("%s"%(trousers*120))
else:
print("下次再来!")
作业15:鸡兔同笼,从上面看有35个头,从下面看有94只脚,请问鸡有几只,兔有几只?
n = int(input("请输入脚的数量: "))
m = int(input("请输入头的个数: "))
#n为脚的数量,m为头数
# n = 4*rabbit + 2*chicken
#m = rabbit + chicken
print("鸡的数量: %d"%(2*m-n/2))
print("兔子的数量:%d"%(n/2-m))
作业16:猜数字游戏(使用random模块完成) 电脑随机一个范围内的数,用户输入数据判断, 如果数大了,提供”数大了“ 成功之后,加上用户是否继续功能
import random
# 生成随机数
computer = random.randint(1, 100)
while True:
my = int(input("请输入您要猜的数:"))
if my == computer:
print("恭喜您,猜对了")
choice = input("您是否继续?结束请输入(n/N),按任意键继续:")
if choice == "N" or choice == "n":
break
else:
# 重新生成随机数
computer = random.randint(1, 100)
elif my > computer:
print("对不起,猜大了")
else:
print("对不起,猜小了")
print("GAME OVER!!!")
作业17:猜拳游戏:石头、剪刀、布的游戏
import random
while True:
computer = random.randint(1,3)
user = int(input("请选择石头剪刀布(1:石头/2:剪刀/3.布):"))
if user == computer:
print("平局")
elif (user == 1 and computer==2) or (user==2 and computer==3)\
or (user == 3 and computer==1):
print("用户获胜!!!")
else:
print("电脑获胜")
作业18:在控制台上,输入如下信息(使用循环) a a^2 a^3 1 1 1 2 4 8 3 9 27
print("a\ta^2\ta^3")
def JEFF():
i = 1
while i<4:
print("%d\t%d\t%d\t"%(i,i**2,i**3))
i+=1
JEFF()
作业19:输入一个年份,判断该年是否是闰年
year = int(input("请输入判断的年份:"))
if(year % 4 ==0 and year % 100 !=0 or year%400 == 0):
print(f"{year}是闰年")
else:
print(f"{year}是平年")
|