Контрольная работа по предмету "Информатика, программирование"


Алгоритмические языки: использование процедур при работе с двумерными массивами

ЛАБОРАТОРНАЯ РАБОТА


по дисциплине “Основы программирования”


на тему


Алгоритмические языки: использование процедур при работе с двумерными массивами



Цель работы: получение навыков работы с процедурами и двумерными массивами.


Постановка задачи:


1. Изучить способы описания и использования многомерных массивов, назначение процедур, их описание и обращение к ним.


2. Разбить задачу соответствующего варианта на подзадачи, таким образом, чтобы решение каждой подзадачи описывалось процедурой, а основная программа состояла из последовательности вызова процедур.


3. Программно реализовать алгоритмы.


Задание к работе:


1. Дана матрица n*m. В каждой Строке выбрать минимальный элемент, затем среди них найти наибольший. Вывести индексы найденного элемента.


2. Набрать программу, отладить ее, протестировать. Распечатать текст программы и результаты ее работы на тестовых данных.



Ход выполнения работы


1. Блок-схема:












-







z:=b[1] y:=1








b[x]:=z






z:=a[x,y]


c[i]:=y




+





-


+


Рисунок 1. Блок-схема программы



2. Текст программы


Program lab52;


Const


max=10;


Type


mat=array[1..max] of array[1..max] of integer;


Var


a:mat;


b:array[1..max] of integer;


c:array[1..max] of Byte;


i,j:byte;


procedure vvod_m(Var a:mat;Var i,j:Byte);


Var x,y:byte;


Begin


Writeln('Введите мерность матрици ');


Write('i='); readln(i);


Write('j='); readln(j);


Writeln('Введите массив:');


for x:=1 to i do


for y:=1 to j do


Begin


write('a[',x,',',y,']=');


readln(a[x,y])


End


End;


Procedure Proc(a:mat;i,j:byte);


Var


b:array[1..max] of integer;


c:array[1..max] of Byte;


x,y:byte;


z:integer;


Begin


for x:=1 to i do


Begin


z:=a[x,1];


c[i]:=1;


for y:=2 to j do


if a[x,y]<z then


Begin


z:=a[x,y];


c[i]:=y


End;


b[x]:=z;


End;


z:=b[1];


y:=1;


for x:=2 to i do if b[x]>z then


Begin


z:=b[x];


y:=x


End;


Writeln('Искомый элемент-a[',y,',',c[y],']=',a[y,c[y]]);


End;


Begin


vvod_m(a,i,j);


Proc(a,i,j)


End.



3. Результаты работы:


1. Тест №1.



Искомый элемент - a[2,1]=3.



Рисунок 2. Результат теста №1.


2. Тест №2.



Искомый элемент - a[3,1]=2.



Рисунок 3. Результат теста №2.



Не сдавайте скачаную работу преподавателю!
Данную контрольную работу Вы можете использовать для выполнения своих заданий.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :