Phép FMA (fused multiply-add) tính a·b + c với một lần làm tròn duy nhất ở cuối, trong khi cách thông thường (a·b) + c làm tròn hai lần (sau nhân và sau cộng). Sự khác biệt này quan trọng trong các bộ xử lý hiện đại.
Cho ba số thực a, b, c, hãy tính:
fma = math.fma(a, b, c) (một lần làm tròn);naive = a*b + c (hai lần làm tròn, double).In hai giá trị, mỗi giá trị làm tròn {:.2f}, cách nhau dấu cách: fma naive.
Với các số nhỏ thông thường, hai kết quả trùng nhau tới 2 chữ số thập phân.
Một dòng chứa ba số thực a b c cách nhau bởi dấu cách.
|a|, |b|, |c| ≤ 10^6. Dùng math.fma (Python 3.13+); nếu môi trường không có, dùng công thức tương đương.
Một dòng: fma naive, mỗi số định dạng {:.2f}.
Ví dụ:
Đầu vào:
2.0 3.0 1.0
Đầu ra:
7.00 7.00
Giải thích:
Đang tải editor...