我想實現用戶自定義函數,它測試一個數是否爲整數:測試,如果給定的數字整數
#include <iostream>
#include <typeinfo>
using namespace std;
bool integer(float k){
if (k==20000) return false;;
if (k==(-20000)) return false;
if (k==0) return true;
if (k<0) return integer(k+1);
else if(k>0) return integer (k-1);
return false;
}
int main(){
float s=23.34;
float s1=45;
cout<<boolalpha;
cout<<integer(s)<<endl;
cout<<integer(s1)<<endl;
return 0;
}
這樣的想法是,如果一個數是一個整數,不要緊,如果它是一種消極或積極的,如果我們減少或加一的話,我們必須讓零,但問題是,我們如何創造增加和減少的上限和下限?
我甚至不...爲什麼你考慮> 20000 <-20000不是整數?你爲什麼會開始在你的範圍中間進行比較,而不是從-20000開始比較? – tenfour
,你是對我有MAX_INT和MIN_INT –
沒有@ tenfour改變了它,我讀一節關於數論在那裏討論的話題(二次)殘留物和質數殘留的根等等,這裏是算法在某種程度上涉及到整數的期限,如果從東西平方根是整數,那麼它是根,所以它是主要的原因 –