လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP မှဥပမာ PHP မှအကောင်အထည်ဖော်သည့်အနီစာအိတ်ငွေပမာဏသည် AlgorithM | ကျပန်းအနီရောင်စာအိတ်ပမာဏခွဲဝေနည်းလမ်း

PHP မှဥပမာ PHP မှအကောင်အထည်ဖော်သည့်အနီစာအိတ်ငွေပမာဏသည် AlgorithM | ကျပန်းအနီရောင်စာအိတ်ပမာဏခွဲဝေနည်းလမ်း

gitbox 2025-07-27

Algorithm ဥပမာ

WeChat Red စာအိတ်များအနက်ငွေပမာဏသည်ဘုံပြ problem နာဖြစ်သည်။ ဤဆောင်းပါးသည် Php Language မှတစ်ဆင့် Red Mippelief ဥပမာအားဖြင့် PHP ဘာသာစကားဖြင့်ခွဲထွက်သည့်အနီရောင်စာအိတ်ဥပမာအားအကောင်အထည်ဖော်လိမ့်မည်။

function တစ်ခုဖန်တီးပါ

ပထမ ဦး စွာကျွန်ုပ်တို့သည် Red စာအိတ်ပမာဏကိုခွဲရန် function တစ်ခုကိုဖန်တီးရန်လိုအပ်သည်။ function ကို၏ parametersters သည် Red စာအိတ်ပမာဏနှင့်အနီရောင်စာအိတ်အရေအတွက်ဖြစ်သည်။

 
function divideAmount($amount, $num) {
    // TODO: algorithm splitting အနီရောင်စာအိတ်ပမာဏကိုအကောင်အထည်ဖော်ပါ
}

algorithm စိတ်ကူးများ

ထို့နောက်အနီရောင်စာအိတ်ပမာဏကိုခွဲဝေရန်အတွက် AlgorithMIC အတွေးအခေါ်များကိုခွဲခြမ်းစိတ်ဖြာကြပါစို့။

အနီရောင်စာအိတ်ပမာဏသည်ယွမ်နှင့်အနီရောင်စာအိတ်အရေအတွက်မှာအမြင့်ဆုံးပမာဏနှင့်အမြင့်ဆုံးပမာဏသည် A / N Yuan ဖြစ်ပြီးအနည်းဆုံးငွေပမာဏသည် 0.01 ယွမ်ဖြစ်သည်။

ကျနော်တို့ကပထမ ဦး ဆုံးကျပန်း red စာအိတ်၏ကန ဦး ပမာဏအဖြစ် n-1 ကျပန်းနံပါတ်များကိုထုတ်ပေးနိုင်ပါတယ်။ ထို့နောက်ကျန်ရှိသောငွေပမာဏကိုနောက်ဆုံးအနီရောင်စာအိတ်သို့ခွဲဝေချထားပါ။

algorithm အကောင်အထည်ဖော်မှု

ယခုကျွန်ုပ်တို့သည်အနီရောင်စာအိတ်ပမာဏ၏ algorithm ကိုအကောင်အထည်ဖော်ရန်စတင်သည်။

 
function divideAmount($amount, $num) {
    $remainAmount = $amount; // ကျန်ရှိသောငွေပမာဏ
    $remainNum = $num; // ကျန်ရှိသောအနီရောင်စာအိတ်အရေအတွက်
    $result = array(); // ရလဒ်များ
    for ($i = 0; $i < $num - 1; $i++) {
        $maxAmount = $remainAmount / $remainNum * 2; // အများဆုံးငွေပမာဏ
        $randAmount = mt_rand(1, $maxAmount * 100) / 100; // ကျပန်းထုတ်လုပ်လိုက်တဲ့ပမာဏ,ဒ decimal မသောနေရာများကိုသိမ်းထားပါ
        $remainAmount -= $randAmount; // 更新ကျန်ရှိသောငွေပမာဏ
        $remainNum--; // 更新ကျန်ရှိသောအနီရောင်စာအိတ်အရေအတွက်
        $result[] = $randAmount; // ရလဒ် array ပမာဏထည့်ပါ
    }
    $result[] = $remainAmount; // 将ကျန်ရှိသောငွေပမာဏ添加到结果数组
    return $result;
}

