Определить точку, в которой снаряд уйдет под землю - PascalABC.NET
Формулировка задачи:
Траектория снаряда, вылетающего из орудия под углом с начальной скоростью описывается уравнением . С точностью определить точку, в которой снаряд "уйдет под землю". Задачу решить при ; км/час; .
Решение задачи: «Определить точку, в которой снаряд уйдет под землю»
textual
Листинг программы
- const g=9.8;//ускорение свободного падения обозначают буквй g, а не q
- //и измеряют в м/сек^2, а не в i/n^2
- var a,v0,dx,x,y:real;
- begin
- a:=pi/3;//нормальные люди не пишут 2pi/6
- v0:=35*1000/3600;//переведем км/час в м/сек
- dx:=2*a;
- x:=0;
- y:=0;
- repeat
- y:=x*tan(a)-g*x*x/(2*sqr(v0)*sqr(cos(a)));
- x:=x+dx;
- until y<0;
- writeln('x=',x:0:2,' y=',y:0:2);
- end.
Объяснение кода листинга программы
- Объявлены переменные: a, v0, dx, x, y (строки 5-7)
- В строке 8 устанавливается значение переменной a равное pi/3
- В строке 9 устанавливается значение переменной v0 равное 35*1000/3600
- В строке 10 вычисляется значение переменной dx равное 2*a
- В строках 11 и 12 устанавливаются начальные значения переменных x и y равные 0
- В строке 13 начинается цикл while, который выполняется до тех пор, пока значение переменной y не станет меньше нуля
- В строке 14 вычисляется значение переменной y как xtan(a)-gxx/(2sqr(v0)*sqr(cos(a)))
- В строке 15 значение переменной x увеличивается на dx
- В строке 16 выводится сообщение с текущими значениями переменных x и y
- По завершении цикла while, выводится сообщение с последними значениями переменных x и y (строка 21)
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д