Пожалуйста,решите и растолкуйте мне...!Очень безотлагательно,будет самостоятельная по таким задачкам.Ниже
Пожалуйста,решите и растолкуйте мне...!Очень безотлагательно,будет самостоятельная по таким задачкам.
Ниже записана программка. Получив на вход число x, эта программа печатает два числа. Укажите наивеличайшее из таких чисел x, при вводе которых метод печатает поначалу 3, а позже 4.
var x, L, M: integer;
begin
readln(x);
L:=0; M:=9;
while x gt; 5 do begin
L:= L + 1;
if M gt; (x mod 10) then M:= x mod 10;
x:= x div 10;
end;
writeln(L); write(M);
end.
1 ответ
Денис Агафонин
Функция x mod 10 - это остаток от дробления х на 10. 387 mod 10 = 7.
Функция x div 10 - это целочисленное деление x на 10. 387 div 10 = 38.
L возрастает в цикле каждый раз на 1. Означает, было 3 цикла.
х каждый раз целочисленно делится на 10.
Цикл идет, пока x gt; 5. Означает, заключительный раз было x lt; 50.
M - это наименьший остаток от разделения x на 10.
Если на выходе M = 4, значит остатки были: 9, 8, 7, 6, 5, 4.
Допустим, остатки были 9, 9, и 4, и заключительный раз было x = 49,
тогда на 2-ом цикле было x = 499, а на 1-ом x = 4994.
Проверяем:
1 цикл. M = 9, x = 4994, x mod 10 = 4994 mod 10 = 4
9 gt; 4 ? Да, означает M = 4. x = x div 10 = 4994 div 10 = 499
2 цикл. M = 4, x = 499, x mod 10 = 499 mod 10 = 9
4 gt; 9 ? Нет, означает М остается = 4. x div 10 = 499 div 10 = 49.
3 цикл. M = 4, x = 49, x mod 10 = 49 mod 10 = 9.
4 gt; 9 ? Нет, означает М остается = 4. x div 10 = 49 div 10 = 4
Условие цикла x gt; 5 не производится, выходим из цикла.
Функция x div 10 - это целочисленное деление x на 10. 387 div 10 = 38.
L возрастает в цикле каждый раз на 1. Означает, было 3 цикла.
х каждый раз целочисленно делится на 10.
Цикл идет, пока x gt; 5. Означает, заключительный раз было x lt; 50.
M - это наименьший остаток от разделения x на 10.
Если на выходе M = 4, значит остатки были: 9, 8, 7, 6, 5, 4.
Допустим, остатки были 9, 9, и 4, и заключительный раз было x = 49,
тогда на 2-ом цикле было x = 499, а на 1-ом x = 4994.
Проверяем:
1 цикл. M = 9, x = 4994, x mod 10 = 4994 mod 10 = 4
9 gt; 4 ? Да, означает M = 4. x = x div 10 = 4994 div 10 = 499
2 цикл. M = 4, x = 499, x mod 10 = 499 mod 10 = 9
4 gt; 9 ? Нет, означает М остается = 4. x div 10 = 499 div 10 = 49.
3 цикл. M = 4, x = 49, x mod 10 = 49 mod 10 = 9.
4 gt; 9 ? Нет, означает М остается = 4. x div 10 = 49 div 10 = 4
Условие цикла x gt; 5 не производится, выходим из цикла.
, оставишь ответ?
Похожие вопросы
-
Вопросы ответы
Новое
NEW
Статьи
Информатика
Статьи
Последние вопросы
Игорь 14 лет назад был на 8 лет моложе, чем его
Математика.
Два тела массами m1 и m2 находящие на расстоянии R друг
Физика.
В сосуде 4целых одна пятая литр воды что бы заполнить сосуд
Математика.
Двум малярам Диме И Олегу поручили выкрасить фасад дома они разделили
Разные вопросы.
найти порядковый номер 41Э если в ядре 20 нейтронов
Разные вопросы.
в ряду натуральных чисел 3, 8, 10, 24, … 18 одно
Математика.
Предприятие по производству с/хоз продукции на производство затратило 3527000 руб Валовый
Разные вопросы.
Математика, задано на каникулы. ВАРИАНТ 1004
НОМЕР 1,2,3,4,5,6,7,8.
Математика.
Имеются три конденсатора емкостью С1=1мкФ, С2=2мкФ и С3=3мкФ. Какую наименьшую емкость
Физика.
Из точки м выходят 3 луча MP MN и MK причём
Геометрия.
Облако тегов