Please!!!! Помогите решить задачку и растолкуйте на словах суть метода! Напишите

Please!!!! Помогите решить задачку и растолкуйте на словах сущность метода!
Напишите в ответе количество различных значений входной переменной a из интервала от 1 до 100 (включая границы), при которых программка выдаёт тот же ответ, что и при входном значении a = 20. Значение a = 20 также включается в подсчёт различных значений a.
var i, k, a: integer;
function f(x: integer; y: integer): integer;
begin
if x = y then
f := x else
if x gt; y then f := f(x - y, y)
else f := f(x, y - x);
end;
begin
k := 0;
readln(a);
for i := 1 to a do
if f(i, 4) = 2 then k := k + 1;
writeln(k);
end.

Задать свой вопрос
1 ответ
В функции f определяется наибольший общий делитель (НОД) чисел x и y. В главной программке подсчитывается количество чисел из спектра [1,a], у которых НОД(i,4)=2. При a=20 это количество = 5 (числа 2, 6, 10, 14, 18). Значение 5 получится, таким образом, если а будет = 18, 19, 20, 21. Всего 4 значения.
Ответ: 4
Таня Соколикова
Спасиб! Означает это измененный алгоритм Эвклида...
Milena Shavyrja
Да, именно так.
, оставишь ответ?
Имя:*
E-Mail:


Последние вопросы

Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт