Cho số n, kiểm tra xem có chữ số nào của n chia hết n hay không.
Ví dụ: 128625 chia hết cho 5 (5 là chữ số của nó).
Ví dụ
Input: 53142 → Output: Yes (chia hết cho 1,2,3) Input: 223 → Output: No (không chia hết cho 2 hay 3)
Phương pháp:
- Lưu bản sao
temp = n. - Lấy từng chữ số từ hàng đơn vị (
n % 10). - Kiểm tra
temp % chữ_số == 0. n /= 10cho đến khin == 0.
Mã nguồn C
#include <stdio.h>
int divisible(long long int n) {
long long int temp = n;
while (n) {
int k = n % 10;
if (k != 0 && temp % k == 0) return 1;
n /= 10;
}
return 0;
}
int main() {
long long int n = 654123;
if (divisible(n)) printf("Yes\n"); else printf("No\n");
return 0;
}
Kết quả
Yes