
- •Введение Обозначения
- •Аппаратные средства компьютера
- •Назначение основных клавиш на клавиатуре
- •Программные средства компьютера
- •Системы счисления
- •Лабораторная работа № 1. Операционная система на компьютере Терминология
- •Порядок выполнения
- •Контрольные вопросы
- •Лабораторная работа № 2. Текстовые документы на компьютере Терминология
- •Порядок выполнения
- •Контрольные вопросы
- •Лабораторная работа № 3. Электронные таблицы на компьютере Терминология
- •Порядок выполнения
- •Пример таблицы с формулами
- •Пример таблицы с результатами вычислений
- •Контрольные вопросы
- •Лабораторная работа № 4. Базы данных на компьютере Терминология
- •Порядок выполнения
- •Контрольные вопросы
- •Лабораторная работа № 5. Растровая и презентационная графика на компьютере Терминология
- •Порядок выполнения
- •Контрольные вопросы
- •Лабораторная работа № 6. Программирование последовательных вычислений Элементы языка Pascal
- •Операции и функции в языке Pascal
- •Порядок выполнения
- •Примеры программ на языке Pascal
- •Дополнительное задание
- •Контрольные вопросы
- •Лабораторная работа № 7. Программирование разветвлений Алгоритм линейной структуры
- •Алгоритм разветвляющейся структуры
- •Порядок выполнения
- •Примеры задач
- •Дополнительное задание
- •Контрольные вопросы
- •Лабораторная работа № 8. Программирование циклов Алгоритм циклической структуры
- •Порядок выполнения
- •Примеры задач
- •Дополнительное задание
- •Контрольные вопросы
- •Лабораторная работа № 9. Программирование задач с одномерными массивами Одномерные массивы
- •Порядок выполнения
- •Пример задачи
- •Дополнительное задание
- •Фрагменты вычисления характеристик одномерного массива
- •Фрагменты операций с одномерными массивами
- •Контрольные вопросы
- •Лабораторная работа № 10. Программирование задач с двумерными массивами Двумерные массивы
- •Порядок выполнения
- •Пример задачи
- •Дополнительное задание
- •Фрагменты вычисления характеристик строк и столбцов двумерного массива
- •Фрагменты операций с двумерными массивами
- •Квадратные матрицы
- •Контрольные вопросы
- •Лабораторная работа № 11. Программирование процедур и функций Подпрограммы
- •Порядок выполнения
- •Дополнительное задание
- •Примеры задач
- •Контрольные вопросы
- •Лабораторная работа № 12. Программирование структурных типов данных Файлы
- •Порядок выполнения
- •Примеры задач
- •Дополнительное задание
- •Контрольные вопросы
Лабораторная работа № 9. Программирование задач с одномерными массивами Одномерные массивы
Массив – упорядоченный набор нумерованных величин одинакового типа. Массивы бывают одномерные (вектор-строка, вектор-столбец), двумерные (матрица) и многомерные (тензор).
Вектор-строка
имеет вид:
.
Пример 1.
.
Вектор-столбец имеет вид:
.
Пример 2.
.
Элемент массива – величина, входящая в состав массива. Индекс – порядковый номер элемента в одномерном массиве (целое число типа integer). Размерность массива – количество элементов в массиве.
Одномерные
массивы обычно обозначаются так:
;
,
где A – массив; n
– размерность массива; i
– индекс элемента;
– i‑тый элемент
массива
.
Описание одномерного массива в разделе описания переменных (Var) на языке Pascal имеет вид:
Mas : array [ IMin .. IMax ] of T
где array – массив, of – из, Mas – имя массива, IMin – минимальное значение индекса, IMax – максимальное значение индекса, T – тип элементов.
Это означает, что переменная Mas является массивом, который может иметь индексы от IMin до IMax у элементов типа T .
Пример 3. Var A:array[1..100] of real;
Это означает, что переменная A – массив, который может содержать от 1 до 100 элементов вещественного типа.
Доступ к элементу массива на языке Pascal имеет вид:
Mas [ Ind ]
где Mas – имя массива, Ind – индекс.
Это означает доступ к элементу массива Mas с индексом Ind .
Пример 4. a[1]; b[3]; c[i]; d[n]; f[k+1].
Это означает 1-й элемент массива A и т.д.
Порядок выполнения
Зайти в Borland Pascal.
Набрать текст программы для решения задачи № 1 и получить ответ для контрольного примера.
Исправить программу так, чтобы она находила сумму и количество положительных элементов.
Исправить программу так, чтобы она находила произведение и среднее значение всех элементов.
Исправить программу так, чтобы она находила максимальное и минимальное значение в массиве.
Пример задачи
Задача 1. Дан одномерный массив A из n элементов. Найти сумму элементов массива:
|
Program Lab9; Var A:array[1..100] of real; i,n:integer; s:real; Begin writeln('Введи n'); read(n); s:=0; writeln('Введи массив A'); for i:=1 to n do begin read(A[i]); s:=s+A[i]; end; writeln('s=',s:10:3); End. |
Контрольный пример. Исходные данные:
Ручной счёт:
Результат:
|
|
Экран пользователя. Введи n 5 Введи массив A 1 2 3 5 -1 s= 10.000 |
Дополнительное задание
Дан массив L(n). Найти количество элементов, больших корня из суммы положительных элементов.
Дан массив G(q). Найти произведение неотрицательных элементов и сумму элементов в диапазоне от 10 до 20.
Дан массив A(n). Найти сумму и количество элементов, равных среднему значению.
Дан массив C(m). Найти отношение максимального к минимальному элементу.
Дан массив D(n). Найти минимальный среди элементов, больших суммы, и найти количество элементов, не равных максимальному.
Дан массив A(n). Сформировать новый массив B умножением элементов массива A на 100. В новом массиве переставить местами третий и предпоследний элементы.
Дан массив A(n). Положительные элементы массива заменить на их сумму, а отрицательные элементы уменьшить на минимальный.
Дан массив A(n). Найти сумму элементов на чётных местах и произведение элементов, кратных 3.
Дан массив A(n). У нечётных элементов отбросить дробную часть числа, а у элементов с индексами, дающими остаток 1 при делении на 3, отбросить целую часть числа.
Сформировать массив случайных чисел в диапазоне от 10 до 20 и округлить значения элементов, по модулю меньших 1.