C++での4の累乗
したがって、入力が16のような場合、出力はTrueになります。
これを解決するには、次の手順に従います-
-
num <0の場合、-
-
falseを返す
-
-
num&(num-1)がゼロ以外の場合、-
-
falseを返す
-
-
(num&01010101010101010101010101010101)がゼロの場合、-
-
falseを返す
-
-
trueを返す
例
理解を深めるために、次の実装を見てみましょう-
#include <bits/stdc++.h> using namespace std; class Solution { public: bool isPowerOfFour(int num){ if (num < 0) return false; if (num & (num - 1)) return false; if (!(num & 0x55555555)) return false; return true; } }; main(){ Solution ob; cout << (ob.isPowerOfFour(64)); }
入力
64
出力
1
-
C++のvoid関数から戻る
void関数は、何も返さないため、voidと呼ばれます。 「void関数は何も返すことができません」このステートメントは常に真であるとは限りません。 void関数からは値を返すことはできませんが、値以外のものを返すことはできます。それらのいくつかは以下のようなものです。 void関数は戻ることができます void関数は値を返すことはできません。ただし、returnステートメントを使用することはできます。機能が終了したことを示します。コードの可読性が向上します。 サンプルコード #include <iostream> using namespace std; void my_fu
-
C ++で「オブジェクトを返す」方法は?
オブジェクトはクラスのインスタンスです。メモリは、オブジェクトが作成されたときにのみ割り当てられ、クラスが定義されたときは割り当てられません。 returnキーワードを使用して、関数からオブジェクトを返すことができます。これを実証するプログラムは次のとおりです- 例 #include <iostream> using namespace std; class Point { private: int x; int y; public: Point(in