Дан рекурсивный алгоритм: procedure f(n: integer); begin writeln(n); if n > 1 then begin writeln(n); f(n-2); f(n-5) end end; найдите сумму чисел, которые будут выведены при вызове f(9).
Program vst; var c:array [0..100] of integer; j,n,k,i:integer; min:integer; begin randomize; write('Введите N = '); readln(n); for i:=1 to n do c[i]:=random(36)-15; writeln; for i:=1 to n do write (c[i],' '); writeln; min:=c[1]; for i:=2 to n do if min>c[i] then min:=c[i]; writeln ('min = ',min); write('Введите место для вставки минимального элемента К = '); readln(k); writeln ('Вывод массива:'); write('Было: '); for i:=1 to n do write (c[i]:3,' '); for i:=n+1 downto k do c[i]:=c[i-1]; c[k]:=min; writeln; write('Стало: '); for i:=1 to n+1 do write (c[i]:3,' '); end.
program vst; var c:array [0..100] of integer; j,n,k,i:integer; min:integer; begin randomize; writeln('n='); read(n); for i:=1 to n do c[i]:=random(36)-15; writeln; for i:=1 to n do write (c[i],' '); min:=c[1]; for i:=2 to n do if min>c[i] then min:=c[i]; writeln ('min=',min); writeln('k='); read(k); for i:=n+1 downto k do c[i]:=c[i-1]; c[k]:=min; writeln; for i:=1 to n+1 do write (c[i],' '); end.
---
Чтобы был ручной ввод:
program vst; var c:array [0..100] of integer; j,n,k,i:integer; min:integer; begin writeln('n='); read(n); for i:=1 to n do readln(c[i]); writeln; for i:=1 to n do write (c[i],' '); min:=c[1]; for i:=2 to n do if min>c[i] then min:=c[i]; writeln ('min=',min); writeln('k='); read(k); for i:=n+1 downto k do c[i]:=c[i-1]; c[k]:=min; writeln; for i:=1 to n+1 do write (c[i],' '); end.
Program vst;
var
c:array [0..100] of integer;
j,n,k,i:integer;
min:integer;
begin
randomize; write('Введите N = '); readln(n);
for i:=1 to n do
c[i]:=random(36)-15;
writeln;
for i:=1 to n do
write (c[i],' ');
writeln;
min:=c[1];
for i:=2 to n do
if min>c[i] then min:=c[i];
writeln ('min = ',min);
write('Введите место для вставки минимального элемента К = '); readln(k);
writeln ('Вывод массива:');
write('Было: ');
for i:=1 to n do
write (c[i]:3,' ');
for i:=n+1 downto k do
c[i]:=c[i-1];
c[k]:=min;
writeln;
write('Стало: ');
for i:=1 to n+1 do
write (c[i]:3,' ');
end.
Чтобы массив заполнялся от -15 до 20:
program vst;
var c:array [0..100] of integer;
j,n,k,i:integer;
min:integer;
begin
randomize; writeln('n='); read(n);
for i:=1 to n do c[i]:=random(36)-15;
writeln;
for i:=1 to n do write (c[i],' ');
min:=c[1];
for i:=2 to n do
if min>c[i] then min:=c[i];
writeln ('min=',min);
writeln('k='); read(k);
for i:=n+1 downto k do c[i]:=c[i-1];
c[k]:=min;
writeln; for i:=1 to n+1 do write (c[i],' ');
end.
---
Чтобы был ручной ввод:
program vst;
var c:array [0..100] of integer;
j,n,k,i:integer;
min:integer;
begin
writeln('n='); read(n);
for i:=1 to n do
readln(c[i]);
writeln;
for i:=1 to n do write (c[i],' ');
min:=c[1];
for i:=2 to n do
if min>c[i] then min:=c[i];
writeln ('min=',min);
writeln('k='); read(k);
for i:=n+1 downto k do c[i]:=c[i-1];
c[k]:=min;
writeln; for i:=1 to n+1 do write (c[i],' ');
end.