Найти наибольшие элементы и их порядковый номер для 2-х одномерных массивов.(N<=80) - Pascal(Паскаль)

uses
  crt;
const
  N=10;
var
  a,b:array[1..N]of integer;
  i,amax,bmax:integer;
begin
  clrscr;
  writeln('- A:');
  for i:=1 to N do
  begin
    a[i]:=random(100)-50;
    write(a[i],' ')
  end;
  writeln;
  writeln('- B:');
  for i:=1 to N do
  begin
    b[i]:=random(100)-50;
    write(b[i],' ')
  end;
  writeln;
  amax:=1;
  bmax:=1;
  for i:=1 to N do
  begin
    if a[i]>a[amax] then
      amax:=i;
    if b[i]>b[bmax] then
      bmax:=i;
  end;
  writeln('a[',amax,']=',a[amax],' - Макс. A');
  writeln('b[',bmax,']=',b[bmax],' - Макс. B')
end.

Вариант 2

uses crt;
const nmax=100;
type mas=array[1..nmax] of real;
procedure Max(x:mas;n:byte;var xmax:real;lmax:byte);
var l:byte;
begin
{первый блок подпрограммы - создание массива}
repeat
write('Размер массива=');
readln(n);
until n in [1..nmax];
for l:=1 to n do
 begin
  x[l]:=10*random;
  write(x[l]:5:2);
 end;
writeln;
{второй блок подпрограммы - нахождение максимального и его номера}
xmax:=-exp(10*ln(10));
for l:=1 to n do
if x[l]>xmax then
 begin
  xmax:=x[l];
  lmax:=l;
 end;
writeln('Максимальный элемент=',xmax:0:2,'  его номер=',lmax);
writeln;
end;
{левая блок-схема - сама программа}
var a1,a2:mas;
    n1,n2,imax:byte;
    amax:real;
begin
clrscr;
Max(a1,n1,amax,imax);
Max(a2,n2,amax,imax);
readln
end.

Leave a Comment

3 + 7 =