Это проход
пока база = нет повторить
если направо стена = нет то направо
если сверху стена = нет то вперед
если внизу стена = нет то вниз
если слева стена = нет то налево
конец_цикла
конец
Var a,b,c,n:integer;begin readln(n); if n <= 2 then writeln(1) else begin a := 1; b := 1; while n > 2 do begin c := a + b; a := b; b := c; dec(n) end; writeln(c); end;<span>end.</span>
Заводишь переменную, скажем, max = 0, делаешь цикл for по всему массиву, в цикле условным оператором проверяешь условие a[i]>max, если выполняется, то присваиваешь переменной max значение элемента a[i] (max=a[i]), после цикла пишешь какой-нибудь переменной result = max*3. Вывести на экран result не забыть.
const
N = 15;
var
a: array[1..N] of integer;
i, j, tmp: integer;
begin
for i := 1 to N do begin
a[i] := random(50);
write(a[i], ' ');
end;
writeln;
for i := 1 to N - 1 do
for j := 1 to N - i do
if a[j] > a[j+1] then begin
tmp := a[j];
a[j] := a[j+1];
a[j+1] := tmp
end;
write('По возрастанию: ');
for i := 1 to N do
write(a[i], ' ');
end.
Program n1;
function ger(x1,y1,x2,y2,x3,y3:real):real;
begin
ger:=abs((x1-x2)*(y3-y2)-(y1-y2)*(x3-x2))/2;
end;
var x1,y1,x2,y2,x3,y3,x4,y4,s: real;
begin
writeln('Введите координаты вершины А:');
readln(x1,y1);
writeln('Введите координаты вершины B:');
readln(x2,y2);
writeln('Введите координаты вершины C:');
readln(x3,y3);
writeln('Введите координаты вершины D:');
readln(x4,y4);
writeln('Площадь ABCD=',ger(x1,y1,x2,y2,x3,y3)+ger(x1,y1,x3,y3,x4,y4):6:2);
end.