C++语言多个演示碰撞概要1.docVIP

  • 6
  • 0
  • 约8.37千字
  • 约 11页
  • 2017-07-02 发布于湖北
  • 举报
C语言多个演示碰撞概要1

用C++语言演示多个物体的弹性碰撞 周讯 重庆37中 400084 一、问题的提出 设计好两个物体的动态碰撞之后,对学生演示效果很好,于是我想到用设计多个物体的弹性碰撞问题。 二、程序说明 (1)本程序是通过TEXT文本框输入参数来实现碰撞过程的动态演示的; (2)程序在Win2000/WinXP/TN及环境下通过,但要注意Turbo C2.0目录下的egauga.bgi文件与wqtxpz.exe在同一目录下; (3)暂停、继续及数据属性在界面上已设置; 三、源程序部分代码 Zp5_1au.cpp //--------------------------------------------------------------------------- #include vcl.h #pragma hdrstop #include zp5_1au.h //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource *.dfm Tfr5zp *fr5zp; double sa,sb,sc,sd,se; double va,vb,vc,vd,ve; int times=0; //--------------------------------------------------------------------------- __fastcall Tfr5zp::Tfr5zp(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall Tfr5zp::Button1Click(TObject *Sender) { Timer1-Enabled=1; Button1-Enabled=0; Button2-Enabled=1; Button3-Enabled=0; GroupBox1-Enabled=0; } //--------------------------------------------------------------------------- void __fastcall Tfr5zp::Timer1Timer(TObject *Sender) { double vt; if (sb-sa=0.1) { if (vavb) { Beep(); times++; } vt=va; va=vb; vb=vt; sb=sa+0.1; } if (sc-sb=0.1objC-Visible==1) { if (vbvc) { Beep(); times++; } vt=vb; vb=vc; vc=vt; sc=sb+0.1; } if (sd-sc=0.1objC-Visible==1objD-Visible==1) { if (vcvd) { Beep(); times++; } vt=vc; vc=vd; vd=vt; sd=sc+0.1; } if (se-sd=0.1objD-Visible==1objE-Visible==1) { if (vdve) { Beep(); times++; } vt=vd; vd=ve; ve=vt; se=sd+0.1; } sa=sa+va/100; sb=sb+vb/100; sc=sc+vc/100; sd=sd+vd/100; se=se+ve/100; objA-Left=sa*100; objB-Left=sb*100; objC-Left=sc*100; objD-Left=sd*100; objE-Left=se*100; edva-Text=va; edvb-Text=vb; edvc-Text=vc; edvd-Text=vd; edve-Text=ve; edit-Text=times; } //--------------------------------------------------------------------------- void __fastcall Tfr5zp::Button2Click(TObjec

文档评论(0)

1亿VIP精品文档

相关文档