问题是这样的
一个台球厅 结账时的算法
已知条件,开台时间例如9:16,分时段价格分为三个时段每小时价格
00:00-12:00 6元
12:00-17:00 8元
17:00-24:00 12元最小计费时间为10分钟 ,也就是说 12元一小时 每10分钟为1.2元 这10分钟不足5分钟 不计算费用
超过5分钟不到10分钟 按10分钟计费请给出一个php的算法
例如 开始时间 9:16 结束时间 第二天早上2点05结账
请给出一个算法
满意的加 200分大家踊跃参与。谢谢
一个台球厅 结账时的算法
已知条件,开台时间例如9:16,分时段价格分为三个时段每小时价格
00:00-12:00 6元
12:00-17:00 8元
17:00-24:00 12元最小计费时间为10分钟 ,也就是说 12元一小时 每10分钟为1.2元 这10分钟不足5分钟 不计算费用
超过5分钟不到10分钟 按10分钟计费请给出一个php的算法
例如 开始时间 9:16 结束时间 第二天早上2点05结账
请给出一个算法
满意的加 200分大家踊跃参与。谢谢
$h = date("H");
$i = date("i");
$value=0;
if(0<$h<12)
{
$value=$h*6
if($i>5)
{
$value+=($i/60)*6;
}
}
}
function check($start=null,$end=null,$newprice=null,$cost=0,$discount=1)
{
$discounts=$discount;
foreach($newprice as $sprice)
{
if($sprice['Timeprice']['member_discount']==0)
{
$discounts=1;
}
if($start>=$sprice['Timeprice']['from_time']&&$start<$sprice['Timeprice']['to_time'])
{
if($end>$start&&$end<$sprice['Timeprice']['to_time'])
{
$cost=$cost+($end-$start)/10*$sprice['Timeprice']['price']*$discounts;
}
else
{
$cost=$cost+($sprice['Timeprice']['to_time']-$start)/10*$sprice['Timeprice']['price']*$discount;
if($sprice['Timeprice']['to_time']==1440)
$sprice['Timeprice']['to_time']=0;
$cost=$this->check($sprice['Timeprice']['to_time'],$end,$newprice,$cost,$discount);
break;
}
}
}
return $cost;
}算法给出来了 大家看看吧 哎 怎么给分呢