Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лабораторные работы по информатике 6-15.doc
Скачиваний:
3
Добавлен:
09.11.2018
Размер:
1.79 Mб
Скачать

1) Объяснить работу программы.

Как описывается массив?

2) Нарисовать блок-схему и объяснить назначение бло-ков.

3) Провести вычисление по про-грамме для массива n = 5

А[5] = (5, 4, 3, 2, 1).

Лабораторная работа № 11

Работа в среде Турбо Паскаль.

Двумерные массивы.

Описание массивов. Ввод, вывод массивов. Суммирование, среднее арифметическое, геометрическое, гармоническое.

Двумерный массив

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

Двумерный массив A= {a[i,j]}, i =1,…,m; j=1,…,n . Здесь i - номер

строки, j- номер столбца.

type <имя типа> = array[ ] of <тип элементов>;

var <имя массива> : <имя типа> ;

Пример. а) A= {a[i,j]}, i =1,…,m; j=1,…,n .

const m = 2, n = 4;

type ar:array[1 .. 2, 1 .. 4] of real;

var a:ar;

var <имя массива> : array[ ] of <тип элементов>;

Пример. а) const m, n:integer;

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

б) Массив 1 2 3 4 5 задан var a: array[1 .. 2, 1 .. 5] of real;

5 4 3 2 1

Двумерный массив.

Ввод массива A= {a[i,j]}, i =1,…,m; j=1,…,n .

for i:=1 to m do

for j:=1 to n do readln(a[i, j]); {в один столбец}

Вывод массива A= {a[i,j]}, i =1,…,m; j=1,…,n .

for i:=1 to m do

begin

for j:=1 to n do write(a[i, j]:6);

writeln;

end; {в виде матрицы (m x n)}

Пример 11.1 Ввести и вывести двумерный массив A( 3, 3) .

Program Pr_11_1;

const m=3; n=3;

type

ar=array[1..m,1..n] of real;

var

a:ar; i,j:integer;

begin

writeln('vvedite massiv');

for i:=1 to m do

for j:=1 to n do

read (a[i,j]);

writeln('vivedite massiv');

for i:=1 to m do

begin

for j:=1 to n do

write(a[i,j]:6:2);

writeln;

end;

end.

Пример 11.1 (Продолжение).

1) Организовать по программе ввод двумерного массива А(3,3) в одну строку (1, 2, 3, 4, 5, 6, 7, 8, 9), а вывод в ви-де матрицы (3, 3): 1 2 3

4 5 6

7 8 9

2) Как описывается двумерный массив?

3) Объяснить работу программы.

4) Нарисовать блок-схему и объяснить назначение бло-ков.

5) Как надо изменить програм-му, чтобы организовать ввод массива в один столбец.

Пример 11.2 Найти сумму элементов матрицы A( 3, 3) (см. 11.1).

Program Pr_11_2;

const m=3; n=3;

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

i,j,k:integer; S:real;

begin

writeln('vvedite massiv');

for i:=1 to m do

for j:=1 to n do

read (a[i,j]);

S:=0;

for i:=1 to m do

for j:=1 to n do

begin

S:=S+a[i,j];

end;

writeln('vivedite massiv');

for i:=1 to m do

begin

for j:=1 to n do

write(a[i,j]:6:2);

writeln;

end;

writeln('S=',S:6:2)

end.

Пример 11.2 (Продолжение).

1) Как описывается двумерный массив?

2) В каком виде вводится мас-сив (строка или столбец)?