【发布时间】:2018-02-11 23:36:54
【问题描述】:
如何生成类似的数字序列
1 2 4 8 11 12 14 18 ...
(每 4 个数字加 10)具有以下附加要求:
- 只使用一个循环
- 当序列中的值大于指定输入时,输出应该停止
示例
$input = 24;
1 2 4 8 11 12 14 18 21 22 24
$input = 20;
1 2 4 8 11 12 14 18
到目前为止,这是我尝试过的:
<?php
// sample user input
$input = 20;
$number = 1;
$counter = 0;
$array = array();
//conditions
while ($counter < 4) {
$counter++;
array_push($array, $number);
$number += $number;
}
//outputs
for ($x = 0; $x < count($array); $x++) {
echo $array[$x];
echo " ";
}
【问题讨论】:
-
那么您需要帮助的代码在哪里?
-
我拥有的是这样的: 这个输出应该是:1 2 4 8 11 12 14 18 因为用户输入是 20
-
这是一个很好的问题,它已经过编辑以反映我认为原始发帖人的问题。请考虑重新开放。
-
@localheinz 我认为您可能过于字面地解释了 OP 对“one for loop”的请求。 OP 的编码尝试(在发布后 9 分钟被评论)使用了两个单独的循环,我认为她很有可能只是想将该方法简化为一个循环。对于 OP 来说,限制所实现的循环类型可能并不重要。如果您因为这种字面解释而对任何其他答案投了反对票,我想礼貌地请您取消对唯一问题的任何答案投反对票。
-
@mickmackusa 也许原发帖人想澄清她想要什么?
标签: php arrays loops increment