![]() |
![]() |
18192123 |
![]()
Сообщение
#1
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 920 Пол: Женский Реальное имя: Марина Репутация: ![]() ![]() ![]() |
Вот такое задание:
Даны два шарика диаметром М. Промоделировать движение шариков по всей плоскости экрана. Шарики могут двигаться по прямым линиям. Изменение угла движения после столкновения с границей экрана или друг с другом может быть случайной величиной. Шарик не может вылететь за пределы квадрата. Пользователь может варьировать скорости движения шариков с помощью стрелок управления курсором. Хотелось бы разобраться в коде программы... ( дело в том, что код не мой) Объясните пожалуйста назначение каждой из процедур в тексте приведённой ниже программы! Прикрепленные файлы ![]() |
![]() ![]() |
Lapp |
![]()
Сообщение
#2
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Дальше для каждой компоненты записываешь (на бумажке) ЗСИ и ЗСЭ:
m1*Vx1 + m2*Vx2 = m1*Vx1' + m2*Vx2 m1*Vx1^2 + m2*Vx2^2 = m1*Vx1'^2 + m2*Vx2'^2 (Для Vy аналогично). Дальше решаешь эти две системы (тоже на бумажке). Находишь Vx1' и Vx2' (а также Vy1' и Vy2'). Заводишь в программу эти решения: Vx1 := {выражение через Vx1 и Vx2 } Vx2 := {выражение через Vx1 и Vx2 } Vy1 := {выражение через Vy1 и Vy2 } Vy2 := {выражение через Vy1 и Vy2 } После этого находишь модули и углы: V1 := Sqrt(Vx1*Vx1+Vy1*Vy1); Angle1 := ArcTan(Vy1/Vx1); if Abs(Vx1)<1e-5 then begin Angle1:=Pi/2; if Vy1<0 then Angle1:=-Angle1 end else begin Angle1:=ArcTan(Vy1/Vx1); if Vx<0 then Angle1:=-Angle1 end; - и плюс аналогично для второго шарика. Сделай и выложи тут, я проверю. Если все еще непонятно - говори. Теперь ты видишь, сколько мороки с углами? Если бы не они, то все, что нужно было бы в этой процедуре - это те четыре строчки с решениями ЗСИ и ЗСЭ.. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
![]() ![]() |
![]() |
Текстовая версия | 18.07.2025 5:42 |