Подскажите пожалуйста, как со всего масива вывести 2 минимальных значения при условии того что значения задаются рэндомом
ЗЫ да забыл при этом их не сортируя. Заранее очень благодарен.
Program nomer1;
const N=10;
var
mas:array[1..N]of integer;
i,min: integer;
begin
randomize;
for i:=1 to N do
begin
mas[i]:=random(108)+1900;
write(mas[i], '|');
end;
writeln;
min:=mas[i];
for i:=2 to N do
if mas[i] < min then
begin
min:= mas [i];
writeln (min)
end;
end.
Может так
Program nomer1;
uses crt;
const N=10;
var
mas:array[1..N] of integer;
i,min1,min2: integer;
begin
randomize;
for i:=1 to N do
begin
mas[i]:=random(108)+1900;
write(mas[i], '|');
end;
writeln;
min1:=mas[i];
for i:=1 to N do
if mas[i] < min1 then
begin
min1:= mas [i];
end;
min2:=mas[i];
for i:=1 to N do
if (mas[i]<min2) and (mas[i] >min1) then
begin
min2:= mas [i];
end;
writeln ('min1 = ',min1);
writeln ('min2 = ',min2);
readkey;
clrscr;
end.
Program nomer1;
uses crt;
const N=10;
var
mas:array[1..N]of integer;
i,min,j,k,rab: integer;
begin
randomize;
for i:=1 to N do
begin
mas[i]:=random(108)+1900;
end;for i:=1 to n do
write (mas[i], '|');
for j:=1 to n-1 do
for i:=1 to n-1 do
if mas[i]>mas[i+1] then
begin
rab:=mas[i+1];
mas[i+1]:=mas[i];
mas[i]:=rab;
for k:=1 to n do
end;
writeln;
writeln ('1 ', mas[1]);
writeln ('2 ', mas[2]);
end.
if mas[i]>mas[i+1] then... // а вот тут что?
За