标题:算法应该没问题啊,我把程序改成matlab语言,求解得出正确结果,那为什么用 ...
只看楼主
wwwjw
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2007-12-28
结帖率:33.33%
 问题点数:0 回复次数:1 
算法应该没问题啊,我把程序改成matlab语言,求解得出正确结果,那为什么用C++不能得出正确结果呢
#include "math.h"
#include "iostream.h"
void main()
{
    double a;
    double du=3.1415926/180;
    double m_height=1;
    double m_length=40;
    double m_result=-90*du;
    double m_orientangel=45*du;
    double m_sideangel=4*du;
    double m_frontangel=4*du;
    a=m_height+m_length*cos(m_result)*cos(m_orientangel)*tan(m_sideangel)+m_length*cos(m_result)*sin(m_orientangel)*tan(m_frontangel)-m_length*sin(m_result);  
    while(abs(a)>10e-6)
    {
        m_result=m_result+10e-3;
        a=m_height+m_length*cos(m_result)*cos(m_orientangel)*tan(m_sideangel)+m_length*cos(m_result)*sin(m_orientangel)*tan(m_frontangel)-m_length*sin(m_result);  
   
        
    }
        cout<<m_result/du<<endl<<a<<endl;
   
   
}

我试了一下,发现最后a就是误差稳定在了1附近,真是搞不懂
搜索更多相关主题的帖子: matlab 算法 语言 
2010-06-05 20:02
wwwjw
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2007-12-28
得分:0 
顶起来啊,大家帮帮忙嘛
2010-06-05 20:47



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-309325-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.052867 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved