end;
Writeln ('Задайте метод вывода данных '); {Выбор способа вывода данных}
Writeln ('1 – в файл C:\out.rtf');
Writeln ('2 – на экран');
Readln(t1); { перемен. для обозначения вывода в файл или на экран}
ugol := ABS(ugol);
While ugol > 180 do {приравнивание заданного угла к стандарту сравнения }
ugol := ugol - 180 ; { 0 ≤ α ≤ 90 }
if ugol > 90 then
ugol := 180 - ugol;
assign (f , 'C:\out.rtf'); {связь f с файлом out.rtf}
rewrite(f); {открыть файл out.rtf для записи}
i:=0 ; {Задание нач. - константного значения кол-ва ‘ Writeln ’ }
i1:=0 ; {обнуление счетчика по пункту 1}
i2:=0 ; {обнуление счетчика по пункту 3}
d:=0 ; {обнуление счетчика по пункту 2}
if t1 = 1 then begin {Заголовок к заданию № 1(в файл)}
Writeln (f,' | Задание # 1 : Перечень заданных прямых , || Оси OX :|');
Writeln (f,' - - - - - - - - - - - - - - - - - - - - - - - - - - - ');
end;
if t1 = 2 then begin {Заголовок к заданию № 1(на экран)}
Writeln (' | Задание # 1 : Перечень заданных прямых , || Оси OX :|');
Writeln (' - - - - - - - - - - - - - - - - - - - - - - - - - - - ');
end;
for k:=1 to n do
if (A[k] = 0) and (B[k] <> 0) then {обнаружение и вывод прямых параллельных Оси ОХ}
begin
i1:= i1 + 1;
if t1 = 1 then Writeln (f,'прямая #',k,' : ',B[k]:0:2,'y = ',C[k]:0:2);
if t1 = 2 then Writeln ('прямая #',k,' : ',B[k]:0:2,'y = ',C[k]:0:2);
end;
if i1 = 0 then begin {Вывод инф-ии об отсутствии прямых парал. Оси ОХ}
if t1 = 1 then Writeln (f,'В заданном списке НЕТ таких прямых');
if t1 = 2 then Writeln ('В заданном списке НЕТ таких прямых');
end;
if t1 = 1 then begin {Заголовок к заданию № 2 (в файл)}
Writeln (f,' | Задание # 2 : Перечень взаимено _|_ прямых :|');
Writeln (f,' - - - - - - - - - - - - - - - - - - - - - - - ');
end;
if t1 = 2 then begin {Заголовок к заданию № 2 (на экран)}
Writeln (' | Задание # 2 : Перечень взаимено _|_ прямых :|');
Writeln (' - - - - - - - - - - - - - - - - - - - - - - - ');
end;
for k:=1 to n do
begin
if ( B[k] <> 0 ) and (A[k] <> 0)
then
begin
kof := ((-1)*A[k]/B[k]) ; {Вычисление коэф. Для k-ой прямой}
sravnenie (k , kof , d , res ) ; {Использование процедуры sravnenie }
end
else
sravnenie_next (k , d ); {Использование процедуры sravnenie_next }
end;
if d<1 then begin {Вывод инф-ии об отсутствии взаимно перпендикулярных прямых}
if t1 = 1 then Writeln (f,'В заданном списке НЕТ таких прямых');
if t1 = 2 then Writeln ('В заданном списке НЕТ таких прямых');
end;
if t1 = 1 then begin {Заголовок к заданию № 3 (в файл)}
Writeln (f,' | Задание # 3 : Перечень прямых (из взаимно _|_ прямых) |');
Writeln (f,' | составляющих с осью OX угол меньше заданного :|');
Writeln (f,' - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ');
end;
if t1 = 2 then begin {Заголовок к заданию № 3 (на экран)}
Writeln (' | Задание # 3 : Перечень прямых (из взаимно _|_ прямых) |');
Writeln (' | составляющих с осью OX угол меньше заданного :|');
Writeln (' - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ');
end;
sravnenie_uglov (k , ugol , i2 ); {Использование процедуры sravnenie_uglov }
if i2 = 0 then begin {Вывод инф-ии об отсутствии прямых с углом меньше заданного}
if t1 = 1 then Writeln (f,'В заданном списке НЕТ таких прямых');
if t1 = 2 then Writeln ('В заданном списке НЕТ таких прямых');
end;
assign(g,'C:\Kypca\Kypca.Pas'); { связь g с файлом C:\Kypca\Kypca.Pas}
Reset(g); { открытие файла C:\Kypca\Kypca.Pas для чтения }
While not eof(g) do { пока не закончится файл }
begin
Readln(g,str);
While Pos('Writeln',str) <> 0 do { пока в строке есть ‘ Writeln ’ }
begin
i:= i + 1;
q:= Pos('Writeln',str) ;
delete(str,q,7);
end;
end;
if t1 = 1 then Writeln(f,’ ‘,i, ' – число повторений Writeln');
if t1 = 2 then Writeln(‘ ‘,i, ' – число повторений Writeln');
close(g); {Закрыть файл g}
close(f); {Закрыть файл f}
if t = 1 then close(r); {Закрыть файл r}
END. {Конец Kypca }
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.