Технический форум

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   Массивы (http://www.tehnari.ru/f41/t87680/)

grisha2207 21.04.2013 11:45

Дан массив целых чисел длинной n ,элементы которого могут повторятся .Найти третий по величине элемент массива.

Через Паскаль

Vladimir_S 21.04.2013 16:40

Цитата:

Сообщение от grisha2207 (Сообщение 899265)
Дан массив целых чисел длинной n ,элементы которого могут повторятся .Найти третий по величине элемент массива.

Через Паскаль

Например, так:
Код:

Const
 N=16;
Var
 A:Array[1..N] of Byte;
 M,j:Byte;

Function Find_Max:Byte;
var Max,i:Byte;
begin
 Max:=0;
 for i:=1 to N do
  if A[i]>Max then Max:=A[i];
 Find_Max:=Max;
end;

Procedure Zero_Max(Mx:Byte);
var i:Byte;
begin
 for i:=1 to N do
  if A[i]=Mx then A[i]:=0;
end;

Procedure Out_Max(Mx:Byte);
var i:Byte;
begin
 for i:=1 to N do
  if A[i]=Mx then writeln('A[',i:2,']= ',A[i]);
end;

Begin
 Randomize;
 for j:=1 to N do
  begin
  A[j]:=Random(N*2);
  write(A[j]:4);
  end;
 writeln;
 writeln;
 For j:=1 to 2 do
  begin
  M:=Find_Max;
  Zero_Max(M);
  end;
 M:=Find_Max;
 Writeln('Result:');
 Out_Max(M);
 Readln
End.



Часовой пояс GMT +4, время: 01:30.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.