108 lines
1.0 KiB
Plaintext
108 lines
1.0 KiB
Plaintext
# WHILE LOOP
|
|
# ==========
|
|
var a = 0
|
|
|
|
while a < 100
|
|
a = a + 1
|
|
end
|
|
|
|
assert_eq (100, a)
|
|
|
|
var b = 0
|
|
var c = 0
|
|
var d = 0
|
|
|
|
while b < 6
|
|
c = 0
|
|
while c < 7
|
|
d = d + 1
|
|
c = c + 1
|
|
end
|
|
|
|
b = b + 1
|
|
end
|
|
|
|
assert_eq (d, 42)
|
|
|
|
var e = 0
|
|
var f = 0
|
|
|
|
while e < 128
|
|
e = e + 1
|
|
if e % 2 == 0
|
|
continue
|
|
end
|
|
|
|
f = f + 1
|
|
end
|
|
|
|
assert_eq (64, f)
|
|
|
|
var g = 0
|
|
var h = 0
|
|
var i = 0
|
|
|
|
while g < 100
|
|
h = 0
|
|
|
|
if g >= 7
|
|
break
|
|
end
|
|
|
|
while h < 100
|
|
if h >= 6
|
|
break
|
|
end
|
|
|
|
h = h + 1
|
|
if h % 2 == 0
|
|
continue
|
|
end
|
|
i = i + 1
|
|
end
|
|
|
|
g = g + 1
|
|
end
|
|
|
|
assert_eq (21, i)
|
|
|
|
# FOR LOOP
|
|
# ========
|
|
var j = 0
|
|
for k in [1, 2, 3]
|
|
j = j + k
|
|
end
|
|
|
|
assert_eq (6, j)
|
|
|
|
var l = 0
|
|
var m = [7, 3, 1]
|
|
|
|
for n in m
|
|
l = l + n
|
|
end
|
|
|
|
assert_eq (11, l)
|
|
|
|
var o = 0
|
|
for p in [1, 2, 3, 4, 5, 6, 7]
|
|
if p > 5
|
|
break
|
|
end
|
|
|
|
if p % 2 == 0
|
|
continue
|
|
end
|
|
|
|
o = o + p
|
|
end
|
|
|
|
assert_eq (9, o)
|
|
|
|
var q = ""
|
|
for r in "hello"
|
|
q = r + q
|
|
end
|
|
|
|
assert_eq ("olleh", q)
|