php中是否有一个函数或一组函数可以帮助我解决这个问题的第1行:
Noofdays factorial (for 5days) = 5+4+3+2+1
BasicValue = 200/ 15 =13.3
DailyDosage= Daynumber x basicValue
降低200毫克处方例的剂量:第1天 - 第67天,第2天 - 第53天,第3天 - 第40天,第4天 - 第27天,第5天 - 第13天
200
需要变量,NoofDays
需要变量。
答案 0 :(得分:0)
1 + 2 + ... + n =n⋅(n + 1)/ 2 ,如果那就是你要问的。
答案 1 :(得分:0)
阶乘将是5 * 4 * 3 * 2 * 1 = 120,而不是(总和)5 + 4 + 3 + 2 + 1 = 15.
$Noofdays = 5;
$totalAmount = 200;
$dayThreeAmount = calculateDosage(3, $Noofdays, $totalAmount);
function calculateDosage($day, $totalDays, $totalAmount)
{
return ($totalAmount / ($totalDays * ($totalDays+1) / 2)) * ($totalDays - $day + 1);
}
我假设总和是你想要的......
编辑:Doh,不要乘法......
答案 2 :(得分:0)
不确定你在这里遇到什么问题。但是下面似乎做了你想做的事。
$currentDay = 4;
$noOfDays = 5;
$milligram = 200;
$basicValue = $milligram / array_sum(range($noOfDays, 1,-1));
$dailyDosage = round($currentDay * $basicValue);