- •Министерство образования и науки Республики Казахстан
- •МетодичеСкИе рекомендации и указания
- •Методические указания
- •1.3.Константы
- •1.3.2.Символьные константы
- •1.4.Переменные
- •1.5.Перечисляемые типы данных
- •1.6. Оператор присваивания
- •1.8.Организация программы
- •1.9.Комментарии
- •1.10.Операторы ввода-вывода
- •1.10.1.Операторы ввода
- •1.10.2. Операторы вывода
- •1.10.3. Стандартная форма вывода данных
- •1.10.4. Управление формой вывода данных
- •Вывод значений переменных
- •2.Задание
- •Лабораторная работа №2
- •1. Основные понятия
- •1.1. Оператор условного перехода
- •1.2. Оператор варианта.
- •1.3.Оператор безусловного перехода
- •1.4.Логические отношения
- •2.Задание
- •Лабораторная работа №3
- •1. Теоретические сведения.
- •1.1. Понятие циклического процесса.
- •1.2 Операторы цикла с присваиванием.
- •1.3. Оператор цикла с предусловием.
- •2. Задание
- •Лабораторная работа №4
- •Лабораторная работа №5
- •Лабораторная работа №6
- •2. Задание
- •5. Литература
- •Лабораторная работа №7
- •Длинна строки, определяется с помощью стандартной функции Length (St), которая возвращает целое число, равное количеству символов в строке St, например:
- •Очень полезна при работе со строками функция типа Integer
- •Лабораторная работа №8
- •Теоретические сведения
- •Задание
- •Контрольные вопросы.
- •Литература.
- •Лабораторная работа №9
- •1.Теоретические сведения.
- •2.Задание.
- •3.Контрольные вопросы.
- •Лабораторная работа № 10
- •Процедура
- •Функция
- •Выводит точку с координатами X, y цветом Color.
- •Процедура
- •Процедура
- •Процедура
- •Процедура
- •Процедура
- •4. Список литературы
- •1.Теоретическое положение 3
- •1. Основные понятия 16
- •1.1. Оператор условного перехода 17
- •5. Литература 43
- •1.Теоретические сведения 53
- •2.Задание 54
Лабораторная работа №5
Тема: Разработка программ с использованием двумерных массивов.
Цель работы: Приобрести навыки обработки двумерных массивов в Паскале.
Общие сведения.
Массив – это упорядоченная совокупность значений одинакового типа, объединенная одним именем. Для того, чтобы иметь возможность работать с каждым элементом массива, необходимо задать координаты этого элементам в общей структуре массива.
Если массив двумерный, то для определения положения какого-либо элемента достаточно задания номера строки и столбца, на пересечении которых находиться рассматриваемый элемент. Так выделенные на рис. 1 в элементы массива имеют следующие обозначения B[1,1], B[1,4], B[5,2].
1 2 3 4
1
2
3
4
двумерный массив
Причём первым в обозначении элемента массива стоит номер строки, а вторым - столбца.
Точно также задается положение трёх, четырёх и 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
означает, что в программе имеется целочисленный массив С, состоящий из пяти строк и четырёх столбцов.
Для описания многомерных массивов в Паскале существует целый ряд способов. Следующие группы операторов задают описание одного и того же двумерного массива А, представляющего собой таблицу размером 23 (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.
В Паскале типом индекса (номером) элемента массива не обязательно является целое число. Им может быть также переменная перечисляемого типа, например:
Задание.
Задание взять из таблицы согласно варианту. Составить блок-схему алгоритма и программу.
Контрольные вопросы.
Что называется массивом?
Оператор описания массива, его разновидности.
Правила составления имени массива.
Способы задания значений массивов.
Ввод и вывод массивов.
Переменные какого типа могут служить именем массива?
Какие элементы могут служить в качестве индексов элементов массива.
Задание к работе
-
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.
Найти наибольшую сумму двух произвольных элементов вектора А: