Лекции по информатике
  • Регистрация
1 1 1 1 1 1 1 1 1 1 Рейтинг 0.00 (0 Голоса)

Лекция 9. Массивы. Обработка одномерных массивов.

Массив – конечная, именованная совокупность данных одного типа, расположенных в смежных ячейках памяти.

Обращение к элементу массива осуществляется по имени и по индексу (номеру элемента в массиве).

A

Массив описывается при помощи задания типа его элементов, указания количества и типа индексов.

Общий вид описания массива:

ARRAY [ t1 ] OF t2 ,

где ARRAY-зарезервированное слово,

t1-тип индекса,

t2- тип элементов массива.

Тип индекса - ограниченный порядковый тип, тип элементов – любой (кроме файлового ).

Если t2 – простой тип, то исходный массив называют одномерным, иначе - многомерным.

Примеры:

const n=15;

type mas=array[1..n] of integer;

T= array['A'.. 'D'] of char;

var Y, X:mas;

temp:T;

Определение типа и переменных можно совместить:

var Y, X: array[1..15] of integer;

или

var Y, X: array[1..n] of integer;

Примеры использования переменных с индексами:

X[1]:=Y[4];

X[n div 2]:=10;

На практике обработка массивов, как правило, сводится к выполнению одних и тех же действий с каждым элементом массива.

 

Вводить и выводить массивы можно только поэлементно.

 

Над массивами в целом допустима только операция присваивания, но массивы должны быть одинакового типа, например,

const n=10;

type mas=array[1..n] of integer;

var Y, X: mas;

Z: array[1..10] of integer;

. . .

X:=Y; {правильно}

X:= Z ; {ошибка}

Ввод.

Пусть

const n=15;

var X: array[1.. n] of integer;

. . .

1вариант 2 вариант

 

for i:=1 to n do

readln(X[i]);

for i:=1 to n do

begin

writeln('X[' ,i, ']=');

readln(X[i]);

end;

 

Пример 1. Найти максимальный элемент массива из 20 вещественных чисел.

Введем переменные:

n - количество элементов массива;

i - индекс элементов массива;

max - максимальный элемент массива.

 

 

 

 

 

 

 

 

 

 

 

program max_elem;

const n = 20;

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

i: integer; max: real;

begin

writeln('Введите ', n, ' эл. массива');

for i := 1 to n do read(a[i]); {ввод}

max := a[1];

for i:= 2 to n do

if a[i] > max then max:= a[i];

writeln('Макс. элемент:', max:6:2)

end.

Пример 2. Найти сумму всех и количество отрицательных элементов в массиве из 10 целых чисел.

program sum_num1;

const n = 10;

var mas : array [1 .. n] of integer;

i, sum, num :integer;

begin

writeln('Введите ', n, ' эл. массива');

for i := 1 to n do read(a[i]);

sum := 0; num := 0;

for i := 1 to n do begin

sum := sum + a[i];

if a[i] < 0 then num:= num+1;

end;

writeln( 'Сумма элементов: ', sum);

writeln('Отрицат. элементов.', num)

end.

program sum_num2;

const n = 10;

var mas : array [1 .. n] of integer;

i, sum, num :integer;

begin

sum := 0; num := 0;

writeln('Введите ', n, ' эл. массива');

for i := 1 to n do begin

read(a[i]);

sum := sum + a[i];

if a[i] < 0 then num:= num+1;

end;

writeln( 'Сумма элементов: ', sum);

writeln('Отрицат. элементов.', num)

end.

Скачать лекцию полностью - obrabotka-odnomernykh-massivov.doc

Добавить комментарий


Защитный код
Обновить

По темам:

История Украины

Культурология

Высшая математика

Информатика

Охотоведение

Статистика

География

Военная наука

Английский язык

Генетика

Разное

Технологиеские темы

Украинский язык

Филология

Философия

Химия

Экология

Социология

Физическое воспитание

Растениевосдство

Педагогика

История

Психология

Религиоведение

Плодоводство

Экономические темы

Бухгалтерские темы

Маркетинг

Иностранные языки

Ветеринарная медицина

Технические темы

Землеустройство

Медицинские темы

Творчество

Лесное и парковое хозяйство