1.5 Текст программы
Program Zadacha1;
Uses CRT;{использование библиотеки}
Var i,j,k:integer;{описание переменных}
x1,y1,x2,y2,x3,y3,x4,y4,Dy,Dx,Dx1,Dy1,R,R1,Alfa,alfa1,S,S1:real;
AlfaGr,AlfaMi,AlfaS,AlfaGr1,AlfaMi1,AlfaS1:real;
t1,t2:text;
{процедура для определения приращений}
procedure Prir (var k1:real; var k2:real; var Dd:real);
begin
Dd:=k2-k1;
end;
{процедура для перевода в грудусы}
procedure Gradyc (var A,AGr,AMi,AS:real);
Var
AG,AM:real;
begin
AG:=180*(A/Pi);
AGr:=int(AG);
AM:=60*(AG-AGr);
AMi:=int(AM);
AS:=int(60*(AM-AMi));
end;
{процедура для определение значения дирекционного угла и четверти}
procedure Analiz (var X,Y,R,A:real);
begin
If (X>0) and (Y>0) Then
Begin
A:=R;
Writeln('I chetvert');
Writeln(t2,'I четверть');
Writeln('Direkcionnii ygol raven(v radianax):');
Writeln(t2,'Дирекционный угол равен(в радианах):');
Writeln(A:6:3);
Writeln(t2,A:6:3);
End;
If (X<0) and (Y>0) Then
Begin
A:=(Pi)-R;
Writeln('II chetvert');
Writeln(t2,'II четверть');
Writeln('Direkcionnii ygol raven(v radianax):');
Writeln(t2,'Дирекционный угол равен(в радианах):');
Writeln(A:6:3);
Writeln(t2,A:6:3);
End;
If (X<0) and (Y<0) Then
Begin
A:=(Pi)+R;
Writeln('III chetvert');
Writeln(t2,'III четверть');
Writeln('Direkcionnii ygol raven(v radianax):');
Writeln(t2,'Дирекционный угол равен(в радианах):');
Writeln(A:6:3);
Writeln(t2,A:6:3);
End;
If (X>0) and (Y<0) Then
Begin
A:=(2*(Pi)-R);
Writeln('IV chetvert');
Writeln(t2,'IV четверть');
Writeln('Direkcionnii ygol raven(v radianax):');
Writeln(t2,'Дирекционный угол равен(в радианах):');
Writeln(A:6:3);
Writeln(t2,A:6:3);
End;
end;
Begin
ClrScr;{очистка экрана}
Assign (t1,'dano.txt');{привязка фаила к переменной}
Assign (t2,'rezultat.txt');
Reset (t1);
Rewrite (t2);
{чтение из фаила исходных значений}
Readln(t1);
Readln(t1);{пропуск строки "Точка 1."}
Readln(t1);{пропуск строки "Координата по оси X:"}
Readln(t1,x1);{чтение из фаила значения координаты по оси X для точки А}
Readln(t1);{пропуск строки "Координата по оси Y:"}
Readln(t1,y1);{чтение из фаила значения координаты по оси Y для точки А}
Readln(t1);{пропуск строки "Точка 2."}
Readln(t1);{пропуск строки "Координата по оси X:"}
Readln(t1,x2);{чтение из фаила значения координаты по оси X для точки B}
Readln(t1);{пропуск строки "Координата по оси Y:"}
Readln(t1,y2);{чтение из фаила значения координаты по оси Y для точки B}
Readln(t1);
Readln(t1);
Readln(t1);{пропуск строки "Точка 1."}
Readln(t1);{пропуск строки "Координата по оси X:"}
Readln(t1,x3);{чтение из фаила значения координаты по оси X для точки А}
Readln(t1);{пропуск строки "Координата по оси Y:"}
Readln(t1,y3);{чтение из фаила значения координаты по оси Y для точки А}
Readln(t1);{пропуск строки "Точка 2."}
Readln(t1);{пропуск строки "Координата по оси X:"}
Readln(t1,x4);{чтение из фаила значения координаты по оси X для точки B}
Readln(t1);{пропуск строки "Координата по оси Y:"}
Readln(t1,y4);{чтение из фаила значения координаты по оси Y для точки B}
Readln(t1);
Begin
{определение приращений координат}
Prir(x1,x2,Dx);
Prir(y1,y2,Dy);
Prir(x3,x4,Dx1);
Prir(y3,y4,Dy1);
{проведение контроля полученных значений}
Writeln('Prirasheniya zadaniya A');{вывод на экран надписи "Приращения для задания А"}
Writeln(t2,'Приращения для задания А');{вывод в фаил надписи "Приращения для задания А"}
Writeln('Po oci X');{вывод на экран надписи "По оси X"}
Writeln(t2,'По оси X');{вывод в фаил надписи "По оси X"}
Writeln(Dx:6:2);{вывод значения для X на экран}
Writeln(t2,Dx:6:2);{вывод значения для X в фаил}
Writeln('Po oci Y');{вывод на экран надписи "По оси Y"}
Writeln(t2,'По оси Y');{вывод в фаил надписи "По оси Y"}
Writeln(Dy:6:2);{вывод значения для Y на экран}
Writeln(t2,Dy:6:2);{вывод значения для Y в фаил}
Writeln('Prirasheniya zadaniya B');{вывод на экран надписи "Приращения для задания B"}
Writeln(t2,'Приращения для задания B');{вывод в фаил надписи "Приращения для задания B"}
Writeln('Po oci X');{вывод на экран надписи "По оси X"}
Writeln(t2,'По оси X');{вывод в фаил надписи "По оси X"}
Writeln(Dx1:6:2);{вывод значения для X на экран}
Writeln(t2,Dx1:6:2);{вывод значения для X в фаил}
Writeln('Po oci Y');{вывод на экран надписи "По оси Y"}
Writeln(t2,'По оси Y');{вывод в фаил надписи "По оси Y"}
Writeln(Dy1:6:2);{вывод значения для Y на экран}
Writeln(t2,Dy1:6:2);{вывод значения для Y в фаил}
End;
Begin
{нахождение величины румба}
R:=arctan(abs(Dy/Dx));
R1:=arctan(abs(Dy1/Dx1));
{проведение контроля полученного значения}
Writeln('RYMB zadaniya A');{вывод на экран надписи "Румб для задания А"}
Writeln(t2,'Румб для задания А');{вывод в фаил надписи "Румб для задания А"}
Writeln(R:6:6);{вывод значения на экран}
Writeln(t2,R:6:6);{вывод значения в фаил}
Writeln('RYMB zadaniya B');{вывод на экран надписи "Румб для задания B"}
Writeln(t2,'Румб для задания А');{вывод в фаил надписи "Румб для задания B"}
Writeln(R1:6:6);{вывод значения на экран}
Writeln(t2,R1:6:6);{вывод значения в фаил}
End;
Begin
{определение значения дирекционного угла и четверти}
Writeln('Direkcionnii ygol i chetvert dly A');
Writeln(t2,'Дирекционный угол и четверть для задания А:');
Analiz (Dx,Dy,R,Alfa);
Writeln('Direkcionnii ygol i chetvert dly B');
Writeln(t2,'Дирекционный угол и четверть для задания B:');
Analiz (Dx1,Dy1,R1,Alfa1);
End;
Begin
{ВЫчисление горизонтального расстояния между точками}
S:=sqrt((Sqr(Dx)+sqr(Dy)));
S1:=sqrt((Sqr(Dx1)+sqr(Dy1)));
{вывод полученного значения}
Writeln('Gorizontalnoe Rasstoyanie mezdy tochkami Ravno(dly A):');
Writeln(t2,'Горизонтальное расстояние между точками равно(для задания А):');
Writeln(S:6:2);
Writeln(t2,S:6:2);
Writeln('Gorizontalnoe Rasstoyanie mezdy tochkami Ravno(dly B):');
Writeln(t2,'Горизонтальное расстояние между точками равно(для задания B):');
Writeln(S1:6:2);
Writeln(t2,S1:6:2);
End;
Begin
{перевод дирекционного угла в градусную меру}
Gradyc (Alfa,AlfaGr,AlfaMi,AlfaS);
Gradyc (Alfa1,AlfaGr1,AlfaMi1,AlfaS1);
{вывод полученного дирекционного угла}
Writeln('Direkcionnii ygol raven(dly A):');
Writeln(t2,'Дирекционный угол равен(для задания А):');
Writeln(AlfaGr:6:0,' gradycov',AlfaMi:6:0,' minyt',AlfaS:6:0,' sekynd');
Writeln(t2,AlfaGr:6:0,' градусов',AlfaMi:6:0,' минут',AlfaS:6:0,' секунд');
Writeln('Direkcionnii ygol raven(dly B):');
Writeln(t2,'Дирекционный угол равен(для задания B):');
Writeln(AlfaGr1:6:0,' gradycov',AlfaMi1:6:0,' minyt',AlfaS1:6:0,' sekynd');
Writeln(t2,AlfaGr1:6:0,' градусов',AlfaMi1:6:0,' минут',AlfaS1:6:0,' секунд');
End;
Writeln('chtenie iz faila "dano.txt", zapis v "rezultat.txt"');
Close (t1);
Close (t2);
Readkey;
End.
... многих странах (в том числе развитых) применение компьютеров в управлении городскими территориями, ведении кадастра, анализе рыночных тенденций в рамках города весьма ограничено. В связи с этим выделим причины, по которым автоматизация решения типовых задач управления региональной недвижимостью Тульской области, как, впрочем, и других городов России, представляется весьма разумной: все материалы ...
... кадастра памятников России и привязки его к ГИС «Компас-2», я изучил возможности, функции ГИС «Компас-2», а также возможность использования его для создания различных видов природных кадастров. Компас-2 – это сетевая система для представления, моделирования и анализа географической информации Функциональные возможности системы КОМПАС 2: публикация географической информации (ГИ) в сетях ...
... информации. Набираемая информация отображается на дисплее, что позволяет контролировать ее правильность. Клавиатура и дисплей АИС должны быть независимыми от других навигационных устройств. Судовыми системами отображения АИС могут быть система отображения электронных карт (ECDIS, ECS, RCDS), РЛС, САРП или дисплей персонального компьютера. АИС и связанные с ней датчики информации питаются от ...
... де-факто, чему способствовала и их большая универсальность). Таким образом, именно Microsoft Excel был выбран мной для разработки средства автоматизации расчетов в лабораторной работе «Предварительные вычисления в триангуляции». Поэтому другие средства построения электронных таблиц здесь не рассматриваются, но зато уделяестся внимание некоторым специфичным средствам Excel. Возможности EXCEL ...
0 комментариев