编写程序,完成两个数的基本运算(比如加、减、乘、除、求模等),并返回结果。 实验(二)题目:编写函数,用递归(函数内部再次调用函数本身)的方式计算给定某个整数的阶 乘值
时间: 2024-10-09 22:04:39 浏览: 55
在编程中,我们可以创建一个通用的函数来完成基本的数学运算,如加法、减法、乘法、除法和取余数。这里是一个简单的例子,假设我们使用Python编写这个功能:
```python
def basic_arithmetic(num1, num2, operation):
if operation == "add":
return num1 + num2
elif operation == "subtract":
return num1 - num2
elif operation == "multiply":
return num1 * num2
elif operation == "divide":
if num2 != 0: # 防止除数为零
return num1 / num2
else:
return "Error: Division by zero is not allowed."
elif operation == "modulus":
return num1 % num2
else:
return "Invalid operation. Please choose from add, subtract, multiply, divide, or modulus."
# 使用示例
print(basic_arithmetic(5, 2, "add")) # 输出 7
print(basic_arithmetic(5, 2, "subtract")) # 输出 3
print(basic_arithmetic(5, 2, "multiply")) # 输出 10
print(basic_arithmetic(5, 2, "divide")) # 输出 2.5 (如果num2为非零)
print(basic_arithmetic(5, 2, "modulus")) # 输出 1
# 计算阶乘的递归版本
def factorial(n):
if n == 0 or n == 1:
return 1
else:
return n * factorial(n - 1)
# 例如,计算5的阶乘
print(factorial(5)) # 输出 120
```
在这个例子中,`basic_arithmetic`函数接收两个数字和一个操作字符串作为输入,然后根据操作选择相应的运算。对于阶乘,我们定义了另一个递归函数`factorial`,它会一直调用自身直到n等于1或0,然后逐层返回计算结果。
阅读全文