Next special primes: Difference between revisions
Content added Content deleted
Alextretyak (talk | contribs) (Added 11l) |
(Next special primes in various BASIC dialents) |
||
Line 228: | Line 228: | ||
Next special primes 1-1050: 26 |
Next special primes 1-1050: 26 |
||
</pre> |
</pre> |
||
=={{header|BASIC}}== |
|||
==={{header|BASIC256}}=== |
|||
<lang BASIC256>function isPrime(v) |
|||
if v < 2 then return False |
|||
if v mod 2 = 0 then return v = 2 |
|||
if v mod 3 = 0 then return v = 3 |
|||
d = 5 |
|||
while d * d <= v |
|||
if v mod d = 0 then return False else d += 2 |
|||
end while |
|||
return True |
|||
end function |
|||
p = 3 |
|||
i = 2 |
|||
print "2 3 "; #special case |
|||
do |
|||
if isPrime(p + i) then |
|||
p += i |
|||
print p; " "; |
|||
end if |
|||
i += 2 |
|||
until p + i >= 1050 |
|||
end</lang> |
|||
==={{header|PureBasic}}=== |
|||
<lang PureBasic>Procedure isPrime(v.i) |
|||
If v <= 1 : ProcedureReturn #False |
|||
ElseIf v < 4 : ProcedureReturn #True |
|||
ElseIf v % 2 = 0 : ProcedureReturn #False |
|||
ElseIf v < 9 : ProcedureReturn #True |
|||
ElseIf v % 3 = 0 : ProcedureReturn #False |
|||
Else |
|||
Protected r = Round(Sqr(v), #PB_Round_Down) |
|||
Protected f = 5 |
|||
While f <= r |
|||
If v % f = 0 Or v % (f + 2) = 0 |
|||
ProcedureReturn #False |
|||
EndIf |
|||
f + 6 |
|||
Wend |
|||
EndIf |
|||
ProcedureReturn #True |
|||
EndProcedure |
|||
OpenConsole() |
|||
p.i = 3 |
|||
i.i = 2 |
|||
Print("2 3 ") ;special Case |
|||
Repeat |
|||
If isPrime(p + i) |
|||
p + i |
|||
Print(Str(p) + " ") |
|||
EndIf |
|||
i + 2 |
|||
Until p + i >= 1050 |
|||
Input() |
|||
CloseConsole()</lang> |
|||
==={{header|Yabasic}}=== |
|||
<lang yabasic>sub isPrime(v) |
|||
if v < 2 then return False : fi |
|||
if mod(v, 2) = 0 then return v = 2 : fi |
|||
if mod(v, 3) = 0 then return v = 3 : fi |
|||
d = 5 |
|||
while d * d <= v |
|||
if mod(v, d) = 0 then return False else d = d + 2 : fi |
|||
wend |
|||
return True |
|||
end sub |
|||
p = 3 |
|||
i = 2 |
|||
print "2 3 "; //special case |
|||
repeat |
|||
if isPrime(p + i) = 1 then |
|||
p = p + i |
|||
print p; |
|||
endif |
|||
i = i + 2 |
|||
until p + i >= 1050 |
|||
end</lang> |
|||
=={{header|C}}== |
=={{header|C}}== |