Вопрос по информатике:
Напишите как решать
Ниже на 5 языках программирования записан алгоритм. Получив на вход число х, этот алгоритм печатает число l. Укажите наибольшее нечетное число х, при вводе которого алгоритм печатает 102.
var x,l,m:integer;
begin
readln(x);
d:=x;
l:=30;
m:=456;
while l<=m do begin
l:=l+d;
m:=m-5*d;
end;
writeln(l);
end.
Алгоритм решения нужен
Трудности с пониманием предмета? Готовишься к экзаменам, ОГЭ или ЕГЭ?
Воспользуйся формой подбора репетитора и занимайся онлайн. Пробный урок - бесплатно!
- 24.07.2018 04:01
- Информатика
- remove_red_eye 13602
- thumb_up 14
Ответы и объяснения 1
Выводится значение l, которое вычисляется по формуле l=30+kx, где k - количество выполнений тела цикла while.
Получаем уравнение 30 + k·x = 102 → k·x = 72.
Но 72 = 2 × 2 × 2 × 3 × 3 если значение х нечетное, то оно может быть или 3, или 3 × 3 = 9.
В вопросе спрашивается о максимальном х, поэтому проверим, подходит ли х=9.
В этом случае k = 72 / 9 = 8
Значение k определяется условием выполнения цикла l ≤ m,
где m = 456 - 5·x·k.
При k= 8 получаем 102 ≤ 456 - 5×8×9; 102 ≤ 96 - ложно,
но еще при k=7 получаем 30+7×9 ≤ 456-5×7×9; 93 ≤ 141 истинно.
Следовательно, x=9 подходит.
Ответ: 9
- 25.07.2018 01:43
- thumb_up 11
Знаете ответ? Поделитесь им!
Есть сомнения?
Не нашли подходящего ответа на вопрос или ответ отсутствует? Воспользуйтесь поиском по сайту, чтобы найти все ответы на похожие вопросы в разделе Информатика.
Трудности с домашними заданиями? Не стесняйтесь попросить о помощи - смело задавайте вопросы!
Информатика — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации с применением компьютерных технологий, обеспечивающих возможность её использования для принятия решений.