相关疑难解决方法(0)

浮点不准确的例子

你如何向仍然认为计算机是无限智能和准确的新鲜程序员和外行人解释浮点不准确?
你有一个最喜欢的例子或轶事似乎比一个精确但干燥的解释更好地理解这个想法吗?
这是如何在计算机科学课程中教授的?

floating-point floating-accuracy

29
推荐指数
3
解决办法
10万
查看次数

在C中,int和float之间的关系比较是否可以直接进行?

我正在使用Visual Studio 6和一些用c编写的旧时代码.我发现代码看起来像这样的问题..

int x = 3;
float y = 3.0;

if(x == y){
   do some crazy stuff
}
Run Code Online (Sandbox Code Playgroud)

这是一个有效的比较吗?是否有可能在运行时浮点数的分配是3.0000001,这会失败?

c comparison equals

8
推荐指数
4
解决办法
2万
查看次数

关于在C/C++中比较整数和float/double

我有以下代码(随意更改浮动与双):

class A
{
    public:
        void setValueFloat(float v) {
              m_floatValue = v / 3.6;  // m/s <-> km/h conversion
        }
        void setValueInt(int v1, int v2) { 
              m_intValue1 = v1; m_intValue2 = v2;
        }

        bool conditionIsOk()
        {
             if(m_intValue1 > m_intValue2)
             {
                  if(m_intValue1 - m_intValue2 > m_floatValue)
                  {
                      return true;
                  }
             }
             return false;
        }

    private:
        int m_intValue1, m_intValue2;
        float m_floatValue;

};
Run Code Online (Sandbox Code Playgroud)

和其他地方:

A a;
int something = 5; // Intentionally int
int somethingElse = 6; //these are just some numbers, not …
Run Code Online (Sandbox Code Playgroud)

c c++ floating-point int comparison

3
推荐指数
2
解决办法
7140
查看次数

关系“等于”运算符如何工作

#include <stdio.h>

int main()
{
    int x=3;
    float y=3.0;
    if(x==y)
        printf("\n x and y are equal");
    else
        printf("\n x and y are not equal")

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

代码打印“x 和 y 相等”。请解释这是如何发生的。

c

-3
推荐指数
1
解决办法
65
查看次数

标签 统计

c ×3

comparison ×2

floating-point ×2

c++ ×1

equals ×1

floating-accuracy ×1

int ×1