Loops/Wrong ranges: Difference between revisions
Content added Content deleted
ReeceGoding (talk | contribs) (Added R solution.) |
(Added Wren) |
||
Line 1,643: | Line 1,643: | ||
Start equal stop: zero increment ----------------- 2 2 2 2 2 2 2 2 2 2 |
Start equal stop: zero increment ----------------- 2 2 2 2 2 2 2 2 2 2 |
||
Start equal stop equal zero: zero increment ------ 0 0 0 0 0 0 0 0 0 0</pre> |
Start equal stop equal zero: zero increment ------ 0 0 0 0 0 0 0 0 0 0</pre> |
||
=={{header|Wren}}== |
|||
{{libheader|Wren-fmt}} |
|||
<lang ecmascript>import "/fmt" for Fmt |
|||
var loop = Fn.new { |start, stop, inc| |
|||
System.write("%(Fmt.v("dm", 3, [start, stop, inc], 0, " ", "[]")) -> ") |
|||
var count = 0 |
|||
var limit = 10 |
|||
var i = start |
|||
while (i <= stop) { |
|||
System.write("%(i) ") |
|||
count = count + 1 |
|||
if (count == limit) break |
|||
i = i + inc |
|||
} |
|||
System.print() |
|||
} |
|||
var tests = [ |
|||
[-2, 2, 1], [-2, 2, 0], [-2, 2, -1], [-2, 2, 10], [2, -2, 1], [2, 2, 1], [2, 2, -1], [2, 2, 0], [0, 0, 0] |
|||
] |
|||
for (test in tests) loop.call(test[0], test[1], test[2])</lang> |
|||
{{out}} |
|||
<pre> |
|||
[ -2 2 1] -> -2 -1 0 1 2 |
|||
[ -2 2 0] -> -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 |
|||
[ -2 2 -1] -> -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 |
|||
[ -2 2 10] -> -2 |
|||
[ 2 -2 1] -> |
|||
[ 2 2 1] -> 2 |
|||
[ 2 2 -1] -> 2 1 0 -1 -2 -3 -4 -5 -6 -7 |
|||
[ 2 2 0] -> 2 2 2 2 2 2 2 2 2 2 |
|||
[ 0 0 0] -> 0 0 0 0 0 0 0 0 0 0 |
|||
</pre> |
|||
=={{header|zkl}}== |
=={{header|zkl}}== |