您好,欢迎来到步遥情感网。
搜索
您的当前位置:首页智能批处理计算器

智能批处理计算器

来源:步遥情感网
@echo off&set jiluk=&set /a jilu=0,xsljjg=0,xiaosu=10

title %~n0 智能计算器2 by 随风 @bbs.bathome.cn @2009-02-22 set sangcijg=&set \"pi=3.141592653579323846233832795\" setlocal enabledelayedexpansion&set \"lin=00000\" for /l %%a in (1 1 5) do set \"lin=!lin!!lin!!lin!\" :kaisi

set yyd=&color cf

echo.&echo. 欢迎使用 智能批处理计算器 echo.&echo.&echo. 首次使用请先仔细阅读使用说明

echo.&echo. 本代码源自 《批处理之家论坛》 bbs.bathome.cn echo.&echo. 使用中若发现 bug 请去该处反馈、谢谢 ^^!^^!^^! echo.&echo.&echo.&echo. 重要声明:

echo.&echo. 本代码为 bat 批处理业余爱好者编写

echo.&echo. 可任意转载、使用、但若因此导致的任何错误、损失、本人概不负责。 echo.&echo.&echo.

echo. 请选择: 1 阅读使用说明 2 进入对文本操作界面 3 进入手动界面 :kaisi2

echo.&set xuanze=&set /p xuanze= &cls if \"%xuanze%\"==\"3\" color 1f&goto start0 if not defined xuanze color 1f&goto start0 if defined yyd if \"!xuanze!\"==\"1\" cls&goto kaisi

if \"%xuanze%\"==\"1\" ( call :ydsuom \"%~0\" set yyd=a&echo.&echo.

echo. 请选择:1 返回首页 2 进入对文本操作界面 3 进入手动界面 goto kaisi2 )

if not \"%xuanze%\"==\"2\" cls&goto kaisi :wbjm 文本界面

cls&color 1f

echo.&echo. 直接回车返回首页。

echo.&echo. 按 3 进入手动输入算式界面。

echo.&echo. 请输入文件名全名及全路径,或拖放文件来此。 echo.&set wenben=&set /p wenben= &cls&set baocun=temp.txt if \"!wenben!\"==\"3\" cls&goto start0 if not defined wenben cls&goto kaisi

set \"wenben=%wenben:\"=%\"

if not exist \"%wenben%\" echo 文件不存在。。&ping/n 3 127.0>nul&goto wbjm echo.&echo. 正在计算 %wenben:\"=% 中的算式,结果保存在 %baocun% 中 echo.&echo. 请稍候 。。。&echo.

setlocal&cd.>\"%baocun%\"

for /f \"usebackq delims=\" %%a in (\"%wenben%\") do ( call :start0 \"%%a\" okk

>>\"%baocun%\" echo !okk! )

start \"\" \"%baocun%\" exit :start0 setlocal

if \"!wenben!\"==\"3\" set \"wenben=\"

if defined wenben set suru=%~1&goto wenben echo.&echo. 累计储存结果:%xsljjg% echo.&echo. %sangcijg%

echo.&echo.&echo.&echo. 输入 bz 查看帮助

echo.&echo. 请输入算式 如:-7+{2+[1+(3+-2*0.5--2*2+3)]+[3*(9--8*2)]*5/2}--2+5= echo.&set \"suru=\"&set /p suru= &cls if \"!suru!\"==\"bz\" (

call :ydsuom \"%~0\"

echo.&echo. 按任意键返回 。。。&pause>nul&cls&color 1f endlocal&set xsljjg=%jilu%&goto start0 )

if not defined suru endlocal&cls&set xsljjg=%jilu%&goto start0 set \"suru=%suru: =%\"

if \"!suru:~-1!\"==\"+\" set jiluk=a&set \"bq=+\"

