Студопедия Главная Случайная страница Обратная связь

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

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





 

Тема: Разработка программ с использованием двумерных массивов.

 

Цель работы: Приобрести навыки обработки двумерных массивов в Паскале.

 

1. Общие сведения.

Массив – это упорядоченная совокупность значений одинакового типа, объединенная одним именем. Для того, чтобы иметь возможность работать с каждым элементом массива, необходимо задать координаты этого элементам в общей структуре массива.

Если массив двумерный, то для определения положения какого-либо элемента достаточно задания номера строки и столбца, на пересечении которых находиться рассматриваемый элемент. Так выделенные на рис. 1 в элементы массива имеют следующие обозначения B[1,1], B[1,4], B[5,2].

1 2 3 4

1

двумерный массив

 

Причём первым в обозначении элемента массива стоит номер строки, а вторым - столбца.

Точно также задается положение трёх, четырёх и n-мерных массивов.

Итак, массив характеризуется размерностью и длиной по направлению каждой из размерностей.

Если какая-либо переменная в программе является массивом, то её необходимо описать в разделе переменных. Простейшая форма описания одномерного массива имеет вид:

Var v: array [n...m] of t;

где v – имя массива, формируется по правилам задания имён

переменных;

n и m – наибольшее и наименьшее значение индекса

массива, может быть целого и перечисляемого

типа;

t – тип элемента массива, может быть любым типом,

существующим в Паскале.

Например, запись: var m: array [1..8] of real

говорит о том, что в программе, в которой имеется данное описание, будет обрабатываться одномерный массив, состоящий из 8 элементов вещественного типа.

В описании массивов большей размерности предел изменения этой размерности отделяется друг от друга запятой.

Запись

Var C: array [1..5, 1..4] of integer

означает, что в программе имеется целочисленный массив С, состоящий из пяти строк и четырёх столбцов.

Для описания многомерных массивов в Паскале существует целый ряд способов. Следующие группы операторов задают описание одного и того же двумерного массива А, представляющего собой таблицу размером 2´3 (2 строки, 3 столбца)

Первый способ:

Type

Stroka = array [1..3] of real;

Matr = array [1..2] of stroka;

Var

V: stroka;

A: matr;

Второй способ:

Type

Matr= array [1..2] of array [1..3] of real;

Var

A: matr;

Третий способ:

Type

Matr = array [1..2,1..3] of real;

Var

A: matr;

Четвёртый способ:

Var

A: array [1..2,1..3] of real;

В первом способе описания переменная V объявлена как одномерный массив из трёх элементов вещественного типа. Переменная А имеет смысл двумерного массива из двух строк, в каждую из которых включено по три элемента.

Второй, третий и четвертый способы описания массива получаются из первого путем его последовательного упрощения. Так второй способ описания получен из первого путём исключения определения типа stroka в определении типа matr.

В Паскале типом индекса (номером) элемента массива не обязательно является целое число. Им может быть также переменная перечисляемого типа, например:

2. Задание.

Задание взять из таблицы согласно варианту. Составить блок-схему алгоритма и программу.

 

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

1. Что называется массивом?

2. Оператор описания массива, его разновидности.

3. Правила составления имени массива.

4. Способы задания значений массивов.

5. Ввод и вывод массивов.

6. Переменные какого типа могут служить именем массива?

7. Какие элементы могут служить в качестве индексов элементов массива.

3. Задание к работе

1. Найти среднее арифметическое каждой строки матрицы А. Сформировать из них вектор В.
2. Найти сумму элементов матрицы А, лежащих на главной Диагонали и правее. Умножить на это значение все элементы Вектора В
3. Сформировать вектор В элементы которого равны Соответствующим элементам неглавной диагонали матрицы. Найти минимальный элемент вектора В.
4. Определить количество положительных элементов каждого Столбца матрицы А и запомнить их в массиве М
5. Из матрицы А построить матрицу В поменять местами Строки и столбцы.
6. Сформировать вектор В как сумму положительных элементов Каждой строки матрицы А.
7. Сформировать вектор В как среднее арифметическое Положительных элементов каждого столбца матрицы А:
8. Найти минимальные элементы каждой строки Матрицы А и поместить их на главную диагональ.
9. Поменять в каждой строке между собой элементы Главной и неглавной диагоналей матрицы А:  
10. Найти произведение первых трёх наибольших элементов Матрицы А:
11. Сформулировать вектор С из элементов вектора А, Удовлетворяющих условию Aij>2
12. Получить вектор В элементы которого равны элементам главной матрицы А и найти его максимальный элемент. Вывести на печать полученный вектор В и полученное значение максимального элемента.

 

13. Получить вектор А, элементы которого равны элементам первой строки матрицы С и вектор В, элементы которого равны элементам первого столбца матрицы С. Вывести на печать векторы А и В.
14. По заданным векторам А и В сформировать вектор С по формуле Cij=ai+bj и найти его минимальный элемент.
15. Упорядочить элементы матрицы А, расположив их по убыванию в строках.
16. Изменить значение элементов матрицы А по правилу
17. Вычислить сумму элементов матрицы А, стоящих правее второго столбца, умножить на это значение элементы первого и второго столбца, результат вывести на печать.
18. Найти сумму элементов обоих диагоналей матрицы А:
19. Поменять в каждом столбце элементы главной и неглавной диагоналей
20. Упорядочить по возрастанию четные элементы вектора В
21. Сформировать матрицу А по правилу: Найти максимальный элемент и его положение в матрице
22. Найти сумму элементов первой и второй строк матрицы А и минимального элемента вектора В.
23. Найти произведение и количество положительных элементов матрицы А
24. Сформировать матрицу А по правилу: И найти минимальный элемент
25. Найти наибольшую сумму двух произвольных элементов вектора А:

 







Дата добавления: 2015-09-15; просмотров: 1155. Нарушение авторских прав; Мы поможем в написании вашей работы!




Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...


Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...


Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...


Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Закон Гука при растяжении и сжатии   Напряжения и деформации при растяжении и сжатии связаны между собой зависимостью, которая называется законом Гука, по имени установившего этот закон английского физика Роберта Гука в 1678 году...

Характерные черты официально-делового стиля Наиболее характерными чертами официально-делового стиля являются: • лаконичность...

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

Принципы резекции желудка по типу Бильрот 1, Бильрот 2; операция Гофмейстера-Финстерера. Гастрэктомия Резекция желудка – удаление части желудка: а) дистальная – удаляют 2/3 желудка б) проксимальная – удаляют 95% желудка. Показания...

Ваготомия. Дренирующие операции Ваготомия – денервация зон желудка, секретирующих соляную кислоту, путем пересечения блуждающих нервов или их ветвей...

Билиодигестивные анастомозы Показания для наложения билиодигестивных анастомозов: 1. нарушения проходимости терминального отдела холедоха при доброкачественной патологии (стенозы и стриктуры холедоха) 2. опухоли большого дуоденального сосочка...

Studopedia.info - Студопедия - 2014-2025 год . (0.012 сек.) русская версия | украинская версия