2016-12-08 33 views
0

提示:一個幸運數字是數字7和數字7中的數字必須是奇數。寫一個遞歸函數來檢查數字是否幸運。 (例如,幸運#:777,117,7。不是幸運#:77,1277)。幸運7遞歸

我是初學者。我寫了下面的代碼,但我不明白「如果(num == 7)返回7」工作,但它應該返回一個布爾值。 :(

這是我的代碼:(它會檢查是否有任何位7和總結了所有位7爲奇數)

bool lucky(int num) 
{ 
    if (num < 10) 
     if (num == 7) return 7; << HOW???? Please! 
     else return 0; 
    else if (num % 10 == 7) 
     return (7 + lucky(num/10)) % 2 != 0; 
    else 
     return lucky(num/10); 
} 

回答

1

在C++中的任何非零值可以被認爲是「真」,而零是「假」。整數是implicitly convertiblebool使用此方案。