Giới thiệu
Số Osiris (3 chữ số) là số bằng tổng các hoán vị 2 chữ số của chính nó.
Ví dụ
132: hoán vị 2 chữ số = 13, 12, 21, 23, 31, 32 Tổng = 13+12+21+23+31+32 = 132 → Là Osiris
Công thức toán học
Số abc (a hàng trăm, b hàng chục, c hàng đơn vị).
6 hoán vị 2 chữ số: ab, ac, ba, bc, ca, cb
Tổng = (10a+b) + (10a+c) + (10b+a) + (10b+c) + (10c+a) + (10c+b)
= 22(a + b + c)
= 22 × (tổng chữ số)
Điều kiện: 100a + 10b + c = 22(a+b+c)
Code C
#include <stdio.h>
int main() {
int n = 132;
int a = n % 10; // hàng đơn vị
int b = (n / 10) % 10; // hàng chục
int c = n / 100; // hàng trăm
int digit_sum = a + b + c;
if (n == 22 * digit_sum)
printf("%d is an Osiris number\n", n);
else
printf("%d is not an Osiris number\n", n);
return 0;
}
Kết quả
132 is an Osiris number
Mở rộng
Có thể duyệt tìm tất cả số Osiris 3 chữ số:
for (int n = 100; n <= 999; n++) {
int sum = n%10 + (n/10)%10 + n/100;
if (n == 22 * sum) printf("%d ", n);
}
// Kết quả: 132, 264, 396