批处理除法,可以显示任意位小数。
只能对cmd范围内的整数进行运算。
欢迎测试。。。
- @echo off&color 1f
- ::code 随风 @bbs.bathome.net 2008-05-02
- :start
- setlocal
- echo.&echo 请输入除数 被除数和小数位数,用空格分开。默认为 5 位小数。
- echo.&echo 如 1 2003 100 表示 用 1 除以 2003 结果显示 100 位小数。
- echo.&set /p var= &cls
- for /f "tokens=1-3" %%a in ("%var%") do (
- set /a m=0,w=5,n=%%a,b=%%b,nn=n,w=%%c 2>nul
- )
- :loop
- set /a y=n%%b,t=n/b,n=y*10
- set j=%j%%t%
- if %n% equ 0 goto end
- if %m% geq %w% goto end
- set /a m+=1
- goto loop
- :end
- cls&set ok=%j%
- if %m% neq 0 call set ok=%%j:~0,-%m%%%.%%j:~-%m%%%
- echo.&echo %nn% 除以 %b% = %ok%
- echo.&endlocal&echo.
- goto start
复制代码
[ 本帖最后由 随风 于 2008-5-2 17:51 编辑 ] |