МегаПредмет

ПОЗНАВАТЕЛЬНОЕ

Сила воли ведет к действию, а позитивные действия формируют позитивное отношение


Как определить диапазон голоса - ваш вокал


Игровые автоматы с быстрым выводом


Как цель узнает о ваших желаниях прежде, чем вы начнете действовать. Как компании прогнозируют привычки и манипулируют ими


Целительная привычка


Как самому избавиться от обидчивости


Противоречивые взгляды на качества, присущие мужчинам


Тренинг уверенности в себе


Вкуснейший "Салат из свеклы с чесноком"


Натюрморт и его изобразительные возможности


Применение, как принимать мумие? Мумие для волос, лица, при переломах, при кровотечении и т.д.


Как научиться брать на себя ответственность


Зачем нужны границы в отношениях с детьми?


Световозвращающие элементы на детской одежде


Как победить свой возраст? Восемь уникальных способов, которые помогут достичь долголетия


Как слышать голос Бога


Классификация ожирения по ИМТ (ВОЗ)


Глава 3. Завет мужчины с женщиной


Оси и плоскости тела человека


Оси и плоскости тела человека - Тело человека состоит из определенных топографических частей и участков, в которых расположены органы, мышцы, сосуды, нервы и т.д.


Отёска стен и прирубка косяков Отёска стен и прирубка косяков - Когда на доме не достаёт окон и дверей, красивое высокое крыльцо ещё только в воображении, приходится подниматься с улицы в дом по трапу.


Дифференциальные уравнения второго порядка (модель рынка с прогнозируемыми ценами) Дифференциальные уравнения второго порядка (модель рынка с прогнозируемыми ценами) - В простых моделях рынка спрос и предложение обычно полагают зависящими только от текущей цены на товар.

Методы обработки одномерных массивов






Задача №1_Сумма элементов массива.

Пример программы, которая сначала вводит 30 реальных чисел, организовывает их хранение в массиве, определяет сумму элементов этого массива и выдаёт результат на экран.

PROGRAMM ex_1;

VAR

m: ARRAY[1..30] of real; {декларация массива}

i: integer; {параметр цикла FOR}

s: real; {сумма элементов}

BEGIN

FOR i:=1 TO 30 DO {заполнение массива}

Begin

Write('Введите элемент последовательности N ',i);

Readln(m[i]);

End;

s:=0; {обнуление счётчика суммы}

FOR i:=1 TO 30 DO s:=s+m[i]; {вычисление суммы}

Write('Сумма элементов последовательности равна ',s);

Readln; { пауза }

END.

Задача №2_Число положительных элементов массива

Пример программы, которая сначала вводит 30 реальных чисел, организовывает их хранение в массиве, определяет количество положительных элементов и выдаёт сообщение на экран.

PROGRAMM ex_2;

VAR

m: ARRAY[1..30] of real; {декларация массива}

i: integer; {параметр цикла FOR}

n: integer; {счётчик положительных эл-ов}

 

BEGIN

FOR i:=1 TO 30 DO {заполнение массива}

Begin

Write('Введите элемент последовательности N ',i);

Readln(m[i]);

End;

n:=0; {обнуление счётчика п. эл-ов}

FOR i:=1 TO 30 DO

if m[i]>=0 then n:=n+1; {вычисление количества п. эл-ов}

Write('Последовательность содержит ',n,' положительных эл-ов');

Readln; { пауза }

END.

Задача №3_Определение максимального элемента

Пример программы, которая сначала вводит 30 реальных чисел, затем организовывает их хранение в массиве, определяет значение и индекс (номер) максимального элемента этого массива и выдаёт сообщение на экран.

PROGRAMM ex_3;

VAR

m: ARRAY[1..30] of real; {декларация массива}

i: integer; {параметр цикла FOR}

max: real; {значение максимального элемента}

t: integer; {индекс (номер) макс. элемента}

 

BEGIN

FOR i:=1 TO 30 DO {заполнение массива}

Begin

Write('Введите элемент последовательности N ',i);

Readln(m[i]);

End;

max:=m[1]; {допустим, что 1-й элемент - максимален}

t:=1;

FOR i:=1 TO 30 DO

if m[i]>max then {проверка нашего утверждения}

begin

max:=m[i];

t:=i;

end;

Writeln('Максимальный элемент последовательности равен ',max);

Writeln('Номер максимального элемента ',t);

