Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по Паскалю.doc
Скачиваний:
61
Добавлен:
04.06.2015
Размер:
7.62 Mб
Скачать

Var I, j, m, t : Integer;

V : Array [1..K] Of Integer;

a : Array [1..n, 1..n] Of Integer;

Begin

ClrScr;

Randomize;

For i:=1 To n Do

For j:=1 To n Do

a[i, j]:= Random(mass_max – mass_min + 1) + mass_min;

WriteLn;

WriteLn(‘Исходный массив:’);

For i:=1 To n Do

Begin

For j:=1 To n Do

Write(a[i, j]:5);

WriteLn;

End;

WriteLn;

For i:=1 To k Do обнуляем выходной вектор

v[i]:= 0;

m:= n-1;

For i:= 1 To n Do

Begin

m:= m+1;

t:= m;

For j:=1 To n Do

Begin

v[t]:= v[t] + a[i,j];

t:= t - 1;

End;

End;

WriteLn;

WriteLn(‘Полученный вектор’);

WriteLn;

For i:=1 To k Do

Write(Vector[i]:5);

WriteLn;

ReadLn;

End.

19.Задать элементы целочисленного трехмерного массиваmassivknmпо слоям в виде чисел от 1доk*n*m. Вывести на экран верхнюю, переднюю и правую грани массива:

Program Primer_19;

Uses WinCrt;

Const k = 3; количество слоев

n = 4; количество строк в слое

m = 5; количество столбцов в слое

Var I, j, b, c : Word;

Massiv : Array [1..k, 1..n, 1..m] Of Word;

Begin порядок следования индексов: слой, строка, столбец

ClrScr;

c:= 0; рабочая переменная для задания элементов массива

For i:=1 To k Do заполнение слоев массива

For j:=1 To n Do заполнение строк массива

For b:=1 To m Do заполнение столбцов массива

Begin

c:= c + 1;

Massiv[i, j, b]:= c;

End;

WriteLn('Верхняя грань:');

For i:=1 To n Do

Begin

For j:=1 To m Do

Write(Massiv[1, i, j]:5);

WriteLn;

End;

WriteLn;

WriteLn('Передняя грань:');

For i:=1 To k Do

Begin

For j:=1 To m Do

Write(Massiv[i, n, j]:5);

WriteLn;

End;

WriteLn;

WriteLn('Правая грань:');

For i:=1 To k Do

Begin

For j:=1 To n Do

Write(Massiv[i, j, m]:5);

WriteLn;

End;

WriteLn;

ReadLn;

End.

Результат работы программы:

Верхняя грань:

1 2 3 4 5

6 7 8 9 10

11 12 13 14 15

16 17 18 19 20

Передняя грань:

16 17 18 19 20

36 37 38 39 40

56 57 58 59 60

Правая грань:

5 10 15 20

25 30 35 40

45 50 55 60

Часто встречающиея ошибки программирования:

1.Заголовок цикла заканчивается точкой с запятой. Это приводит к тому, что цикл отрабатываетпустойоператор заданное количество раз, и после этогоодинраз вычисляется тело цикла:

s := 0;

For i := 1 To 100 Do;

s := s + i; в этом случае s = 100

2.При использовании словаToконечное значение параметра цикла превосходит его начальное значение. В этом случае цикл не выполняетсяни разу:

s := 0;

For i := 100 To 1 Do

s := s + i; в этом случае s = 0

3.Использование в качестве параметра цикла переменнойвещественноготипа:

s := 0.0;

For i := 1.0 To 100.0 Do

s := s + i;

4.Изменение внутри области цикла значения параметра цикла, а также его начального и конечного значения:

m := 10;

n := 1;

For j := m DownTo n Do

Begin

a[j] := j + 10;

j := j + 1; ошибка!

m := m + 1; ошибка!

n := n – 1; ошибка!

End;