1,2,3,4,5,6,8
Объяснение:
Что напечатается:
1
3
5
6
2
4
6
8
4
6
8
При вызове F(1) печатается 1. Дальше вызовется F(3)
Напечатается 3. Вызовется F(5)
Напечатается 5. F(7) не вызывается, т.к. 7>5
Теперь вызывается вторая функция для F(3), то есть F(6)
Печатается 6. Дальше вызывается вторая функция для F(1), то есть F(2)
Печатается 2. Вызывается первая функция для F(2), т.е. F(4).
Печатается 4. Вызывается первая функция для F(4), т.е. F(6).
Печатается 6. Вызывается вторая функция для F(4), т.е. F(8)
Печатается 8. Вызывается вторая функция для F(2), т.е. F(4)
Печатается 4. Вызываются первая и вторая функции F(6) и F(8)
Печатается 6
Печатается 8
Поделитесь своими знаниями, ответьте на вопрос:
У исполнителя Математик две команды, которым присвоены номера:1. Умножить на 2;2. Прибавь 3.Исполнитель Математик работает только с натуральными числами. Составьте алгоритм получения из числа 4 числа 47, содержащий не более 5команд. В ответе запишите только номера команд.
type
base = record
id: integer;
ball: integer;
end;
var
t: text;
a: array of array of integer;
n: integer;
st, tmp: string;
err: integer := 1;
database: base;
begin
readln(n);
setlength(a, n);
for i: integer := low(a) to high(a) do
setlength(a[i], 2);
for i: integer := low(a) to high(a) do
begin
readln(st);
tmp := st;
delete(tmp, pos(' ', tmp, err), tmp.Length - pos(' ', tmp, err) + 1);
database.id := strtoint(tmp);
tmp := st;
delete(tmp, 1, pos(' ', tmp, err));
database.ball := strtoint(tmp);
a[i, 0] := database.id;
a[i, 1] := database.ball;
end;
var j: integer := 0;
assign(t, 'output.txt');
rewrite(t);
while (j <= high(a)) do
begin
if (j + 1 < high(a)) and (a[j, 1] = a[j + 1, 1]) then
if (a[j, 0] < a[j + 1, 0]) then begin
write(t, inttostr(a[j, 0])); write(t, ' '); write(t, inttostr(a[j, 1])); writeln(t,'');
write(t, inttostr(a[j + 1, 0])); write(t, ' '); write(t, inttostr(a[j + 1, 1])); writeln(t,'');
end else begin
write(t, inttostr(a[j + 1, 0])); write(t, ' '); write(t, inttostr(a[j + 1, 1])); writeln(t,'');
write(t, inttostr(a[j, 0])); write(t, ' '); write(t, inttostr(a[j, 1])); writeln(t,'');
end;
if (j+1=n) then
write(t, inttostr(a[j, 0])); write(t, ' '); write(t, inttostr(a[j, 1])); writeln(t,'');
inc(j, 2);
end;
close(t);
end.