RosettaCodeData/Task/Fortunate-numbers/Phix/fortunate-numbers.phix
2026-02-01 16:33:20 -08:00

18 lines
543 B
Text

with javascript_semantics
include mpfr.e
mpz primorial = mpz_init(1),
pj = mpz_init()
sequence fortunates = {}
for p=1 to 75 do
mpz_mul_si(primorial,primorial,get_prime(p))
integer j = 3
mpz_add_si(pj,primorial,3)
while not mpz_prime(pj) do
mpz_add_si(pj,pj,2)
j = j + 2
end while
fortunates &= j
end for
fortunates = unique(deep_copy(fortunates))[1..50]
fortunates = join_by(apply(true,sprintf,{{"%3d"},fortunates}),1,10)
printf(1,"The first 50 distinct fortunate numbers are:\n%s\n",{fortunates})