Автомат получает на вход нечётное число X. По этому числу строится трёхзначное число Y по следующим правилам.
1. Первая цифра числа Y (разряд сотен) – остаток от деления X на 4.
2. Вторая цифра числа Y (разряд десятков) – остаток от деления X на 3.
3. Третья цифра числа Y (разряд единиц) – остаток от деления X на 2. Пример. Исходное число: 63179. Остаток от деления на 4 равен 3; остаток от деления на 3 равен 2; остаток от деления на 2 равен 1. Результат работы автомата: 321.
Укажите наименьшее двузначное число, при обработке которого автомат выдаёт результат 101.
Answers & Comments
Verified answer
1) Первый способ.
Первая цифра числа Y = X mod 4:
Ряд первых 10 чисел которые подходят под правило X mod 4 = 1:
1, 5, 9, 13, 17, 21, 25, 29, 33, 37 (Δ=4)
Вторая цифра числа Y = X mod 3:
Из предыдущего пункта, двухзначные числа, которые попадают под правило X mod 3 = 0:
21, 33
Третья цифра числа Y = X mod 2:
Поскольку X – число нечетное, то оно обязательно будет иметь остаток 1.
Наименьшее число из выбранных – это 21.
Ответ: 21
2) Второй способ.
Воспользуемся простеньким уравнением:
(X % 4 * 100) + (X % 3 * 10) + (X % 2)=101
И проверим его в промежутке от 11 до 99.
Если число из промежутка подходит по условию и нечетное, то это наш ответ.
Пример программы приведен ниже.
// PascalABC.NET
// Версия 3.4.2, сборка 1956 (01/30/19)
begin
for var x := 10 to 99 do
if ((X mod 4 * 100) + (X mod 3 * 10) + (X mod 2) = 101) and (X.IsOdd) then
begin
Println(x);
break;
end;
end.
Результат: 21