Задача 5. Рекурсия
Изучив тему рекурсия Василий написал такой код (для удобства приводим его на трех языках программирования):
Код на языке Python:
def f(n):
if n == 1:
print('*')
else:
if n % 2 == 0:
print('*')
f(n // 2)
if n % 3 == 0:
print('*')
f(n // 3)
f(n - 1)
n = int(input())
f(n)
Код на языке C++:
void f(int n){
if (n == 1){
cout << '*';
}
else{
if (n % 2 == 0){
cout << '*';
f(n / 2);
}
if (n % 3 == 0){
cout << '*';
f(n / 3);
}
f(n - 1);
}
}
cin >> n;
f(n);
Код на языке Pascal:
function f(n:longint):longint;
begin
if n = 1 then
writeln('*')
else begin
if n mod 2 = 0 then begin
writeln('*');
f(n div 2);
end;
if n mod 3 = 0 then begin
writeln('*');
f(n div 3);
end;
f(n - 1);
end;
readln(n);
f(n);
Сколько звездочек напечатает эта программа при n = 100?
Ответы
Ответ дал:
0
ответ 83. просто Visual Studio запустил написал программу и подставил число 100 ответ выдало 83.
Похожие вопросы
1 год назад
2 года назад
2 года назад
8 лет назад
8 лет назад