Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Минимальные значения элементов массива с четными и нечетными индексами.



Читайте также:
  1. B6 - Ударные Инструменты General MIDI - Назначения Нот
  2. I. Гашение дуги с помощью полупроводниковых элементов
  3. II этап Развитие грудобрюшного типа дыхания с включением элементов дыхательной гимнастики А.Н. Стрельниковой
  4. II. УСЛОВНЫЕ ОБОЗНАЧЕНИЯ И ЗНАКИ
  5. II. УСЛОВНЫЕ ОБОЗНАЧЕНИЯ И ЗНАКИ
  6. II.3.2. Эффекты взаимного влияния элементов
  7. LinEq Lowband, LinEq Broadband - эквалайзеры, обеспечивающие минимальные фазовые искажения

Program arr2;

Uses Crt;

(*$DEFINE DEBUG*) {для отладки программы сотрите (* *),

Тогда можно не тратить время на ввод массива, DEBUG

может быть заменено любым другим идентификатором}

type Data = integer; {В этом месте мы можем изменить тип для всей программы}

const N =6;

{в режиме отладки не надо вводить массив: он уже есть}

mas: array [0..N-1] of Data =(14,17,12,19,15,13);

(*****************************************************)

procedure EvenOddMin(var mas:array of Data; count:integer;var min1,min2:Data);

var j,lim:integer;

Begin

if not Odd(count-1) then lim:= count-1 else lim:= count-2;

j:=0;min1:=mas[j];

while j <= lim do begin

if mas[j] < min1 then min1:= mas[j];

Inc(j,2); (* т.е. j:=j+2 *)

End;

if Odd(count-1) then lim:= count-1 else lim:= count-2;

j:=1;min2:=mas[j];

while j <= lim do begin

if mas[j] < min2 then min2:= mas[j];

Inc(j,2); (* т.е. j:=j+2 *)

End

End;

(*****************************************************)

function MinOdd(var mas:array of Data; count:integer): Data;

var j,lim:integer;

min: Data;

Begin

if Odd(count-1) then lim:= count-1 else lim:= count-2;

j:=1;min:=mas[j];

while j <= lim do begin

if mas[j] < min then min:= mas[j];

Inc(j,2); (* т.е. j:=j+2 *)

End;

MinOdd:=min

End;

(******************************************************)

function MinEven(var mas:array of Data; count:integer): Data;

var j,lim:integer;

min: Data;

Begin

if not Odd(count-1) then lim:= count-1 else lim:= count-2;

j:=0;min:=mas[j];

while j <= lim do begin

if mas[j] < min then min:= mas[j];

Inc(j,2); (* т.е. j:=j+2 *)

End;

MinEven:=min

End;

(*****************************************************)

var j:integer; m1,m2:Data;

Begin

textattr:=30;ClrScr;

{$IFNDEF DEBUG} (* УСЛОВНАЯ КОМПИЛЯЦИЯ *)

(* если не определен DEBUG -отладка, то ввод массива

если определен DEBUG - отладка, то массив уже задан *)

for j:=low(mas) to high(mas) do begin

write (' mas[',j,'] = ');

readln (mas[j]);

End;

{$ENDIF} (* КОНЕЦ БЛОКА УСЛОВНОЙ КОМПИЛЯЦИИ *)


Дата добавления: 2015-07-11; просмотров: 76 | Нарушение авторских прав






mybiblioteka.su - 2015-2024 год. (0.012 сек.)