Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Типовой расчет 14 вариант.doc
Скачиваний:
2
Добавлен:
01.05.2025
Размер:
224.77 Кб
Скачать

8. Тестирование:

Для проверки корректности программы использован метод восходящего тестирования.

Для каждой подпрограммы были составлены программы-драйверы:

8.1 Драйвер для сегмента 1

назначение

контроль данных

Исходные данные

выходные данные

1

на положительный результат

2 2 2 2 2 3 3 3 3 3 4 4 4 4 4 1 1 1 1 1 5 5 5 5 5

10

15

20

5

25

2

на аномалию

1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4 5 5 5 5 5

5

10

15

20

25

3

на отрицательный результат

5 5 5 5 5 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4 1 1 1 1 1

25

10

15

20

5

Program sigment1

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

massiv=array[1..5] of real;

var a:matr;

b:massiv;

f1,f2:text;

i,j:integer;

procedure nov(var a;n,m:integer;var b);

type ma=array[1..100,1..100] of real;

mas=array[1..10922] of real;

var i,j:integer;

Begin

for i:=1 to n do

begin

mas(b)[i]:=0;

for j:=1 to m do

mas(b)[i]:=mas(b)[i]+ma(a)[i,j];

end;

End;

BEGIN

assign(f1,'vdoh.pas');

assign(f2,'vidoh.pas');

reset(f1);

rewrite(f2);

for i:=1 to 5 do

begin

for j:=1 to 6 do

read(f1,a[i,j]);

readln(f1);

end;

nov(a,5,10,b);

for i:=1 to 5 do

write(f2,b[i],' ');

writeln(f2);

close(f1);

close(f2);

END.

8.2 Драйвер для сегмента 2

назначение

контроль данных

Исходные данные

выходные данные

1

на положительный результат

10

15

20

5

25

k=5

2

на аномалию

5

10

15

20

25

k=5

3

на отрицательный результат

25

10

15

20

5

k=1

Program sigment2;

Type massiv=array[1..5] of real;

var b:massiv;

f1,f2:text;

i,j,k:integer;

function max(var b;n:integer):integer;

type mas=array[1..10922] of real;

var k,i:integer;

Begin

k:=1;

for i:=2 to n do

if mas(b)[k]<mas(b)[i] then

begin

mas(b)[k]:=mas(b)[i];

k:=i;

end;

max:=k;

End;

BEGIN

assign(f1,'vdoh.pas');

assign(f2,'vidoh.pas');

reset(f1);

rewrite(f2);

for i:=1 to 5 do

read(f1,b[i]);

readln(f1);

max(b,5)

write(f2,k);

close(f1);

close(f2);

END.

8.3 Драйвер для сегмента 3

Program sigment3;

назначение

контроль данных

Исходные данные

выходные данные

1

на положительный результат

10

15

20

5

25

l=4

2

на аномалию

5

10

15

20

25

l=1

3

на отрицательный результат

25

10

15

20

5

l=5

type massiv=array[1..5] of real;

var b:massiv;

f1,f2:text;

i,j,l:integer;

function min(var b;n:integer):integer;

type mas=array[1..10922] of real;

var l,i:integer;

Begin

l:=1;

for i:=2 to n do

if mas(b)[l]>mas(b)[i] then

begin

mas(b)[l]=mas(b)[i];

l:=i;

end;

min:=l;

End;

BEGIN

assign(f1,'vdoh.pas');

assign(f2,'vidoh.pas');

reset(f1);

rewrite(f2);

for i:=1 to 5 do

read(f1,b[i]);

readln(f1);

min(b,5)

write(f2,l);

close(f1);

close(f2);

END.