zadach263.PAS

{* Задача 263 *}

Unit ZADACH263;
Interface
Implementation
Begin
 writeln('Известно, что любое натуральное число можно представить в виде суммы не более чем четырех квадратов натуральных чисел или, что то же самое, в виде суммы четырех квадратов неотрицательных целых чисел (теорема Лагранжа). Дано натуральное n; указать такие неотрицательные x, y, z, t , что n = x2 + y2 + z2 + t2 . ');
End.

Program zadach263;

Uses zadach263.pas; {* Эту строку можно удалить *}
Var {* Объявление переменных *}
  n  : integer;
  n2 : integer;
  x  : integer;
  y  : integer;
  z  : integer;
  t  : integer;
Begin
  writeln; {* Пропускаем одну строку *}
  writeln; {* Пропускаем одну строку *}
  writeln; {* Пропускаем одну строку *}
  write('n=');
  readln(n);
  n2 := n;
  x := trunc(sqrt(n2));
  n2 := n2 - x * x;
  y := trunc(sqrt(n2));
  n2 := n2 - y * y;
  z := trunc(sqrt(n2));
  n2 := n2 - z * z;
  t := trunc(sqrt(n2));
  writeln('x=', x, '  y=', y, '  z=', z, '  t=', t);
  writeln(n, '=', x * x, '+', y * y, '+', z * z, '+', t * t); {readln;
  }

End.