|
发表于 2013-12-26 11:03:51
|
显示全部楼层
[au3]Func _IsPrime($i_num)
If StringIsDigit($i_num) = 0 Then Return -1
If $i_num > 3 Then
If Mod($i_num, 2) = 0 Then Return 0
If Mod($i_num, 3) = 0 Then Return 0
EndIf
If $i_num = 1 Then Return 0
Dim $divisor, $increment, $maxdivisor
$divisor = 5
$increment = 2
$maxdivisor = Sqrt($i_num) + 1
Do
If Mod($i_num, $divisor) = 0 And $i_num <> $divisor Then Return 0
$divisor = $divisor + $increment
$increment = 6 - $increment
Until $divisor > $maxdivisor
Return 1
EndFunc ;==>_IsPrime
[/au3] |
|