ccm/tests/loop.ccm

108 lines
1.0 KiB
Plaintext
Raw Permalink Normal View History

2024-03-22 23:48:16 +00:00
# WHILE LOOP
# ==========
2024-03-22 22:01:20 +00:00
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)
2024-03-22 23:48:16 +00:00
# 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)