Использование современной компьютерной техники и программного обеспечения для решения прикладных задач в области геодезических измерений

3.4 Блок-схема алгоритма

3.5Текст программы

Файл исходных данных

Пункт #1(Хутор)

Направление({Градусы}пробел{Минуты}пробел{Секунды}):

0 0 0

Координата X:

11327.11

Координата Y:

9315.82

Пункт #2(Крутик)

Направление({Градусы}пробел{Минуты}пробел{Секунды}):

75 46 14

Координата X:

11588.28

Координата Y:

11619.02

Пункт #3(Юрьево)

Направление({Градусы}пробел{Минуты}пробел{Секунды}):

168 7 51

Координата X:

8901.34

Координата Y:

11230.33

Пункт #4(Локно)

Направление({Градусы}пробел{Минуты}пробел{Секунды}):

278 52 25

Координата X:

9054.58

Координата Y:

7892.42

Program Zadacha3;

Uses CRT;

Var

g1,m1,s1,g2,m2,s2,g3,m3,s3,g4,m4,s4:integer; {описание используемых переменных}

x1,y1,x2,y2,x3,y3,x4,y4,vm1,vn1,vm2,vn2:real;

ra1,ra2,ra3,ra4,yg21,yg32,yg43,ct21,ct32,ct43:real;

Fi1,Fi2,Fi3,Fi4,De1,De2,De3,De4:real;

kipX1,kipX2,CredX,kipY1,kipY2,CredY:real;

t1,t2:text;

Begin

ClrScr; {очистка экрана}

Assign (t1,'data.txt'); {связывание переменной с именем файла}

Assign (t2,'result.txt'); {связывание переменной с именем файла}

Reset (t1); {обозначения файла для чтения}

Rewrite (t2); {обозначения файла для записи}

{чтение из фаила исходных значений}

Readln(t1);

Readln(t1);

Readln(t1,g1,m1,s1);

Readln(t1);

Readln(t1,x1);

Readln(t1);

Readln(t1,y1);

Readln(t1);

Readln(t1);

Readln(t1,g2,m2,s2);

Readln(t1);

Readln(t1,x2);

Readln(t1);

Readln(t1,y2);

Readln(t1);

Readln(t1);

Readln(t1,g3,m3,s3);

Readln(t1);

Readln(t1,x3);

Readln(t1);

Readln(t1,y3);

Readln(t1);

Readln(t1);

Readln(t1,g4,m4,s4);

Readln(t1);

Readln(t1,x4);

Readln(t1);

Readln(t1,y4);

Begin

{Данные в радианах}

ra1:=((Pi)/180)*(g1+(m1/60)+(s1/3600));

ra2:=((Pi)/180)*(g2+(m2/60)+(s2/3600));

ra3:=((Pi)/180)*(g3+(m3/60)+(s3/3600));

ra4:=((Pi)/180)*(g4+(m4/60)+(s4/3600));

End;

Writeln(t2); Writeln(t2); Writeln(t2); Writeln(t2,'Reshenie:'); Writeln(t2);

Writeln('Reshenie:');

Writeln(t2,'Napravlenie 1 v radianah:',ra1:6:2,';'); {вывод значений на экран и в файл}

Writeln(t2,'Napravlenie 2 v radianah:',ra2:6:2,';');

Writeln(t2,'Napravlenie 3 v radianah:',ra3:6:2,';');

Writeln(t2,'Napravlenie 4 v radianah:',ra4:6:2,' .');

Writeln('Napravlenie 1 v radianah:',ra1:6:2,';');

Writeln('Napravlenie 2 v radianah:',ra2:6:2,';');

Writeln('Napravlenie 3 v radianah:',ra3:6:2,';');

Writeln('Napravlenie 4 v radianah:',ra4:6:2,' .');

Begin

{Углы}

yg21:=ra2-ra1;

yg32:=ra3-ra2;

yg43:=ra4-ra3;

End;

Writeln(t2);

Writeln(t2,'ugol 2-1 (v radianah)=',yg21:6:2,';'); {вывод значений на экран и в файл}

Writeln(t2,'ugol 3-2 (v radianah)=',yg32:6:2,';');

Writeln(t2,'ugol 4-3 (v radianah)=',yg43:6:2,' .');

Writeln;

Writeln('ugol 2-1 (v radianah)=',yg21:6:2,';');

Writeln('ugol 3-2 (v radianah)=',yg32:6:2,';');

Writeln('ugol 4-3 (v radianah)=',yg43:6:2,' .');

Begin

{Котангенсы углов}

ct21:=(cos(yg21)/sin(yg21));

ct32:=(cos(yg32)/sin(yg32));

ct43:=(cos(yg43)/sin(yg43));

End;

Writeln(t2);

Writeln(t2,'kotangens ugla 2-1 =',ct21:6:2,';'); {вывод значений на экран и в файл}

Writeln(t2,'kotangens ugla 3-2 =',ct32:6:2,';');

Writeln(t2,'kotangens ugla 4-3 =',ct43:6:2,' .');

Writeln;

Writeln('kotangens ugla 2-1 =',ct21:6:2,';');

