[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[数值计算] [分享]批处理版多功能计算器

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. title 多功能计算器
  4. :menu
  5. echo.
  6. echo        ================================================
  7. echo.
  8. echo                      请选择要进行的操作,然后按回车
  9. echo.
  10. echo        ================================================
  11. echo.
  12. echo                                1.加法计算器
  13. echo                                2.减法计算器
  14. echo                                3.乘法计算器
  15. echo                                4.除法计算器
  16. echo                                5.乘方计算器
  17. echo                                 x.退出
  18. set a=123456789abcdef
  19. set /a d=%random%%%15
  20. color 2!a:~%d%,1!
  21. set /p choice= 请选择:
  22. if %choice%==1 goto jia
  23. if %choice%==2 goto jian
  24. if %choice%==3 goto cheng
  25. if %choice%==4 goto chu
  26. if %choice%==5 goto chengfang
  27. if %choice%==x goto tuichu
  28. cls
  29. echo 选择无效请重新输入:
  30. echo.
  31. goto menu
  32. :jia
  33. set /p str=请输入加数:&set /p var=请输入被加数:
  34. set /a j=%str%+%var%
  35. cls
  36. echo 两数的和为:%j%
  37. echo.
  38. set /p choice_1=返回主菜单请输入:[e]
  39. cls
  40. if /i %choice_1%==e goto menu else goto tuichu
  41. :jian
  42. set /p str=请输入减数:&set /p var=请输入被减数:
  43. set /a ji=%str%-%var%
  44. cls
  45. echo 两数之差为:%ji%
  46. echo.
  47. set /p choice_1=返回主菜单请输入:[e]
  48. cls
  49. if /i %choice_1%==e goto menu else goto tuichu
  50. :cheng
  51. set /p str=请输入成数:&set /p var=请输入被乘数:
  52. set /a ch=%str%*%var%
  53. cls
  54. echo 两数之积为:%ch%
  55. echo.
  56. set /p choice_1=返回主菜单请输入:[e]
  57. cls
  58. if /i %choice_1%==e goto menu else goto tuichu
  59. :chu
  60. set /p str=请输入除数:&set /p var=请输入被除数:
  61. set /a c=%str%/%var%
  62. cls
  63. echo 两数之商为:%c%
  64. echo.
  65. set /p choice_1=返回主菜单请输入:[e]
  66. cls
  67. if /i %choice_1%==e goto menu else goto tuichu
  68. :fang
  69. set /p n=请输入2 的几次方:
  70. set /a num=1^<^<N
  71. cls
  72. echo %num%
  73. echo.
  74. set /p choice_1=返回主菜单请输入:[e]
  75. cls
  76. if /i %choice_1%==e goto menu else goto tuichu
  77. :tuichu
  78. echo 程序结束!
  79. pause
复制代码


有个小错误,希望大家改进下。

[ 本帖最后由 psxch 于 2011-3-5 18:39 编辑 ]

不说别的,3/2是多少...

TOP

谢谢分享。学习一下。

TOP

楼主好强大啊,刚学了几天的批处理感觉蛮强大的,看了楼主的代码,感觉我还差好远啊。。。努力!!!!

TOP

对批处理版多功能计算器bug的修改和改进

@echo off
setlocal enabledelayedexpansion
title 批处理版多功能计算器
color 2f
echo.
echo 程序正在初始化...
echo.
echo  --------------------------------------------------------------
set /p a=●<NUL
for /L %%i in (1 1 30) do set /p a=●<nul&ping -n 1 127.0.0.1>nul

echo 100%%
cls
echo  --------------------------------------------------------------
echo.
echo.
echo                                                   初始化完成

:menu
echo.
echo                         ================================================
echo.
echo                                           请选择要进行的操作,然后按回车
echo.
echo                         ================================================
echo.
echo                                                 1.加法计算器
echo                                                 2.减法计算器
echo                                                 3.乘法计算器
echo                                                 4.除法计算器
echo                                                 5.乘方计算器
echo                                                 x.退出
set a=123456789abcdef
set /a d=%random%%%15
color 2!a:~%d%,1!
set /p choice= 请选择:
if %choice%==1 goto jia
if %choice%==2 goto jian
if %choice%==3 goto cheng
if %choice%==4 goto chu
if %choice%==5 goto chengfang
if %choice%==x goto tuichu
cls
echo 选择无效请重新输入:
echo.
goto menu

:jia
:jixu
set /p str=请输入加数:&set /p var=请输入被加数:
set /a j=%str%+%var%
cls
echo 两数的和为:%j%
echo.
echo 【输入若非0则继续加法操作】
echo.
set /p choice_1=返回主菜单请输入[0]:
cls
if /i %choice_1%==0 goto menu
if /i %choice_1% neq 0 goto jixu

:jian
:j
set /p str=请输入减数:&set /p var=请输入被减数:
set /a ji=%str%-%var%
cls
echo 两数之差为:%ji%
echo.
echo 【输入若非0则继续减法操作】
set /p choice_1=返回主菜单请输入[0]:
cls
if /i %choice_1%==0 goto menu
if /i %choice_1% neq 0 goto j
:cheng
:ji
set /p str=请输入成数:&set /p var=请输入被乘数:
set /a ch=%str%*%var%
cls
echo 两数之积为:%ch%
echo.
echo 【输入若非0则继续成法操作】
set /p choice_1=返回主菜单请输入[0]:
cls
if /i %choice_1%==0 goto menu
if /i %choice_1% neq 0 goto ji
:chu
:jix
set /p str=请输入除数:&set /p var=请输入被除数:
set /a c=%str%/%var%
cls
echo 两数之商为:%c%
echo.
echo 【输入若非0则继续除法操作】
set /p choice_1=返回主菜单请输入[0]:
cls
if /i %choice_1%==0 goto menu
if /i %choice_1% neq 0 goto jix
:chengfang
:q
set /p n=请输入2 的几次方:
set /a num=1^<^<N
cls
echo %num%
echo.
echo 【输入若非0则继续成方操作】
set /p choice_1=返回主菜单请输入[0]:
cls
if /i %choice_1%==0 goto menu
if /i %choice_1% neq 0 goto q
:tuichu
cls
echo ^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^| 程序结束!^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|
echo.
pause


本人原先发的代码有个小小的bug
现在在此已修改,如还有能改进的地方希望高手修改下。


[ 本帖最后由 psxch 于 2011-3-8 00:53 编辑 ]

TOP

回复


失误啊...

标签
:fang
改为
:chengfang

TOP

说句实在话,批处理的十进制计算能力着实不敢恭维

TOP

那你得先说说是啥小错误啊
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表