输入重量计算运费
while True:
try:
weight = int(input("请输入货物重量以计算运费:"))
if weight > 0 and weight <= 50:
price = weight * 80500
elif weight > 50 and weight < 100:
price = weight * 75
elif weight >= 100 and weight < 1000:
price = weight * 60
elif weight >= 1000:
price = weight * 55
else:
print("请输入符合规定的重量")
print(f"此次的货物重量是:{weight},此次的总运费是{price}")
except:
break
加了判断,如果输入了浮点数或者其他字符,会退出程序。
我默认输入的重量是整数。
绝对素数
# 绝对素数:素数的数字位置经过对换后还是素数。 输出所有的两位绝对素数。
def isPrime(num: int):
"""
判断素数
:param num:判断素数函数的参数
:return: True or False
"""
if num == 1:
return False
# 用x%i==0就不是素数 i的取值范围是2到x-1
for i in range(2, num):
if num % i == 0:
return False
return True
def reverse(num: int):
"""
将整数逆序
:param num: 逆序函数的参数
:return: renum 逆序之后的参数
"""
renum = 0
while num:
last = num % 10
renum = renum * 10 + last
num //= 10
return renum
list = []
# 设置一个空的列表用于存储绝对素数
for i in range(10, 100): # 根据题目两位绝对素数 范围是10-99
if isPrime(i):
if isPrime(reverse(i)):
list.append(i)
print("满足条件的绝对素数有:")
for p in list:
print(p, end=" ")
print(f"\n绝对素数的个数是{len(list)}")
题目要求是两位的绝对素数,所以设置的范围是10-99。也可以改成自己输入范围求绝对素数,那就可以定义两个变量用于存储数据范围。
更多源码尽在harbinailin (ailin) · GitHub
|