zadach347.PAS

{* Задача 347 *}

Unit ZADACH347;
Interface
Implementation
Begin
 writeln('Решить уравнение:


'
);
End.

Program zadach347;

Uses zadach347.pas; {* Эту строку можно удалить *}
Uses crt; {* Вызов внешних функций *}
Var {* Объявление переменных *}
  opr   : real;
  i     : integer;
  j     : integer;
  n     : integer;
  x     : Array[1..10] Of real;
  s     : Array[1..10] Of real;
  y     : Array[1..10, 1..10] Of real;
  fail1 : text;
  fail2 : text;
Begin
  clrscr; {* Очищаем экран *}
  writeln('enter n');
  read(n);
  assign(fail1, 'ofo.txt'); {* Связывание fail1 с файлом 'ofo.txt' *}
  assign(fail2, 'oto.txt'); {* Подключение к файлу 'oto.txt' через переменную fail2 *}
  reset(fail1); {* Чтение из файла через переменную fail1 *}
  rewrite(fail2); {* Запись в файл через переменную fail2 *}
  For i := 1 To n Do {* Цикл для i => [1 .. n] *}
  Begin
    For j := 1 To n + 1 Do {* Переменная j увеличивается с 1 до n *}
    Begin
      read (fail1, y[i, j]);
      write('  ', y[i, j] : 2:0);
    End;
    readln(fail1);
    writeln; {* Вывод пустой строки *}
  End;
  x[n] := y[n, n + 1] / y[n, n];
  For i := n - 1 Downto 1 Do
  Begin
    s[i] := 0;
    For j := n Downto i + 1 Do
      s[i] := s[i] + x[j] * y[i, j];
    x[i] := (y[i, n + 1] - s[i]) / y[i, i]
  End;
  For i := 1 To n Do {* Переменная i увеличивается с 1 до n *}
  Begin
    writeln('x[', i, ']=', x[i] : 2:2);
    writeln(fail2, 'x[', i, ']=', x[i] : 2:2);
  End;
  close(fail1); {* Файл fail1 будет закрыт *}
  close(fail2); {* Закрыть файл fail2 *}
  readkey; {* Нажмите любую клавишу *}
End.