МАТЕРИАЛЫ К ЛАБОРАТОРНОЙ РАБОТЕ


 

Тема: Программирование алгоритмов с использованием двумерных массивов данных (матриц).

Цель:

- приобрести навыки разработки алгоритмов циклических вычисли- тельных процессов сложной структуры на примере матриц.

- уметь составлять про­граммы с вложенными циклами на алгоритмическом языке Turbo-Pascal и проводить по ним расчет на компьютере.

Понятие вложенного цикла тесно связано с понятием внешнего и внутреннего цикла. Схема алгоритма с одним вложенным циклом приведена на рисунке 6.

 

Рисунок 6 – Схема алгоритма вложенного цикла

 

Цикл по J вложен в цикл по I и по отношению к нему является внутренним, а цикл по I – внешним. Из схемы алгоритма следует, что при I = 1 цикл по J повторяется m раз, т. е. на 1 внешний цикл по I приходится m внутренних по J, поэтому общее число циклов в данном алгоритме будет n x m. В алгоритмах может быть любое число вложений в цикл.

Циклы с одним вложением обычно используются при обработке таблиц, состоящих из строк и столбцов, и имеющих вид двумерных массивов. В таких массивах положение элемента и его значение определяется номером строки и номером столбца:

а1,1 а1,2 а1,3 … а1,m

a2,1 a2,2 a2,3 …a2,m

a3,1 a3,2 a3,3 … a3,m

……………….

an,1 an,2 an,3 … an,m

Элемент такого массива будет А [I, J]. Первый индекс I указывает на номер строки, а второй J – на номер столбца. Тогда при работе с элементами каждой строки массива, необходимо зафиксировать первый индекс I, а изменять второй индекс J, что сможет обеспечить схема алгоритма на рисунке 7. При работе с элементами каждого столбца необходимо зафиксировать второй индекс J, а изменять первый индекс I, что обеспечивает схема алгоритма на рисунке 8.

Рисунок 7 – Схема алгоритма работы с элементами строки Рисунок 8 – Схема алгоритма работы с элементами столбца

 

Пример 3 Группа из 8 студентов сдала 5экзаменов. Определить, сколько студентов сдали сессию со средним баллом более 7.

Экзаменационная ведомость студентов имеет вид матрицы:

х1,1 х1,2 х1,3 x1,4 x1,5

х2,1 х2,2 х2,3 …x2,5

………………..

x8,1 х8,2 х8,3 х8,4x8,5

Элемент матрицы X [I, J] – оценка за экзамен, где первый индекс I указывает номер строки (номер студента), а второй индекс J – номер столбца (номер экзамена). Схема алгоритма решения задачи приведена на рисунке 9.

Рисунок 9 – Схема алгоритма решения к примеру 3

PROGRAM PRIM3;

VAR

S,I,J,K:INTEGER;

SR:REAL;

X:ARRAY [1..8,1..5] OF INTEGER;

BEGIN

FOR J:= 1 TO 8 DO

FOR I:= 1 TO 5 DO READLN(X[I,J]);

K:=0;

FOR I:= 1 TO 8 DO BEGIN

S:=0;

FOR J:= 1 TO 5 DO S:=S+X[I,J];

SR:= S/5;

IF SR>7 THEN K:=K+1;

END;

WRITELN (‘количество студентов’,K:3);

END.

 

В данном алгоритме ввод элементов матрицы проведен по строкам, а затем обнуляется счетчик количества студентов (K= 0). Далее при I= 1 внутренний цикл по J= 1,5 осуществляет суммирование баллов по каждому из экзаменов (S = S + X [I, J]), предварительно принимая сумму баллов для каждого студента, равной нулю (S= 0). По выходе из внутреннего цикла вычисляется средний балл каждого студента SRи количество студентов увеличивается на единицу (K = K + 1) при SR >7, а при невыполнении этого условия K остается прежним. После этого осуществляется выход во внешний цикл, и процесс повторяется для следующего студента (I= 2) и т. д., пока I непревысит 8.

 



Дата добавления: 2022-02-05; просмотров: 261;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.009 сек.