code 34375;
integer procedure EIGCOM(AR, AI, N, EM, VALR, VALI, VR, VI);
value N; integer N; array AR, AI, EM, VALR, VALI, VR, VI;
begin integer I;
integer array INT[1:N];
array D, B, DEL, TR, TI[1:N];
EQILBRCOM(AR, AI, N, EM, D, INT);
EM[1]:= COMEUCNRM(AR, AI, N - 1, N);
HSHCOMHES(AR, AI, N, EM, B, TR, TI, DEL);
I:= EIGCOM:= QRICOM(AR, AI, B, N, EM, VALR, VALI, VR,
VI); if I = 0 then
begin BAKCOMHES(AR, AI, TR, TI, DEL, VR, VI, N, 1, N);
BAKLBRCOM(N, 1, N, D, INT, VR, VI);
SCLCOM(VR, VI, N, 1, N)
end
end EIGCOM;
eop