Найдите второе (в порядке возрастания) натуральное число Х, для которого данный алгоритм будет выводить результат. Для решения этой задачи необходимо написать программу, которая будет перебирать все числа. Вот пример кода на языке Pascal:
var x:integer;
begin
readln(x);
while x < 100 do
begin
if x mod 2 < 1
x := x div 2
else
x := 3*x + 1
end;
writeln(x);
end
Детальное объяснение:
Алгоритм заключается в следующем:
1. Вводится число x.
2. В цикле проверяется условие: пока x 0), то x умножается на 3 и прибавляется 1 (x := 3*x + 1).
5. По окончанию цикла выводится текущее значение x.
Найдем второе натуральное число (в порядке возрастания), для которого данный алгоритм выведет результат:
1. Попробуем первое натуральное число x = 1.
2. В цикле проверяем условие: 1 < 100.
* x mod 2 = 1, поэтому x = 3*1 + 1 = 4.
3. Выводим результат: 4.
Совет: Лучший способ разобраться в этом алгоритме — самостоятельно провести несколько итераций на бумаге для разных значений x, следуя шагам алгоритма.
Задание: Найдите третье (в порядке возрастания) натуральное число, для которого данный алгоритм будет выводить результат.