Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Сведения, необходимые для выполнения работы




Структурированные типы данных характеризуется:

1) множественно­стью элементов, когда переменная или константа имеет несколько компонентов;

2) все компоненты должны быть одного типа;

3) компоненты упо­рядочены, доступ к обеспечивается указанием его номера.

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

var Имя_массива: ARRAY [размерность] OF тип_элементов;

где имя_массива - идентификатор; ARRAY - массив; OF - из;

В качестве размерности массива можно использовать любые порядковые типы, обычно тип-диапазон, в котором задаются изменения индексов. Тип элементов - любой, он может быть и другим массивом. Глубина вложенности структурированных типов - произвольная. Число элементов массива должно задаваться заранее. Если необходимо использование массивов переменной размерности, то описываются массивы с максимально возможным числом элементов, а реально используется только часть. Заполнение и вывод массива можно осуществить с клавиатуры, с помощью генератора случайных чисел RANDOM или из файла.

Оператором присваивания передать все элементы одного массива другому массиву того же типа. Hад массивами не определены операции отношения.

 
 

Способ выделения памяти для хранения элементов массива регулируется с помощью зарезервированного слова PACKED (упакованный), что должно уменьшить объем памяти, выделяемый под переменные этого типа.

TYPE Имя_массива = PACKED ARRAY [размерность] OF тип;

Для описания массива в программе используются циклы со счетчиком. Доступ к каждому элементу массива в программе осуществляется с помощью индекса - целого числа или выражения порядкового типа. Индекс не должен выходить за пределы, описанные типом-диапазоном.

Массивы, положение элементов в которых описывается несколькими индексами, называется многомерными. Их описание задается следующим образом:

var Имя_массива: ARRAY [размерность1, …, размерностьn] OF тип_ элементов;

Доступ к каждому элементу массива осуществляется с помощью индекса, который не должен выходить за пределы, описанные типом-диапозоном. Turbo Pascal контролирует использование индексов на этапах компиляции и счета программы. Двумерный массив часто называется матрицей. Матрица представляет собой таблицу, состоящую из нескольких столбцов и строк. Над матрицами можно выполнять различные операции: сложение, умножение, вычитание, транспонирование и другие. Положение элемента в двумерном массиве описывается двумя индексами, например I–номер строки и J–номер столбца. Ввод, вывод и обработка многомерного массива осуществляется вложенными циклами.

Задание

Часть 1. Номер задания соответствует номеру варианта.

Действия Условия
1. Вычислить сумму и количество элементов массива A, находящихся в указанном диапазоне. Определить максимальный элемент массива A и его порядковый номер. A(10) 0 £ Ai £ 1
2. Подсчитать количество нулевых элементов массива B. Определить минимальный элемент массива B и его порядковый номер. B(10) Bi = 0
3. Вычислить среднее арифметическое положительных элементов массива C. Определить максимальный элемент массива C и его порядковый номер. C(10) Ci > 0
4. Вычислить сумму и количество элементов массива D, находящихся в Указанном диапазоне. Определить максимальный элемент массива D и его порядковый номер. D(10) -1 £ Di £ 1
5. Заменить элементы массива F, имеющих четные порядковые номера на А. После определить минимальный элемент массива F и его порядковый номер. F(10) i MOD2 = 0 А=100
6. Определить порядковый номер элементов массива G равного заданному числу X. Определить минимальный элемент массива G и его порядковый номер. G(10) G i =X
7. Заменить элементы массива K не больше 15 их кубами. После этого определить минимальный элемент массива K и его порядковый номер. K(10) Ki £ 15
8. Заменить отрицательные элементы массива L на их квадраты. После этого определить максимальный элемент массива L и его порядковый номер. L(10) Li < 0
9. Увеличить на 2 все элементы массива M, которые больше 10. После этого определить минимальный элемент массива M и его порядковый номер. M(10) Mi > 10
10. Найти минимальный и максимальны элемент массива Y(10) и поменять их местами. Yi = МАX Yi = MIN

 

Часть 2. Номер задания соответствует номеру варианта.

Действия Условия
1. Вычислить сумму и количество положительных элементов каждого столбца двухмерного массива A. Результаты отпечатать в строку. A(3,5). Aij > 0
2. Вычислить сумму и количество отрицательных элементов каждой строки двухмерного массива B. Результаты отпечатать в столбец. B(5,3) Bij < 0
3. Вычислить сумму и количество элементов квадратной матрицы C, находящихся над главной диагональю, под и на ней. C(3,3) I+J=CONST
4. Транспонировать квадратную матрицу D. Вывести на печать элементы главной диагонали матрицы D в строку. D(3,3) I+J=CONST
5. Транспонировать квадратную матрицу E. Вывести на печать элементы побочной диагонали матрицы E в столбец. E(3,3) I+J=CONST
6. Найти в каждой строке квадратной матрицы F наибольший элемент и поменять его местами с элементом главной диагонали. F(3,3) Fij = MAX
7. Найти сумму элементов массива G, имеющих заданную разность индексов X (целое, модуль). G (5,3) i - j = x
8. Подсчитать количество и сумму положительных и отрицательных элементов массива G. G(5,3) Gij > 0, Gij < 0
9. Найти в каждой строке массива V максимальный и минимальный элемент. Поместить их соответственно на место первого и последнего элемента этой строки массива. V(2,6) Vij = MAX Vij = MIN
10. Просуммировать элементы массива K, сумма индексов которых равна заданной константе X. (целое). K(3,5) i+j=x

Составить алгоритм и, по нему, блок-схему. Запрос количества элементов в массиве осуществлять с клавиатуры. Заполнение массива производить так, чтобы можно было знать, какой элемент вводится. Вывод массива производить в виде ряда значений в строку или столбец. Набрать программу, ввести данные и зафиксировать результат. Сделать вывод по полученным результатам работы.

Вопросы для самоконтроля:

1. Изучить классические алгоритмы обработки массивов: ввод и вывод, вычисление суммы, произведения и среднего арифметического, нахождение количества элементов, удовлетворяющих условию.

2. Ознакомиться с особенностями алгоритма поиска максимального или минимального значения и их порядкового номера.

3. Рассмотреть алгоритм вставки и удаления элементов из массива.

4. Привести примеры двух и более мерных массивов в реальной жизни.

5. Рассмотреть особенности многомерных массивов во вложенных циклах.

6. Что включает в себя понятие «пользовательские типы»? Почему, по вашему мнению, они так называются?

Литература: 1, 2, 3, 4, 5, 7, 9, 14, 16, 36.

Лабораторная работа № 4.

Тема: Программирование с использованием процедур и функций с элементами структуризации программ.

Цель: Овладение навыками алгоритмизации и программирования задач с использованием подпрограмм пользователя различных видов и библиотеки подпрограмм ЯП TP.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...