လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> သတ်မှတ်ထားသောအကွာအဝေးတစ်ခုတွင်ကျပန်းနံပါတ်များကိုထုတ်လုပ်ရန် MT_GetrandMax () ကို MT_RANDAX () နှင့်မည်သို့အသုံးပြုရမည်နည်း။ အသေးစိတ်နည်းလမ်းခွဲခြမ်းစိတ်ဖြာ

သတ်မှတ်ထားသောအကွာအဝေးတစ်ခုတွင်ကျပန်းနံပါတ်များကိုထုတ်လုပ်ရန် MT_GetrandMax () ကို MT_RANDAX () နှင့်မည်သို့အသုံးပြုရမည်နည်း။ အသေးစိတ်နည်းလမ်းခွဲခြမ်းစိတ်ဖြာ

gitbox 2025-06-22

သတ်မှတ်ထားသောအကွာအဝေးတစ်ခုတွင်ကျပန်းနံပါတ်များကိုထုတ်လုပ်ရန် MT_GetrandMax () ကို MT_RANDAX () နှင့်မည်သို့အသုံးပြုရမည်နည်း။ အသေးစိတ်နည်းလမ်းခွဲခြမ်းစိတ်ဖြာ

PHP တွင်ကျပန်းနံပါတ်များကိုထုတ်လုပ်ခြင်းသည်အထူးသဖြင့်ဂိမ်းဖွံ့ဖြိုးတိုးတက်မှု, အသုံးပြုသူအချက်အလက်အပြောင်းအလဲများ, PHP သည် MT_rand () နှင့် MT_GetrandMax () တွင်အသုံးများသောလုပ်ဆောင်ချက်နှစ်ခုဖြစ်သောကျပန်းနံပါတ်များကိုထုတ်လုပ်ရန်လုပ်ဆောင်ချက်များစွာကိုပေးသည်။ MT_RAND () ကို များသောအားဖြင့်ကျပန်းကိန်းများကိုထုတ်လုပ်ရန်အသုံးပြုသည်။ MT_GetrandMax () သည် MT_rand () function ကိုအများဆုံးရရှိရန်အသုံးပြုသည်။

1 ။ MT_rand () function ကိုမိတ်ဆက်

MT_RAND () PHP တွင် Mersenne Twister algorithm အပေါ် အခြေခံ. Pseudo -er ကျပန်းနံပါတ်မျိုးဆက်လုပ်ဆောင်ချက်ဖြစ်သည်။ ၎င်း၏အားသာချက်မှာထုတ်လုပ်ထားသောကျပန်းနံပါတ်များသည်ကောင်းမွန်သောစည်းလုံးညီညွတ်မှုနှင့်စွမ်းဆောင်ရည်မြင့်မားခြင်းတို့ဖြစ်သည်။ ဤလုပ်ဆောင်ချက်သည်ပုံမှန်အားဖြင့် 0 မှ 0. 0 င်သော အကွာအဝေးနှင့်အတူကိန်းဂဏန်းတစ်ခုနှင့်တစ်ခုချင်းစီကိုပြန်လည်ရောက်ရှိစေသည်။

 <span><span><span class="hljs-variable">$rand</span></span><span> = </span><span><span class="hljs-title function_ invoke__">mt_rand</span></span><span>();  </span><span><span class="hljs-comment">// ကျပန်းနံပါတ်ကိုထုတ်လုပ်ပါ,မှအကွာအဝေး 0 ရောက်လာ mt_getrandmax()</span></span><span>
</span></span>

2 ။ mt_etrandmax () function ကိုမိတ်ဆက်

MT_GetrandMax () သည် MT_rand () ထုတ်လုပ်နိုင်သည့်အမြင့်ဆုံးတန်ဖိုးကိုရရှိရန် PHP မှပေးသော built-in function ကိုဖြစ်သည်။ ပြန်လည်ရောက်ရှိသည့်တန်ဖိုးသည်ကိန်းဂဏန်းများနှင့် PHP ၏မတူညီသောဗားရှင်းနှင့်ပလက်ဖောင်းများအပေါ်ကွဲပြားသောကိန်းဂဏန်းများဖြစ်သည်

 <span><span><span class="hljs-variable">$max</span></span><span> = </span><span><span class="hljs-title function_ invoke__">mt_getrandmax</span></span><span>();  </span><span><span class="hljs-comment">// ရယူ mt_rand() ထုတ်လုပ်နိုင်သည့်အများဆုံးတန်ဖိုး</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$max</span></span><span>;  </span><span><span class="hljs-comment">// output အများဆုံးတန်ဖိုး,ထုံးစံအားဖြင့် 2147483647</span></span><span>
