C++ Напишите программу, которая вводит натуральные числа а и b и выводит на экран все натуральные числа на отрезке [ a , b ] , делящиеся на каждую из своих цифр. Входные данные Входная строка содержит два натуральных числа – значения a и b , разделённых пробелами. Гарантируется, что a ≤ b . Выходные данные Программа должна вывести в одну строчку все натуральные числа на отрезке [ a , b ] , делящиеся на каждую из своих цифр. Числа разделяются пробелами. Примеры Входные данные 10 20 Выходные данные 11 12 15
bool checkDigitsDivisible(int n) { int num = n; while (num > 0) { int digit = num % 10; if (digit == 0 || n % digit != 0) { return false; } num /= 10; } return true; }
int main() { int a, b; std::vector results;
std::cin >> a >> b; for (int i = a; i <= b; i++) { if (checkDigitsDivisible(i)) { results.push_back(i); } } for (int i = 0; i < results.size(); i++) { std::cout << results[i] << " "; } return 0;
bool checkDigitsDivisible(int n) {
int num = n;
while (num > 0) {
int digit = num % 10;
if (digit == 0 || n % digit != 0) {
return false;
}
num /= 10;
}
return true;
}
int main() {
std::cin >> a >> b;int a, b;
std::vector results;
for (int i = a; i <= b; i++) {
if (checkDigitsDivisible(i)) {
results.push_back(i);
}
}
for (int i = 0; i < results.size(); i++) {
std::cout << results[i] << " ";
}
return 0;
}