Python学习——第三天作业
目录
作业1:计算器
作业2:(英雄)商品的购买
作业3:健康计划
作业4:打印如下图案
作业5:判断质数
作业6:判断季节
作业7:登录账号
作业8:求四位数
作业9:自然数ABCD
作业10:用户输入两个数a、b
作业11:老赵
作业12:奇偶
作业13:三角形的面积和周长
作业14:商店
作业15:鸡兔同笼
作业16:猜数字游戏(使用random模块完成)
作业17:猜拳游戏
作业18:在控制台上,输入如下信息(使用循环)
作业19:闰年
作业1:计算器
请输入两个数和一个符号,完成两个数的 + - * / % // **
num1 = float(input('请输入第一个数:')) num2 = float(input('请输入第二个数:')) mark= input('请输入一个运算符(+ - * / % // **):') if mark == '+':print(f'num1 + num2 = {num1 + num2}') elif mark == '-':print(f'num1 - num2 = {num1 - num2}') elif mark == '*':print(f'num1 * num2 = {num1 * num2}') elif mark == '/':print(f'num1 / num2 = {num1 / num2}') elif mark == '%':print(f'num1 % num2 = {num1 % num2}') elif mark == '//':print(f'num1 // num2 = {num1 // num2}') elif mark == '**':print(f'num1 ** num2 = {num1 ** num2}')
作业2:(英雄)商品的购买
设计一个程序,完成(英雄)商品的购买:
展示商品信息(折扣)->输入商品价格->输入购买数量->提示付款
输入付款金额->打印购买小票(扩展)# 英雄详情购买页面 print('\n\n\t\t\t\t英雄商城购买英雄\n') print('英雄购买票据') print('~*'*38+'~') print() print('\t英雄名称:盲僧(史诗)') print('\t英雄属性:生命值428(+85)/能量值200(+0)/移动速度425/攻击力55.8(+3.2)\n\t\t 攻击速度0.651(+3.1%)/护甲值24(+1.25)/攻击距离125') print() print('\t英雄座右铭:一人之行可灭世,众人之勤可救世!') print('\t英雄价格:3000') print('\t活动折扣;9.5') print() print('插播广告:当风云变色,当流离失所,世界不再是旧日模样\n'+'你是否会为了自己的梦想战斗,直至力战身亡,直至彼岸他乡\n') print('~*'*38+'~')n = int(input(f'折后商品价格为 {3000*9.5} 元,请输入购买数量:')) money = float(input(f'(温馨提示)您将购买 {n} 个商品,共计 {3000*9.5*n} 元,请付款:')) while True:if money < 3000*9.5*n:print('余额不足,请重新付款!')money = float(input(f'(温馨提示)您将购买 {n} 个商品,共计 {3000*9.5*n} 元,请付款:'))else:print('付款成功!下面是您的购买小票:')break# 订单页面:打印小票 print('\n\n\t\t\t\t英雄商城购买英雄\n') print('英雄购买票据') print('~*'*38+'~') print() print('\t英雄名称:盲僧(史诗)') print('\t英雄价格:3000') print('\t活动折扣;9.5') print(f'\t购买数量:{n}') print() print(f'\t应付付款:{3000*9.5*n}') print(f'\t实际付款:{money}') print(f'\t找零:{money - 3000*9.5*n}') print() print('插播广告:当风云变色,当流离失所,世界不再是旧日模样\n'+'你是否会为了自己的梦想战斗,直至力战身亡,直至彼岸他乡\n') print('~*'*38+'~') input('(温馨提示)按任意键返回上一级菜单:')
作业3:健康计划
用户输入身高(m),体重(kg)
计算公式:BMI = 体重 / 身高^2
BMI < 18.5:过轻
18.5≤ BMI <24:正常
24 ≤ BMI <27:过重
27 ≤ BMI < 30:轻度肥胖
30 ≤ BMI < 35:中度肥胖
BMI ≥ 35:重度肥胖tall = float(input('请您输入您的身高(m):')) weight = float(input('请您输入您的体重(kg):')) BMI = weight / tall ** 2 if BMI < 18.5:print('偏瘦') elif BMI < 24:print('正常') elif BMI < 27:print('偏重') elif BMI < 30:print('轻度肥胖') elif BMI < 35:print('中度肥胖') else:print('重度肥胖')
作业4:打印如下图案
*
**
***
****
*****
******# 直角三角形 i = 1 h = int(input('请输入高:')) while i <= h:print('*'*(2*i-1))i += 1
*
***
*****
*******
*********# 等腰三角形 i = 1 h = int(input('请输入高:')) for i in range(1,h+1):space_sum = h - istar_sum = 2*i - 1print(' '*space_sum + '*'*star_sum)
*********
*******
*****
***
*# 倒等腰三角形 i = 1 h = int(input('请输入高:')) for i in range(h,0,-1):space_sum = h - istar_sum = 2*i - 1print(' '*space_sum + '*'*star_sum)
*
***
*****
*******
*********
*******
*****
***
*# 实心菱形 i = 1 h = int(input('请输入高:')) for i in range(1,h+1):space_sum = h - istar_sum = 2*i - 1print(' '*space_sum + '*'*star_sum)for i in range(h-1,0,-1):space_sum = h - istar_sum = 2*i - 1print(' '*space_sum + '*'*star_sum)
*
* *
* *
* *
* *
* *
* *
* *
*# 空心菱形 i = 1 h = int(input('请输入高:')) for i in range(1,h+1):space1_sum = h - ispace2_sum = 2*i - 3if i == 1:print(' '*space_sum + '*')else:print(' '*space1_sum + '*' + ' '*space2_sum + '*')for i in range(h-1,0,-1):space1_sum = h - ispace2_sum = 2*i - 3if i == 1:print(' '*space_sum + '*')else:print(' '*space1_sum + '*' + ' '*space2_sum + '*')
*
***
* * *
* * *
********
* * *
* * *
***
*# 对角菱形 i = 1 h = int(input('请输入高:')) for i in range(1,h+1):space1_sum = h - ispace2_sum = i - 2star_sum = 2*h - 1if i == 1:print(' '*space_sum + '*')elif i == h:print('*'*star_sum)else:print(' '*space1_sum + '*' + ' '*space2_sum + '*' + ' '*space2_sum + '*')for i in range(h-1,0,-1):space1_sum = h - ispace2_sum = i - 2if i == 1:print(' '*space_sum + '*')else:print(' '*space1_sum + '*' + ' '*space2_sum + '*' + ' '*space2_sum + '*')
作业5:判断质数
输入数,判断这个数是否是质数
num = int(input('请输入一个不等于1的正整数:')) if num == 2:print(f'{num}是质数') elif num % 2 == 0:print(f'{num}不是质数') else:x = num//2 + 2for i in range(2,x):if num % i == 0:print(f'{num}不是质数')breakelse:print(f'{num}是质数')
作业6:判断季节
让用户输入一个月份,判断这个月是哪个季节。
假定3到4月是春季,5到8月是夏季,9到10是秋季,11、12、1、2月是冬季
month = int(input('请输入一个月份:')) if month < 3:print(f'{month}月份是冬季') elif month < 5:print(f'{month}月份是春季') elif month < 9:print(f'{month}月份是夏季') elif month < 11:print(f'{month}月份是秋季') elif month <13:print(f'{month}月份是冬季') else:print(f'没有{month}月份')
作业7:登录账号
提示用户输入用户名,然后再提示输入密码,如果用户名是“admin”并且密码是“88888”,则提示正确,否则,如果用户名不是admin还提示用户用户名不存在,如果用户名是admin则提示密码错误
username = input('请输入用户名:') password = input('请输入密码:') if username == 'admin' and password == '88888':print('正确!') elif username != 'admin':print('用户名不存在!') else:print('密码错误!')
作业8:求四位数
百位数字都是3,十位数字都是6,并且它们既能被2整除,又能被3整除,求这样的四位数中最大的和最小的两数各是几
for m in range(1,10):for n in range(0,10):x = m*1000 + 300 + 60 + nif x%2 == 0 and x%3 == 0:print(f'这样的四位数中最小的是{x}')breakbreakfor m in range(9,0,-1):for n in range(9,-1,-1):x = m*1000 + 300 + 60 + nif x%2 == 0 and x%3 == 0:print(f'这样的四位数中最大的是{x}')breakbreak
作业9:自然数ABCD
编程求一个四位自然数ABCD,它乘以A后变成DCBA
print('符合要求的自然数有:') for A in range(1,10):for B in range(0,10):for C in range(0,10):for D in range(0,10):x = A*1000 + B*100 + C*10 + Dy = D*1000 + C*100 + B*10 + Aif x*A == y:print(x)
作业10:用户输入两个数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)
作业11:老赵
输入老赵的考试成绩,显示所获奖励
成绩==100分,爸爸给他买辆车
成绩>=90分,妈妈给他买MP4
90分>成绩>=60分,妈妈给他买本参考书
成绩<60分,什么都不买score = float(input('请输入老赵的考试成绩:')) if score == 100:print('爸爸给他买辆车') elif score >= 90:print('妈妈给他买MP4') elif score >= 60:print('妈妈给他买本参考书') else:print('什么都不买')
作业12:奇偶
请输入一个数,判断这个数是偶数还是奇数,如果使用偶数,请判断从1到该数是3的倍数有哪些,如果是奇数,请判断从1到该数是5的倍数有哪些
num = int(input('请输入一个数:')) if num % 2 == 0:print(f'{num}为偶数,从1到{num}是3的倍数有:')for x in range(1,num+1):if x % 3 == 0:print(x) else:print(f'{num}为奇数,从1到{num}是5的倍数有:')for x in range(1,num+1):if x % 5 == 0:print(x)
作业13:三角形的面积和周长
输入三边的长度,求三角形的面积和周长(海伦公式)
a = float(input('请输入三角形一边a的长度:')) b = float(input('请输入三角形一边b的长度:')) c = float(input('请输入三角形一边c的长度:')) if a+b > c and a+c > b and b+c > a:C = a + b + cp = C/2S = (p*(p-a)*(p-b)*(p-c))**0.5print(f'该三角形的周长为:{C}')print(f'该三角形的面积为:{S}') else:print('无效的三角形边长')
作业14:商店
某商店T恤的价格为35元/件(2件9折,3件以上8折),
裤子的价格为120 元/条(2条以上9折).
小明在该店买了3件T恤和2条裤子,请计算并显示小明应该付多少钱shirt_price = 35 pant_price = 120 shirt = int(input('买几件T恤?')) pant = int(input('买几件裤子?')) if shirt == 2:shirt_price = shirt_price * 0.9 if shirt >= 3:shirt_price = shirt_price * 0.8 if pant >= 2:pant_price = pant_price * 0.9 print(f'小明应付{shirt * shirt_price + pant * pant_price}元')
作业15:鸡兔同笼
鸡兔同笼,从上面看有35个头,从下面看有94只脚,请问鸡有几只,兔有几只?
for chicken in range(0,36):rabbit = 35 - chickenif chicken * 2 + rabbit * 4 == 94:print(f'鸡有{chicken}只,兔有{rabbit}只')
作业16:猜数字游戏(使用random模块完成)
电脑随机一个范围内的数,用户输入数据判断,如果数大了,提供”数大了“
成功之后,加上用户是否继续功能import random com = random.randint(0,100) player = int(input('您猜的数字是:')) while True:if player == com:print('恭喜您,猜对啦!')i = input("是否继续?(任意键继续,'n'键退出):")if i == 'n':breakelse:com = random.randint(0,100)player = int(input('您猜的数字是:'))elif player > com:print('数大了,请再猜小点')player = int(input('您猜的数字是:'))else:print('数小了,请再猜大点')player = int(input('您猜的数字是:'))
作业17:猜拳游戏
石头、剪刀、布的游戏
import random player = int(input('请您出拳(1.石头 2.剪刀 3.布):')) com = random.randint(1,3) if player == 1 or player == 2 or player == 3:if com == 1:com = '石头'if player == 1:print('平手')elif player == 2:print('您输了')else:print('您赢了')elif com == 2:com = '剪刀'if player == 1:print('您赢了')elif player == 2:print('平手')else:print('您输了')else:com == '布'if player == 1:print('您输了')elif player == 2:print('您赢了')else:print('平手')print(f'电脑出的是:{com}') else:print('不符合出拳规则!')
作业18:在控制台上,输入如下信息(使用循环)
a a^2 a^3
1 1 1
2 4 8
3 9 27print(f"{'a':3} {'a^2':3} {'a^3':3}") for a in range(1,4):print(f'{a}'.ljust(3),f'{a**2}'.ljust(3),f'{a**3}'.ljust(3),sep = ' ')
作业19:闰年
输入一个年份,判断该年是否是闰年
y = int(input('请输入一个年份:')) if y % 4 == 0 and y % 100 != 0 or y % 400 == 0:print(f'{y}年是闰年') else:print(f'{y}年不是闰年')
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!













