Напишіть програму, яка виводить усі трицифрові числа, сума цифр яких дорівнює деякому значенню n, яке вводить користувач.
Вхідні дані:
4
Вихідні дані:
112
121
130
202
211
220
301
310
400
Ответы
Ответ:
Ось програма на мові Python, яка виводить всі трицифрові числа, сума цифр яких дорівнює введеному користувачем значенню `n`:
```python
n = int(input("Введіть значення n: "))
for i in range(1, 10): # Перша цифра від 1 до 9
for j in range(0, 10): # Друга цифра від 0 до 9
for k in range(0, 10): # Третя цифра від 0 до 9
if i + j + k == n: # Перевіряємо, чи сума цифр дорівнює n
print(i * 100 + j * 10 + k) # Виводимо трицифрове число
```
Ця програма перебирає всі можливі комбінації цифр для трьох позицій і виводить ті, у яких сума цифр дорівнює `n`.
Відповідь:
на Мові С++ буде якось так.
#include <iostream>
using namespace std;
int main() {
int n;
cout << "Enter the value of n: ";
cin >> n;
for (int i = 1; i < 10; ++i) {
for (int j = 0; j < 10; ++j) {
for (int k = 0; k < 10; ++k) {
if (i + j + k == n) {
if (i * 100 + j * 10 + k >= 100 && i * 100 + j * 10 + k <= 999) {
cout << i * 100 + j * 10 + k << endl;
}
}
}
}
}
return 0;
}
Пояснення:
#include <iostream>
using namespace std;
int main() {
// Оголошуємо змінну для зберігання введеного значення n
int n;
cout << "Введіть значення n: ";
cin >> n;
// Перевіряємо всі можливі комбінації трицифрових чисел
for (int i = 1; i < 10; ++i) {
for (int j = 0; j < 10; ++j) {
for (int k = 0; k < 10; ++k) {
// Перевіряємо, чи сума цифр рівна введеному значенню n
if (i + j + k == n) {
// Перевіряємо, чи це трицифрове число
if (i * 100 + j * 10 + k >= 100 && i * 100 + j * 10 + k <= 999) {
cout << i * 100 + j * 10 + k << endl;
}
}
}
}
}
return 0;
}