VAR
I, J, K : INTEGER;
BEGIN
K:=0;
FOR I:=1 TO UG-1 DO
BEGIN
FOR J:=I+1 TO UG DO
BEGIN
IF ABS(UGOL2[I]-UGOL2[J]) < E THEN {Проверка условия равенства углов}
BEGIN
K:=K+1;
IDENT[K,1]:=I; {Запись номеров пар плоскостей,между которыми равные углы}
IDENT[K,2]:=J
END
END
END;
ID:=K
END;
{----------Процедура вывода результатов в файл------------}
PROCEDURE OUT_TO_FILE(COEF:COEF_MATR; N:INTEGER);
{Вывод исходных данных}
BEGIN
WRITELN(outFile,' ');
WRITELN(outFile,' ИСХОДНЫЕ ДАННЫЕ ');
WRITELN(outFile,' ');
WRITELN(outFile,'КОЛИЧЕСТВО ПЛОСКОСТЕЙ N=',N);
WRITELN(outFile,' ');
WRITELN(outFile,' НОМЕР КОЭФФИЦИЕНТЫ');
WRITELN(outFile,'ПЛОСКОСТИ A B C D');
FOR I:=1 TO N DO
BEGIN
EQU:=COEF[I];
WRITE(outFile,' ',I,' ');
FOR J:=1 TO 4 DO
WRITE(outFile,' ',EQU[J]:8:3,' ');
WRITELN(outFile,' ');
END;
WRITELN(outFile,' ');
{Вывод результатов}
WRITELN(outFile,' ');
WRITELN(outFile,' РЕЗУЛЬТАТЫ ');
WRITELN(outFile,' ');
{--------------------}
WRITELN(outFile,' ');
IF PP > 0 THEN
{Есть параллельные плоскости}
BEGIN
WRITELN(outFile,' ПАРАЛЛЕЛЬНЫЕ ПЛОСКОСТИ');
WRITELN(outFile,' ');
WRITELN(outFile,' НОМЕР КОЭФФИЦИЕНТЫ');
WRITELN(outFile,'ПЛОСКОСТИ A B C D');
WRITELN(outFile,' ');
FOR I:=1 TO PP DO
BEGIN
EQU:=COEF[PAR_PL[I,1]];
WRITE(outFile,' ',PAR_PL[I,1],' ');
FOR J:=1 TO 4 DO
WRITE(outFile,' ',EQU[J]:8:3,' ');
WRITELN(outFile,' ');
EQU:=COEF[PAR_PL[I,2]];
WRITE(outFile,' ',PAR_PL[I,2],' ');
FOR J:=1 TO 4 DO
WRITE(outFile,' ',EQU[J]:8:3,' ');
WRITELN(outFile,' ');
WRITELN(outFile,'---------------------------------------------------------');
WRITELN(outFile,' ')
END;
END
ELSE {Параллельных плоскостей нет}
WRITELN(outFile,' ПАРАЛЛЕЛЬНЫХ ПЛОСКОСТЕЙ НЕТ');
IF ID > 0 THEN {Есть равные углы}
BEGIN
WRITELN(outFile,' ПЛОСКОСТИ, МЕЖДУ КОТОРЫМИ РАВНЫЕ УГЛЫ ');
WRITELN(outFile,' ');
WRITELN(outFile,' НОМЕР КОЭФФИЦИЕНТЫ');
WRITELN(outFile,'ПЛОСКОСТИ A B C D');
WRITELN(outFile,' ');
FOR I:=1 TO ID DO
BEGIN
EQU:=COEF[UGOL1[IDENT[I,1],1]];
WRITE(outFile,' ',UGOL1[IDENT[I,1],1],' ');
FOR J:=1 TO 4 DO
WRITE(outFile,' ',EQU[J]:8:3,' ');
WRITELN(outFile,' ');
EQU:=COEF[UGOL1[IDENT[I,1],2]];
WRITE(outFile,' ',UGOL1[IDENT[I,1],2],' ');
FOR J:=1 TO 4 DO
WRITE(outFile,' ',EQU[J]:8:3,' ');
WRITELN(outFile,' ');
WRITELN(outFile,'----------------------','Угол=',UGOL2[IDENT[I,1]]:3:4,'----------------------------');
EQU:=COEF[UGOL1[IDENT[I,2],1]];
WRITE(outFile,' ',UGOL1[IDENT[I,2],1],' ');
FOR J:=1 TO 4 DO
WRITE(outFile,' ',EQU[J]:8:3,' ');
WRITELN(outFile,' ');
EQU:=COEF[UGOL1[IDENT[I,2],2]];
WRITE(outFile,' ',UGOL1[IDENT[I,2],2],' ');
FOR J:=1 TO 4 DO
WRITE(outFile,' ',EQU[J]:8:3,' ');
WRITELN(outFile,' ');
WRITELN(outFile,'----------------------------------------------------');
WRITELN(outFile,'----------------------------------------------------')
END
END
ELSE
WRITELN(outFile,' ПАР ПЛОСКОСТЕЙ, МЕЖДУ КОТОРЫМИ РАВНЫЕ УГЛЫ, НЕТ')
END;
{-----------Процедура вывода результатов на экран---------------}
PROCEDURE OUT_TO_MONITOR(COEF:COEF_MATR; N:INTEGER);
BEGIN
{Вывод исходных данных}
WRITELN;
WRITELN(' ИСХОДНЫЕ ДАННЫЕ ');
WRITELN;
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.