В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
Q778
Q778
16.03.2021 23:59 •  Информатика

Составьте программу на паскале(с циклических алгоритмов (простых и вложенных),используя операции целочисленной арифметики): найти все натуральные числа, не превосходящие заданного n, которые делятся на каждую из своих цифр. и если можно, добавьте описание к строчкам, чтобы понять, что вы делали; просто не всегда бывает понятна суть программы. заранее ).

Показать ответ
Ответ:
жазира22
жазира22
10.08.2020 01:49
Var N,B,k:integer;
Begin
Write('N = ');ReadLn(N);
Write('Искомые числа:');
For N:= 1 to N do
    Begin
    B:=N;
    k:=1;
    // перед каждой проверкой k:=1
    // и если число не делится на любую из своих цифр, то k:=0
    While B > 0 do
       Begin
       if B mod 10 = 0 then k:=0
       // B mod 10 - это остаток от деления B на 10
       // то есть, например, 123 mod 10 = 3
       else if N mod (B mod 10) > 0 then k:=0;
       B:=B div 10
       // целая часть от деления B на 10
       // 123 div 10 = 12
       End;
    if k = 1 then Write(' ',N)
    End;
End.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота