Здравствуйте, GAF!
цитата: |
function f(x: integer; y: integer): integer; begin if y = 0 then f := x else f := f(y, x mod y) end; |
|
1)
функция f(x,y) = y, если y является делителем x.
Проверим, например, для x=4:
f(4,
1) = f(1, 4 mod 1) = f(1,0) =
1 f(4,
2) = f(2, 4 mod 2) = f(2,0) =
2 f(4,
3) = f(3, 4 mod 3) = f(3,1) = f(1, 3 mod 1) = f(1,0) =
1 f(4,
4) = f(4, 4 mod 4) = f(4,0) =
4 2) для a = 17 количество делителей будет равно 2 (17 делится без остатка на 1 и на 17, то есть является простым числом).
K = 2.
3) количество различных значений входной переменной a из интервала от 1 до 30 (включая границы), при которых программа выдаёт тот же ответ (k=2), что и при входном значении a = 17, будет равно количеству простых чисел в интервале [1, 30].
Это числа 2, 3, 5, 7, 11, 13, 17, 19, 23, 29.
Всего их 10.
Ответ: 10.