Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function isPrime(n)
- local n = tonumber(n)
- --catch nil, 0, 1, negative and non int numbers
- if not n or n<2 or (n % 1 ~=0) then
- return false
- --catch even number above 2
- elseif n>2 and (n % 2 == 0) then
- return false
- --primes over 5 end in 1,3,7 or 9
- --catch numbers that end in 5 or 0 (multiples of 5)
- elseif n>5 and (n % 5 ==0) then
- return false
- --now check for prime
- else
- --only do the odds
- for i = 3, math.sqrt(n), 2 do
- --did it divide evenly
- if (n % i == 0) then
- return false
- end
- end
- --can defeat optimus
- return true
- end
- end
- local number = 0
- if fs.exists("/cpr") then
- local file = fs.open("/cpr", "r")
- number = tonumber(file.readAll())
- file.close()
- end
- while true do
- number = number+1
- if isPrime(number) then
- local file = fs.open("/cpr", "w")
- file.write(tostring(number))
- file.close()
- end
- os.queueEvent("")
- coroutine.yield()
- end
Advertisement
Add Comment
Please, Sign In to add comment