Pernicious numbers: Difference between revisions

→‎{{header|Sidef}}: simpler and better code
m (→‎{{header|Factor}}: show all vocabularies)
(→‎{{header|Sidef}}: simpler and better code)
Line 2,360:
 
=={{header|Sidef}}==
{{trans|Perl}}
<lang ruby>func is_pernicious(n) {
n.sumdigits(2).is_prime
var c = 2693408940; # primes < 32 as set bits
while (n > 0) { c >>= 1; n &= (n - 1) }
c & 1;
}
 
say is_pernicious.first(25).join(' ')
var (i, *p) = 0;
say is_pernicious.grep(888_888_877..888_888_888).join(' ')</lang>
while (p.len < 25) {
p << i if is_pernicious(i);
++i;
}
 
say p.join(' ');
 
var (i, *p) = 888888877;
while (i < 888888888) {
p << i if is_pernicious(i);
++i;
}
 
say p.join(' ');</lang>
 
{{out}}
2,747

edits