Программирование в Turbo Pascal

Тип работы:
Контрольная
Предмет:
Программирование


Узнать стоимость

Детальная информация о работе

Выдержка из работы

Содержание

алгоритм листинг программа график

1. Математическая модель, описывающая движение тела

2. Алгоритм расчёта и визуализации временных диаграмм скорости, пути и движущей силы: V(t), S(t), F(t)

3. Листинг программы, реализующей представленный алгоритм расчёта и построение графиков V(t), S(t), F(t)

Список использованной литературы

1. Математическая модель, описывающая движение тела

Тело массой m движется под действием силы F по диаграмме (зависимости скорости от времени), изображённой на рис. 1, проходя путь L и возвращаясь в исходную точку. Ускорение (замедление) тела на участках № 1, 3, 5, 7 постоянно и равно a, скорость на участках № 2 и № 6 равна Vm и —Vm соответственно. Время паузы на участке № 4 составляет 1 с.

№ варианта

Параметр

расчётная схема

масса тела

m, кг

путь

L, м

скорость

Vm, м/с

ускорение a, м/с2

угол наклона

б, град.

16

б

250

15

0,5

0,25

10

Определить время движения тела на каждом участке следующим образом. Путь, проходимый телом за время движения на участках № 1, 2, 3 равен:

(1).

Время движения на участке № 1 и время движения на участке № 3 равно

.

T1 = T3 = 0,5/0,25 = 2 (c)

Подставив это выражение в (1), получим:

.

Тогда время движения на участке № 2 равно

.

T2 = 15/0,5 — 0,5/0,25 = 28 (c)

Движение назад (участки № 5, 6, 7) полностью повторяет движение вперёд, поэтому Т5=Т7=Т1=2, а Т6=Т2=28.

Рассчитаем путь, проходимый телом на участках разгона (торможения), воспользовавшись формулой:

,

S =0*2 + 0,25*4/2 = 0,5

где V0 — значение скорости в начале участка, T — длительность участка, a — ускорение (замедление).

Рассчитаем силу F, вызывающую движение тела по формуле:

,

где м — коэффициент трения, m — масса тела, g — ускорение свободного падения, б — угол наклона поверхности к горизонту.

F = 0,05*250*9,81*0. 9848+ 250*9,81*0. 1736+250*0,25 =

= 120,7611+425,754+62,5=609,0151

2. Алгоритм расчёта и визуализации временных диаграмм скорости, пути и движущей силы: V (t), S (t), F (t)

Расчет времени движения на различных участках пути:

T1: =Vm/a;

T3: =T1;

T2: =(L/Vm)-(Vm/a);

T5: =T1;

T6: =T2;

T7: =T3;

T4: =1;

Расчет пути, пройденного за различные отрезки времени:

S1: =0*T1+(a*T1*T1/2);

S3: =Vm*T3+(a*T3*T3/2);

S5: =-(0*T5+(a*T5*T5/2));

S7: =-(Vm*T7+(a*T7*T7/2));

S2: =(Vm*Vm/a)+Vm*T2;

S6: =-((Vm*Vm/a)+Vm*T2);

S4: =0;

Ускорение на различных участках:

a1: =a;

a2: =0;

a3: =-a;

a4: =0;

a5: =-a;

a6: =0;

a7: =a;

Расчет скорости движения на различных участках:

V1: =a*T1;

V2: =Vm;

V3: =a*T3;

V4: =0;

V5: =-a*T5;

V6: =-Vm;

V7: =-a*T7;

3. Листинг программы, реализующей представленный алгоритм расчёта и построение графиков V(t), S(t), F(t)

uses graphABC, crt;

type

Rasst = array[1. 7] of real;

Vrem = array[1. 8] of real;

Skor = array[1. 8] of real;

Uskor = array[1. 7] of real;

var

m, L, Vm, Alfa, a, u, q: real;

x, y, z: integer;

