# Enabling raw variable names boosts the performance massivly [DO NOT RUN WITHOUT enabling raw variable names] lang.rawVariableNames = 1 # Cache factorials from 0 to 11 &fact = fn.listOf(1) $n = 1 while($n < 12) { &fact += &fact[-|$n] * $n $n += 1 } $b = 9 while($b <= 12) { fn.printf(The factorions for base %d are:%n, $b) $i = 1 while($i < 1500000) { $sum = 0 $j = $i while($j > 0) { $d $= $j % $b $sum += &fact[$d] $j //= $b } if($sum == $i) { fn.print($i\s) } $i += 1 } fn.println(\n) $b += 1 }