for (int i = 1; i < qid; i++)
{
points = points * factor;
}
如何将上述代码转换为数学公式,而不是在没有循环的单行中计算 谢谢。
答案 0 :(得分:2)
假设points
初始化为1
,它等同于points = factor^(qid-1)
,或者对于一般情况:points_after = points_before * factor^(qid-1)
循环重复qid - 1
次[i
获取值:1,2,...,qid-1
,值i==qid
不是多个],并且在每次迭代中获得多个{{1}每次points
,所以你将其加总factor
答案 1 :(得分:1)
基本上你的代码代表“points = points * factor qid - 1 ”。如何在代码中表示它取决于语言/平台。例如,您可以使用以下Java代码:
points *= Math.pow(factor, qid - 1);
的正确答案取决于points
和factor
的类型,这两种类型都没有告诉我们......
(也有可能你的意思是在0而不是1开始你的循环,在这种情况下也从上面的代码中删除- 1
...)
答案 2 :(得分:0)
指数。
points *= power( factor, qid - 1 )
应该工作。
答案 3 :(得分:0)
points * = Math.pow(factor,qid);