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

C++プログラムで許可されているビットの削除による64による除算


このチュートリアルでは、指定された2進数が64で割り切れるかどうかをチェックするプログラムを作成します。

2進数を指定したので、ビットを削除して64で割り切れるようにすることができます。ビットを削除した後、数値が64で割り切れる場合は、はいと出力します。 それ以外の場合はいいえ

使用する方法は非常に簡単です。問題を解決するための手順を見てみましょう。

  • 2進数を文字列形式で初期化します。

  • 指定された2進数を繰り返し処理します。

  • ゼロの数を数えます。

  • 2進数に6以上が含まれ、1ビットがある場合、その数値は64​​で割り切れます。

  • 指定された2進数が64で割り切れるかどうかを出力します。

コードを見てみましょう。

#include <bits/stdc++.h>
using namespace std;
bool isBinaryStringDivisibleBy64(string binary_number, int n) {
   int zeroes_count = 0;
   for (int i = n - 1; i >= 0; i--) {
      if (binary_number[i] == '0') {
         zeroes_count++;
      }
      if (zeroes_count >= 6 && binary_number[i] == '1') {
         return true;
      }
   }
   return false;
}
int main() {
   string binary_string = "100100100100100";
   if (isBinaryStringDivisibleBy64(binary_string, 15)) {
      cout << "Yes" << endl;
   }
   else {
      cout << "No" << endl;
   }
   return 0;
}

出力

上記のコードを実行すると、次の結果が得られます。

Yes

結論

チュートリアルに質問がある場合は、コメントセクションにそのことを記載してください。


  1. 数値の累乗を計算するC++プログラム

    数値の累乗はx^yとして計算できます。ここで、xは数値、yはその累乗です。 たとえば。 Let’s say, x = 2 and y = 10    x^y =1024    Here, x^y is 2^10 数値の累乗は、再帰的および非再帰的プログラムを使用して計算できます。これらのそれぞれは次のように与えられます。 非再帰的プログラムを使用した数の力 非再帰的プログラムを使用して数の累乗を見つけるプログラムは次のように与えられます- 例 #include<iostream> using namespace std;

  2. 数値を逆にするC++プログラム

    数字を逆にするということは、その数字を逆の順序で保存することを意味します。 例:番号が6529の場合、9256が出力に表示されます。 数を逆にするプログラムは次のように与えられます- 例 #include <iostream> using namespace std; int main() {    int num = 63972, rev = 0;    while(num > 0) {       rev = rev*10 + num%10;       num = n