Вопрос задан 14.02.2021 в 15:28. Предмет Информатика. Спрашивает Кудра Роман.

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

десятичной системе счисления) на языке - C
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Внук-Карпова Ариана.
// вот тебе решение на паскале, в си сам переделывай
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.
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Вот пример программы на языке 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, и делящиеся на каждую из своих цифр.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос