for 加 set /a 能否实现开方
@set c= 不知则觉多,知则觉少,越知越多,便觉越来越少. --- 知多少.
@for,/l,%%i,in,(1,1,55)do,@call,set/p=%%c:~%%i,1%%<nul&ping/n 1 127.1>nul
@for,/l,%%i,in,(1,1,55)do,@call,set/p=%%c:~%%i,1%%<nul&ping/n 1 127.1>nul
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!
@echo off
setlocal enabledelayedexpansion
:Main
cls
set x=
set n=
set /p x= 请输入被开方的数:
set /p n= 请输入开方次数:
set /a mod=%n%%%2
if %x% equ 1 (
echo.
echo %x% 的 %n% 次方根是 1
echo.
pause
goto Main
)
set /a quotient=x/n
set flag=
for /l %%i in (2,1,%quotient%) do (
set num=%%i
for /l %%j in (2,1,%n%) do (
set /a num=%%i*!num!
)
if !num! equ %x% (
echo.
if %mod% equ 0 (
echo %x% 的 %n% 次方根是 ±%%i
) else echo %x% 的 %n% 次方根是 %%i
echo.
set flag=1
goto end
)
)
:end
if not defined flag (
echo.
echo %x% 的 %n% 次方根不是整数
echo.
)
pause
goto Main
@echo off&setlocal enabledelayedexpansion
for /l %%a in (1 1 100) do (
set/a n=%%a*%%a
set ..!n!=%%a * %%a = !n!
)
set/p var=Input:
if defined ..%var% echo !..%var%!
pause>nul