Hướng dẫn giải của Tính Lãi Kép
Chỉ dùng lời giải này khi không có ý tưởng, và đừng copy-paste code từ lời giải này. Hãy tôn trọng người ra đề và người viết lời giải.
Nộp một lời giải chính thức trước khi tự giải là một hành động có thể bị ban.
Nộp một lời giải chính thức trước khi tự giải là một hành động có thể bị ban.
Lời giải này đang bị ẩn cho đến khi bạn chọn mở ra.
Chúng tôi khuyên bạn nên tự thử giải bài trước. Việc mở lời giải có thể làm lộ mất ý tưởng chính trước khi bạn có cơ hội tự giải.
Bạn phải đăng nhập để mở lời giải này.
Đăng nhậpTác giả:
Phân tích
Bài toán yêu cầu áp dụng trực tiếp công thức lãi kép:
$$A = P \times \left(1 + \frac{r}{n}\right)^{n \times t}$$
Trong đó ~r~ được nhập dưới dạng phần trăm (ví dụ: 10 = 10%), nên cần chia cho 100 trước khi tính.
Thuật toán
- Đọc 4 số ~P~, ~r~, ~n~, ~t~.
- Chuyển ~r~ về dạng thập phân: ~r = r / 100~.
- Tính ~A = P \times (1 + r/n)^{n \times t}~.
- In ~A~ làm tròn 2 chữ số thập phân.
Độ phức tạp: ~O(1)~ — chỉ một phép tính số học.
Lưu ý
- Dùng kiểu số thực (float/double) để tránh mất mát độ chính xác.
- Khi in kết quả, dùng định dạng
:.2f(Python) hoặcprintf("%.2f", A)(C/C++).
Code mẫu (Python 3)
P, r, n, t = map(float, input().split())
r = r / 100
A = P * (1 + r / n) ** (n * t)
print(f'{A:.2f}')
Code mẫu (C++)
#include <bits/stdc++.h>
using namespace std;
int main() {
double P, r, n, t;
cin >> P >> r >> n >> t;
r /= 100.0;
double A = P * pow(1 + r / n, n * t);
printf("%.2f\n", A);
return 0;
}
Bình luận
ok phết