пʼятниця, 18 березня 2011 р.

Моделирование движения тела под действием силы тяжести

На прошлой лабораторной работе мы получили программу, которая выводит на экран летающий круг, отражающийся от краёв.
10 SCREEN 9
20 CLS
30 X=60+RND*400
40 Y=60+RND*200
50 R=10+RND*40
60 C=INT(1+RND*15)
70 DT=0.1
80 VX=RND*20-10
90 VY=RND*20-10
100 CIRCLE(X,Y),R,0
110 X=X+VX*DT
120 Y=Y+VY*DT
130 CIRCLE(X,Y),R,C
140 IF X<=R OR X>=600-R THEN VX=-VX
150 IF Y<=R OR Y>=300-R THEN VY=-VY
160 GOTO 100
Теперь добавим сюда гравитацию. Вспоминаем физику. При движении брошенного тела, с ускорением g меняется вертикальная составляющая его скорости, VY. Значит, в программу нужно добавить 2 строки:
Инициализируем переменную G
75 G=1
Вычисляем новую вертикальную скорость
135 VY=VY+G*DT
Заодно отключим стирание предыдущего положення круга, чтобы он оставлял след. Это делается отключением строки 100. Её можно не удалять, а просто поставить после номера строки апостроф:
100 ‘CIRCLE(X,Y),R,0
Запускам программу, наблюдаем за изменениями в движении.
Теперь о том, как будет использоваться эта программа на рубеже.
Нужно будет в строках 30, 40, 50, 75, 80 и 90 вместо случайных значений задать некоторые числа - координаты круга, его радиус, ускорение свободного падения и начальную скорость.
Далее, запустив программу, нужно будет проследить его траекторию и зарисовать её.
Посмотрите, как ведёт себя круг при:
X
Y
R
G
VX
VY
1
100
120
80
1
4
-1
2
110
280
10
-1
-5
5
3
500
10
5
0
3
2
4
450
150
20
0.5
2
6
5
300
180
15
10
8
-15
С Днём студента!

Немає коментарів:

Дописати коментар