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

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

Показать ответ
Ответ:
tinytigerkar
tinytigerkar
26.05.2020 04:50

a=2

b=8

цикл произошел два раза из-за a:=a+1

значит x равен от 100 до 9999(при прохождении получаются числа от 0,01 до 0,9999)

теперь остался b:

b в начале был равен и получил 8 при цикле. mod узнаёт остаток деления на 100 которое раза. посмотрим если выберем 9999

9999(остаток 99) -> 99,99(остаток 99+99). вывод: программа под буквой b вычислила сумма всех двузначных чисел. значит самое максимальное 800( 8 и 0) т.к. если выбрать больше 999 то 1000 это сумма 10 и 0 что не подходит. а нам надо самое максимальное.

ответ:800

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