添加mymath.py,包含乘法和除法函数

This commit is contained in:
2026-04-02 15:05:54 +08:00
parent ef91ef37c9
commit ee3b88c082

81
xiang_mu/mymath.py Normal file
View File

@@ -0,0 +1,81 @@
"""
mymath.py - 数学运算模块
提供乘法和除法运算
"""
def multiply(a: float, b: float) -> float:
"""
计算两个数字的乘积
Args:
a: 第一个数字
b: 第二个数字
Returns:
两个数字的乘积
"""
return a * b
def divide(a: float, b: float) -> float:
"""
计算两个数字的除法
Args:
a: 被除数
b: 除数
Returns:
两个数字的商
Raises:
ValueError: 如果除数为零
"""
if b == 0:
raise ValueError("除数不能为零")
return a / b
if __name__ == "__main__":
# 测试乘法函数
print("测试乘法函数:")
test_cases_multiply = [
(2, 3, 6),
(-4, 5, -20),
(0, 7, 0),
(2.5, 4, 10.0),
(-3.5, -2, 7.0),
]
for a, b, expected in test_cases_multiply:
result = multiply(a, b)
status = "PASS" if abs(result - expected) < 1e-9 else "FAIL"
print(f" multiply({a}, {b}) = {result} {status} (期望: {expected})")
# 测试除法函数
print("\n测试除法函数:")
test_cases_divide = [
(10, 2, 5),
(-15, 3, -5),
(0, 5, 0),
(7.5, 2.5, 3.0),
(-9, -3, 3),
]
for a, b, expected in test_cases_divide:
try:
result = divide(a, b)
status = "PASS" if abs(result - expected) < 1e-9 else "FAIL"
print(f" divide({a}, {b}) = {result} {status} (期望: {expected})")
except ValueError as e:
print(f" divide({a}, {b}) 错误: {e}")
# 测试除数为零的情况
print("\n测试除数为零:")
try:
divide(10, 0)
print(" divide(10, 0) FAIL (期望抛出ValueError)")
except ValueError as e:
print(f" divide(10, 0) PASS 正确抛出异常: {e}")
print("\n所有测试完成!")