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

Kiểm tra có thể tạo số chia hết 3 từ chữ số mảng trong C++

Cho mảng số, ghép tất cả chữ số thành 1 số lớn. Kiểm tra số đó chia hết cho 3.

Tính chất: Số chia hết 3 ⟺ tổng chữ số chia hết 3. Tổng chữ số của số ghép = tổng các phần tử mảng.

Kiểm tra: (Σ arr[i]) % 3 == 0

Chương trình

#include <iostream>
using namespace std;

bool canDiv3(int arr[], int n) {
    int sum = 0;
    for (int i = 0; i < n; i++)
        sum = (sum + arr[i]) % 3;
    return sum == 0;
}

int main() {
    int arr[] = {15, 24, 23, 13};
    int n = sizeof(arr)/sizeof(arr[0]);
    cout << (canDiv3(arr, n) ? "Chia het 3" : "Khong chia het");
    return 0;
}

Kết quả

Chia het 3