3 # This file is part of NIT ( http://www.nitlanguage.org ).
4 # This program is public domain
7 # SEE: <http://rosettacode.org/wiki/100_doors>
9 # A door with two states: open or closed
14 # Toggle bool value of open
15 fun toggle
do open
= not open
17 redef fun to_s
: String
19 return if open
then "Open" else "Closed"
24 if args
.length
> 0 then n
= args
.first
.to_i
26 var doors
= new Array[Door]
27 for door
in [0..n
[ do doors
.add
(new Door)
29 for visit
in [0..n
[ do
36 for i
in [0..n
[ do print
"Door {i+1}: {doors[i]}"