Loops/Nested: Difference between revisions

Content added Content deleted
(→‎Go: Added)
(+Icon+Unicon)
Line 363:
 
99 END</lang>
 
== Icon and Unicon ==
Icon and Unicon use 'break' to exit loops and execute an expression argument. To exit nested loops 'break' is repeated as the expression.
 
==={{header|Icon}}===
<lang Icon>procedure main()
 
every !(!(L := list(10)) := list(10)) := ?20 # setup a 2d array of random numbers up to 20
 
every i := 1 to *L do # using nested loops
every j := 1 to *L[i] do
if L[i,j] = 20 then
break break write("L[",i,",",j,"]=20")
 
end</lang>
 
 
<lang Icon>every x := L[i := 1 to *L,1 to *L[i]] do
if x = 20 then break write("L[",i,",",j,"]=20") # more succinctly
 
every if !!L = 20 then break write("Found !!L=20") # even more so (but looses the values of i and j</lang>
==={{header|Unicon}}===
The Icon solution works in Unicon.
 
=={{header|J}}==