c++ - 在 C++ 中使用 double 时模数不起作用

标签 c++

<分区>

我不被允许使用模组。我认为它不起作用,因为我使用的是 double ;有没有解决的办法? --- 评论区域不起作用

void displayResults(double num1, char oper, double num2)
{
     switch(oper)
     {
     case '+' :
     cout << num1 << "+" << num2 << "=" << (num1+num2) << endl;
     break;

     case '-' :
     cout << num1 << "-" << num2 << "=" << (num1-num2) << endl;
     break;

     case '*' :
     cout << num1 << "*" << num2 << "=" << (num1*num2) << endl;
     break; 

     case '/' :
          if ( num1==0 || num2==0)
          cout <<"A number divided by 0 or divided into 0 is always 0"<< endl;
          else
          cout << num1 << "/" << num2 << "=" << (num1/num2) /*+ (num1%num2) */ << endl;
          break; 
    // case '%' :
    // cout << num1 << "%" << num2 << "=" << (num1%num2);
    //break;
     }

}

最佳答案

使用std::fmod .它有 double 重载:

#include <cmath>

std::fmod(num1, num2);

关于c++ - 在 C++ 中使用 double 时模数不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19503083/

相关文章:

c++ - 将 DLL 的方法用于其他方法

c++ - 什么是 undefined reference /未解析的外部符号错误以及如何修复它?

c++ - 使用字符串 C,读写字符串

c++ - 涉及STL排序算法的令人困惑的SegFault

c++ - 计算范围内可被 K 整除的数字和范围内的数字之和

c++ - ifstream 管道和多个(顺序)编写器

c++ - MFC向CWnd成员添加滚动条

c++ - 运算符 const 参数不允许调用 const 成员函数

c++ - VS2015 链接器寻找旧的,无处提及的文件

c++ - QT中如何使背景半透明?