100 扇门

作者:TimToady

你有一排 100 扇门,它们最初都是关闭的。你经过这些门 100 次。第一次,你经过每一扇门并切换门的状态(如果门是关闭的,你就打开它;如果它是打开的,你就关闭它)。第二次你只访问每隔一扇门(门号 2、4、6,...)。第三次,每隔两扇门(门号 3、6、9,...),依此类推,直到你只访问第 100 扇门。

任务

最后一次经过后,这些门处于什么状态?哪些是打开的,哪些是关闭的?

更多

http://rosettacode.org/wiki/100_doors#Raku

使用的功能

X** - http://doc.perl6.org/language/operators#Cross_Operators

源代码: 100-doors.pl

use v6;

say "Door $_ is open" for 1..10 X** 2;