S: rasst;

T: vrem;

V: Skor;

Fa: uskor;

const

g = 9. 8;

begin

u: =0. 05;

m: =250;

L: =15;

Vm: =0. 6;

a: =0. 25;

Alfa: =10;

T[1]: =Vm/a;

T[3]: =T[1];

T[2]: =(L/Vm)-(Vm/a);

T[5]: =T[1];

T[6]: =T[2];

T[7]: =T[3];

T[4]: =1;

S[1]: =0*T[1]+(a*T[1]*T[1]/2);

S[3]: =Vm*T[3]-(a*T[3]*T[3]/2);

S[5]: =-((0*T[5]+(a*T[5]*T[5]/2)));

S[7]: =-((Vm*T[7]-(a*T[7]*T[7]/2)));

S[2]: =Vm*T[2];

S[6]: =-Vm*T[2];

S[4]: =0;

Alfa: =10*3. 14/180;

x: =1;

V[1]: =a*T[1];

V[2]: =Vm;

V[3]: =a*T[3];

V[4]: =0;

V[5]: =-a*T[5];

V[6]: =-Vm;

V[7]: =-a*T[7];

Fa[1]: =a;

Fa[2]: =0;

Fa[3]: =-a;

Fa[4]: =0;

Fa[5]: =a;

Fa[6]: =0;

Fa[7]: =-a;

//Pervi grafik, S (t)

TextOut (2,20, 'S');

TextOut (350,250, 'T');

Line (20,250,350,250);

Line (20,350,20,20);

Line (20,20,15,37);

Line (20,20,25,37);

Line (350,250,333,245);

Line (350,250,333,255);

Y: =20;

z: =250;

MoveTo (y, z);

q: =0;

for x: =1 to 7 do

begin

q: =q+S[x];

z: =250-(round (q))*10;

Y: =y+40;

lineto (y, z);

end;

TextOut (250,40, 'A?aoee eciaiaiey i? ieaaiiiai iooe ei a? aiaie. ');

TextOut (250,60, 'Ia?ieoa «Enter» aey i? iaie?aiey. ');

readln;

Clrscr;

//vtoroi grafik, otnowenie skorosti ko vremeni, V (t)

TextOut (2,20, 'V');

TextOut (350,250, 'T');

Line (20,250,350,250);

Line (20,350,20,20);

Line (20,20,15,37);

Line (20,20,25,37);

Line (350,250,333,245);

Line (350,250,333,255);

Y: =20;

z: =250;

MoveTo (y, z);

for x: =1 to 8 do

begin

Y: =y+40;

z: =250-(round ((Round (V[x]*150))));

lineto (y, z);

end;

TextOut (250,40, 'A?aoee eciaiaiey neeu ei a? aiaie. ');

TextOut (250,60, 'Ia?ieoa «Enter» aey i? iaie?aiey. ');

readln;

clrscr;

//treti grafik, otnowenie uskoreniya ko vremeni, a (t)

TextOut (2,20, 'a');

TextOut (350,250, 'T');

Line (20,250,350,250);

Line (20,350,20,20);

Line (20,20,15,37);

Line (20,20,25,37);

Line (350,250,333,245);

Line (350,250,333,255);

Y: =20;

z: =250;

for x: =1 to 7 do

begin

z: =250-((trunc ((Fa[x])*150)));

line (y, z, y+40,z);

Y: =y+40;

end;

TextOut (250,40, 'A?aoee eciaiaiey neeu ei a? aiaie. ');

TextOut (250,60, 'Ia?ieoa «Enter» aey i? iaie?aiey. ');

readln;

clrscr;

end.

Список использованной литературы

1. Программирование в Turbo Pascal 7.0 и Delphi / Н. Б. Культин. СПб.: BHV — Санкт-Петербург, 1997 — 240 с., ил.

ПоказатьСвернуть
Заполнить форму текущей работой