နိဒါန်း
ကွန်ပျူတာသိပ္ပံနှင့်သင်္ချာများတွင်အခြေခံနှင့်သာမန်သင်္ချာဆိုင်ရာစစ်ဆင်ရေးတစ်ခုဖြစ်ပြီး combinatorial သင်္ချာနှင့်ဖြစ်နိုင်ခြေသီအိုရီများကဲ့သို့သောလယ်ကွင်းများတွင်အသုံးပြုလေ့ရှိသည်။ သို့သော်ကြီးမားသောနံပါတ်များကိုတွက်ချက်ရာတွင်မှတ်ဥာဏ်လျှံခြင်းသို့မဟုတ်အလွန်အကျွံတွက်ချက်မှုအချိန်ကဲ့သို့သောပြ problems နာများကိုသင်ကြုံတွေ့ရနိုင်သည်။ ဤပြ problems နာများကိုဖြေရှင်းရန် PHP ၏ GMP extension ၏အကူအညီဖြင့်ကြီးမားသောအရေအတွက်ကိုလုပ်ဆောင်နိုင်ပြီး Modulus လုပ်ငန်းများကိုကွန်ပျူတာနှင့်မှတ်ဉာဏ်သုံးစွဲမှုကိုလျှော့ချရန်အသုံးပြုနိုင်သည်။ PHP နှင့် GMP စာကြည့်တိုက်များကို အသုံးပြု. ကြီးမားသောနံပါတ်များအတွက် Factorial Modulus M မီတာကိုမည်သို့တွက်ချက်ရမည်ကိုဤသင်ခန်းစာသည်သင့်အားလမ်းညွှန်လိမ့်မည်။
GMP တိုးချဲ့မှုကိုနိဒါန်း
GMP (GNU Multiple Precision Multiplician Multiplician Multiplication Library) သည်ကြီးမားသောကိန်း၏သင်္ချာဆိုင်ရာစစ်ဆင်ရေးများအတွက်ဒီဇိုင်းပြုလုပ်ထားသော Open Source High-Rocial Library ဖြစ်သည်။ ၎င်းကိုအသုံးမပြုခင်သင်၏ PHP ပတ်ဝန်းကျင် GMP extension ကို install လုပ်ထားကြောင်းအတည်ပြုရန်လိုအပ်သည်။ `phpinfo ()` function ကိုမှတစ်ဆင့် extension ကို install ရှိမရှိစစ်ဆေးနိုင်သည်။
ကြီးမားသောမြေတွက်သောအခြေခံအတွေးအခေါ်များ
အဆောက်အအုံကြီးတစ်ခုကိုတွက်ချက်ရန်အခြေခံနည်းလမ်းကိုကွင်းဆက်များမြှောက်ခြင်းဖြင့်ရရှိနိုင်ပါသည်။ PHP နှင့် GMP သည်ကြီးမားသောကိန်းဂဏန်းများသိုလှောင်မှုနှင့်တွက်ချက်မှုကိုအထောက်အကူပြုသည်။ ထို့ကြောင့်ဤကြီးမားသောနံပါတ်များကိုကိုင်တွယ်ရန် GMP စာကြည့်တိုက်ကိုတိုက်ရိုက်သုံးနိုင်သည်။ တွက်ချက်မှုစိတ်ကူးသည်အောက်ပါအတိုင်းဖြစ်သည် -
ကန ဦး ရလဒ် variable ကို 1 ။
1 မှ N မှ loop, ရလဒ်ကိုတစ်ခုချင်းစီကိုအချိန်နှင့်မြှောက်ပါ။
နောက်ဆုံးရလဒ်မှာကြီးမားသောအရေအတွက်၏ factorial modulus မီတာဖြစ်ပါတယ်။
Code Page
အောက်ဖော်ပြပါနမူနာကုဒ်သည် PHP နှင့် GMP စာကြည့်တိုက်များ အသုံးပြု. ကြီးမားသောအချက်များ modulus m မီတာကိုမည်သို့တွက်ချက်ရမည်ကိုပြသသည်။
<?php
// 定义大数N和模数M
$N = "1000" 4 ;
$M = "100000007" ;
// 使用GMP库初始化结果变量为1
$result = gmp_init(1);
// 循环计算乘法并取模
for ( $i = 1; $i <= $N ; $i ++) {
// 将结果与当前数字相乘
$result = gmp_mul( $result , gmp_init( $i ));
// 取结果的模M
$result = gmp_mod( $result , gmp_init( $M ));
}
// 打印计算结果
echo gmp_strval( $result );
?>
အကျဉ်းချုပ်
PHP နှင့် GMP စာကြည့်တိုက်များမှတဆင့်ကျွန်ုပ်တို့သည်ကိန်းဂဏန်းအမြောက်အမြား၏ factorial modulus ကိုထိရောက်စွာတွက်ချက်နိုင်သည်။ ကြီးမားသောနံပါတ်များကိုကိုင်တွယ်သောအခါမှတ်ဉာဏ်အသုံးပြုမှုနှင့်ကွန်ပျူတာထိရောက်မှုကိုအထူးဂရုပြုရန်လိုအပ်သည်။ GMP စာကြည့်တိုက်သည်မြေပြင်စစ်ဆင်ရေးများကိုအထောက်အကူပြုရုံသာမကအခြားလက်တွေ့လုပ်ဆောင်မှုများကိုပြုလုပ်နိုင်သည့်အခြားလက်တွေ့လုပ်ဆောင်ချက်များနှင့်နှိုင်းယှဉ်ခြင်းနှင့်နှိုင်းယှဉ်ခြင်းနှင့်နှိုင်းယှဉ်နိုင်သည်။ ဤကျွမ်းကျင်မှုများကိုကျွမ်းကျင်ခြင်းသည်သင့်အားကြီးမားသောနံပါတ်များတွက်ချက်မှုပြ problems နာများနှင့်ပိုမိုကောင်းမွန်သောဖြေရှင်းနိုင်ရန်ကူညီနိုင်သည်။