algorithm ရှင်းပြချက်

ပထမ ဦး စွာကျွန်ုပ်တို့သည် variable နှစ်ခုကိုသတ်မှတ်ရန်လိုအပ်ပြီး $ ကျန်ရှိသောငွေပမာဏသည်ကျန်ရှိသောငွေပမာဏကိုကိုယ်စားပြုပြီးဒေါ်လာတန်သည်ကျန်ရှိသောအနီရောင်စာအိတ်အရေအတွက်ကိုကိုယ်စားပြုသည်။

ကွင်းဆက်တွင်ကျွန်ုပ်တို့သည်ပထမ ဦး ဆုံးငွေပမာဏကိုပထမ ဦး ဆုံးတွက်ချက်သည်။ ထို့နောက် 1 နှင့် $ Maxamount အကြားငွေပမာဏကိုရရှိသောငွေပမာဏကိုထုတ်လုပ်ရန် MT_rand function ကိုအသုံးပြုပါ။ ဆက်လက်. ကျန်ရှိသောငွေပမာဏနှင့်ကျန်ရှိသောအနီရောင်စာအိတ်နံပါတ်ကိုကျွန်ုပ်တို့ update လုပ်ပြီးနောက် RandAnner ကို array သို့ထည့်ပါ။

နောက်ဆုံးအနေဖြင့်ကျန်ရှိသောငွေပမာဏကိုရလဒ်ခင်းကျင်းစေရန်နှင့်ရလဒ်ခင်းကျင်းမှုကိုပြန်ပေးပါ။

နမူနာပြေး

ဒီ algorithm ရဲ့စစ်ဆင်ရေးအကျိုးသက်ရောက်မှုကိုစမ်းသပ်ကြပါစို့။

 
$amount = 10; // Red စာအိတ်ပမာဏ
$num = 5; // အနီရောင်စာအိတ်အရေအတွက်
$result = divideAmount($amount, $num);
foreach ($result as $amount) {
    echo $amount . "ယွမ်\n";
}

အထက်ပါကုဒ်ကိုဖွင့ ်. output ရလဒ်သည်အောက်ပါအတိုင်းဖြစ်သည် -

 
1.07ယွမ်
2.48ယွမ်
2.28ယွမ်
2.42ယွမ်
1.75ယွမ်

အနီရောင်စာအိတ်ပမာဏကိုအောင်မြင်စွာပမာဏ 5 ခုသို့အောင်မြင်စွာခွဲထားကြောင်းတွေ့မြင်နိုင်သည်။

အကျဉ်းချုပ်

ဤဆောင်းပါးသည် PHP ဘာသာစကားဖြင့်ခွဲထွက်သည့် WeCorithM ၏ algorithm ဥပမာကိုအကောင်အထည်ဖော်သည်။

algorithm အတွေးအခေါ်များနှင့်အကောင်အထည်ဖော်မှုအသေးစိတ်ကိုလေ့လာခြင်းအားဖြင့်အနီရောင်စာအိတ်ပမာဏခွဲစိတ်မှုဖြစ်စဉ်ကိုကျွန်ုပ်တို့ရှင်းရှင်းလင်းလင်းနားလည်နိုင်သည်။

အကယ်. သင်သည် WeChat Red စာအိတ်နှင့်သက်ဆိုင်သောလုပ်ဆောင်မှုများကိုဖွံ့ဖြိုးဆဲဆိုပါကဤဆောင်းပါးတွင် algorithm ဥပမာများမှသင်သင်ယူနိုင်မည်ဟုကျွန်ုပ်မျှော်လင့်ပါသည်။