Навігація
Посилання


Додаток А

Програма розрахунку узагальнюючих оцінок пріоритетності за допомогою МАІ

PROGRAM nat; Uses DOS,CRT;

VAR

A,AS : array [1..20,1..20] of real;

B,C,CSS,L : array [1..20] of real; I,J,N : integer;

CS,Lmax,IU,SVU,VU : real; wh : char;

BEGIN

{ Уведення матриці А } TextBackGround(1); TextColor(15); ClrScr;

writeln; writeln;

write(´Введiть розмiрнiсть матрицi N = ´); readln(N);

for I:=1 to N do for J:=1 to N do begin write (´A[´,I,´,´,J,´]= ´);

readln (A[I,J]);

end;

writeln;

ClrScr; writeln;writeln; writeln(´Матриця А :´); for I:=1 to N do begin

write (´ ´);

for J:=1 to N do write (A[I,J]:8:3);

writeln

end; wh:=ReadKey;

{ Розрахунок матриці В - сума по стовпцях } for J:=1 to N do begin

B[J]:=0;

for I:=1 to N do B[J]:=B[J]+A[I,J];

end;

{ Розрахунок матриці AS} for I:=1 to N do for J:=1 to N do AS[I,J]:=A[I,J]/B[J];

{ Розрахунок матриці С - сума по рядках матриці AS } for I:=1 to N do begin

C[I]:=0;

for J:=1 to N do C[I]:=C[I]+AS[I,J];

end;

{ Cума рядків матриці С - CS } CS:=0;

for I:=1 to N do CS:=CS+C[I]; writeln;

{ Нормалізований вектор пріоритету - CSS=C/CS} for I:=1 to N do CSS[I]:=C[I]/CS;

writeln(´ Нормалізований вектор пріоритету - СSS:´); for I:=1 to N do writeln(´´,CSS[I]:8:3);

wh:=ReadKey;

{ Знаходження матриці L=B*CSS } for I:=1 to N do L[I]:=B[I]*CSS[I];

writeln;

{ Сума рядків матриці L - Lmax } Lmax:=0;

for I:=1 to N do Lmax:=Lmax+L[I];

{ Індекс узгодженості - IU = Lmax-N / N-1 } IU:=(Lmax-N)/(N-1);

{ Середнє відношення узгодженості - SVU } if N=1 then SVU:=0;

if N=2 then SVU:=0;

if N=3 then SVU:=0.58; if N=4 then SVU:=0.9; if N=5 then SVU:=1.12; if N=6 then SVU:=1.24; if N=7 then SVU:=1.32; if N=8 then SVU:=1.44; if N=9 then SVU:=1.45;

if N=10 then SVU:=1.49;

{ Розрахунок відношення узгодженості - VU } VU:=(IU/SVU)*100;

writeln(´ Відношення узгодженості :´); writeln(´VU = ´,VU:8:0,´ %´);

wh:=ReadKey

END.

Додаток Б

Коефіцієнти нарахування процентів до підрозділу 5.8


загрузка...