if \"!suru:~-1!\"==\"-\" set jiluk=a&set \"bq=-\" if \"!suru:~-1!\"==\"*\" set jiluk=a&set \"bq=*\" if \"!suru:~-1!\"==\"/\" set jiluk=a&set \"bq=/\"

if \"!suru:~-1!\"==\".\" set jiluk=a&set jilu=0&set \"bq=+\" if defined jiluk set suru=!suru:~0,-1!

:wenben

set \"suru=%suru: =%\"

if \"!suru:~0,1!\"==\".\" set \"suru=0!suru!\"

for %%a in (c + - / ^( [ {) do set \"suru=!suru:%%a.=%%a0.!\" if \"%suru:~-1%\"==\"=\" set \"suru=%suru:~0,-1%\" echo.&echo.正在计算: %suru% = set xsjg=%suru% = :::从这里开始 set \"ok=\"

if \"%suru:~0,1%\"==\"-\" set \"suru=f%suru:~1%\" call :lis1 \"%suru%\" ok set \"ok=!Ok:~1!\"

for %%a in (c + - / ^( [ {) do set \"ok=!ok:%%a-=%%af!\" for /l %%a in (0 1 9) do ( set ok=!ok:%%a^(=%%ac^(! set ok=!ok:^)%%a=^)c%%a! set \"ok=!ok:%%a[=%%ac[!\"

set \"ok=!ok:]%%a=]c%%a!\" set \"ok=!ok:%%a{=%%ac{!\" set \"ok=!ok:}%%a=}c%%a!\" )

set \"ok=!ok:pi=%pi%!\" set \"ok=0+!ok!+0\" call :cif \"!ok!\" ok

for %%g in (\"()\" \"[]\" \"{}\") do ( set \"kuoh=%%~g\" call :lisxh \"!ok!\" ok )

call :liscc \"!ok!\" ok call :lisjj \"!ok!\" ok set ok=!ok:f=-! ::完成计算

set lecs=&set \"cucw=\" if defined jiluk ( set \"okok=!ok!\"

set \"leiji=!okok! !bq! !jilu!\" if \"!bq!\"==\"/\" if \"!jilu!\"==\"0\" ( set bq=*&set /a okok=1

set \"leiji=0 + !jilu!\"

set lecs=以零为除数的错误。累计储存结果不变。。。 )

if \"!ok!\"==\"以零为除数的错误。\" (

set lecs=以零为除数的错误。累计储存结果不变。。。 set \"leiji=0 + !jilu!\"

set bq=+&set /a okok=0 )

call :start \"^(!okok!^)!bq!^(!jilu!^)\" jilu

)

if defined wenben endlocal&set %~2=%xsjg% %ok%&goto :EOF cls&set xsljjg=!jilu! !lecs!

set sangcijg=!xsjg! !ok! !cucw!

if defined jiluk (

endlocal&set jilu=%jilu%&set \"xsljjg=%xsljjg%\"&set \"sangcijg=%sangcijg%\" ) else endlocal&set \"sangcijg=%sangcijg%\" goto start0

goto :EOF

:lisxh 处理各种()[]{}括弧

for /f \"tokens=1,2* delims=%kuoh%\" %%a in (\"%~1\") do ( if \"%%b\"==\"\" set %~2=!ok!&goto :EOF call :liscc \"%%b\" ok

call :lisjj \"!ok!\" ok set \"ok=!ok:-=f!\"

set \"ok=%%a!ok!%%c\" call :lisxh \"!ok!\" ok )

goto :EOF

:liscc 计算连续乘除

set ph=%~1&set q=&set h=&set aa=&set n=0 set ph=!ph:c= c# !&set ph=!ph:/= /@ ! set ph=!ph:+= + !&set ph=!ph:-= - !

for /f \"tokens=1* delims=c/\" %%a in (\"!ph!\") do ( if \"%%b\"==\"\" set %~2=!ph: =!&goto :EOF for %%i in (%%a) do set q=!q!!aa!&set \"aa=%%i\" for %%i in (%%b) do set /a n+=1&set \"m!n!=%%i\" for /l %%i in (3 1 !n!) do set h=!h!!m%%i! if \"!m1!\"==\"#\" (set m1=*) else set \"m1=/\" set \"js=^(!aa:f=-!^)!m1!^(!m2:f=-!^)\"

if not \"!h!\"==\"\" set h=!h:c#=c!&set \"h=!h:/@=/!\" call :start \"!js!\" ph

if \"!ph!\"==\"以零为除数的错误。\" set q=&set \"h=\" set \"ph=!ph:-=f!\" set \"ph=!q!!ph:-=f!!h!\" set \"ph=!ph:/@=/!\" call :liscc \"!ph!\" ph )

set \"%~2=!ph: =!\" goto :EOF

:lisjj 计算连续加减 set he=&set js=%~1

set js=!js:+= +!&set js=!js:-= -! for %%a in (!js!) do ( set \"b=%%a\" if defined he (

set js=^(!he!^)!b:~0,1!^(!b:~1!^) set js=!js:f=-! call :start !js! he ) else set \"he=%%a\" )

set \"%~2=!he:-=f!\" goto :EOF

:lis1 将*号替换为c 方便代码运行

for /f \"tokens=1* delims=*\" %%a in (\"%~1\") do (

set \"ok=!ok!c%%a\" call :lis1 \"%%b\" ok

if \"%%b\"==\"\" goto :EOF )

set \"%~2=%ok%\" goto :eof

:cif 处理次方

set aaa=&set bbb=&set aa=&set bb=&set n=0 for /f \"tokens=1* delims=x\" %%a in (\"%~1\") do ( if \"%%b\"==\"\" set %~2=!ok!&goto :EOF set a=%%a&set \"b=%%b\"

set a=!a:^(=^( !&set a=!a:+=+ !&set a=!a:-=- ! set a=!a:c=c !&set a=!a:/=/ !

for %%i in (!a!) do set aaa=!aaa!!aa!&set aa=%%i set b=!b:^)= ^)!&set b=!b:+= +!&set b=!b:-= -! set b=!b:c= c!&set b=!b:/= /!

for %%i in (!b!) do set /a n+=1&set l!n!=%%i set bb=!l1!&set \"ok=\"

for /l %%i in (2 1 !n!) do set bbb=!bbb!!l%%i! for /l %%i in (1 1 !bb!) do set ok=!ok!c!aa! set \"ok=!ok:~1!\"

if \"!bb!\"==\"0\" set \"ok=1c1\" if \"!bb!\"==\"1\" set \"ok=!aa!c1\" call :liscc \"!ok!\" ok set ok=!aaa!!ok!!bbb! call :cif \"!ok!\" ok )

set %~2=!ok! goto :EOF

:start 计算单一算式 setlocal

set \"suru=%~1\"

set yunsuanf=&set f=&set \"ff=\"&set xs1=&set \"xs2=\" set \"suru=%suru: =%\"

if \"%suru:~-1%\"==\"=\" set \"suru=%suru:~0,-1%\" if \"%suru:~0,1%\"==\"(\" set suru=%suru:~1%&set \"xs1=(\" if \"%suru:~0,1%\"==\"-\" (set yf=-) else set \"yf=\" for /f \"tokens=1* delims=+-*/\" %%a in (\"%suru%\") do ( set num=%yf%%%a&set \"str=%%b\" (set str=!str:^(=!&set str=!str:^)=!) )

(set num=!num:^)=!)

set \"ysf=!suru:*%num%=!\"

if \"%ysf:~0,1%\"==\")\" set \"ysf=%ysf:~1%\" set \"ysf=!ysf:~0,1!\"

if not defined xs1 (set \"xs1=!num!\")else set \"xs1=!xs1!!num!)\" set \"xsysf=%ysf%\"

if \"!str:~0,1!\"==\"-\" (set \"xs2=(!str!)\")else set \"xs2=!str!\" set \"xsss=!xs1! !xsysf! !xs2!\"

if \"!num:~0,1!\"==\"-\" (

if \"!str:~0,1!\"==\"-\" (set ff=) else set \"ff=-\" ) else if \"!str:~0,1!\"==\"-\" set \"ff=-\"

if \"!ysf!\"==\"+\" (

set \"yunsuanf=jia\"&set \"ff=\" if \"!num:~0,1!\"==\"-\" (

set \"ff=-\"

if not \"!str:~0,1!\"==\"-\" set \"yunsuanf=jian\" ) else if \"!str:~0,1!\"==\"-\" set \"yunsuanf=jian\" )

if \"!ysf!\"==\"-\" (

set \"yunsuanf=jian\"&set \"ff=\" if \"!num:~0,1!\"==\"-\" (

set \"ff=-\"&set \"yunsuanf=jia\"

if \"!str:~0,1!\"==\"-\" set \"yunsuanf=jian\" ) else (if \"!str:~0,1!\"==\"-\" set yunsuanf=jia) )

if \"!ysf!\"==\"*\" set \"yunsuanf=cen\" if \"!ysf!\"==\"/\" (set \"yunsuanf=cu0\") set num=!num:-=!&set \"str=!str:-=!\" set /a numxw=0,strxw=0,xzw=0,xc=0,duo=0 call :pdxs %num% numz numx numxw

call :pdxs %str% strz strx strxw

if %numxw% geq %strxw% (set /a duo=numxw) else set /a duo=strxw set /a xzw=numxw+strxw,xc=numxw-strxw&set \"xc=!xc:-=!\" if !duo! neq 0 (

set \"numx=!numx:~0,%duo%!\"&set \"strx=!strx:~0,%duo%!\"

) else set \"numx=\"&set \"strx=\"

::echo 第一个数 整数 %numz% 小数 %numx% 小数的位数 %numxw% 位 ::echo 第一个数 整数 %strz% 小数 %strx% 小数的位数 %strxw% 位 set \"she=%numz%%numx% %strz%%strx%\"

if \"!ysf!\"==\"*\" set /a duo=xzw&set \"she=%num:.=% %str:.=%\" call :%yunsuanf% %she% ok if \"!ysf!\"==\"/\" goto ok

goto xs

:pdxs 给小数补0、获取小数位数。 setlocal&set /a z=0 set \"var=%~1\"

if \"!var:~0,1!\"==\".\" set \"var=0!var!\"

for /f \"tokens=1* delims=.\" %%a in (\"!var!\")do (set \"str1=%%a\" if \"%%b\"==\"\" (set str2=!lin!&set z=0) else ( set \"str2=%%b\"

for /l %%i in (0 1 9) do set \"str2=!str2:%%i= %%i !\" for %%i in (!str2!) do set /a z+=1

set \"str2=!str2: =!\"&set \"str2=%%b!lin!\"

))

Endlocal&set %~2=%str1%&set %~3=%str2%&set \"%~4=%z%\"&goto :EOF

:xs 处理最终结果 if \"%ok:-=%\"==\"0\" goto ok set \"ok=!ff!!ok!\"&set \"lin=\" if \"!ok:~0,1!\"==\"-\" (

if \"!ok:~1,1!\"==\"-\" (set \"f=\") else set \"f=-\" ) else set \"f=\"

set \"ok=!ok:-=!\"

if !duo! equ 0 (goto ok) else ( set \"ok=!lin!!ok!\"

set \"ok=!ok:~0,-%duo%!.!ok:~-%duo%,%duo%!\" ) :loop

if \"!ok:~-1!\"==\"0\" set ok=!ok:~0,-1!&goto loop for /f \"tokens=* delims=0\" %%a in (\"%ok%\") do (

if \"%%a\"==\"\" (set ok=0&goto ok) else set \"ok=%%a\" )

if \"!ok!\"==\".\" set ok=0&goto ok if \"!ok:~0,1!\"==\".\" set \"ok=0!ok!\" if \"!ok:~-1!\"==\".\" set \"ok=!ok:~0,-1!\" :ok

endlocal&set %~2=%f%%ok%&goto :EOF

:jia 加法函数(封装)by @随风 @bbs.bathome.cn ::计算任意位数的正整数加法

setlocal enabledelayedexpansion&set f=&set \"t=\" set var1=%~1&set var2=%~2&set /a j=0,n1=0,n2=0 for /l %%a in (0 1 9) do (set vard1=&set \"vard2=\"

set var1=!var1:%%a= %%a !&set var2=!var2:%%a= %%a !) for %%a in (!var1!)do (set/a n1+=1&set vard1=%%a !vard1!)

for %%a in (!var2!)do (set/a n2+=1&set vard2=%%a !vard2!) (if !n1! lss !n2! (set var1=%var2%&set \"var2=%var1%\"

set vard1=%vard2%&set vard2=%vard1%))&set \"var2=!var2: =!\" for %%a in (!vard1!) do (if \"!var2!\"==\"\" set /a var2=0 set /a a=%%a+!var2:~-1!+j&set t=!a:~-1!!t!&set \"a=0!a!\" set \"j=!a:~-2,1!\"&set var2=!var2:~0,-1!) if !j! neq 0 set \"t=!j!!t!\"

Endlocal&set %~3=%t%&goto :EOF

:jian 减法函数(封装)by @随风 @bbs.bathome.cn ::计算1000位以内的正整数减法

setlocal enabledelayedexpansion&set f=&set \"lin=00000\" for /l %%a in (1 1 5) do set \"lin=!lin!!lin!!lin!\"

set var1=!lin!%~1&set var2=!lin!%~2&set vard1=&set/a j=0 set t=&set var1=!var1:~-1000!&set \"var2=!var2:~-1000!\" if \"!var1!\" lss \"!var2!\" (set var1=%~2&set \"var2=%~1\" set \"f=-\") else set var1=%~1&set \"var2=%~2\"

for /l %%a in (0 1 9) do set \"var1=!var1:%%a= %%a !\" for %%a in (!var1!) do set \"vard1=%%a !vard1!\" for %%a in (!vard1!) do (if \"!var2!\"==\"\" set/a var2=0 set /a a=%%a-j,b=!var2:~-1!

if !a! lss !b! (set /a a+=10,j=1)else set /a j=0

set /a w=a-b&set t=!w!!t!&set var2=!var2:~0,-1!) for /f \"tokens=* delims=0\" %%a in (\"!t!\") do ( if \"%%a\"==\"\" (set t=0) else set \"t=%%a\")

Endlocal&set %~3=%f%%t%&goto :EOF

:cen 乘法函数(封装)by @随风 @bbs.bathome.cn ::计算任意位数的正整数乘法 setlocal enabledelayedexpansion

if \"%~1\"==\"0\" Endlocal&set %~3=0&goto :EOF if \"%~2\"==\"0\" Endlocal&set %~3=0&goto :EOF set f=&set jia=&set ji=&set /a n1=0,n2=0

set vard1=&set \"vard2=\"&set var1=%~1&set \"var2=%~2\" for /l %%a in (0 1 9) do (

set var1=!var1:%%a= %%a !&set var2=!var2:%%a= %%a !) for %%a in (!var1!)do (set /a n1+=1&set vard1=%%a !vard1!) for %%a in (!var2!)do (set /a n2+=1&set vard2=%%a !vard2!) if !n1! gtr !n2! (set vard1=%vard2%&set vard2=%vard1%) for %%a in (!vard1!) do (set \"t=\"&set /a j=0 for %%b in (!vard2!) do (if \"!jia!\"==\"\" set /a jia=0 set /a a=%%a*%%b+j+!jia:~-1!&set \"t=!a:~-1!!t!\" set a=0!a!&set j=!a:~-2,1!&set jia=!jia:~0,-1!) set ji=!t:~-1!!ji!&(if \"!j:~0,1!\"==\"0\" (set ss=)else (

set ss=!j:~0,1!))&set jia=!ss!!t:~0,-1!)

