92.60K
Категория: ПрограммированиеПрограммирование

Одномерные массивы целых чисел

1.

ОДНОМЕРНЫЕ МАССИВЫ
ЦЕЛЫХ ЧИСЕЛ

2.

ДЛЯ ЧЕГО НУЖНЫ МАССИВЫ
В программировании часто решаются задачи, связанные
с обработкой большого (иногда очень большого )
количества данных одного типа, например, чисел
Необходимо найти среди этих данных максимальное или
минимальное число, найти сумму всех чисел,
упорядочить эти числа и т.п.
При составлении алгоритмов решения таких задач
возникают 2 проблемы:
Требуется очень большое количество переменных, ведь для
каждого числа нужна своя переменная
В алгоритме будет слишком много сравнений
Эти проблемы решаются при помощи структуры данных,
которая называется массив

3.

МАССИВ
Массив - это совокупность однотипных данных,
хранящихся в последовательных ячейках памяти и
имеющих общее имя.
Ячейки называются элементами массива
Все ячейки пронумерованы по порядку и этот номер
называется индексом массива
Чтобы обратиться к конкретному элементу массива,
необходимо указать имя массива и в квадратных
скобках индекс элемента
1
а
Индекс элемента
массива
Значение элемента
массива
Имя
массива
2
3
4
5
6
7
8
9
-3 -8 9 10 0 7 2 13 6
a[2]
a[6]

4.

ОПИСАНИЕ МАССИВА
Оператор объявления массива:
var имя: array [начальный .. конечный] of тип элемента;
массива
индекс
индекс
Имя массива
Тип элементов
массива
var a: array [1..10] of integer;
Начальный индекс
Конечный индекс
Примеры:
var t: array [1:31] of real;
b: array [0..25] of char;

5.

МАССИВЫ
Количество элементов массива = конечное
значение индекса – начальное значение +1
Индексы могут быть только
последовательными целыми числами,
необязательно, что начальный индекс =1
Часто бывает, что размерность массива заранее
неизвестна или может меняться, поэтому
удобнее объявлять массив так:
const n=100;
var a: array [1..n] of integer;

6.

ВСЕ МАССИВЫ ВВОДЯТСЯ И
ОБРАБАТЫВАЮТСЯ В ЦИКЛЕ, ПРИЧЕМ
ПАРАМЕТРОМ ЦИКЛА ЯВЛЯЕТСЯ ИНДЕКС
ЭЛЕМЕНТА МАССИВА.
Термин заполнить массив означает
задать значения всем элементам
массива.
Термин вывести массив – напечатать
на экране все элементы массива.

7.

СПОСОБЫ ЗАПОЛНЕНИЯ МАССИВА
1 способ. Ввод каждого значения с клавиатуры:
for i:=1 to n do
read (a[i]);
2 способ. С помощью оператора присваивания (по формуле);
происходит, когда элементы массива связаны некоторым
законом, часто зависящим от индекса:
for i:=1 to n do
a[i]:=i+1;
Индексы
1
2
3
4
Элементы
2
3
4
5
3 способ. Заполнение массива константами, происходит,
если элементов немного. Массив описывается в разделе
констант и сразу же заполняется данными:
const b:array [1..5] jf integer=(4,2,7,1,8);

8.

СПОСОБЫ ЗАПОЛНЕНИЯ МАССИВА
Заполнение массива с клавиатуры.
Рассмотрим
пример
заполнения
массива А пятью целыми числами с
клавиатуры.
Для того чтобы организовать ввод исходных
данных в массив, нужно использовать цикл.
Begin – начало цикла ввода элементов
массива.
Вводим элемент с индексом один.
Обращаемся к первому элементу массива А.
Запоминаем число 13.
End – конец цикла ввода элементов массива.
Аналогично запоминаем остальные 4 числа.
program p1;
uses crt;
var
d: array[1..10] of integer;
j:integer;
begin
clrscr;
for j:=1 to 10 do
begin
write ('d[',j:2,']=');
readln (d[j]);
end;
for j:=1 to 10 do
writeln (d[j]:4);
writeln;
readln;
end.

9.

СПОСОБЫ ЗАПОЛНЕНИЯ МАССИВА
Заполнение массива случайными
числами .
Рассмотрим
задание
значений
элементов массива как случайных
чисел. Функция получения случайных
чисел из заданного интервала [0, М-1]
выдает
целые
числа
из
этого
интервала: random (М). Можно
использовать
функцию
получения
случайных
чисел
без
указания
аргумента. Она выдает случайное
вещественное число от нуля до одного:
random
Функция получения случайных чисел
из интервала [А, В] имеет вид random
(b-a+1)+a
Заполним массив, например десятью
целыми числами из интервала [1,100]
запишем фрагмент программы:
for i:=1 to 10 do
begin
a[i]:=random(101); {числа
от 1 до 100}

10.

СПОСОБЫ ЗАПОЛНЕНИЯ МАССИВА
Заполнение массива случайными
числами .
Рассмотрим
задание
значений
элементов массива как случайных
чисел. Функция получения случайных
чисел из заданного интервала [0, М-1]
выдает
целые
числа
из
этого
интервала: random (М). Можно
использовать
функцию
получения
случайных
чисел
без
указания
аргумента. Она выдает случайное
вещественное число от нуля до одного:
random
Функция получения случайных чисел
из интервала [А, В] имеет вид random
(b-a+1)+a
Заполним массив, например десятью
целыми числами из интервала [1,100]
запишем фрагмент программы:
for i:=1 to 10 do
begin
a[i]:=random(101); {числа
от 1 до 100}

11.

ВЫВОД МАССИВА
1 способ. Элементы массива можно вывести в строку,
разделив их пробелом:
for i:=1 to n do
write (a[i], ' ');
24
56
47
89
12
24
2 способ. Вывод в столбец:
56
for i:=1 to n do
writeln (a[i]);
47
89
3 способ. Вывод с комментариями:
12
for i:=1 to n do write ('a[',i,']=',a[i]);
a[1]=4
a[2]=1
a[3]=6
a[4]=3
a[5]=8
a[6]=5
a[7]=9
a[8]=4
a[9]=8
a[10]=7

12.

ВЫВОД МАССИВА
Вывод значений элементов массива
Рассмотрим вывод массива из трех
целых чисел. Здесь параметр 4 означает
количество позиций, отводимых под
значение а [i], то есть значение переменной
а[i] выводится как целое число в четыре
символьные позиции на экране. Результатом
вывода массива будет:
Массив А: 4 5 7
Например, вывести массив по формуле.
program p1;
uses crt;
var
b: array[1..21] of integer;
j:integer;
begin
clrscr;
for j:=1 to 21 do
b[j]:=2*j-1;
for j:=1 to 21 do
writeln (b[j],' ');
readln;
end.
English     Русский Правила