?>
Дан неработающий пример из паскаля ABC, нужно его починить и заставить работать program E103; const n=3; type vectr=array[1..n] of real; matr= array[1..n, 1..n+1] of real; var I: integer; a: matr; z:vectr; procedure Data(var x:matr); { процедура ввода данных } var i, j:integer; begin for i:=1 to nn do for j:=1 to mm do x[i, j]:=random(21)-10; end; procedure Print(x:matr); { процедура вывода данных } var i, j:integer; begin for i:=1 to nn do begin for j:=1 to mm do write(x[i, j]:5); writeln; end end; procedure Swap(var a, b:real); var z:real; begin z:=a; a:=b; b:=z end; function Det(a:matr):real; { вычисление определителя } function Turn(k:integer):real; var s:real; k1, k2, k3, k4: integer; begin s:=0; k1:=2-k; k2:=2; k3:=2+k; for I:=1 to n do begin s:=s + a[1, k1]*a[2, k2]*a[3, k3]; k4:=k1; k1:=k2; k2:=k3; k3:=k4 end; Turn:=s end; begin Det:=Turn(1)-Turn(-1) end; procedure Solve_Kram(a:matr;var x:vectr); { процедура решения системы уравнений методом Крамера} var d:real; I, j:integer; begin d:=Det(a); if (abs(d) < 1.0e-6 ) then begin writeln(‘Error’); Exit end; for j:=1 to n do begin for I:=1 to n do Swap(a[I, j], a[I, j+1]); x[j]:=Det(a)/d; for I:=1 to n do Swap(a[I, n+1], a[I, j]) end; end; { Основная программа } Begin Data(a); Print(a); Solve_Kram(a, z); for I:=1 to n do writeln(‘x[‘, I:2, ’]=’, z[i]; readln End.
Ответы
Я незнаю но балы мне чень нужны.