Практическая работа №11
Тема: Примеры построения алгоритмов с использованием конструкций проверки циклов и способов описания структур данных.
Цель занятия: Изучить основные алгоритмические конструкции и их описание средствами языков программирования. Реализация программ несложных алгоритмов. Необходимое оборудование: сеть Интернет, ПК.
Теоретическая часть
Массив – структура однотипных данных с индексированным доступом. Запись –
структура данных с доступом по идентификатору.
Каждый элемент массива получает один или несколько номеров, называемых индексами.
Индексы записываются в квадратных скобках через запятую.
Массивы бывают следующих видов:
1. Одномерные – каждый элемент массива получает два индекса
2. Многомерные – каждый элемент получает более 2-х индексов Описание массивов
Каждый из индексов массива находится в некотором диапазоне (<нач. элемент>…<кон.
элемент>). Причем конечный элемент больше либо равен начальному элементу. В качестве диапазона можно использовать: Integer, Char, Boolean.
Массив в языке Паскаль это сложный тип данных, поэтому чаще всего его описывают в разделе переменных.
Var <переем. массив>: array[<диапазон 1>..<диапазон N>] Of <тип переменной>;
Пример: список студентов группы
Var Spisok: array[1..40] String[20];
Получение элементов массива
Каждый элемент массива — это переменная, которой можно присваивать значения в операторах и функциях. Для того, чтобы указать элемент массива, необходимо записать все его индексы.
<перем. массив>[<индекс>,..,<индекс N>]
Пример:
Spisok[1]:=’Иванов’;
Ввод массива с клавиатуры
Массив нельзя ввести с клавиатуры одной командой, для этого организовывается цикл с параметром. Для того чтобы обеспечить правильный ввод массива, необходимо соблюдать следующий алгоритм:
<приглашение к вводу массива>;
<ввод количества элементов массива>;
For i:=1 to <кол-во элементов> do
Begin
<приглашение к вводу i-го элемента>;
<ввод i-го элемента>;
End;
Пример:
WriteLn (‘ввод списка студентов’);
WriteLn (‘введите количество студентов’);
ReadLn (kolvo);
For i:=1 to kolvo do
Begin
WriteLn (i,’ ’);
ReadLn (spisok[i]);
End;
Вывод массива на экран
1. Вывод в строку. При выводе массива в строку нужно использовать Write, которая будет
находиться в цикле с параметром, а после цикла нужно поставить WriteLn.
Пример:
2. Вывод массива в столбец. При выводе в столбец в цикле указывается WriteLn, причем для массивов, содержащих числа, следует также указывать количество знаков при
выводе на экран.
Пример:
For i:=1 to kolvo do
Write (i:2,’. ’,spisok[i]);
Действия с массивами
Над массивами нельзя выполнять арифметические действия (вычитать, складывать и др.). Все
действия выполняются поэлементно.
Задание 1. Напишите три программы вывода массива из 30 элементов на экран.
Первый вариант: ввод массива с использованием цикла с предусловием (Рисунок 1).
Program Primer_1;
Var i: integer;
X: array [1..30] of Integer;
Begin
i := 1;
While i <= 30 Do Begin
Read (X[i]); i := i + 1 End;
Readln End.
Второй вариант: ввод массива с использованием цикла с постусловием (Рисунок 2).
Program Primer_2;
Var i: integer;
X: array [1..30] of Integer;
Begin
i := 1; Repeat
Read (X[i]); i := i + 1 Until i > 30;
Readln
End.
Массив X введен с использованием цикла с
постусловием.
Третий вариант: ввод массива с использованием цикла с параметром (Рисунок 3).
Program Primer_3;
Var i: integer;
X: array [1..30] of Integer;
Begin
For i := 1 To 30 Do Read (X[i]); Readln
End.
Массив вводится с помощью цикла с параметром, где в качестве параметра используется индекс элемента массива (i)
Задание 2. Выведите массив из 10 элементов на экран в столбец.
Задание 3. Выведите массив из 10 элементов на экран в строку.
Контрольные вопросы
1) Что такое массив
2) Какие бывают массивы
3) Что такое индекс
4) Как записывается цикл с параметром
5) Вывод массива на экран
6) Ввод массива с использованием цикла с предусловием
7) Ввод массива с использованием цикла с постусловием
8) Ввод массива с использованием цикла с параметром
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.