top of page

Лабораторная работа № 8

 

Тема: Работа с одномерными массивами

 

Цель работы: Научиться использовать массивы в программе (ввод-вывод элементов, преобразование массива и т.д.).

 

Теория.

           

Массивы относятся к структурированным (сложным) типам. Сложные типы представляют множество значений, имеющих одно общее имя и рассматриваемых как единое целое. Наиболее часто применяемым сложным типом является массив. Массив -это упорядоченная совокупность элементов одинакового типа. Каждый элемент массива имеет свой номер, который называется индексом. По индексу можно организовать прямой доступ к любому элементу массива. Массив задается следующим образом:

ARRAY[ типиндексов] OF<тип элементов>

Тип индексов определяет границы (диапазон) изменения индекса. Он должен быть любого простого типа, кроме вещественного. Тип элемента может быть любым, кроме файлового. Массив можно определить в разделе типов ТУРЕ или б разделе описаний переменных VAR.

Массив может быть одномерным, двумерным и многомерным. Одномерный массив можно представить как вектор или линейную таблицу. Для получения доступа к его элементам используется один индекс. Например:

VARMAS: ARRAY[1..10] OFINTEGER; - задается массив из 10 элементов целого типа.

Организация доступа. Массивы не могут обрабатываться целиком, но можно получить доступ к каждому элементу массива. Организация такого доступа называется индексированием, - при котором надо указать идентификатор массива и в квадратных скобках индексы элемента. Например, MAS [2] ( доступ к элементу массива с номером 2).

Если два массива имеют одинаковые типы индексов и компонент, их можно присваивать друг другу и сравнивать.

 

Простейшие алгоритмы обработки массивов.

1) Ввод элементов массива.

Program vvod;{одномерныймассив}

Var  MAS: Array[1..10] Of Real;

         I: integer;

Begin

Writeln('введитеэлементымассива');

For I:=l To 10 do

Read(MAS[I]);

End.

  1. Суммирование элементов массива.

Program summ;{одномерныймассив} Var MAS: Array[1..10] Of Real;

I: integer; S:Real;

 Begin

S:=0;

For I:=l To l0 do

S:=S+MAS[I]);

Writeln(‘сумма элементов массива= ',S);

End.

Задание 1.

 

Вариант 1. Дан массив размера N. Вывести его элементы в обратном порядке. 

Вариант 2. Дан массив размера N. Вывести вначале его элементы с четными1|нечетными2 индексами, а затем - с нечетными1|четными2. 

Вариант 3. Дан целочисленный массив A размера 10. Вывести номер первого1|последнего2 из тех его элементов A[i], которые удовлетворяют двойному неравенству: A[1] < A[i] < A[10]. Если таких элементов нет, то вывести 0. 

Вариант 4. Дан целочисленный массив размера N. Вывести вначале все его четные1|нечетные2 элементы, а затем - нечетные1|четные2. 

Вариант 5. Поменять местами минимальный и максимальный элементы массива размера 10. 

Вариант 6. Заменить все положительные1|отрицательные2 элементы целочисленного массива размера 10 на значение минимального3|максимального4. 

Вариант 7. Выяснить, верно ли, что сумма элементов массива есть неотрицательное число.

Вариант 8. Дан массив целых чисел. Выяснить:

а) верно ли, что сумма элементов массива есть четное число;

6) верно ли, что сумма квадратов элементов массива есть пятизначное число

Вариант 9. В массиве хранятся сведения околичестве осадков, выпавших за каждый день июня. Определить:

а) вкакой период выпало больше осадков: впервую половину июня или во вторую;

6) вкакую декаду месяца выпало больше всего осадков.

Вариант 10. Дан массив. Напечатать:

а) все неотрицательные элементы;

6) все элементы, не превышающие числа 100.

Вариант 11. Дан массив целых чисел. Напечатать:

а) все четные элементы;

б) все элементы, оканчивающиеся нулем.

Вариант 12. Дан массив натуральных чисел. Напечатать:

а) все элементы массива, являющиеся двузначными числами;

6) все элементы массива, являющиеся трехзначными числами.

Вариант 13. Дан массив целых чисел.

а) Все элементы, кратные числу 10, заменить нулем,

6) Все нечетные элементы удвоить, ачетные уменьшить вдвое.

в) Нечетные элементы уменьшить на т, аэлементы с нечетными номерами увеличить на п.

Вариант 14. Дан массив. Найти:

а) сумму элементов массива, значение которых не превышает 20;

б) сумму элементов массива, больших числа А.

Вариант 15. Дан массив целых чисел. Определить:

а) количество элементов, отличных от последнего элемента;

б) количество элементов, кратных А.

Вариант 16. Определить количество положительных иколичество отрицательных элементов массива.

Вариант 17. Дан массив целых чисел. Определить количество четных элементов иколичество элементов, оканчивающихся на цифру 5.

Вариант 18. Найти среднее арифметическое элементов массива, больших числа 10.

Вариант 19. Найти средние арифметические положительных и отрицательных элементов массива.

Вариант 20. Дан массив. Определить:

а) максимальный элемент;

6) минимальный элемент;

в) на сколько максимальный элемент больше минимального;

г) индекс максимального элемента;

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

Вариант 21. Дан массив. Вывести на экран сначала неотрицательные элементы массива, потом отрицательные.

 

Контрольные вопросы

 

  1. Определение массива ?

  2. Действия с массивами?

  3. Какого типа могут быть элементы массива   ?

bottom of page