Writeln('kotangens ugla 3-2 =',ct32:6:2,';');

Writeln('kotangens ugla 4-3 =',ct43:6:2,' .');

Begin

{Вспомогательные величины}

vm1:=y1*ct21+y2*(-(ct21)-(ct32))+y3*ct32+x1-x3;

vm2:=y2*ct32+y3*(-(ct32)-(ct43))+y4*ct43+x2-x4;

vn1:=x1*ct21+x2*(-(ct21)-(ct32))+x3*ct32-y1+y3;

vn2:=x2*ct32+x3*(-(ct32)-(ct43))+x4*ct43-y2+y4;

End;

Writeln(t2);

Writeln(t2,'Vspomogatelnayaя velichina m1 = ',vm1:6:2,';'); {вывод значений на экран и в файл}

Writeln(t2,'Vspomogatelnayaя velichina n1 = ',vn1:6:2,';');

Writeln(t2,'Vspomogatelnayaя velichina m2 = ',vm2:6:2,';');

Writeln(t2,'Vspomogatelnayaя velichina n2 = ',vn2:6:2,' .');

Writeln;

Writeln('Vspomogatelnayaя velichina m1 = ',vm1:6:2,';');

Writeln('Vspomogatelnayaя velichina n1 = ',vn1:6:2,';');

Writeln('Vspomogatelnayaя velichina m2 = ',vm2:6:2,';');

Writeln('Vspomogatelnayaя velichina n2 = ',vn2:6:2,' .');

Begin

Fi1:=arctan(vm1/vn1);

Fi2:=(sin(Fi1)/cos(Fi1));

Fi3:=arctan(vm2/vn2);

Fi4:=(sin(Fi3)/cos(Fi3));

De1:=Fi1-yg21;

De2:=(sin(De1)/cos(De1));

De3:=Fi3-yg32;

De4:=(sin(De3)/cos(De3));

End;

Writeln(t2);

Writeln(t2,'Фи 1 = ',Fi1:6:2,'; Делта 1 = ',De1:6:2,';'); {вывод значений на экран и в файл}

Writeln(t2,'Фи 2 = ',Fi2:6:2,'; Делта 2 = ',De2:6:2,';');

Writeln(t2,'Фи 3 = ',Fi3:6:2,'; Делта 3 = ',De3:6:2,';');

Writeln(t2,'Фи 4 = ',Fi4:6:2,'; Делта 4 = ',De4:6:2,' .');

Writeln;

Writeln('Фи 1 = ',Fi1:6:2,'; Делта 1 = ',De1:6:2,';');

Writeln('Фи 2 = ',Fi2:6:2,'; Делта 2 = ',De2:6:2,';');

Writeln('Фи 3 = ',Fi3:6:2,'; Делта 3 = ',De3:6:2,';');

Writeln('Фи 4 = ',Fi4:6:2,'; Делта 4 = ',De4:6:2,' .');

Begin

{Координаты искомого пункта}

kipX1:=(x1*De2-x2*Fi2+y2-y1)/(De2-Fi2);

kipX2:=(x2*De4-x3*Fi4+y3-y2)/(De4-Fi4);

{Среднее для X}

CredX:=(kipX1+kipX2)/2;

kipY1:=(kipX1-x2)*Fi2+y2;

kipY2:=(kipX2-x3)*Fi4+y3;

{Среднее для Y}

CredY:=(kipY1+kipY2)/2;

End;

Writeln(t2);

Writeln(t2,'Координата X искомого пункта 1: ',kipX1:6:2,';'); {вывод значений на экран и в файл}

Writeln(t2,'Координата X искомого пункта 2: ',kipX2:6:2,';');

Writeln(t2,' Среднее значение X: ',CredX:6:2,';');

Writeln(t2,'Координата Y искомого пункта 1: ',kipY1:6:2,';');

Writeln(t2,'Координата Y искомого пункта 2: ',kipY2:6:2,';');

Writeln(t2,' Среднее значение Y: ',CredY:6:2,' .');

Writeln;

Writeln('Координата X искомого пункта 1: ',kipX1:6:2,';');

Writeln('Координата X искомого пункта 2: ',kipX2:6:2,';');

Writeln(' Среднее значение X: ',CredX:6:2,';');

Writeln('Координата Y искомого пункта 1: ',kipY1:6:2,';');

Writeln('Координата Y искомого пункта 2: ',kipY2:6:2,';');

Writeln(' Среднее значение Y: ',CredY:6:2,' .');

Writeln;Writeln;Writeln;

writeln(t2);writeln(t2);writeln(t2);

writeln('All rights are reserved'); {добавление личной подписи}

writeln('Made by MOISEEV ANDREI GG-09-2');

writeln(t2,'All rights are reserved');

writeln(t2,'Made by MOISEEV ANDREI GG-09-2');

Close (t1);

Close (t2);

Readkey; End.

3.6 Результаты работы программы

Страница:  1  2  3  4  5  6  7  8  9 


Другие рефераты на тему «Программирование, компьютеры и кибернетика»:

Поиск рефератов

Последние рефераты раздела

Copyright © 2010-2024 - www.refsru.com - рефераты, курсовые и дипломные работы