(if not \"!j:~0,1!\"==\"0\" set t=!j:~0,1!!t!)&set \"ji=!t!!ji:~1!\" Endlocal&set %~3=%ji%&goto :EOF

:cu0 500位内整数除法函数(封装)by @随风 bbs.bathome.cn ::函数内有 cu1 cu2 cu3 cu4 四个标签,引用时需注意 setlocal enabledelayedexpansion&set \"lin=00000\" for /l %%a in (1 1 5) do set \"lin=!lin!!lin!!lin!\" set /a zongw=1000,cs1w=0,cs2w=0,falg=0,x=0

if \"!str!\"==\"1\" Endlocal&set %~3=%ff%!num!&goto :EOF if \"%~1\"==\"0\" set sang=0&goto cu4

if \"!str!\"==\"0\" set sang=以零为除数的错误。&goto cu4 if not defined xiaosu set /a xiaosu=10

set sang=&set ppp=&set var1=%~1&set \"var2=%~2\" for /f \"tokens=* delims=0\" %%a in (\"!var1!\")do set var1=%%a for /f \"tokens=* delims=0\" %%a in (\"!var2!\")do set var2=%%a for /l %%a in (0 1 9)do (set \"var1=!var1:%%a= %%a !\" set \"var2=!var2:%%a= %%a !\")

for %%a in (!var1!) do set /a cs1w+=1 for %%a in (!var2!) do set /a cs2w+=1

for /l %%a in (1 1 10) do (set t=&set cs=%~2&set/a j=0 for /l %%b in (1 1 !cs2w!) do (set /a a=%%a*!cs:~-1!+j set t=!a:~-1!!t!&set a=0!a!&set \"j=!a:~-2,1!\" set cs=!cs:~0,-1!&set cs%%a=&set \"bj%%a=\")

if !j! neq 0 (set cs%%a=!lin!!j!!t!&set \"bj%%a=!j!!t!\" ) else set cs%%a=!lin!!t!&set \"bj%%a=!t!\" set \"cs%%a=!cs%%a:~-%zongw%!\")

set var2=!lin!!var2: =!&set \"var2=!var2:~-%zongw%!\" set /a cswc=cs1w-cs2w&set \"var1=!var1: =!\" if !cswc! lss 0 (set cswc=!cswc:-=!&set/a flag=1 for /l %%a in (1 1 !cswc!)do (

if %%a leq 11 set sang=0!sang!&set /a x=cswc-1 set \"var1=!var1!0\")

set \"sang=!sang:~0,1!.!sang:~1!\")

set ppp=!var1:~0,%cs2w%!&set \"var1=!var1:~%cs2w%!\" if !flag! equ 1 (set /a bul=1) else set /a bul=0 goto cu2

:cu1

if not defined var1 (set \"var1=0\" if not defined ppp goto cu4

if !flag! equ 0 (set sang=!sang!.&set /a flag=1))

set/a bul=1&set ppp=!ppp!!var1:~0,1!&set \"var1=!var1:~1!\" :cu2

if !x! geq %xiaosu% goto cu4

set pvar1=!lin!!ppp!&set \"pvar1=!pvar1:~-%zongw%!\" if \"!pvar1!\" lss \"!var2!\" (

if !bul! equ 1 (set sang=!sang!0&set /a bul=0 if !flag! equ 1 set /a x+=1)

if \"!ppp:~0,1!\"==\"0\" set \"ppp=\" goto cu1)

if !flag! equ 1 set /a x+=1 set /a bul=0 ::计算商

for /l %%a in (1 1 10) do (

if \"!cs%%a!\" equ \"!pvar1!\" (

set \"sang=!sang!%%a\"&set \"yu=!bj%%a!\"&goto cu3) if \"!cs%%a!\" gtr \"!pvar1!\" (set /a s=%%a-1 set \"sang=!sang!!s!\"&set yu=!t!&goto cu3) set \"t=!bj%%a!\") :cu3 计算差

set cjs=!ppp!&set cj1=&set m=&set/a jjj=0

for /l %%a in (0 1 9) do set \"cjs=!cjs:%%a= %%a !\" for %%a in (!cjs!) do set \"cj1=%%a !cj1!\" for %%a in (!cj1!) do (if \"!yu!\"==\"\" set/a yu=0 set /a a=%%a-jjj,b=!yu:~-1!

if !a! lss !b! (set /a a+=10,jjj=1)else set/a jjj=0 set /a w=a-b&set m=!w!!m!&set yu=!yu:~0,-1!) for /f \"tokens=* delims=0\" %%m in (\"!m!\") do ( if \"%%m\"==\"\" (set m=0) else set \"m=%%m\") if !m! equ 0 (

if \"!var1:0=!\"==\"\" set sang=!sang!!var1!&goto cu4 set ppp=&goto cu1) else set \"ppp=!m!\" goto cu2 :cu4

if \"!sang:~0,1!\"==\".\" set \"sang=0!sang!\"

Endlocal&set %~3=%ff%%sang%&goto :EOF

:ydsuom 阅读使用说明

color df&set \"flag3=\"

for /f \"usebackq delims=\" %%a in (\"%~1\")do (

if \"%%a\"==\"智能批处理计算器使用说明:\" set flag3=a if defined flag3 echo.&echo %%a )

echo.&echo.

=============================================================== set xiansixs= 除法默认保留 %xiaosu% 位小数,

echo.&echo. !xiansixs!可自行修改代码第一行的 set /a xiaosu=%xiaosu% echo.

echo.&echo. 注意:代码未对输入格式作正确与否判断, echo. 所以输入必须正确,否则答案可能有误 ...... set flag3=&goto :EOF

智能批处理计算器使用说明:

1、可对1000位以内 整数、小数、负数进行 加减乘除 计算(除法 500 位) 1000位 指需计算的数的位数不能超过1000位,包扩小数点及小数的位数 2、可对连续的算式进行计算如:1+2-3*4/5 3、支持括弧号如:7+[5*(-2+3)+(1+-2)-2+8] 运算符为 + - * / ( ) [ ] { }

计算次序为 先括弧内、后括弧外、先乘除、再加减 括弧次序依次为:小括弧() 中括弧[] 大括弧{} 4、输入格式:

负数的输入如:负8减负5 -8--5 或 负8加负5 -8+-5

小数的输入如:0.5 直接输入 .5 也可以,但返回信息会自动补上0 括弧外测的乘号可省略如:2*(5+3)可简写成 2(5+3) 或 (5+3)2 算式后面的 = 号 可有可无 如:1+2+3= 或 1+2+3 都可以 5、可对文本内的算式进行批量计算,文本内必须一行一个算式 6、手动输入算式:

若在算式末尾加上运算符 可把该次计算结果累计到 存储结果中 如:2+6+ 加上 . 将储存结果中的值更改为该次计算结果 如:输入:2+6. 举例:输入 2+6 / 表示用该次计算结果 即:8 除以储存结果中的值 小技巧:输入数字加点 定义储存结果的初始值

输入数字加运算符 对储存结果的值进行计算 7、圆周率:3.141592653579323846233832795

圆周率默认31位小数 用 pi 表示

如:输入:3*pi 等同 3*3.141592653579323846233832795 8、次方的计算及输入:

如:计算 16的3次方 可输入 16x3 如:8的5次方 输入:8x5 也可在算式中直接输入次方如:2+(2*16x2)+8x5

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- obuygou.com 版权所有 赣ICP备2024042798号-5

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务