function FirstNegative(a:V;n:integer):integer; var i:integer; begin i:=0; Result:=0; repeat i:=i+1; if a[i]<0 then Result:=i until (Result>0) or (i>n) end;
const m=8; n=11; var a,b:V; i,p,q:integer; begin Randomize; for i:=1 to m do a[i]:=random(100)-50; for i:=1 to n do b[i]:=random(100)-50; p:=FirstNegative(a,m); q:=FirstNegative(b,n); writeln('Массив А'); for i:=1 to m do write(a[i]:5); writeln; writeln('Массив B'); for i:=1 to n do write(b[i]:5); writeln; if p<=q then writeln('Номер первого отрицательного элемента в массива А: ',p) else writeln('Номер первого отрицательного элемента в массива B: ',q) end.
Тестовый прогон: Массив А 37 14 -25 32 30 -29 38 27 Массив B 33 -36 23 -17 -3 -16 -33 33 -48 -39 30 Номер первого отрицательного элемента в массива B: 2
Const n=5; // обязательно должно быть нечетным var i,j,max,x,k:integer; a:array[1..n,1..n]of integer; begin writeln('Исходный массив:'); for i:=1 to n do begin for j:=1 to n do begin a[i,j]:=random(20); write(a[i,j]:4); end; writeln; end; max:=a[1,1]; for i:=1 to n do begin if a[i,i]>max then max:=a[i,i]; if a[i,n+1-i]>max then max:=a[i,n+1-i]; end; k:=n div 2+1; x:=a[k,k]; for i:=1 to n do begin if a[i,i]=max then a[i,i]:=x; if a[n+1-i,i]=max then a[n+1-i,i]:=x; end; a[k,k]:=max; writeln('Измененный массив:'); for i:=1 to n do begin for j:=1 to n do write(a[i,j]:4); writeln end end.