btvn.vn
Tìm kiếm Đăng nhập

Tính nguyên tử khối trung bình theo tỉ lệ

Lưu trên thiết bị này
Kĩ thuật lập trình — CS · Chọn bài khác

Tỉ lệ là trọng số của từng đồng vị

Dùng hai dãy cùng vị trí: số khối `12, 13` và tỉ lệ `98.89%, 1.11%`. Theo dữ liệu mẫu này, giá trị trung bình là `(12×98.89 + 13×1.11)/100 = 12.0111`. Đây là kết quả theo **số khối và tỉ lệ đã cho trong bài**, không phải lời khẳng định về giá trị nguyên tử khối đo chính xác ngoài bài học. Hai dãy phải cùng độ dài và không rỗng; tổng phần trăm phải là 100 để phép chia cho 100 là trung bình đúng. Nếu thứ tự hai dãy bị lệch, một đồng vị sẽ nhận sai tỉ lệ.

Kiểm dữ liệu rồi nhân theo từng cặp

```python from math import isfinite def khoi_luong_trung_binh(so_khoi, ti_le): if not so_khoi or len(so_khoi) != len(ti_le): raise ValueError("Hai dãy phải không rỗng và cùng độ dài") if any(not isfinite(m) or m <= 0 for m in so_khoi): raise ValueError("Số khối phải dương") if any(not isfinite(p) or p < 0 or p > 100 for p in ti_le): raise ValueError("Tỉ lệ phải trong khoảng 0–100") if abs(sum(ti_le) - 100) > 1e-9: raise ValueError("Tổng tỉ lệ phải bằng 100%") return sum(m * p for m, p in zip(so_khoi, ti_le)) / 100 ``` Gọi `khoi_luong_trung_binh([12, 13], [98.89, 1.11])` cho `12.0111`. Có thể lưu hàm vào `cong_thuc_hoa.py` rồi nhập ở tệp chính. `zip` ghép phần tử cùng chỉ số; điều kiện độ dài ở đầu ngăn `zip` âm thầm bỏ phần tử thừa. Nếu chỉ có một đồng vị chiếm 100%, hàm vẫn tính được giá trị của nó; đây là trường hợp tổng quát hợp lí của công thức.

Bài luyện

Với số khối 12, 13 và tỉ lệ 98.89%, 1.11%, giá trị theo công thức là gì?
Chọn một đáp án

Bài luyện

Vì sao hai dãy số khối và tỉ lệ phải cùng độ dài?
Chọn một đáp án

Bài luyện

Nếu các tỉ lệ chỉ cộng được 90%, vì sao hàm báo lỗi?
Chọn một đáp án

Đang học