我想构建一个带有循环的简单脚本,该循环执行一些累积计算。显然,我做错了什么,但我似乎无法弄清楚如何解决我的问题。有什么提示吗?
$a = 100; // money
$b = 0.03; // interestrate
$c = $a * $b; //interest
$sum = $a + $c;
for ($i = 1; $i <= 10; $i ++) {
echo "Total after $i year(s): $sum += $c";
echo "</br>\n";
}
offtopic:不知道为什么我不允许使用任何更明显的问题标题,例如&#34; PHP累积计算循环&#34;
答案 0 :(得分:3)
您正在打印:(加号和等号)。数学问题需要在引号之外,因为它们被评估为字符串。
Total after 1 year(s): 40 += 30
等。
使用时
echo "Total after $i year(s): $sum += $c";
将其更改为:
echo "Total after $i year(s): " . $sum += $c;
输出现在将为您提供:
1年后的总数:70
2年后总计:100
3年后总计:130
4年后总计:160
5年后总计:190
6年后总计:220
7年后总计:250
8年后总计:280
9年后总计:310
10年后总计:340
而不是:
1年后总计:40 + = 30
2年后总计:40 + = 30
3年后总计:40 + = 30
4年后总计:40 + = 30
5年后总计:40 + = 30
6年后总计:40 + = 30
7年后总计:40 + = 30
8年后总计:40 + = 30
9年后总计:40 + = 30
10年后总计:40 + = 30
专业提示旁注:
将</br>
更改为<br/>
--- </br>
不是有效标记。
答案 1 :(得分:0)
更改循环
for ($i = 1; $i <= 10; $i ++) {
$sum += $c;
echo "Total after $i year(s): $sum";
echo "</br>\n";
}
答案 2 :(得分:0)
+=
未得到承认。改为:
$a = 10; // money
$b = 3; // interestrate
$c = $a * $b; //interest
$sum = $a + $c;
for ($i = 1; $i <= 10; $i ++) {
echo "Total after $i year(s): ".$sum += $c;
echo "<br/>\n";
}
答案 3 :(得分:0)
我认为你想计算复合兴趣,所以你的代码中存在逻辑错误和语法错误...请尝试代码..
$a = 10000; // money
$b = 3; // interestrate, generally its percentage
for ($i = 1; $i <= 10; $i ++) {
$c = $a * $b/100; //interest
echo "Total after $i year(s): ". $a += $c;
echo "</br>\n";
}