python - Python:如何使这段代码变得更好?
问题描述
WAP 使用功能概念创建数学应用程序,为每个功能和用户输入添加至少 20-25 个不同的功能,以便根据功能要求用户输入来选择任何功能。
import math
def add(x, y):
return x + y
def subtract(x, y):
return x - y
def multiply(x, y):
return x * y
def divide(x, y):
return x / y
def floor(x , y):
return x // y
def exponent(x, y):
return x ** y
def remainder(x, y):
return x % y
def square(x, y):
a = x ** 0.5
b = y ** 0.5
return a,b
def swap(x, y):
temp = x
x = y
y = temp
return int(x), int(y)
def factors(x):
print("The factors of",x,"are:")
for i in range(1, x + 1):
if x % i == 0:
print(i)
def lcm(x, y):
if x > y:
greater = x
else:
greater = y
while(True):
if((greater % x == 0) and (greater % y == 0)):
lcm = greater
break
greater += 1
return lcm
def hcf(x, y):
if x > y:
smaller = y
else:
smaller = x
for i in range(1, smaller+1):
if((x % i == 0) and (y % i == 0)):
hcf = i
return hcf
def odd_even(x):
if (x % 2) == 0:
print("{0} is Even".format(x))
else:
print("{0} is Odd".format(x))
def factorial(x):
return math.factorial(x)
def absolute(x):
return math.fabs(x)
def power(x, y):
return math.pow(x, y)
def sin(x):
return math.sin(x)
def cos(x):
return math.cos(x)
def tan(x):
return math.tan(x)
def radian(x):
return math.radians(x)
print("Select operation.")
print("1.Add")
print("2.Subtract")
print("3.Multiply")
print("4.Divide")
print("5.Floor")
print("6.Exponent")
print("7.Remainder")
print("8.Square")
print("9.Swap")
print("10.Factors")
print("11.LCM")
print("12.HCF")
print("13.Odd or Even")
print("14.Factorial")
print("15.Absolute")
print("16.Power")
print("17.Sin")
print("18.Cos")
print("19.Tan")
print("20.Radian")
choice = input("Enter choice(1-20): ")
num1 = int(input("Enter first number: "))
num2 = int(input("Enter second number: "))
if choice == '1':
print(num1,"+",num2,"=", add(num1,num2))
elif choice == '2':
print(num1,"-",num2,"=", subtract(num1,num2))
elif choice == '3':
print(num1,"*",num2,"=", multiply(num1,num2))
elif choice == '4':
print(num1,"/",num2,"=", divide(num1,num2))
elif choice == '5':
print("Floor:", floor(num1,num2))
elif choice == '6':
print(num1,"** ",num2,"=", exponent(num1,num2))
elif choice == '7':
print(num1," % ",num2,"=", remainder(num1,num2))
elif choice == '8':
print("Square:", square(num1,num2))
elif choice == '9':
print("Swap:", swap(num1,num2))
elif choice == '10':
print(factors(num1))
elif choice == '11':
print("LCM is:", lcm(num1,num2))
elif choice == '12':
print("HCF is:", hcf(num1,num2))
elif choice == '13':
print(odd_even(num1))
elif choice == '14':
print("Factorial is:", factorial(num1))
elif choice == '15':
print("Absolute value is:", absoulute(num1))
elif choice == '16':
print("Power:", power(num1, num2))
elif choice == '17':
print("Sin:", sin(num1))
elif choice == '18':
print("Cos:", cos(num1))
elif choice == '19':
print("Tan:", tan(num1))
elif choice == '20':
print("Radian:", radian(num1))
else:
print("Invalid input")
解决方案
推荐阅读
- php - 如何将数组数据插入文件?
- javascript - 如果另一个下拉菜单打开,我如何关闭下拉菜单
- entity-framework-core - 是否可以在 EF Core 的 OnModelCreating 中为 CosmosDB 容器设置 TTL?
- c - SDL2:IMG_Load() - Raspberry Pi 上的分段错误
- javascript - Jasmine:如何测试异步功能?
- python - `tfds.features.text.SubwordTextEncoder` 如何创建字编码?
- sharepoint - Power Automate - 流在解决方案中不起作用
- javascript - Pupeeteer heroku buildpack 退出 heroku 上的午餐声明
- java - 在java中查找特定范围的数字
- javascript - SnowFlake 存储过程根据条件从表中删除一行