Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++에서 큰 수를 11로 나눌 수 있는지 확인

<시간/>

여기서 우리는 숫자가 11의 배수인지 아닌지 확인하는 방법을 볼 것입니다. 이 경우 숫자는 매우 큰 숫자입니다. 그래서 우리는 숫자를 문자열로 넣습니다.

숫자가 11로 나누어 떨어지는지 확인하려면 홀수 위치 값의 합과 짝수 위치 값의 합이 같으면 11의 배수입니다.

#include <bits/stdc++.h>
using namespace std;
bool isDiv11(string num){
   int n = num.length();
   long odd_sum = 0, even_sum = 0;
   for(int i = 0; i < n; i++){
      if(i % 2 == 0){
         odd_sum += num[i] - '0';
      } else {
         even_sum += num[i] - '0';
      }
   }
   if(odd_sum == even_sum)
      return true;
      return false;
}
int main() {
   string num = "1234567589333892";
   if(isDiv11(num)){
      cout << "Divisible";
   } else {
      cout << "Not Divisible";
   }
}

출력

Divisible