|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.04.2009, 21:03 | #1 |
Пользователь
Регистрация: 09.03.2009
Сообщений: 49
|
Пушка
Здравствуйте. Помогите с задачкой на Паскале.
Пушка на экране стреляет в цель ядрами. Между пушкой и целью расположена небольшая гора. Перед началом игры случайно задается горизонтальная координата цели. Затем рисуется картинка. Перед каждым выстрелом запрашивает у человека стартовую скорость ядра v и угол а наклона ствола пушки к земле. Затем летит ядро. Полет ядра подчиняется двум уравнениям: s=v*t*cos и h=v*t*sin – 9.81*t2/2 . Считается, что цель поражена, если ядро «отгрызло» от нее хоть маленький кусочек. Тут кое-что набросал. uses graph, crt; var t, v, v1, h, s: real; a, d, m, x0, y0, x, y: integer; begin writeln ('nomer vistrela ',n); writeln ('Введите скорость ядра v '); readln (v); writeln ('Введите угол наклона a '); readln; initgraph (d, m, ' '); line (0, 440, 640, 440); setcolor (red); circle (30, 429, 10); line (18, 440, 39, 415); setcolor(white); line (220, 440, 250, 360); line (250, 360, 280, 440); rectangle (470, 430, 490, 440); x0:=33; y0:=42; v1:=v; t:=0; readln; repeat s:=v1*t*cos(a); h:=v1*t*sin(a) - 9.81*t*t/2; x:=x0+round(s); y:= 440-y0-round(h); t:=t+0.05; setcolor(white); circle(x, y, 3 PutPixel(x, y, 3); delay(200); setcolor(black); circle(x, y, 3); until s=580; readln (a); closegraph; end. Только ядро летит по ниспадающей траектории, а нужно чтоб перелетал через гору. Ведь заранее не известно, какое расстояние пролетит ядро. Подскажите. Спасибо. Последний раз редактировалось Shevali; 22.04.2009 в 22:12. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Пушка-цели [C++] | Vinny | Помощь студентам | 1 | 15.01.2008 03:40 |