- @echo off
- setlocal EnableExtensions
- setlocal EnableDelayedExpansion
-
- REM 时间:20:36 2011-01-12
- REM 功能:求1000以内的质数.效率一般。
-
- set /a n=1
- set /a m=1
- set /a p%n%=2
- echo 2
- set "flag="
- for /L %%a in (3,2,1000) do (
- call :PRIME %%a !m! flag
- if "!flag!"=="TRUE" (
- echo %%a
- set /a n+=1
- set /a temp=%%a*%%a
- if !temp! lss 1000 (
- set /a m+=1
- set p!m!=%%a
- )
- )
- )
- echo 1000以内共有%n%个质数
- pause
- goto :EOF
-
- :PRIME
- for /l %%a in (1,1,!m!) do (
- set /a yu=%1%%!p%%a!
- if "!yu!"=="0" (
- set "%3=FALSE"
- goto :EOF
- )
- )
- set "%3=TRUE"
复制代码
|