Ниже записаны две рекурсивные функции (процедуры): F и G.
Какова сумма чисел, напечатанных на экране при выполнении вызова F(19)?
Паскаль:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | procedure F(n: integer); forward; procedure G(n: integer); forward; procedure F(n: integer); begin writeln(n mod 2); if n mod 2 = 0 then F(n div 2) else G((n - 1) div 2); end; procedure G(n: integer); begin writeln (n); if n > 0 then F(n); end; |
Бейсик:
|
Python:
|
С++:
|
✍ Решение:
Ответ: 16