首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >编写数学公式的适当方法

编写数学公式的适当方法
EN

Stack Overflow用户
提问于 2014-12-03 15:44:16
回答 4查看 60关注 0票数 0

我有一个公式,可以计算出一个投注累加器。

公式是:

桩x(分数比数+1)x(分数比数+1)等

我希望编写一个PHP函数,它循环遍历赔率,然后返回值。

我有一个数组如下(包含小数概率)..。

代码语言:javascript
复制
$odds = array(
'8/15',
'11/2',
'13/2',
'7/2'
);

一些PHP代码示例,它展示了我如何做到这一点(没有函数).

代码语言:javascript
复制
$result = 10 * (8/15 + 1) * (11/2 + 1) * (13/2 + 1) * (7/2 + 1);
echo number_format($result,2); // 3,363.75

目前我的赌注是“10”。

我需要做的是循环遍历赔率数组,并将它们乘以括号,然后以桩乘开始,因此这是测试用例10。

有人能提出写这个的方法吗?当我尝试写*我总是得到PHP错误。

如果这个话题不适合社区,请说明,我会删除。

谢谢

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-12-03 15:55:57

像这样的东西应该能起作用

代码语言:javascript
复制
function compute ($stake, $values) {
    $result = $stake;

    foreach ($values as $val)
    {
        $parts = explode('/', $val);
        $result *= ($parts[0] / $parts[1] + 1);
    }

    return $result;
}


$stake = 10;
$odds = array (
    '8/15',
    '11/2',
    '13/2',
    '7/2'
);
$result = compute($stake, $odds);
var_dump($result);

下面是一个可以使用的演示:http://3v4l.org/RNAGH

票数 3
EN

Stack Overflow用户

发布于 2014-12-03 15:53:53

我觉得PHP的类型杂耍会让你的行为变得难以预测,所以用best拆分分数字符串是最好的方法

代码语言:javascript
复制
function calculate($stake, $odds)
{
    $res = $stake;
    foreach ($odds as $odd) {
        $split = explode('/', $odd);
        $res *= ($split[0] / $split[1]) + 1;
    }
    return $res;
}
echo calculate(10, $odds);
票数 2
EN

Stack Overflow用户

发布于 2014-12-03 15:53:29

你是说这样

代码语言:javascript
复制
 $stake = 10;
 $odds = array(
 '8/15',
 '11/2',
 '13/2',
 '7/2'
 );

 function formula($stake, array $odds){
    $result = $stake;

    foreach ($odds as $odd) {
        $digit = explode('/',$odd);
        $result *=  ($digit[0]/$digit[1] + 1);
    }
    return $result;
 }

 echo formula($stake, $odds);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27275815

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档