দশমিক সংখ্যা পদ্ধতিতে, সকল বাস্তব সংখ্যা দুটি গ্রুপে ভাগ করা যায়:
- রেশনাল সংখ্যা (Rational Numbers)
- ইরেশনাল সংখ্যা (Irrational Numbers)
এই সমস্যার পরিধিতে আমরা শুধু রেশনাল সংখ্যা নিয়ে আলোচনা করব।
যেসব সংখ্যাকে p/q (যেখানে q ≠ 0) রূপে লেখা যায়, সেগুলোকে রেশনাল সংখ্যা বলা হয়।
যেমন ১৪, ৪.৬, ৩.৩৩৩৩৩... এবং আরও অনেক।
রেশনাল সংখ্যাগুলো আরও দুটি গ্রুপে ভাগ করা যায়:
- টার্মিনেটিং দশমিক সংখ্যা (Terminating decimal numbers)
- রিপিটিং দশমিক সংখ্যা (Repeating decimal numbers)
এই বিভাজনটি p কে q দিয়ে ভাগ করে প্রাপ্ত ফলাফলের ভিত্তিতে করা হয়।
এই বিভাজনের থাম্ব রুল হল:
- আমরা টার্মিনেটিং দশমিক সংখ্যা পাবো যদি এবং কেবল যদি q-এর প্রাইম ফ্যাক্টরগুলো শুধু ২ এবং ৫ হয়।
- আমরা রিপিটিং দশমিক সংখ্যা পাবো যদি q-এর প্রাইম ফ্যাক্টরে ২ বা ৫ ছাড়া অন্য কোনো সংখ্যা থাকে।
তাহলে, আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা একটি সংখ্যা (q-এর মান) নেয়। আমাদের ফাংশনটি true রিটার্ন করবে যদি সেই q-এর জন্য টার্মিনেটিং দশমিক সংখ্যা পাওয়া যায়, অন্যথায় false।
উদাহরণ
নিচের কোডটি দেখুন:
const num = 1250;
const isTerminating = num => {
while(num !== 1){
if(num % 2 === 0){
num /= 2;
}else if(num % 5 === 0){
num /= 5;
}else{
return false;
};
};
return true;
};
console.log(isTerminating(num));
আউটপুট
এটি কনসোলে নিচের আউটপুট তৈরি করবে:
true