Массивы в языке Pascal. (Урок 42)

Содержание

Слайд 2

§2.2 (2.2.1, 2.2.2, 2.2.3) Вопросы 2–4 – устно (стр. 74), 4б

§2.2 (2.2.1, 2.2.2, 2.2.3) Вопросы 2–4 – устно (стр. 74), 4б и 4в

– письменно (стр. 74). Быть готовым к тесту

Домашнее задание

Слайд 3

Массив – это группа однотипных элементов, имеющих общее имя и расположенных

Массив – это группа однотипных элементов, имеющих общее имя и расположенных

в памяти рядом.

Особенности:
все элементы имеют один тип
весь массив имеет одно имя
все элементы расположены в памяти рядом

Примеры:
список учеников в классе
квартиры в доме
школы в городе
данные о температуре воздуха за год

Слайд 4

Массив A 3 15 НОМЕР элемента массива (ИНДЕКС) A[1] A[2] A[3]

Массив A

3

15

НОМЕР элемента массива
(ИНДЕКС)

A[1]

A[2]

A[3]

A[4]

A[5]

ЗНАЧЕНИЕ элемента массива

A[2]

НОМЕР (ИНДЕКС) элемента массива: 2

ЗНАЧЕНИЕ элемента

массива: 20
Слайд 5

Для индексов можно использовать любые порядковые типы данных, и только порядковые!

Для индексов можно использовать любые порядковые типы данных, и только порядковые!
Диапазон

индексов выбирается от любого значения до любого, но не меньшего!
Слайд 6

Объявление массивов определить имя массива определить тип элементов массива определить число

Объявление массивов

определить имя массива
определить тип элементов массива
определить число элементов и диапазон

индексов
Массив целых чисел:
var A: array[1.. ] of integer;

const N=5;

N

var A : array[ 1 .. 5 ] of integer ;

Размер массива только через константы (явные или именованные):

имя

начальный индекс

конечный индекс

тип
элементов

Слайд 7

Примеры объявления массивов P: array [0..5] of byte; C: array [1..20]

Примеры объявления массивов

P: array [0..5] of byte;
C: array [1..20] of char;
X,

Y: array [1..10] of real;
D: array [-5..13] of word;
Z: array [1..50] of string[20];
B: array [a..k] of integer;
Слайд 8

Что неправильно? var a: array[1..10] of integer; ... A[5] := 4.5;

Что неправильно?

var a: array[1..10] of integer;
...
A[5] := 4.5;

var a: array

[5..1] of real;
...
A[5] := 4.5;

var a: array [0..9] of integer;
...
A[10] := 'x';

Слайд 9

Ввод массива {Ввод массива} readln(N); for i:=1 to N do read(а[i]);

Ввод массива

{Ввод массива}
readln(N);
for i:=1 to N do
read(а[i]);

Постановка

проблемы. Объявлен массив. Ввести в него все числа из устройства ввода.

const K=50;
var a:array[1..K] of real;

var a:array[1..50] of real;

или так, что то же самое!

Объявлен массив

Слайд 10

Ввод массива с клавиатуры Описан массив const K=50; var a:array[1..K] of

Ввод массива с клавиатуры

Описан массив

const K=50;
var a:array[1..K] of real;

var a:array[1..50]

of real;

или так, что то же самое!

write('Количество чисел? ');
readln(N);
for i:=1 to N do begin
write('a[', i, ']=');
readln( a[i] )
end;

a[1] =
a[2] =
a[3] =
a[4] =
a[5] =

5
12
34
56
13

Постановка проблемы. Описан массив. Ввести все его элементы

Слайд 11

Вывод массива на экран const K=50; var a: array[1..K] of integer;

Вывод массива на экран

const K=50;
var a: array[1..K] of integer;

for i:=1

to N do
writeln('a[',i,']=',a[i]);

a[1]=25
a[2]=144
a[3]=1316
a[4]=3466
a[5]=169

Постановка проблемы. Описан массив. Значения элементам присвоены. Вывести N его элементов на экран

Можно в строку через пробел

Массив A:
25 144 1316 3466 169

writeln('Массив A:');
for i:=1 to N do
write(a[i]),' ');

Слайд 12

Задание Составить программу, которая заданные числа вводит в массив, утраивает каждое

Задание

Составить программу, которая заданные числа вводит в массив, утраивает каждое число,

а затем выводит эти числа.

Протестировать при учителе программу. Исходный текст программы оставить на рабочем столе. Имя файла:
M1<до 6 букв фамилии>.PAS
Например: M1LAZARE.PAS

Слайд 13

начало конец Обработка каждого элемента ввод массива вывод массива Укрупнённый алгоритм

начало

конец

Обработка каждого элемента

ввод массива

вывод массива

Укрупнённый алгоритм

Слайд 14

Обработка каждого элемента массива const K=50; var a:array[1..K] of real; Постановка

Обработка каждого элемента массива

const K=50;
var a:array[1..K] of real;

Постановка проблемы.

Дан массив. Значения элементам присвоены. Увеличить каждый элемент массива в 3 раза.

//Утроить числа
for i:=1 to N do
a[i]:=a[i]*3;

var a:array[1..50] of real;

или так, что то же самое!

Объявлен массив