c ++我需要一个解释

时间:2015-05-16 17:01:28

标签: c++

很抱歉,我只需要对函数的布尔调用返回进行解释,我对自己不得不问这个问题感到非常失望。它是一个非常简单的程序,但回报没有if,true和im guess。我把问题放在了程序中,有人可以解释一下发生了什么。提前谢谢。

int main()
{
    for (int i = 0; i < 100; i++)
    {
        //check if prime, if it is print it

        if (isPrime(i)) //does this say - if returns true, print?
        {
            cout << i << endl;
        }

    }

    return 0;
}

bool isPrime(int num)
{
    for (int i = 2; i < num; i++)
    {
        if ( isDivisible(num, i) ) { // not sure about this?
            return false;
        }
    }
    return true;
}

bool isDivisible(int number, int divisor)
{
    return number % divisor == 0; // is this saying return true (if) num    %    div == 0 ?
}

1 个答案:

答案 0 :(得分:2)

无需进行比较,因为如果将某些布尔值final HashMap<String, String> resultp = data.get(position); b进行比较,则结果为true的值。

测试b说&#34;如果if (isPrime(i))是素数&#34; 您当然可以将其重写为更复杂的i - &#34;如果if (isPrime(i) == true)是正确的,那么#34; - 但为什么复杂的事情呢?

同样,i表示&#34;如果if(isDivisible(num,i))可以被num&#34;整除,而{&1 34}则表示i可以被num&#34;整除意思相同,只是不必要。

最后,在i中,比较isDivisible的值为number % divisor == 0true
该函数返回该比较的结果。