Primality by Wilson's theorem: Difference between revisions

Primality by Wilson's theorem in various BASIC dialents
m (→‎{{header|Python}}: fix output)
(Primality by Wilson's theorem in various BASIC dialents)
Line 353:
Wilson primality test range 2-200: 46
</pre>
 
 
=={{header|BASIC}}==
==={{header|BASIC256}}===
{{trans|FreeBASIC}}
<lang freebasic>function wilson_prime(n)
fct = 1
for i = 2 to n-1
fct = (fct * i) mod n
next i
if fct = n-1 then return True else return False
end function
 
print "Primes below 100" & Chr(10)
for i = 2 to 100
if wilson_prime(i) then print i; " ";
next i
end</lang>
 
==={{header|QBasic}}===
{{works with|QBasic|1.1}}
{{works with|QuickBasic|4.5}}
{{works with|Run BASIC}}
{{trans|FreeBASIC}}
<lang QBasic>FUNCTION wilsonprime(n)
fct = 1
FOR i = 2 TO n - 1
fct = (fct * i) MOD n
NEXT i
IF fct = n - 1 THEN wilsonprime = 1 ELSE wilsonprime = 0
END FUNCTION
 
PRINT "Primes below 100"; CHR$(10)
FOR i = 2 TO 100
IF wilsonprime(i) THEN PRINT i; " ";
NEXT i</lang>
 
==={{header|PureBasic}}===
{{trans|FreeBASIC}}
<lang PureBasic>Procedure wilson_prime(n.i)
fct.i = 1
For i.i = 2 To n-1
fct = (fct * i) % n
Next i
If fct = n-1
ProcedureReturn #True
Else
ProcedureReturn #False
EndIf
EndProcedure
 
OpenConsole()
PrintN("Primes below 100")
For i = 2 To 100
If wilson_prime(i)
Print(Str(i) + #TAB$)
EndIf
Next i
PrintN("")
Input()
CloseConsole()</lang>
 
==={{header|Run BASIC}}===
{{works with|QBasic}}
{{trans|FreeBASIC}}
<lang runbasic>print "Primes below 100"
for i = 2 to 100
if wilsonprime(i) = 1 then print i; " ";
next i
end
 
function wilsonprime(n)
fct = 1
for i = 2 to n-1
fct = (fct * i) mod n
next i
if fct = n-1 then wilsonprime = 1 else wilsonprime = 0
end function</lang>
 
==={{header|True BASIC}}===
<lang qbasic>FUNCTION wilsonprime(n)
LET fct = 1
FOR i = 2 TO n - 1
LET fct = MOD((fct * i), n)
NEXT i
IF fct = n - 1 THEN LET wilsonprime = 1 ELSE LET wilsonprime = 0
END FUNCTION
 
PRINT "Primes below 100"; CHR$(10)
FOR i = 2 TO 100
IF wilsonprime(i) = 1 THEN PRINT i; " ";
NEXT i
END</lang>
 
==={{header|Yabasic}}===
{{trans|FreeBASIC}}
<lang freebasic>print "Primes below 100\n"
for i = 2 to 100
if wilson_prime(i) print i, " ";
next i
 
sub wilson_prime(n)
local i, fct
fct = 1
for i = 2 to n-1
fct = mod((fct * i), n)
next i
if fct = n-1 then return True else return False : fi
end sub</lang>
 
 
=={{header|C}}==
2,148

edits