ホームページ  >  記事  >  バックエンド開発  >  C++ プログラムでビットの削除が許可されている場合は、数値が 64 で割り切れるかどうかを判断します。

C++ プログラムでビットの削除が許可されている場合は、数値が 64 で割り切れるかどうかを判断します。

PHPz
PHPz転載
2023-09-01 20:17:141257ブラウズ

C++ プログラムでビットの削除が許可されている場合は、数値が 64 で割り切れるかどうかを判断します。

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

2 進数が与えられているので、いくつかのビットを削除して 64 で割り切れるようにすることができます。数字を削除した後、数値が 64 で割り切れる場合は Yes が出力され、それ以外の場合は No が出力されます。

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

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

  • 指定された 2 進数をトラバースします。

  • ゼロの数を数えます。

  • 2 進数に 6 個以上のゼロ ビットが含まれる場合、その数値は 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] == &#39;0&#39;) {
         zeroes_count++;
      }
      if (zeroes_count >= 6 && binary_number[i] == &#39;1&#39;) {
         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

結論

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

以上がC++ プログラムでビットの削除が許可されている場合は、数値が 64 で割り切れるかどうかを判断します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。