-1

我试图通过一个数组指针循环来获取该数组中的偶数。

void even_element(double* a, const int SIZE)
{
for (int count = 0; count < SIZE; count ++)
{
    if(a[count] % 2 == 0) //Error here
    {
        cout << *(a + count) << " ";
    }
}
}

我知道如果我在声明数组的主要方法中执行此操作,我可以不使用指针来执行此操作:

for (int count = 0; count < SIZE; count ++)
{
    if(num_array[count] % 2 == 0)
    {
        cout << num_array[count] << " ";
    }
}

但是,当我尝试使用指针执行此操作时,我不知道如何循环遍历数组中的元素。有人可以指导我吗?

提前致谢。

4

2 回答 2

4

处理浮点数时,应使用fmod整数模运算符而不是整数模运算符%

但是,在处理浮点值时要小心:不能直接比较值。您必须比较该值与一个非常小的 epsilon 值之间的绝对差异。

于 2013-05-29T08:41:48.743 回答
1

您不能将 '%' 与 double 一起使用。以下链接对您有用:

不能在双打上使用模数?

于 2013-05-29T08:42:08.337 回答