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

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

Лабораторная работа №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. Нарушение авторских прав; Мы поможем в написании вашей работы!




Шрифт зодчего Шрифт зодчего состоит из прописных (заглавных), строчных букв и цифр...


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


Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...


Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Растягивание костей и хрящей. Данные способы применимы в случае закрытых зон роста. Врачи-хирурги выяснили...

ФАКТОРЫ, ВЛИЯЮЩИЕ НА ИЗНОС ДЕТАЛЕЙ, И МЕТОДЫ СНИЖЕНИИ СКОРОСТИ ИЗНАШИВАНИЯ Кроме названных причин разрушений и износов, знание которых можно использовать в системе технического обслуживания и ремонта машин для повышения их долговечности, немаловажное значение имеют знания о причинах разрушения деталей в результате старения...

Различие эмпиризма и рационализма Родоначальником эмпиризма стал английский философ Ф. Бэкон. Основной тезис эмпиризма гласит: в разуме нет ничего такого...

Прием и регистрация больных Пути госпитализации больных в стационар могут быть различны. В цен­тральное приемное отделение больные могут быть доставлены: 1) машиной скорой медицинской помощи в случае возникновения остро­го или обострения хронического заболевания...

ПУНКЦИЯ И КАТЕТЕРИЗАЦИЯ ПОДКЛЮЧИЧНОЙ ВЕНЫ   Пункцию и катетеризацию подключичной вены обычно производит хирург или анестезиолог, иногда — специально обученный терапевт...

Ситуация 26. ПРОВЕРЕНО МИНЗДРАВОМ   Станислав Свердлов закончил российско-американский факультет менеджмента Томского государственного университета...

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