Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Пример программы. {Последовательный поиск и перестановка местами



Program ObrMas;

{Последовательный поиск и перестановка местами

минимального и максимального элементов в массиве

Входные данные: k - количество элементов в массиве,

M - массив из целых чисел.

Выходное данное: M - преобразованный массив.}

Const

R=10; {Размер массива}

Type

TInd=1..R; {Тип индекса элемента массива}

TElem=Integer; {Тип элемента массива}

TMas=Array [TInd] Of TElem; {Тип массив}

Var

k,i,nmin,nmax:TInd; {1..R}

M:TMas; {Исходный и преобразованный массив}

min,max:TElem; {Текущие значения минимума и максимума}

Begin

{$R+} {Установка режима контроля индекса элемента}

Write('Задайте количество элементов не более ',R,': ');

ReadLn(k);

{Ввод массива}

Write('Введите ',k,' целых чисел одной строкой:');

For i:=1 To k

Do Read(M[i]); {Ввод элемента массива}

{Поиск минимума и максимума в массиве}

min:=M[1];

nmin:=1; {Начальные установки минимума}

max:=M[1];

nmax:=1; {Начальные установки максимума}

For i:=2 To k {Перебор элементов массива}

Do If M[i]<min {Сравнение элемента с минимумом}

Then Begin

min:=M[i]; {Текущий минимум}

nmin:=i {Номер минимального элемента}

End

Else If M[i]>max {Сравнение элемента с максимумом}

Then Begin

max:=M[i]; {Текущий максимум}

nmax:=i {Номер максимального элемента}

End;

{Перестановка местами минимума и максимума}

M[nmin]:=max;

M[nmax]:=min;

{Вывод массива}

WriteLn('Массив после перестановки:');

For i:=1 To k

Do Write (M[i],' '); {Вывод элемента массива}

WriteLn;

End.






Дата публикования: 2014-11-03; Прочитано: 282 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...