Code archives/Algorithms/Prime Finder
This code has been declared by its author to be Public Domain code.
Download source code
| |||||
| The program first asks which number to start calculating to see if it is prime. It then continues with the next consecutive number. (It does this until you press the esc. key.) I don't suggest putting in a number that's over 5000. Have Fun! | |||||
;Prime Finder
;Created by: Bubble Boy
Graphics 800,600,16,2
SetBuffer BackBuffer()
AppTitle "Prime Finder"
number#=1
divisor#=1
quotient#=0
rounded=0
prime=0
go=0
Color 250,250,86
Print "PRIME FINDER"
number#=Input$("What number do you want me to start with? ")
While Not KeyHit(1)
Color 250,250,86
Print number#
Flip
While go = 0
quotient# = number# / divisor#
rounded=Int( quotient# )
Color 50,255,50
Print quotient# + " = " + number# + " / " + divisor#
If divisor# > 1
If quotient# = rounded
prime = 0
go = 1
Else
prime = 1
End If
End If
Delay 20
If KeyDown(1)
End
End If
If divisor# = number#
prime = 1
go = 1
End If
If number# = 1
prime = 0
go = 1
End If
divisor# = divisor# + 1
Wend
If prime = 1
Color 250,250,86
Print number#
Color 255,50,50
Print "PRIME"
Flip()
Else If prime = 0
Color 250,250,86
Print number#
Color 50,50,255
Print "NOT PRIME"
Flip()
End If
Print " "
Delay 2000
go=0
prime=0
number#=number# + 1
divisor#=1
quotient#=0
Wend
End |
Comments
| ||
;Prime Finder
;Created by: Bubble Boy
;edited by: erbbysam
SetBuffer BackBuffer()
AppTitle "Prime Finder"
fileout = WriteFile("primes.txt")
number#=1
divisor#=1
quotient#=0
rounded=0
prime=0
go=0
Color 250,250,86
Print "PRIME FINDER"
number#=0
While Not KeyHit(1)
While go = 0
quotient# = number# / divisor#
rounded=Int( quotient# )
If divisor# > 1
If quotient# = rounded
prime = 0
go = 1
Else
prime = 1
End If
End If
If divisor# = number#
prime = 1
go = 1
End If
If number# = 1
prime = 0
go = 1
End If
divisor# = divisor# + 1
Wend
If prime = 1
WriteLine( fileout, number# )
End If
go=0
prime=0
number#=number# + 1
divisor#=1
quotient#=0
Wend
CloseFile( fileout )
End
this uses the code above to output every prime number that it can find starting at 0 to a file. After about a minute it will find the first 10,000 primes (or every prime between 2 and 100000 :D) |
| ||
| Zzzz I've had MUCH better code for finding prime numbers for years. I can calculate the first ten million prime numbers in half an hour using my code. Tip #1: A number is prime if it is not divisible by a prime number less than or equal to it's square root. Tip #2: If number Mod divisor=0 then prime=False I will now post my code to the archives. Calculating Primes And here is code that trumps mine FAST Sieve of Eratosthenes |
Code Archives Forum