Рекурсивная функция (задачи)

Ниже на пяти языках программирования записана рекурсивная функция (процедура) F.

БейсикPython
SUB F(n)
    PRINT n,
    IF n > 2 THEN
       F(n − 1)
       F(n − 2)
       F(n − 3)
    END IF 
 END SUB
def F(n):
    print (n)
    if n > 2:
        F(n − 1)
        F(n − 2)
        F(n − 3)
ПаскальАлгоритмический язык
procedure F(n: integer); 
begin
    write(n);
    if n > 2 then
    begin
      F(n − 1);
      F(n − 2);
      F(n − 3)
    end
 end;
алг F(цел n)
нач
    вывод n
    если n > 2 то
      F(n − 1)
      F(n − 2)
      F(n − 3)
    все
кон
Си
void F(int n ){
    cout « n « endl;
    if (n > 2) {
        F(n − 1);
        F(n − 2);
        F(n − 3);
    }
 }

Что выведет программа при вызове F(4)? В ответе запишите последовательность выведенных цифр слитно (без пробелов).

 


Ниже на пяти языках программирования записан рекурсивный алгоритм F.

БейсикPython
SUB F(n)
    IF n > 0 THEN
         PRINT N
         F(n − 4)
         F(n \ 2)
    END IF
 END SUB
 
def F(n):
    if n > 0:
        print(n)
         F(n − 4)
         F(n // 2)
 
ПаскальАлгоритмический язык
procedure F(n: integer);
begin
    if n > 0 then begin
        write(n);
        F(n − 4);
        F(n div 2);
    end
end;
 
алг F(цел n)
нач
    если n > 0 то 
        вывод n
        F(n − 4)
        F(div(n,2))
    все
кон
 
С++
void F (int n)
{
     if (n > 0) {
        std::cout << n;
        F (n − 4);
        F (n / 2);
    }
}
 

Запишите подряд без пробелов и разделителей все числа, которые будут напечатаны на экране при выполнении вызова F(9). Числа должны быть записаны в том же порядке, в котором они выводятся на экран.

Рейтинг

Проблемы с госуслугами, медленный интернет или плохая связь? Напишите об этом — Минцифры поможет с решением