查找雷劈数,用批处理可是可以就是效率太慢了,
最小雷劈数是81,就从81开始,到10000代码如下,
若还想增加位数,第二句for的数字也要同时增加.
@echo off
set num=
setlocal EnableDelayedExpansion
for /l %%a in (81 1 10000) do (
set shu=%%a
set/p=!shu! <nul
set/p=!num! <nul
for /l %%b in (1 1 4) do (
set qian=!shu:~0,%%b!
set hou=!shu:~%%b!
call :lis
set hou=!hou:b=!
set/a he=!qian!+!hou!
set/a jie=!he!*!he!
if !jie! equ %%a (
set var=^(!qian! + !hou! = !he!^) ^(!he! * !he!^) = !jie!
echo !var!
)))
echo\&echo 查找完毕......按任意键退出...
pause>nul
goto :eof
:lis
set hou=%hou%b
:loop
if %hou%==b set hou=0&goto :eof
if %hou:~0,1% equ 0 set hou=%hou:~1%&goto loop
goto :eof
Last edited by 26933062 on 2007-8-4 at 12:23 AM ]