Курсовую работу выполнил студент группы А – 61 Иванов Роман Борисович



Вариант № 21

    Разработанный модуль содержит следующие программы :

Процедуру формирования элементов матрицы в интервале –1.0 до 1.0.

Функцию определения суммы элементов той строки, где находиться максимальный элемент.

Процедуру вывода элементов матрицы.

Результаты :

Сформированная матрица :

------------------------------

------------------------------

 

Сумма элементов строки, где находится максимальный элемент =……. 

 

 

Вызывающая программа

 

 
 

 

 

 
 

 

 

 

 


Процедура формирования массива А

 

     
 

PROCEDURE FORM

     
 

 

 

 

Процедура ввывода массива А

PROCEDURE VIVOD

     

 

 

 

 

Процедура произведения элементов массива А

PROCEDURE PR

         
   

     
 

 

 

 

Функция поиска максимального элемента в векторном массиве С

FUNCTION MAX

 

 

Глава 3. Модуль основной программы

 

unit kurp1;

interface

const n=5;

type matr=array[1..n,1..n] of real;

vect=array[1..n] of real;

procedure form(var a:matr);

procedure vivod (var a:matr);

function max(c:vect):real;

procedure pr(a:matr;var c:vect);

implementation

procedure vivod (var a:matr);

var i,j:integer;

begin

for i:=1 to n do

begin

for j:=1 to n do

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

writeln;

end;

writeln;

end;

procedure form(var a:matr);

var i,j:integer;

begin

randomize;

for i:=1 to n do

for j:=1 to n do

a[i,j]:=random*2-1;

end;

function max( c:vect):real;

var i:integer;

m:real;

begin

m:=-2;

for i:=1 to n do

 if c[i]>m then m:=c[i];

max:=m

end;

procedure pr(a:matr;var c:vect);

var i,j:integer;

begin

c[i]:=1;

for i:=1 to n do

 begin

for j:=1 to n do

c[i]:=a[j,i]*c[i];

writeln('Произведение ',i,'-го столбца =',c[i]:6:4);

end;

writeln;

end;

end.

 

Глава 4. Основная программа

 

program kursovik;

uses crt,kurp1;

var a:matr;

c:vect;

begin

clrscr;

window (45,2,75,7) ;

writeln ('Курсовая работа по информатике') ;

writeln('Факультет АЭС группа А-92');

writeln ('студента: Грязина Дмитрия ');

window(1,1,80,25);

writeln('вариант 21');

window(10,8,80,20);

writeln('Разработанный модуль содержит следующие программы:');

writeln('1.Процедуру формирования элементов матрицы в интервале от 1.0 до 1.0.');

writeln('2.Процедуру вывода матрицы на экран.');

writeln('3.Процедуру определения произведения каждого столбца матрицы.');

writeln('4.Функцию определения максимального произвелдения.');

window(1,1,80,25);

gotoxy(10,24);

writeln('Для продолжения нажмите пробел');

clrscr;

 form(a);

writeln('Сформированная матрица');

vivod(a);

pr(a,c);

writeln('Максимальное произведение =',max(c):6:4);

readln;

end.

 

 

 

 

 

Глава 5. Результаты первой части курсовой работы

 

 

Сформированная матрица

 -0.68 0.22 0.58 -0.62 -0.14

0.25 -0.11 -0.90 0.41 -0.57

0.24 -0.69 -0.84 0.28 0.71

 -0.46 -0.26 0.16 0.49 -0.73

0.60 0.17 0.28 -0.77 -0.61

 

Произведение 1-го столбца =0.0112

Произведение 2-го столбца =-0.0007

Произведение 3-го столбца =0.0187

Произведение 4-го столбца =0.0264

Произведение 5-го столбца =0.0243

 

Максимальное произведение =0.0264

 

 

Глава 6. Записи.  

 

Запись – это структура данных, состоящая из фиксированного числа компонентов, называемых полями записи. В отличие от массива, компоненты (поля) записи могут быть различного типа. Чтобы можно было ссылаться на тот или иной компонент записи, поля именуются.

 

Структура обьявления типа записи такова:

                  

                       <имя типа> = RECORD <пс. полей> END

 

Здесь <имя типа> - правельный индификатор;

     RECORD, END – зарезервированные слова (запись, конец);

     <сп. полей> - список полей; представляют собой последовательность           

     разделов записи, между которыми ставится точка с запитой.

 

Каждый раздел записи состоит из одного или нескольких индификаторов полей, отделяемых друг от друга запятыми. За индификатором ставится двоеточие и описание типа поля например:

 

             type

                     birthday = record

               day, month : byte;

              year : word:

              end;    

             var

                   a,b : Birthday;

                   . . . . . . . .

 

В этом примере тип Birthday есть запись с полями DAY, MONTH, и YEAR; переменные А и В содержат записи типа Birthday.

Как в массиве, значения переменных типа записи можно присваивать другим переменным того же типа, например:

                                 a : = b;

К каждому из компонентов записи можно получить доступ, если использовать составное имя, т.е. указать имя переменной, затем точку и имя поля:

                                 a.day := 27;    b.year := 1991;

Чтобы упростить доступ к полям записи, используется оператор присоединения WITH:

              WITH <переменная> DO <оператор>  

 

Здесь WITH, DO – ключевые слова (с, делать);

     <переменная> - имя переменной типа запись, за которым,

     возможно, следует список вложенных полей; 

     <переменная> - любой оператор Турбо Паскаля.

Например:

         with c.bd do month := 9;

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

 

.

 

 

Глава 7. Файлы.

 

Под файлом понимается именованная область памяти на магнитном носителе, используемая для долговременного хранения некоторой логиче­ски связанной информации. В эту область внешней памяти можно как поместить определенные данные, так и извлечь их из нее. Эти действия имеют общее название - ввод-вывод.

 


Дата добавления: 2019-07-15; просмотров: 185; Мы поможем в написании вашей работы!

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






Мы поможем в написании ваших работ!