Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Kiểm tra số lớn chia hết cho 8 C++


Số lớn (string). Kiểm tra chia hết cho 8.

Quy tắc: Số hình thành bởi 3 chữ số cuối chia hết cho 8 ⇔ số đó chia hết cho 8.

Chương trình C++

#include <bits/stdc++.h>
using namespace std;

bool divisibleBy8(const string& num) {
    int n = num.size();
    int last3 = 0;
    for (int i = max(0, n-3); i < n; i++)
        last3 = last3 * 10 + (num[i] - '0');
    return last3 % 8 == 0;
}

int main() {
    vector test = {"1754586672360", "123456", "1000", "1008", "1234"};
    for (auto &s : test)
        cout << s << ": " << (divisibleBy8(s) ? "Chia het" : "Khong chia het") << "\n";
    return 0;
}

Kết quả

1754586672360: Chia het
123456: Chia het
1000: Chia het
1008: Chia het
1234: Khong chia het