用c语言编写一个程序模拟小球的自由落体运动

用c语言编写一个程序模拟小球的自由落体运动,第1张

原题:一球从100m高度自由落下,每次落地后反d回原来高度的一半,在落下。求它在第10次落地时,共进过多少m第10次反d的高度是?

源代码:

main()

{float sn=100,hn=sn/2; 我觉得此处的hn恒等于sn\2,正确的写法应该把此句写到

int n; for循环里。

for (n=2;n<=10;n++)

{sn=sn+2hn;

hn=hn/2;

}

printf("第10次落地时共经过%f米\n",sn);

printf("第10次反d%f米\n",hn)

}

自己改参数

提供给你我的小球运动程序,你可以按照着修改一下就可以了,可以取个随即数作为小球初始定位。其他自己慢慢琢磨

#include<graphicsh>

#include<stdioh>

void main()

{

int gdriver=DETECT,gmode,x=320,y=240,k=1,l=1,size,buf;

initgraph(&gdriver,&gmode,"bgi");

cleardevice();

setbkcolor(6);

while (!(kbhit()))

{

delay(5);

setcolor (4);

circle (x,y,5);

setfillstyle(1,4);

floodfill(x,y,4);

size=imagesize(x-5,y-5,x+5,y+5);

buf=(int ) malloc(size);

if(!buf)

{

printf("NOT enough memory!\n");

exit(0);

}

getimage(x-5,y-5,x+5,y+5,buf);

putimage(x-5,y-5,buf,1);

x+=k,y+=l;

putimage(x-5,y-5,buf,1);

free(buf);

if (y-5==0)

l=1;

else if (x==635)

k=-1;

else if (y==475)

l=-1;

else if (x-5==0)

k=1;

}

getch();

closegraph();

}

import androidappActivity;

import androidosBundle;

import androidviewMotionEvent;

import androidviewView;

import androidviewViewOnTouchListener;

import androidwidgetLinearLayout;

public class MoveballActivity extends Activity {

/ Called when the activity is first created /

@Override

public void onCreate(Bundle savedInstanceState) {

superonCreate(savedInstanceState);

setContentView(Rlayoutmain);

LinearLayout root = (LinearLayout)findViewById(Ridroot);

final DrawView draw = new DrawView(this);

drawsetMinimumWidth(300);

drawsetMinimumHeight(500);

drawsetOnTouchListener(new OnTouchListener(){

public boolean onTouch(View arg0, MotionEvent event){

drawcurrentX = eventgetX();

drawcurrentY = eventgetY();

drawinvalidate();

return true ;

}

});

rootaddView(draw);

}

}

import androidcontentContext;

import androidgraphicsCanvas;

import androidgraphicsColor;

import androidgraphicsPaint;

import androidviewView;

public class DrawView extends View{

public float currentX = 40 ;

public float currentY = 50 ;

public DrawView (Context context){

super(context);

}

public void onDraw(Canvas canvas){

superonDraw(canvas);

//创建画笔

Paint p = new Paint();

//设置画笔的颜色

psetColor(ColorRED);

//绘制一个小圆(作为小球)

canvasdrawCircle(currentX, currentY, 15, p);

}

}

跟随手指移动的小球,参考一下吧。

同一高度的一点先后由静止释放甲乙两个物体,即甲乙两个物体的初速度都为0,设T1秒后甲的速度为V甲,乙的速度为V乙,(T1秒为乙由静止释放时开始记时),那么甲运动的时间为T1+△T,则有V甲=g(T1+△T),V乙=gT1,那么甲相对于乙的速度为:(也即甲比乙快的速度)V甲-V乙=g(T1+△T)-gT1=g△T,因为g为常数,△T为甲比乙先出发的时间,也为常数,故甲相对于乙的速度为常数,在乙看来,甲的运动是匀速直线运动

希望我的解答能使你明白!!!!!!

以上就是关于用c语言编写一个程序模拟小球的自由落体运动全部的内容,包括:用c语言编写一个程序模拟小球的自由落体运动、C语言 随机坠落的小球!!、求一android程序源码 让小球沿指定路径运动等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9478020.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存