您的位置:首页 > 编程语言 > Python开发

python编写的bmi体重指数计算器、出租车费用计算器、个税计算器、猜数字游戏

2018-01-23 21:03 399 查看
'''
写四个函数 分别包含bmi体重指数计算器、出租车费用计算器、个税计算器、猜数字游戏
'''
#体重指数计算器
def bmi():
while 1:
#声明变量 身高、体重
height=input('请输入您的体重(m):')
weight=input('请输入您的体重(kg):')
#如果输入的身高或者体重有一个为0,直接结束循环
#or 或的关系 关键字,多个条件时,只要有一个条件成立即可执行代码块
#将输入的身高 体重 转换为小数float类型
if height=='0'or weight=='0':
print('您输入的数据有误,程序已结束!')
break
#and 与的关系 关键字 多个条件时,条件必须同时成立才行
if height=='1.8'and weight=='70':
print('微信扫一扫吧')
#not 表示非得关系
height=float(height)
weight=float(weight)
bmi=weight/(height*height)
print(bmi)
if bmi<18.5:
print('体重过轻...')
elif 18.5<=bmi<=23.9:
print('标准身材')
elif 24<=bmi<=27:
print('过重!')
elif 28<=bmi<=32:
print('大胖子')
else:
print('超级无敌大胖子')
def tax():
while 1:
# 快速多行缩进,可以选中需要缩进的行,按Tab键
# 1.输入一个公里数
kilo = input('请输入一个公里数(km,输入0结束):')
# 2.将公里数转换为float类型
kilo = float(kilo)
# 如果kilo的值为0,结束循环
if kilo == 0:
print('欢迎下次使用!Bye bye!')
break
# 3.根据不同的公里数计算需要的车费
elif kilo <= 2:
print('起步价,8元')
elif kilo <= 12:
price = 8 + (kilo - 2) * 1.2
# 占位符 %f 专门用来给float类型的数据做占位的
# %.2f,保留小数点后两位
print('共行驶%.2f千米,共%.2f元' % (kilo, price))
else:
price = 20 + (kilo - 12) * 1.5
print('共行驶%.2f千米,共%.2f元' % (kilo, price))
def calc():
while 1:
# 输入工资
salary = input('请输入您的税前工资(元),输入0结束:')
# 将工资转换为float类型
salary = float(salary)
# 如果输入的工资为0,结束循环
if salary <= 0:
print('你不用交五险一金,也不用交税')
break
# 如果工资大于或等于7662 五险一金=7662*五险一金比例(0
.225  # )
if salary >= 7662:
wxyj = 7662 * 0.225
else:
# 如果工资小于7662,五险一金 = 工资 * 五险一金比例
wxyj = salary * 0.225
# 计算应纳税所得额
# 应纳税所得额=工资-五险一金-起征点(3500)
tax_income = salary - wxyj - 3500

if tax_income < 0:
tax_income = 0
else:
tax_income = tax_income

# 声明两个变量
# 税率
Ladder_rate = 0
# 速算扣除数
quick_deduction = 0
# 判断应纳税所得额所在的阶梯
if tax_income <= 0:
print('您不用交税!')
elif tax_income <= 1500:
Ladder_rate = 0.03
elif tax_income <= 4500:
Ladder_rate = 0.1
quick_deduction = 105
elif tax_income <= 9000:
Ladder_rate = 0.2
quick_deduction = 555
elif tax_income <= 35000:
Ladder_rate = 0.25
quick_deduction = 1005
elif tax_income <= 55000:
Ladder_rate = 0.3
quick_deduction = 2755
elif tax_income <= 80000:
Ladder_rate = 0.35
quick_deduction = 5505
else:
Ladder_rate = 0.45
quick_deduction = 13505
# 计算税额
shui_er = tax_income * Ladder_rate - quick_deduction
# print('%.2f'%shui_er)
daoshou_salary = salary - wxyj - shui_er
print('您输入的工资为%.2f' % salary)
print('五险一金为:%.2f   应纳税所得额 :%.2f   税额:%.2f   到手工资为:%.2f' % (wxyj, tax_income, shui_er, daoshou_salary))
def guess_figure():
# 使用到python中内置的random模块
# 引入random模块
import random
# 随机生成一个0~100的整数,作为正确答案 包含0和100
number = random.randint(0, 100)
# 在while循环中写代码
count = 0
while 1:
# 输入一个0~100的整数,input输入的时字符串
guess_number = input('请输入一个数字(0~100):')
# 将输入的字符串转换成整数类型
guess_number = int(guess_number)
# 只要输入的数字不在0~100的范围,请重新输入
while guess_number < 0 or guess_number > 100:
# 重新输入
guess_number = input('输入的数字不在范围,请重新输入:')
# 转换为整数类型
guess_number = int(guess_number)

# 和正确的答案数字做对比
if guess_number < number:
print('您猜小了!')
elif guess_number > number:
print('您猜大了!')
else:
print('恭喜您,猜对了!')
# 如果猜对了,给两个选项,1.继续玩 2.退出
print('0.退出')
print('1.继续玩')
# 输入一个选项
num = input('请输入您的选择:')
num = int(num)
while num not in range(0, 2):
num = input('您的选择不合法,请重新选择(0退出):')
num = int(num)
# 继续玩
if num == 1:
# 重置正确答案
number = random.randint(0, 100)
# 猜测次数归零
count = 0
# 跳过当前次的循环,直接执行下一次的循环
continue
else:
# 结束循环 退出程序
break
count += 1
if count == 5:
print('您的猜测次数大于5次,游戏失败!')
break

while 1:
print('1.BMI体重指数计算器')
print('2.出租车费用计算器')
print('3.税额计算器')
print('4.猜数字游戏')
print('0.退出程序')
#选择对应的选项
num=input('请选择您的操作:')
#转换为整数类型
num=int(num)
#range(开始位置,结束位置)范围  包含开始位置,不包含结束位置,只能到结束位置的前一个位置
#判断选项是否在范围内
while num not in range(0,5):
num=input('您输入的选项不存在,请重选:')
num=int(num)
#判断选项,根据选项执行对应的函数
if num==1:
#调用体重指数计算0器函数
print('欢迎您使用BMI体重指数计算器:')
bmi()
elif num==2:
print('欢迎您使用出租车计算器')
tax()
elif num==3:
print('欢迎您使用税额计算器')
calc()
elif num==4:
print('欢迎您来玩猜数字游戏')
guess_figure()
else:
break
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: