이 튜토리얼에서는 주어진 이진수가 64로 나누어 떨어지는지 확인하는 프로그램을 작성할 것입니다.
우리는 이진수를 제공했으며 비트를 제거하여 64로 나눌 수 있도록 만들 수 있습니다. 비트를 제거한 후 숫자가 64로 나누어 떨어지면 예를 인쇄합니다. 그렇지 않으면 아니요 .
우리가 사용할 방법은 매우 간단합니다. 문제를 해결하는 단계를 살펴보겠습니다.
-
이진수를 문자열 형식으로 초기화합니다.
-
주어진 이진수를 반복합니다.
-
0의 개수를 센다.
-
2진수가 6보다 크거나 같고 1비트가 있으면 그 수는 64로 나누어 떨어집니다.
-
주어진 이진수가 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
결론
튜토리얼에서 질문이 있는 경우 댓글 섹션에 언급하세요.