[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
  1. @ECHO OFF
  2. SETLOCAL ENABLEDELAYEDEXPANSION
  3. ::生成素数相关变量,适用于数量较少的情况;数量多时可以生成临时文件
  4. SET _2=#
  5. FOR /L %%N IN (3,2,100)DO (
  6.  SET/aMAX=%%N-2
  7.  SET MFLAG=
  8.  FOR /L %%S IN (3,2,!MAX!)DO (
  9.   SET/aMOD=%%N%%%%S
  10.   IF !MOD!==0 SET MFLAG=1
  11.  )
  12.  IF NOT DEFINED MFLAG SET _%%N=#
  13. )
  14. ::显示所有素数
  15. FOR /L %%N IN (2,1,100)DO IF DEFINED _%%N ECHO,%%N
  16. ECHO,
  17. ECHO,输出满足条件的素数:
  18. ::判断
  19. FOR /L %%N IN (2,1,100)DO (
  20.  SET/a@4=%%N+4,@A4=@4%%5,@A2=%%N+2,@B4=%%N-4
  21.  FOR /F "TOKENS=1,2" %%F IN ("!@A2! !@B4!")DO (
  22.   IF !_%%N!_!@A4!_!_%%F!_!_%%G!==#_0_#_# ECHO,%%N
  23.  )
  24. )
  25. PAUSE
复制代码
1

评分人数

如无特别说明,代码测试环境均为 XP SP3

TOP

21 和 51 都能被 3 整除,不是素数
如无特别说明,代码测试环境均为 XP SP3

TOP

回复 6# terse
那就是我理解错了。

我以为 i 也在数组 a 中。
IF !_%%N!_!@A4!_!_%%F!_!_%%G!==#_0_#_# ECHO,%%N
改成:IF !@A4!_!_%%F!_!_%%G!==0_#_# ECHO,%%N
::这里把数 i 判断去掉了
如无特别说明,代码测试环境均为 XP SP3

TOP

返回列表