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

Точно и четко сформулировать условие , которая решается в данной программе: program kr_2_3; var n, st : longint; begin write('введите натуральное число: '); readln(n); st : = 1; while n div st < > 0 do if not odd(n mod (st * 10) div st) then n : = n div (st * 10) * st + n mod st else st : = st * 10; writeln('ответ: ', n); end. задать натуральное число n и указать, каким оно станет после преобразования.

Показать ответ
Ответ:
Fluttershy0
Fluttershy0
05.10.2020 23:12
Программа для введённого с клавиатуры числа N выводит число, составленное из нечётных цифр десятичной записи числа N. Если в записи N нет ни одной нечётной цифры, выводится 0. Если N < 0, выводится что-то жуткое.

St - в любой момент степень 10, пусть St = 10^k. Тогда N Mod (St * 10) Div St получает (k + 1)-ую цифру справа в десятичной записи числа N. Затем, если она чётная, то вместо N рассматривается число N Div (St * 10) * St + N Mod St - число, получаемое из N вычитанием (k + 1)-й цифры. Если нечетное - берется следующее k.

Например, для N = 1234567 будет выведено "ответ: 1357", а для N = 24680 будет выведено "ответ: 0".
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота