এখানে আমরা ওসিরিস সংখ্যা দেখতে পাব। একটি ওসিরিস সংখ্যা হল এমন ধরনের সংখ্যা যা তাদের নিজস্ব অঙ্কের উপ-নমুনার স্থানান্তরগুলির যোগফলের সমান। ধরুন সংখ্যাটি 132। তারপর যদি আমরা গণনা করি {12 + 21 + 13 + 31 + 23 + 32} এটিও 132। সুতরাং সংখ্যাটি ওসিরিস সংখ্যা। প্রদত্ত নম্বরটি ওসিরিস নম্বর কিনা তা আমাদের পরীক্ষা করতে হবে৷
পদ্ধতি সহজ. যদি আমরা সংখ্যাগুলি বিশ্লেষণ করি, প্রতিটি অঙ্ক দুইবার ঘটছে তাই তারা এক অবস্থানে এবং দশ অবস্থানে রয়েছে। সুতরাং আমরা তাদের সাথে 11 গুণ করে পরীক্ষা করতে পারি।
অ্যালগরিদম
isOsirisNumber(n) −
Begin a := last digit b := second digit c := first digit digit_sum := a + b + c if n = (22 * digit_sum), then return true end if return false End
উদাহরণ
#include
using namespace std;
bool isOsirisNumber(int n) {
int a = n % 10;
int b = (n / 10) % 10;
int c = n / 100;
int sum = a + b + c;
if (n == (22 * sum)) {
return true;
}
return false;
}
int main() {
int n = 132;
if (isOsirisNumber(n))
cout << "This is Osiris number";
else
cout << "This is Not Osiris number";
} আউটপুট
This is Osiris number