Программа
CONST QuantityElement=6; { Количество элементов вектора }
TYPE ElementType=integer; { Тип элементов вектора }
VectorType=array [1..QuantityElement] of ElementType; { Вектор-тип }
VAR Vector:VectorType; { Вектор }
FUNCTION GetMinElementVector (B:VectorType):ElementType;
{ Функция поиска минимального элемента вектора }
Var i:word; { Счетчик }
Min:ElementType; { Буфер минимального элемента }
Begin
Min:=B[1]; { Начальное определение минимального элемента }
for i:=1 to QuantityElement do { Цикл просмотра элементов вектора }
if B[i]<Min then Min:=B[i]; { Если текущий элемент
меньше минимального, то - переопределение минимального }
GetMinElementVector:=Min { Определение значения функции }
End;
FUNCTION GetMaxElementVector (B:VectorType):ElementType;
{ Функция поиска максимального элемента вектора }
Var i:word; { Счетчик }
Max:ElementType; { Буфер максимального элемента }
Begin
Max:=B[1]; { Начальное определение максимального элемента }
for i:=1 to QuantityElement do { Цикл просмотра элементов вектора }
if B[i]>Max then Max:=B[i]; { Если текущий элемент
больше максимального, то - переопределение максимального }
GetMaxElementVector:=Max { Определение значения функции }
End;
PROCEDURE InputVector (var B:VectorType); { Процедура ввода вектора }
Var i:word; { Счетчик }
Begin
Randomize;
for i:=1 to QuantityElement do { Цикл ввода элементов вектора }
begin
{ Write('Введите элемент [',i,'] ');
{ Вывод приглашения ввести элемент вектора }
{ ReadLn(B[i]); { Ввод элемента вектора }
B[i]:=Integer(5)-Random(10)
end
End;
PROCEDURE SortVector (var B:VectorType);
{ Процедура сортировки вектора по убыванию }
Var i,j:word; { Счетчики }
NumOfMax:word;
{ Номер максимального элемента в неотсортированной части массива }
Buf:ElementType; { Переменная для обмена содержимого ячеек массива }
Begin
for i:=1 to QuantityElement-1 do
begin
NumOfMax:=i;
for j:=i+1 to QuantityElement do
if B[NumOfMax]<B[j] then NumOfMax:=j;
if NumOfMax<>i then begin
Buf:=B[NumOfMax];
B[NumOfMax]:=B[i];
B[i]:=Buf
end
end
End;
PROCEDURE OutputVector (B:VectorType); { Процедура вывода вектора }
Var i:word; { Счетчик }
Begin
for i:=1 to QuantityElement do { Цикл вывода вектора }
Write (B[i],' '); { Вывод элемента вектора }
WriteLn { Вывод конца строки }
End;
PROCEDURE ProcessVector (B:VectorType); { Процедура просмотра вектора }
Var i:word; { Счетчик }
Begin
for i:=1 to QuantityElement do { Цикл просмотра вектора }
End;
BEGIN
WriteLn; { Пропуск строки }
InputVector(Vector); { Ввод вектора }
WriteLn; { Пропуск строки }
WriteLn(' Вектор: '); { Вывод заголовка }
OutputVector(Vector); { Вывод вектора }
SortVector(Vector); { Сортировка вектора }
OutputVector(Vector); { Вывод вектора }
WriteLn; { Пропуск строки }
WriteLn('Min=',GetMinElementVector(Vector),
' Max=',GetMaxElementVector(Vector));
{ Получение и вывод минимального и максимального элементов вектора }
END.
Бесплатные примеры программ
Примеры написанных программ
Помощь студентам по программированию