</span></span>

3 ။ MT_rand () ကို သတ်မှတ်ထားသောအကွာအဝေးတွင်ကျပန်းနံပါတ်များကိုထုတ်လုပ်ရန်အသုံးပြုပါ

များသောအားဖြင့်ကျွန်ုပ်တို့သည်များသောအားဖြင့်သတ်မှတ်ထားသောအကွာအဝေးတစ်ခုဖြစ်ပြီး A မှ B မှ B မှကျပန်းအရေအတွက်အဖြစ်။ ၎င်းကိုရရှိရန်အတွက် MT_RAND () မှ ထုတ်လုပ်သောကျပန်းနံပါတ်များကိုကျွန်ုပ်တို့အသုံးပြုနိုင်သည်။

3.1 အခြေခံနည်းလမ်း - ဖော်မြူလာမှတဆင့်တိုက်ရိုက်တွက်ချက်မှု

ကျွန်ုပ်တို့သည်ကျပန်းနံပါတ်ကို ဒေါ်လာ 1 ဒေါ်လာ အထိထုတ်လုပ်ရန်လိုအပ်သည်ဆိုပါစို့။ အောက်ပါပုံသေနည်းကိုသုံးနိုင်သည်။

 <span><span><span class="hljs-variable">$randNum</span></span><span> = </span><span><span class="hljs-title function_ invoke__">mt_rand</span></span><span>(</span><span><span class="hljs-variable">$min</span></span><span>, </span><span><span class="hljs-variable">$max</span></span><span>);
</span></span>

ဤတွင် ဒေါ်လာမိနစ် သည်ကျပန်းနံပါတ်တစ်ခု၏အနိ မ့ ်အကန့်အသတ် သည် ကျပန်းနံပါတ်တစ်ခု၏အကန့်အသတ်ရှိသည်။

3.2 MT_GetrandMax မှအကွာအဝေးကိုတွက်ချက်ပါ။

ပြောင်းလွယ်ပြင်လွယ်ထိန်းချုပ်မှုကိုပိုမိုလိုအပ်သည့်အခါသို့မဟုတ်ကျပန်းနံပါတ်များကိုတွက်ချက်လိုပါက MT_GetrandMax () ကိုသုံးနိုင်သည်။ ဥပမာအားဖြင့်ကျွန်ုပ်တို့သည်ကျပန်းနံပါတ်ကို 0 မှ 500 အထိထုတ်လုပ်လိုပါက MT_rand ၏အများဆုံးတန်ဖိုးကိုပထမ ဦး ဆုံးဆုံးဖြတ်ရန်နှင့်၎င်းကိုစကေးသည်။

ကျွန်ုပ်တို့၏ရည်မှန်းချက်မှာ ဒေါ်လာမိနစ်မှ ဒေါ်လာ max မှကျပန်းအရေအတွက်ကိုထုတ်လုပ်ရန်မှာအောက်ပါကုဒ်များဖြင့်၎င်းကိုအကောင်အထည်ဖော်နိုင်သည်။

 <span><span><span class="hljs-variable">$min</span></span><span> = </span><span><span class="hljs-number">10</span></span><span>;
</span><span><span class="hljs-variable">$max</span></span><span> = </span><span><span class="hljs-number">50</span></span><span>;
</span><span><span class="hljs-variable">$range</span></span><span> = </span><span><span class="hljs-variable">$max</span></span><span> - </span><span><span class="hljs-variable">$min</span></span><span> + </span><span><span class="hljs-number">1</span></span><span>;
</span><span><span class="hljs-variable">$randomNumber</span></span><span> = </span><span><span class="hljs-title function_ invoke__">mt_rand</span></span><span>() % </span><span><span class="hljs-variable">$range</span></span><span> + </span><span><span class="hljs-variable">$min</span></span><span>;
</span></span>

