
Найти все натуральные числа, не превышающие заданного n и делятся на каждую из своих цифр (в
десятичной системе счисления) на языке - C

Ответы на вопрос

function Check(n: integer): boolean;
begin
result := true;
var T := n;
while T > 0 do
begin
if T mod 10 = 0 then //проверка цифры на ноль
begin
T := T div 10;
continue;
end;
if n mod (T mod 10) = 0 then
T := T div 10
else
begin
result := false;
exit;
end;
end;
end;
begin
var N := ReadlnInteger('N =');
for var i := 1 to N do
if Check(i) then Print(i);
end.



Вот пример программы на языке C, которая выводит все натуральные числа, не превышающие заданное число n
и делящиеся на каждую из своих цифр:
c#include <stdio.h>
int isDivisibleByDigits(int num) {
int temp = num;
while (temp != 0) {
int digit = temp % 10;
if (digit == 0 || num % digit != 0) {
return 0;
}
temp /= 10;
}
return 1;
}
void findNumbers(int n) {
printf("Numbers divisible by each of their digits up to %d:\n", n);
for (int i = 1; i <= n; i++) {
if (isDivisibleByDigits(i)) {
printf("%d\n", i);
}
}
}
int main() {
int n;
printf("Enter a number: ");
scanf("%d", &n);
findNumbers(n);
return 0;
}
Вы можете скопировать этот код в файл с расширением .c
, скомпилировать его с помощью компилятора C (например, GCC) и запустить полученную программу. После ввода числа n
она выведет все натуральные числа, не превышающие n
и делящиеся на каждую из своих цифр.
Программа использует две функции: isDivisibleByDigits
и findNumbers
. isDivisibleByDigits
проверяет, делится ли число num
на каждую из своих цифр, и возвращает 1, если это так, и 0 в противном случае. findNumbers
перебирает все числа от 1 до n
и выводит те, которые удовлетворяют условию деления на каждую цифру.
Например, если вы введите число 100, программа выведет все натуральные числа, не превышающие 100, и делящиеся на каждую из своих цифр.


Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili