Лабораторная работа 13.
Методы обработки массивов
Массивы - наиболее часто применяемый тип данных при обработке большого количества информации, различного рода статистических данных и т.д. Это объясняется не столько удобством хранения информации в памяти компьютера в виде массива, сколько возможностью легко производить различного рода обработку массивов.
В настоящей лабораторной работе описаны наиболее простые и часто встречающиеся ситуации при обработке информации в массивах. Все они достаточно просты, и поэтому снабжены не подробными комментариями, а конкретными примерами. Рекомендуем Вам самостоятельно разобрать каждый из предложенных примеров. Не переходите к следующему разделу (примеру программы), если Вам не понятно назначение каждой строки предыдущего примера программы.
Сумма элементов массива.
Пример программы, которая сначала вводит 30 реальных чисел, организовывает их хранение в массиве, определяет сумму элементов этого массива и выдаёт результат на экран.
FROGRAMM ех_1;
VAR
m : ARRAY [1..30] of real; {декларация массива}
i : integer; {параметр цикла FOR}
s : real; {сумма элементов}
BEGIN
FOR i:=l TO 30 DO {заполнение массива}
Begin
Write (‘Введите элемент последовательности’);
Readln(m[i]);
End;
s:=0; {обнуление счётчика суммы}
FOR i:=l TO 30 DO s:=s+m[i]; {вычисление суммы}
Write(‘Сумма элементов последовательности равна ‘,s);
Readln; { пауза }
END.
Число положительных элементов массива
Пример программы, которая сначала вводит 30 реальных чисел, организовывает их хранение в массиве, определяет количество положительных элементов и выдаёт сообщение на экран.
FROGRAMM ex 2;
VAR
m:ARRAY[1..30] of real; n, i: integer;
{декларация массива} {параметр цикла FOR} {счётчик положительных эл-ов}
{заполнение массива}
BEGIN FOR i:=l ТО 30 DO Begin
Write(‘Bведите элемент последовательности ‘); Readln(m[i]);
End;
n:=0; {обнуление счётчика п. эл-ов}
FOR i:=l TO 30 DO
if m[i]>=0 then n:=n+l; {вычисление количества п. эл-ов}
Write('Последовательность содержит ',n, ' положительных эл-ов'); Readln; { пауза }
END.
Определение максимального элемента
Пример программы, которая сначала вводит 30 реальных чисел, затем организовывает их хранение в массиве, определяет значение и индекс (номер) максимального элемента этого массива и выдаёт сообщение на экран.
FROGRAMM ех_3;
VAR
m: ARRAY[1..30] of real; {декларация массива}
i: integer; {параметр цикла FOR}
max: real; {значение максимального элемента}
t: integer; {индекс (номер) макс, элемента}
BEGIN
FOR i:=l ТО 30 DO {заполнение массива}
Begin
write('введите элемент последовательности ',i);
Readln(m[i]);
End;
max:=m[1]; {допустим, что 1-й элемент - максимален}
t:=l;
FOR i:=l ТО 30 DO
if m[i]>max then {проверка нашего утверждения}
begin
max: =m[i];
t: =i;
end;
Writeln ('Максимальный элемент последовательности равен ', max);
Writeln('Номер максимального элемента ',t);
Readln; { пауза }
END.
Поиск элемента в неупорядоченном массиве
Пример программы, которая сначала вводит 30 реальных чисел, организовывает их хранение в массиве, затем запрашивает так называемое "контрольное число". После этого проверяет, есть ли в массиве элемент, который равен контрольному числу.
PROGRAMM ех_4;
VAR
m: ARRAY[1..30] of real; {декларация массива}
i: integer; {параметр цикла FOR}
р: real; {значение искомого элемента}
t: integer; {индекс (номер) иском. элемента}
BEGIN
FOR i:=l ТО 30 DO {заполнение массива}
Begin
Write('Bведите элемент последовательности ',i);
Readln(m[i]);
End;
Write('Bведите контрольное число ');
Readln(р);
t:=0; {допустим, что в массиве нет такого элемента}
FOR i:=l ТО 30 DO
if m[i]=p then {проверка нашего утверждения}
begin
t: =i;
write('Эл. N ',i,' равен искомому');
end;
if t=0 then write ('B массиве нет такого элемента');
Readln; { пауза }
END.
Контрольные вопросы.
1 Опишите порядок действий при вычислении суммы элементов массива.
2 Опишите порядок действий при вычислении числа положительных элементов в массиве.
3 Опишите порядок действий при определении максимального элемента в массиве.
4 Опишите порядок действий при поиске элемента в неупорядоченном массиве.
Задания для самостоятельного выполнения лабораторной работы 13.
1 Напишите программу, которая вводит с клавиатуры 20 реальных чисел, и организовывает их хранение в массиве. После этого определяет сумму элементов, значение которых больше среднего арифметического элементов массива.
2 Напишите программу, которая вводит с клавиатуры 15 реальных чисел, организовывает их хранение в массиве и определяет разность между максимальным и минимальным элементом массива.
3 Напишите программу, которая вводит с клавиатуры 15 реальных чисел, организовывает их хранение в массиве и определяет индексы (номера) элементов массива, значение которых равно значению первого элемента массива. Если такого элемента нет, вывести соответствующее сообщение на экран.
4 Напишите программу, которая вводит с клавиатуры 10 реальных чисел, и организовывает их хранение в массиве. После этого массив пересортировывается по закону: первый элемент меняется с последним, второй с предпоследним и т.д.
5 Напишите программу, которая вводит с клавиатуры 10 целых чисел, организовывает их хранение в массиве и определяет количество чётных и количество нечётных элементов в массиве.
6 Напишите программу, которая вводит с клавиатуры 30 реальных чисел и определяет среднее арифметическое первых десяти элементов, вторых десяти и последних десяти. После этого определяется максимальное и минимальное среднее арифметическое и выводится сообщение.
7 Дан массив, состоящий из 10 символов. Определить и вывести на экран индексы символов равных первому символу.
8 Дан массив, состоящий из 10 символов. Организовать массив целых чисел и заполнить его номерами символов исходного массива. Вывести содержимое массива на экран.
Do'stlaringiz bilan baham: |