4 ။ ဥပမာ - 100 မှ 500 အထိကျပန်းနံပါတ်များကိုထုတ်လုပ်ပါ

ကျွန်ုပ်တို့သည်ကျပန်းနံပါတ်ကို 100 မှ 500 ဖြင့်ကျပန်းအရေအတွက်ကိုထုတ်လုပ်လိုပါကကုဒ်သည်အောက်ပါအတိုင်းဖြစ်သည် -

 <span><span><span class="hljs-variable">$min</span></span><span> = </span><span><span class="hljs-number">100</span></span><span>;
</span><span><span class="hljs-variable">$max</span></span><span> = </span><span><span class="hljs-number">500</span></span><span>;
</span><span><span class="hljs-variable">$randNum</span></span><span> = </span><span><span class="hljs-title function_ invoke__">mt_rand</span></span><span>(</span><span><span class="hljs-variable">$min</span></span><span>, </span><span><span class="hljs-variable">$max</span></span><span>);  </span><span><span class="hljs-comment">// အသုံးပြု mt_rand() တိုက်ရိုက်အကွာအဝေးအတွက်ကျပန်းနံပါတ်များကိုထုတ်လုပ်ရန်</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$randNum</span></span><span>;  </span><span><span class="hljs-comment">// output ကို 100 ရောက်လာ 500 အကြားကျပန်းနံပါတ်</span></span><span>
</span></span>

5 ။ Custom Range ချုံ့ချဲ့ရန် Mt_etrandMax () ကို သုံးပါ

အကယ်. သင်သည်အဆိုးရှားဆုံးသော granular control မှတဆင့် Range Generation ကိုအောင်မြင်လိုပါက MT_GetrandMax () ၏ပြန်လာတန်ဖိုးကို သုံး. ထုတ်လုပ်သောကျပန်းနံပါတ်များကိုစကေးအထိသုံးနိုင်သည်။ ကျပန်းနံပါတ်ကို 0 မှ 100 အထိထုတ်လုပ်ချင်ပါတယ်ဆိုပါစို့။ အောက်ပါကုဒ်ကိုသုံးနိုင်သည်ဆိုပါစို့။

 <span><span><span class="hljs-variable">$min</span></span><span> = </span><span><span class="hljs-number">0</span></span><span>;
</span><span><span class="hljs-variable">$max</span></span><span> = </span><span><span class="hljs-number">100</span></span><span>;
</span><span><span class="hljs-variable">$randNum</span></span><span> = </span><span><span class="hljs-title function_ invoke__">mt_rand</span></span><span>() / </span><span><span class="hljs-title function_ invoke__">mt_getrandmax</span></span><span>() * (</span><span><span class="hljs-variable">$max</span></span><span> - </span><span><span class="hljs-variable">$min</span></span><span>) + </span><span><span class="hljs-variable">$min</span></span><span>;
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$randNum</span></span><span>;
</span></span>

ဤကုဒ်၏ယုတ္တိဗေဒသည် - MT_GetrandMax () အကြားကျပန်းနံပါတ်များကိုထုတ်လုပ်ရန်အတွက် MT_rand () ကို အသုံးပြု. ဒေါ်လာ 5 မိနစ်အထိ ဒေါ်လာ max သို့ပေးချေရန်။

6 ။ အကျဉ်းချုပ်

MT_RAND () နှင့် MT_GetrandMax () သည် PSP တွင်အလွန်အစွမ်းထက်သောကိရိယာများဖြစ်သည်။ လက်တွေ့ကျသောအပလီကေးရှင်းများတွင် MT_rand ကို အသုံးပြု. (ဒေါ်လာမိနစ်, ဒေါ်လာ max) ကို အသုံးပြုခြင်းသည်သတ်မှတ်ထားသောအကွာအဝေးတွင်တိုက်ရိုက်ကျပန်းနံပါတ်များကိုတိုက်ရိုက်ထုတ်လွှင့်နိုင်သည်

ဤဆောင်းပါးကိုမိတ်ဆက်ပေးခြင်းဖြင့် MT_rand () နှင့် MT_GetrandMax () function များကိုအသုံးပြုရမည်ကိုသင်မည်သို့အသုံးပြုရမည်ကိုကျွန်ုပ်ယုံကြည်နိုင်သည်ဟုကျွန်ုပ်ယုံကြည်သည်။