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

Ниже записана программа. получив на вход число , эта программа печатает два числа, l и m .укажите наибольшее из таких чисел , при вводе которых алгоритм печатает сначала 3, а потом 0. var x, l, m: integer; begin readln(x); l: =0; m: =0; while x > 0 do begin l: = l + 1; if x mod 2 = 0 then m: = m + x mod 10; x: = x div 10; end; writeln(l); write(m); end

Показать ответ
Ответ:
sashadavydov2
sashadavydov2
26.08.2020 13:29
Оператор div отрезает последнюю цифру числа, а mod считает остаток от деления на 2. Если он равен нулю, то выполняется действие M:= M + x mod 10.
Сначала выводится переменная L, в ней содержится счетчик, который считает, сколько раз оператор div отрежет цифру. Отсюда следует, что число должно быть трехзначным. В нашем случае ответом будет число 999, потому что div отрежет последнюю цифру три раза, а условие if x mod 2 = 0 then не будет выполнятся, потому что  остаток от деления на 2 числа 999 не равен нулю, программа выведет 0.
ответ: 999
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота