Тема: «Одномерные массивы целых чисел»
Тип урока: Изучения нового материала
Цель урока: Изучить основные возможности массива, а также научится программировать массив.
Задачи:
- Ознакомится с понятием "МАССИВ";
- Описание массива, как объекта программирования;
- Изучить варианты заполнения и вывода данных из массива.
Оборудование:
- В классе имеется Проектор с Экраном для отображения экрана учителя;
- Доска, для выноски главных этапов урока;
- 14 компьютеров, для практического закрепления учениками пройденного материала.
УРОК:
Организационный этап урока:
- Приветствие
- Проверка посещаемости учеников
Учитель:
Ребята, сегодня мы начинаем изучение нового этапа программирования на языке Pascal.
Сегодня мы рассматриваем "Одномерные массивы". По предыдущим урокам, мы с вами помним, что существует множество типов данных(чисел), которые используются в программировании. Назовите их.
Ученик:
Такие типы данных, как Целые и Вещественные.
Целые:
- byte -128 до 127;
- short -32 768 до 32 767;
- int -2 147 483 648 до 2 147 483 647;
Вещественные(числа с плавающей запятой):
- real от 4,9*10-324 до 1,7*10308;
Учитель:
Массив - это упорядоченное множество однотипных переменных (элементов массива), которым можно присвоить общее имя, но все элементы будут иметь различные номера (индексы).
Описание массива:
Перед использованием любого объекта в программе, его следует объявить в перечне переменных. Таким образом, массив тоже должен быть объявлен.
Для определения массива, следует указать: ИМЯ МАССИВА + КОЛИЧЕСТВО ЭЛЕМЕНТОВ МАССИВА + ТИП ДАННЫХ использующихся в массиве.
Var <имя_массива>: array [<минимальное_значение_индекса>. <максимальное_значение_индекса>] of <тип данных>;
Пример: var a: array [1.10] of integer;
Здесь описан одномерный массив целых чисел с именем а. Минимальное и максимальное число индексов от 1 до 15. Массив также может быть описан в разделе описания констант, соответственно элементы массива нельзя будет изменить в процессе выполнения программы.
const a: array [1.15] of Integer = (1, 4, 7, 14, 25);
В этом случае, при создании массива, мы сразу же вносим в него элементы.
Заполнение массива:
Заполнять массив можно несколькими способами. Рассмотрим их.
1) Для ввода с клавиатуры значений элементов, используется цикл:
for i:=1 to 10 do read (a[i]);
2) Задавать значение элементов массива можно с помощью оператора присваивания:
for i:=1 to 10 do a[i]:=i;
3) Заполнение массива с помощью процедуры randomize. Она позволяет производить генерацию случайных чисел, в нашем случае это числа от 0 до 99 (включительно) и заполнит наш массив этими числами.
randomize;
for i:=1 to 10 do a[i]:= random(100);
Вывод элементов из массива:
В языках программирования, мы имеем возможность не только вносить числа и данные в программу, но и выводить их на дисплей(консоль). В нашем случае, сегодня мы проработаем операции вывода данных массива на консоль Pascal;
Мы можем как и знать числа, которые мы задали при написании программы, так и не знать, так как числа могли быть сгенерированы случайно с помощью процедуры randomize.
Элементы массива можно вывести на консоль, как через пробел, так и с подробным комментарием.
1) Разделив числа пробелами и вывести с помощью обычной команды Write:
for i:=1 to 10 do write (a[i], ' ');
2) Написав комментарий в котором будет указать: НОМЕР ИНДЕКСА и напротив будет указано ЧИСЛО, которое соответствует этому индексу. Все элементы будут выведены на консоль с помощью команды Writeln, LN в конце слова, указывает на то, что каждый новый элемент массива будет выведен с новой строки в консоле.
for i:=1 to 10 do writeln ('a[', i, ', a[i]);
Рассмотрим пример:
var a: array[1.10] of integer;
i: byte;
begin
randomize {процедура, которая служит для инициализации (или как ещё называют раскачки) генератора случайных чисел}
for i:=1 to 10 do
begin
a[i]:=random(19); {функция, генерирующая случайное число от нуля до 18: random(n+1)}
write(a[i],' ');
end;
end.
Итоги:
Учитель:
На сегоднешнем уроке мы изучили?
Ученик:
Изучили основы программирования массивов. Их объявление, заполнение различными способами, а так же вывод с помощью подробных комментариев.