এটি করার সর্বোত্তম উপায় হ'ল একটি এলোমেলো সংখ্যা তৈরি করা যা নির্দিষ্ট সংখ্যায় সমানভাবে বিতরণ করা হয় এবং তারপরে 0 এবং 100 এর মধ্যে সেটে একটি প্রজেকশন ফাংশন প্রয়োগ করুন যেখানে প্রজেকশনটি আপনার পছন্দের সংখ্যাগুলিতে হিট হওয়ার সম্ভাবনা বেশি।
সাধারণত এটি অর্জনের গাণিতিক পদ্ধতিটি আপনি চান সংখ্যার সম্ভাব্যতা ফাংশন প্লট করে। আমরা ঘন্টার বক্ররেখাটি ব্যবহার করতে পারি, তবে আসুন সহজ গণনার স্বার্থে কেবল একটি ফ্লিপড প্যারোবোলার সাথে কাজ করি।
আসুন একটি প্যারাবোলা তৈরি করুন যাতে এর শিকড়গুলি এটি স্কাইنگ ছাড়াই 0 এবং 100 এ থাকে। আমরা নিম্নলিখিত সমীকরণ পেতে:
f(x) = -(x-0)(x-100) = -x * (x-100) = -x^2 + 100x
এখন, 0 এবং 100 এর মধ্যে বক্ররেখার সমস্ত অঞ্চল আমাদের প্রথম সেটটির প্রতিনিধি যেখানে আমরা সংখ্যাটি উত্পন্ন করতে চাই। সেখানে, প্রজন্ম সম্পূর্ণ এলোমেলো। সুতরাং, আমাদের যা করতে হবে তা হ'ল আমাদের প্রথম সেটটির সীমা find
নিম্ন সীমাটি অবশ্যই, 0, উপরের বাউন্ডটি 100 এ আমাদের ফাংশনের অবিচ্ছেদ্য, যা হয়
F(x) = -x^3/3 + 50x^2
F(100) = 500,000/3 = 166,666.66666 (let's just use 166,666, because rounding up would make the target out of bounds)
সুতরাং আমরা জানি যে আমাদের কোথাও 0 এবং 166,666 এর মধ্যে একটি সংখ্যা তৈরি করতে হবে। তারপরে, আমাদের কেবল সেই সংখ্যাটি নেওয়া এবং এটি আমাদের দ্বিতীয় সেটে প্রজেক্ট করা দরকার, যা 0 এবং 100 এর মধ্যে রয়েছে।
আমরা জানি যে এলোমেলো সংখ্যাটি আমরা তৈরি করেছি তা আমাদের প্যারোবোলার কিছু অবিচ্ছেদ্য x এবং 100 এর মধ্যে ইনপুট রয়েছে That এর অর্থ আমাদের সহজেই ধরে নিতে হবে যে এলোমেলো সংখ্যাটি F (x) এর ফলাফল, এবং x এর জন্য সমাধান।
এই ক্ষেত্রে, এফ (এক্স) একটি ঘন সমীকরণ, এবং আকারে F(x) = ax^3 + bx^2 + cx + d = 0
নিম্নলিখিত বিবৃতিগুলি সত্য:
a = -1/3
b = 50
c = 0
d = -1 * (your random number)
এক্স এর জন্য এটি সমাধান করলে আপনি যে প্রকৃত র্যান্ডম সংখ্যাটি সন্ধান করছেন তাতে ফল পাওয়া যায়, যা [0, 100] পরিসরে থাকার গ্যারান্টিযুক্ত এবং প্রান্তগুলির চেয়ে কেন্দ্রের কাছাকাছি হওয়ার অনেক বেশি সম্ভাবনা রয়েছে।