Solution to problem 27 in Julia

This commit is contained in:
David Doblas Jiménez 2021-08-19 20:38:56 +02:00
parent a379dbe4b2
commit cfcbd05559

61
src/Julia/Problem027.jl Normal file
View File

@ -0,0 +1,61 @@
#=
Created on 19 Aug 2021
@author: David Doblas Jiménez
@email: daviddoji@pm.me
Solution for Problem 27 of Project Euler
https://projecteuler.net/problem=27
=#
using Primes
function Problem27()
#=
Euler discovered the remarkable quadratic formula:
n^2 + n + 41
It turns out that the formula will produce 40 primes for the consecutive
integer values 0n≤39. However, when n=40, 40^2+40+41=40(40+1)+41 is
divisible by 41, and certainly when n=41,41^2+41+41 is clearly divisible
by 41.
The incredible formula n^279n+1601 was discovered, which produces 80
primes for the consecutive values 0n≤79. The product of the coefficients,
79 and 1601, is 126479.
Considering quadratics of the form:
n^2 + an + b
where |a|<1000, |b|1000 and |n| is the modulus/absolute value of n
e.g. |11|=11 and |4|=4
Find the product of the coefficients, a and b, for the quadratic expression
that produces the maximum number of primes for consecutive values of n,
starting with n=0.
=#
LIMIT = 1000
consecutive_values = 0
c = 0
for a in -999:LIMIT-1
for b in 0:LIMIT
n = 0
while isprime((n^2) + (a * n) + b)
n += 1
if n > consecutive_values
consecutive_values = n
c = a * b
end
end
end
end
return c
end
println("Time to evaluate Problem 27:")
@time Problem27()
println("")
println("Result for Problem 27: ", Problem27())