Задание № 7580

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

Бейсик

DECLARE SUB F(n)
DECLARE SUB G(n)

SUB F(n)
	IF n > 0 THEN G(n - 1)
END SUB

SUB G(n)
	PRINT "*"
	IF n > 1 THEN F(n - 3)
END SUB

Python

def F(n):
	if n > 0:
		G(n - 1)

def G(n):
	print("*")
	if n > 1:
		F(n - 3)

Алгоритмический язык

алг F(цел n)
нач
	если n > 0 то
		G(n - 1)
	все
кон

алг G(цел n)
нач
	вывод "*"
	если n > 1 то
		F(n - 3)
	все
кон

Паскаль

procedure F(n: integer); forward;
procedure G(n: integer); forward;

procedure F(n: integer);
begin
	if n > 0 then
		G(n - 1);
end;

procedure G(n: integer);
begin
	writeln('*');
	if n > 1 then
		F(n - 3);
end;

Си

void F(int n);
void G(int n);

void F(int n){
	if (n > 0)
		G(n - 1);
}

void G(int n){
	printf("*");
	if (n > 1)
		F(n - 3);
}

Сколько символов «звёздочка» будет напечатано на экране при выполнении вызова F(11)?


Решать другие задания по теме: Ре­кур­сив­ные алгоритмы

Показать ответ
Комментарий:
Ответ: 3

Нашли ошибку в задании? Выделите фрагмент и нажмите Ctrl + Enter.