ตรวจสอบเลขใหญ่ (string) หาร 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';
}
return (odd_sum == even_sum);
}
int main() {
string num = "1234567589333892";
if (isDiv11(num)) cout << "Divisible";
else cout << "Not Divisible";
}
ผลลัพธ์
Divisible