变量具有与运算符不同的值

时间:2016-02-03 11:52:01

标签: c# .net visual-studio

第一次发表海报,c#beginner。

问题: 某些值导致计算不正确,但操作员显示正确的值(在调试时将鼠标悬停在其上) 变量值应为:49.9006 ... 但是存储了47.4344 ....

Screen shot: Operator value

Screen shot: double variable value

程序: 将螺旋分成弧形段。 输入:直线和曲线(曲线为圆或圆弧) 获取弧坐标,中心点和角。

代码段(所有变量都被定义为双精度,i& iNe除外,因为这些是因此定义为int的计数器)

    for (i = 0; i < 20; i++)
    {
        iNe = i + 1;
        if (i == 0)
            nRay = 0;
        else
            nRay = this.RadiusBase / i;
        nRayNe = this.RadiusBase / iNe;
        nAng = this.Alpha * i;
        nAngNe = this.Alpha * iNe;
        if (i == 0)
        {
            cumAng = 0;
            cumAngNe = cumAng + nAngNe;
        }
        else
        {
            cumAng = nAng + cumAng;
            cumAngNe = cumAng + nAngNe;
        }
        nSin = Math.Sin(cumAng);
        nSinNe = Math.Sin(cumAngNe);
        nCos = Math.Cos(cumAng);
        nCosNe = Math.Cos(cumAngNe);
        n1minCos = 1 - nCos;
        nXjonc = nXcp + ((double)iNe * (nXcpNe - nXcp));
        nYjonc = nYcp - ((double)iNe * (nYcp - nYcpNe));

我做错了什么?

0 个答案:

没有答案