Lập code c++ đưa ra các số tự nhiên khác nhau sao cho 2 số không trùng nhau có kq là 20

Lập code c++ đưa ra các số tự nhiên khác nhau sao cho 2 số không trùng nhau có kq là 20
Câu trả lời này dùng AI, hãy kiểm tra lại trước khi sử dụng
Dưới đây là một đoạn mã C++ để tìm các cặp số tự nhiên khác nhau sao cho tổng của chúng bằng 20.

```cpp
#include
#include

int main() {
int targetSum = 20;
std::vector> pairs;

// Lặp qua tất cả các số từ 1 đến 19
for (int i = 1; i < targetSum; i++) {
int j = targetSum - i; // Tính số còn lại để tổng bằng 20
if (i != j) { // Đảm bảo hai số khác nhau
pairs.push_back(std::make_pair(i, j)); // Thêm cặp vào danh sách
}
}

// In ra các cặp số
std::cout << "Cac cap so tu nhien khac nhau co tong la 20 la:\n";
for (const auto& p : pairs) {
std::cout << p.first << " và " << p.second << "\n";
}

return 0;
}
```

Giải thích:

- Mã lệnh trên khai báo một biến `targetSum` với giá trị 20.
- Chúng ta sử dụng vòng lặp để duyệt qua các số tự nhiên từ 1 đến 19. Ta chọn 19 vì nếu số đầu tiên lớn hơn 19, số thứ hai sẽ không còn là số tự nhiên (bị âm).
- Tại mỗi số `i`, chúng ta tính số còn lại `j` bằng cách lấy `targetSum - i`.
- Để đảm bảo rằng hai số không giống nhau, chúng ta kiểm tra điều kiện `i != j`.
- Nếu điều kiện này được thỏa mãn, chúng ta lưu cặp số vào một vector.
- Cuối cùng, in ra tất cả các cặp số đã lưu.

Chương trình sẽ in ra tất cả các cặp số tự nhiên khác nhau sao cho tổng của chúng bằng 20.
Đăng phản hồi