Bài tập  /  Bài đang cần trả lời

Giải bài có thưởng!

Viết chương trình trong c++

viết chương trình trong c++: tinh s(n)=1/2+2/3+3/4+...+n/n+1 (với n>0)
0 Xem trả lời
Hỏi chi tiết
39
Tham khảo câu trả lời từ Trợ lý ảo Lazi
Dưới đây là một chương trình C++ đơn giản để tính tổng \( S(n) = \frac{1}{2} + \frac{2}{3} + \frac{3}{4} + ... + \frac{n}{n+1} \) cho một số nguyên dương \( n \):

```cpp
#include
using namespace std;

double tinhTong(int n) {
double S = 0.0;
for (int i = 1; i <= n; ++i) {
S += static_cast(i) / (i + 1);
}
return S;
}

int main() {
int n;

cout << "Nhap n (n > 0): ";
cin >> n;

if (n <= 0) {
cout << "Vui long nhap n > 0." << endl;
return 1;
}

double ketQua = tinhTong(n);
cout << "Tong S(" << n << ") = " << ketQua << endl;

return 0;
}
```

### Giải thích mã nguồn:
1. **Thư viện**: Chương trình sử dụng thư viện `` để quản lý đầu vào và đầu ra.
2. **Hàm `tinhTong`**: Hàm này sẽ nhận vào một số nguyên dương `n` và tính giá trị tổng `S(n)` theo công thức đã cho. Nó sử dụng một vòng lặp để cộng dồn các giá trị từ \( \frac{1}{2} \) đến \( \frac{n}{n+1} \).
3. **Hàm `main`**: Trong hàm này, chương trình yêu cầu người dùng nhập một số nguyên `n` và kiểm tra xem nó có lớn hơn 0 hay không. Nếu hợp lệ, nó sẽ tính và in ra kết quả.

### Cách chạy chương trình:
1. Sao chép mã nguồn trên vào một tệp có phần mở rộng `.cpp`, ví dụ `tinh_tong.cpp`.
2. Sử dụng một trình biên dịch C++ (như g++) để biên dịch mã nguồn:
```
g++ tinh_tong.cpp -o tinh_tong
```
3. Chạy chương trình đã biên dịch:
```
./tinh_tong
```
4. Nhập giá trị `n` khi được yêu cầu và xem kết quả.

Bạn hỏi - Lazi trả lời

Bạn muốn biết điều gì?

GỬI CÂU HỎI
Học tập không giới hạn cùng học sinh cả nước và AI, sôi động, tích cực, trải nghiệm

Hôm nay bạn thế nào? Hãy nhấp vào một lựa chọn, nếu may mắn bạn sẽ được tặng 50.000 xu từ Lazi

Vui Buồn Bình thường
×
Trợ lý ảo Trợ lý ảo
×
Đấu trường tri thức | Lazi Quiz Challenge +500k
Gửi câu hỏi
×