用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字

用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字

请选择技术分类

 *如果你找不到更细的分类,可以选择上级分类
当前位置:云代码 - 技术问答 - C

题目: 在33米的水平直钢管中 第3米 第6米 第19米 第22米 第26米 各有一个钢球

 悬赏:10|提问者:沉默D术士|浏览:1837
举报|2015-06-06
题目:     在33米的水平直钢管中 第3米 第6米 第19米 第22米 第26米 各有一个钢球(直径同钢管内径,能滑动 0摩擦 )刚开始钢球都静止,
          突然5个钢球都都以1米每秒的速度开始运动 ,碰撞后速度不变 方向改变  钢球起始速度方向不定,求所有钢球都离开钢管的最大时间
          以及最初5钢球的起始速度方向   (0能量 速度损失  所有直径大小可以忽略不计)
#include <stdio.h>;
#include <math.h>
float currenpoint(double s1,int v1,double s2,int v2,double s3,int v3,double s4,int v4,double s5,int v5)
{
        int i=0;
        double t=0;
        for(i=0;i<10000;i++)
        {
        s1=s1+0.01*i*v1;
        s2=s2+0.01*i*v2;
        s3=s3+0.01*i*v3;
        s4=s4+0.01*i*v4;
        s5=s5+0.01*i*v5;
        t=0.01*i;
        if((s1>=33|s1<=0)&&(s2>=33|s2<=0)&&(s3>=33|s3<=0)&&(s4>=33|s4<=0)&&(s5>=33|s5<=0))
                break;
        if (fabs(s1-s2)<0.01)
                currenpoint(s1,-1*v1,s2,-1*v2,s3,v3,s4,v4,s5,v5);
        if (fabs(s2-s3)<0.01)
                currenpoint(s1,v1,s2,-1*v2,s3,-1*v3,s4,v4,s5,v5);
        if (fabs(s3-s4)<0.01)
                currenpoint(s1,v1,s2,v2,s3,-1*v3,s4,-1*v4,s5,v5);
        if (fabs(s4-s5)<0.01)
                currenpoint(s1,v1,s2,v2,s3,v3,s4,-1*v4,s5,-1*v5);
        }
        return t;
}
double main()
{
int i=0,j=0,v1=0,v2=0,v3=0,v4=0,v5=0;
double t[32]={0},max=0;
double s1=3.0,s2=6.0,s3=19.0,s4=22.0,s5=26.0;
for(i=0;i<31;i++)
{
        v1=(i/1)%2;
        v2=(i/2)%2;
        v3=(i/4)%2;
        v4=(i/8)%2;
        v5=(i/16)%2;
        if (v1==0)
                v1=-1;
        if (v2==0)
                v2=-1;
        if (v3==0)
                v3=-1;
        if (v4==0)
                v4=-1;
        if (v5==0)
                v5=-1;
        *(t+i)=currenpoint(s1,v1,s2,v2,s3,v3,s4,v4,s5,v5);

}
for(j=0;j<31;j++)
printf("%lf\n",t[j]);
}
求修改 或者讲解下 为什么程序得不到正确答案  或者给我个正确的解决思路 都可以 万分感谢

我来回答

所有回答
举报|(0)|(0)2017-04-18
??
举报|(0)|(0)2018-08-16
。。。。。。
#3542
举报|(0)|(0)2018-12-25
111
举报|(0)|(0)2019-07-30
111
举报|(0)|(0)2020-12-26
法塔赫
举报|(0)|(0)2021-11-06
1

相关提问