在C++中检查数字是否为整数
Checking if a number is an integer in C++
我正在寻找一种方法来检查某个变量是否包含整数。我的程序要求用户输入一组变量的值,然后计算使另一个变量e为整数所需的变量k。计算k的代码本质上是一个for循环,它从零开始递增k,直到它达到使e成为整数的值。但是我不知道如何检验e是一个整数。这是我正在考虑的代码:
for (int k = 0; k!=wk; k++)
{
e = (1+k*f_n)/d;
if()
}
变量wk就在那里,所以当e是整数时,wk等于k,所以循环结束。
您不想检查e
是否为整数。您要检查1 + k*f_n
是否是d
的倍数。为此使用模运算符。
if (((1 + k*f_n) % d) == 0)
假设e
是浮点类型,
int u = (int) e;
if (e > (float)u || e < (float)u)
continue;
break;
这种解决方案在模块算术的范围内会出现舍入误差。请考虑使用模数运算符。
相关文章:
- 检查输入是否不是整数或数字
- 是否基于数组B整数打印数组A中的整数
- 检查TCHAR数组输入是否为带符号整数C++
- 有没有一种优雅而快速的方法来测试整数中的 1 位是否位于连续区域
- 如果整数与指针大小相同,则重新解释将整数转换为指针双射是否具有双射作用?
- 在线程中读取无符号整数时,c++ 位是否以原子方式切换?
- 如何检测除整数以外的任何内容是否传递给我的类构造函数?
- 检查字符串是否为整数
- FlatBuffers/Protobuf 中是否有支持任意 24 位有符号整数定义的可移植二进制序列化架构?
- C++11 标准是否保证零值有符号整数的一元减号为零?
- 验证用户输入和整数是否C++
- 如何检查是否定义了固定宽度的整数
- 从双精度转换为整数的显式类型是否始终检查整数溢出?
- 将字符串转换为整数类型T,检查是否存在溢出
- 在C/C++中检查数字是否为整数(不带scanf/gets/etc)
- 整数指针数组的元素是否可以指向整数数组?
- 如何在 c++ 中解析包含整数的字符串并检查是否大于最大值
- 当 map 是一个整数数组并且由 operator[] 创建时,它是否初始化其映射类型
- 是否有任何内置函数可以检查给定的两个数字在给定整数数组中的顺序是否相同?
- 整数浮点数除以自身是否保证为 1.f?