Readln; { пауза }

END.

Задача №4_ Поиск элемента в неупорядоченном массиве

Пример программы, которая сначала вводит 30 реальных чисел, организовывает их хранение в массиве, затем запрашивает так называемое "контрольное число". После этого проверяет, есть ли в массиве элемент,

который равен контрольному числу.

PROGRAMM ex_4;

VAR

m: ARRAY[1..30] of real; {декларация массива}

i: integer; {параметр цикла FOR}

p: real; {значение искомого элемента}

t: integer; {индекс (номер) иском. элемента}

BEGIN

FOR i:=1 TO 30 DO {заполнение массива}

Begin

Write('Введите элемент последовательности N ',i);

Readln(m[i]);

End;

Write('Введите контрольное число ');

Readln(p);

t:=0; {допустим, что в массиве нет такого элемента}

FOR i:=1 TO 30 DO

if m[i]=p then {проверка нашего утверждения}

begin

t:=i;

write('Эл. N ',i,' равен искомому');

end;

if t=0 then write('В массиве нет такого элемента');

Readln; { пауза } END.

 

Задача №5_ Дан массив А на 5 значений. Суммировать значения элементов массива до появления первого отрицательного элемента, т.е. значения A[I]<0. Полученную сумму вывести.

Const a : array[1..5] of real = (7, 5, 1, -2, 4);

Label m;

Var s : real; i : integer;

Begin s :=0;

for i:=1 to 5 do

begin if a[i]<0 then goto m; s :=s+a[i];

end;

m: writeln(‘s=’, s:12);


Практическая часть работы

Индивидуальные задания

Задание №1. (выполняется в соответствии с вашим вариантом)Необходимо организовать указанную в задании обработку одномерного массива.

№ вар. Количество элементов Способ ввода Способ вывода Обработка массива Поиск Перестановки вмассиве
10 вещественные Ввод с клавиатуры, описать в константах количество элементов В строку через один пробел Сумма элементов массива, которые оканчиваются цифрой ноль max Поменять местами максимальный и первый элементы
целые Ввод с клавиатуры, описать в константах количество элементов В строку, разделяя элементы * Произведение элементов массива, которые делятся на 3. min   Поменять местами максимальный и последний элементы
6 целые Ручной ввод с клавиатуры В столбец Сумма положительных элементов min   Поменять местами максимальный элемент и его соседа справа
7 целые Ручной ввод с клавиатуры В строку, разделяя элементы ++ Сумма отрицательных элементов min   Поменять местами максимальный элемент и его соседа слева
9 целые Ручной ввод с клавиатуры В столбец Подсчет количества четных элементов max Поменять местами максимальный и минимальный элементы
11 целые Датчик случайных чисел В строку через один пробел Подсчет количества нечетных элементов min   Поменять местами первый и последний элементы массива
вещественные Присваиванием конкретных значений элементам массива В строку через два пробела Произведение отрицательных элементов max Поменять местами 4 и 10 элементы массива
вещественные Датчик случайных чисел В строку через один пробел Найти количество элементов равных 10 Элементов, равных нулю Поменять местами 3 и 6 элементы массива
25 целые Датчик случайных чисел В строку через один пробел Сумма элементов Элементов, равных 10 Поменять местами максимальный элемент и 7 элемент массива
30 целые Присваиванием конкретных значений элементам массива В строку , используя форматированный вывод Сумма положительных элементов Элементов, равных 100 Поменять местами 8 и 29 элементы массива
4 вещественные Ручной ввод с клавиатуры В столбец Найти количество отрицательных элементов max Поменять местами минимальный элемент и последний элементы массива.
12 вещественные Датчик случайных чисел В строку через два пробела Сумма отрицательных элементов Элементов, равных 5 Поменять местами 5 и 10 элементы массива
13 целые Датчик случайных чисел В строку , используя форматированный вывод Сумма элементов массива, которые делятся на 4. Элементов, равных -88 Поменять местами 3 и 12 элементы массива
5 вещественные Ручной ввод с клавиатуры В столбец Среднее арифметическое элементов массива min   Поменять минимальный и 4 элементы массива
7 целые Присваиванием конкретных значений элементам массива В столбец Произведение положительных элементов массива max Поменять местами максимальный элемент и 3 элемент массива.




©2015 www.megapredmet.ru Все права принадлежат авторам размещенных материалов.