Files

27 lines
645 B
Python

"""迷你计算库 —— dim4 fixture(内含 3 处缺陷,供被测模型修复)。"""
from __future__ import annotations
def add(a: float, b: float) -> float:
return a + b
def div(a: float, b: float) -> float:
# 缺陷 1:除数为 0 时未按规格抛 ValueError
return a / b
def average(values: list[float]) -> float:
# 缺陷 2:空列表时未按规格返回 0.0
return sum(values) / len(values)
def clamp(value: float, lo: float, hi: float) -> float:
# 缺陷 3:上下界次序写反,越界时不收敛
if value < lo:
return hi
if value > hi:
return lo
return value