C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

与えられた数がC++で4の累乗であるかどうかを調べます


この問題では、整数Nが与えられます。私たちのタスクは、与えられた整数が4の累乗であるかどうかを見つけることです。 。

問題を理解するために例を見てみましょう

Input : N = 64
Output : Yes

説明

43 = 64

ソリューションアプローチ

この問題の簡単な解決策は、数値を4で再帰的に除算し、結果の数値が4で除算されているかどうかを確認することです。再帰除算後の値が1になった場合は、trueを返します。

ソリューションの動作を説明するプログラム

#include <iostream>
using namespace std;
bool isPowerOf4(int n){
   if(n == 0)
   return 0;
   while(n != 1)
   {
      if(n % 4 != 0)
         return 0;
      n = n / 4;
   }
   return 1;
}
int main(){
   int n = 123454;
   if (isPowerOf4(n))
      cout<<"The number is a power of 4";
   else
      cout<<"The number is not a power of 4";
   return 0;
}

出力

The number is not a power of 4

  1. 数値が2の累乗であるかどうかを調べるC++プログラム?

    与えられた数が2の累乗であるかどうかを確認します。最初に、どの数が2の累乗であるかを確認します。このコードは、数値が奇数かどうかをチェックし、0または奇数になるまで同時に除算します。 0になると2の累乗になり、そうでない場合はそうではありません。 より良い選択は、番号のログを取ることです。整数の場合、nは2の累乗です。それ以外の場合はそうではありません。 2の累乗である数: 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048 ... 22 = 4 25 = 32 210 = 1024 Input: 8 Output: Number is pow

  2. 数値が素数であるかどうかをチェックするC++プログラム

    素数は1より大きい整数であり、素数の唯一の要素は1とそれ自体でなければなりません。最初の素数のいくつかは-です 2, 3, 5, 7, 11, 13 ,17 数が素数かどうかをチェックするプログラムは次のとおりです。 例 #include <iostream> using namespace std; int main() {    int n=17, i, flag = 0;    for(i=2; i<=n/2; ++i) {       if(n%i==0) {     &nbs