Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

ตรวจสอบว่าจำนวนมากหารด้วย 11 ได้หรือไม่ใน C++


ต่อไปเราจะมาดูวิธีการเช็คว่าเลขหารด้วย 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