Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Tipovoy_Raschet_Георгий.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
508.42 Кб
Скачать

11. Программа на Delphi (с процедурами-заглушками, кроме процедур ввода и вывода).

Имена входного и выходного файлов передаются как параметры программы:

Первый – имя файла с исходными данными

Второй – имя файла для вывода исходных данных и результатов

*********************Файл основной программы Project2.dpr**************************

program Project2;

{$APPTYPE CONSOLE}

uses

SysUtils,Unit1;

var dat,res:TextFile;

a:Matrix;

n:byte;

d,max,min,p:real;

f1,f2:boolean;

begin

AssignFile(dat,paramstr(1)); Reset(dat);

AssignFile(res,paramstr(2)); Rewrite(res);

{Ввод из файла dat}

InPut(dat,n,p,a);

{Проверка n}

Checkn(dat,res,n);

{ Проверка p}

Checkp(dat,res,p);

{ Проверка матрицы}

CheckArray(dat,res,n,f1,a);

{вывод исходной матрицы}

OutPutArray(res,n,p,a);

{поиск максимума}

Maximum(n,a,max);

{поиск минимума}

Minimum(n,a,min);

{сравнение разности с p}

Compare(d,p,max,min,f2);

{изменение матрицы}

Ending(n,f2,A);

{вывод измененной матрицы или вывод о невозможности сделать это}

OutPut(res,a,f2,n);

CloseFile(dat);

CloseFile(res);

writeln('Look through your results in res.txt');

writeln('Press any key');

readln

end.

****************Модуль Unit.pas со всеми процедурами и функциями**********************

unit Unit1;

interface

uses SysUtils;

const nmax=5;

type Matrix=array[1..nmax,1..nmax] of real;

procedure InPut(var dat:TextFile; var n:byte; var p:real; var a:Matrix);

Формальные параметры

Фактические параметры

Тип

dat

dat

TextFile

n

n

Byte

p

P

real

a

a

Matrix

procedure Checkn(var dat:TextFile; var res:TextFile; var n:byte);

Формальные параметры

Фактические параметры

Тип

res

res

TextFile

dat

dat

TextFile

n

n

byte

procedure Checkp(var dat:TextFile; var res:TextFile; var p:real);

Формальные параметры

Фактические параметры

Тип

res

res

TextFile

dat

dat

TextFile

p

p

real

procedure CheckArray(var dat:TextFile; var res:TextFile; n:byte; f1:boolean; a:Matrix);

Формальные параметры

Фактические параметры

Тип

dat

dat

TextFile

res

res

TextFile

n

n

byte

F1

F1

boolean

a

a

Matrix

procedure OutPutArray(var res:TextFile;n:byte;p:real;out a:matrix);

Формальные параметры

Фактические параметры

Тип

res

res

TextFile

n

n

byte

p

p

real

a

a

Matrix

procedure Maximum(var n:byte; var a:Matrix; out max:real);

Формальные параметры

Фактические параметры

Тип

n

n

byte

a

a

matrix

max

max

real

procedure Minimum(var n:byte; var a:Matrix; out min:real);

Формальные параметры

Фактические параметры

Тип

n

n

byte

a

a

matrix

min

min

real

procedure Compare(var d:real;var p:real; var max,min:real;var f2:boolean);

Формальные параметры

Фактические параметры

Тип

d

d

real

p

p

real

max

max

real

Min

Min

real

F2

F2

boolean

procedure Ending(var n:byte; out A:matrix);

Формальные параметры

Фактические параметры

Тип

n

n

byte

a

a

matrix

procedure OutPut(var res:TextFile; var a:Matrix; var n:byte);

Формальные параметры

Фактические параметры

Тип

res

res

textfile

a

a

matrix

n

n

byte

implementation

procedure InPut(var dat:TextFile; var n:byte; var p:real; var a:Matrix);

var i,j:byte;

begin

readln(dat,n);

readln(dat,p);

for i:=1 to n do begin

for j:=1 to n do read(dat,A[i,j]);

end;

end;

procedure Checkn(var dat:TextFile; var res:TextFile; var n:byte);

begin

заглушка

end;

procedure Checkp(var dat:TextFile; var res:TextFile; var p:real);

begin

заглушка

end;

procedure CheckArray(var dat:TextFile; var res:TextFile; n:byte; f1:boolean; a:Matrix);

var i,j:byte;

begin

заглушка

end;

procedure OutPutArray(var res:TextFile;n:byte;p:real;out a:matrix);

var i,j:byte;

begin

writeln(res,’Исходные данные’);

writeln(res,'p= ',p:5:1);

writeln(res,’Квадратная матрица ',n:1,'-ого порядка');

writeln(res);

for i:=1 to n do begin

for j:=1 to n do write(res,A[i,j]:3:1,' ');

writeln(res);

end;

writeln(res);

end;

procedure Maximum(var n:byte; var a:Matrix; out max:real);

var i,j:byte;

begin

заглушка

end;

procedure Minimum(var n:byte; var a:Matrix; out min:real);

var i,j:byte;

begin

заглушка

end;

procedure Compare(var d:real;var p:real; var max,min:real;var f2:boolean);

var i,j:byte;

begin

заглушка

end;

procedure Ending(var n:byte;out A:matrix);

var i,j:byte;

begin

заглушка

end;

procedure OutPut(var res:TextFile; var a:Matrix;var n:byte);

var i,j:byte;

begin

заглушка

end.

Абстракция А0.5

1.Условие. Проверка массива

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]