Board logo

标题: [数值计算] Hope计算器 [打印本页]

作者: HOPE2021    时间: 2021-8-12 14:56     标题: Hope计算器

代码:
  1. @echo off
  2. ENDLOCAL
  3. SETLOCAL DISABLEDELAYEDEXPANSION
  4. chcp 936 > nul
  5. Rem By Hope2021
  6. title Hope计算器[键入H以查看帮助]
  7. mode con cols=38 lines=19
  8. color f9
  9. cls
  10. echo.
  11. echo.
  12. echo.
  13. echo.
  14. echo.
  15. echo.
  16. echo.
  17. echo.
  18. echo.                 HOPE
  19. call :Vbs_Sleep 1000
  20. cls
  21. @goto :Start
  22. :Start
  23. title Hope计算器[键入H以查看帮助]
  24. set "Math=0*0"
  25. color 0f
  26. echo.
  27. set /p Math= ^>^>
  28. if /i "%Math%"=="h" goto :Help
  29. set Math_2=%Math:pi=3.141592653589793238462643383279%
  30. set Math_2=%Math_2:power=^^^^^^^^%
  31. set Math_2=%Math_2:e=2.718281828459%
  32. set Math_2=%Math_2:gs=1.618033988749894848204586834%
  33. call :VisualSet Result "%Math_2%"
  34. echo.
  35. echo. ^>^> %Math% = %Result%
  36. @goto :Start
  37. :Vbs_Sleep
  38. echo.Wscript.Sleep %1 > Sleep.vbs
  39. call Sleep.vbs > nul
  40. if exist ReturnKey.vbs del ReturnKey.vbs
  41. @goto :eof
  42. :VisualSet
  43. @echo off
  44. echo X=%~2>>VisualSet.vbs
  45. echo wscript.echo(X)>>VisualSet.vbs
  46. for /f %%a in ('cscript //nologo VisualSet.vbs') do set %1=%%a
  47. if exist VisualSet.vbs del VisualSet.vbs
  48. goto :eof
  49. :Help
  50. echo.
  51. echo.  Hope 简易计算器
  52. echo.
  53. set /p Str=--------------------------------------<nul
  54. echo.
  55. echo.
  56. echo.  加 减 乘 除         + - * /
  57. echo.  圆周率              Pi
  58. echo.  自然常数            E
  59. echo.  黄金分割率          Gs
  60. echo.  次方                Power
  61. echo.  平方根              sqr(x)
  62. echo.  次方根              xPower(y/z)
  63. echo.  sin                 sin(x)
  64. echo.  cos                 cos(x)
  65. echo.  tan                 tan(x)
  66. @goto :Start
复制代码

作者: zz100001    时间: 2021-8-22 23:31

哥们,你这是套壳啊,而且计算结果也不能在bat里面用。。
发现一些问题:
1.报错的处理没有屏蔽,都显示出来了不美观
2.运算结果有缓存,如果除了故障,结果会直接显示上次的
3.次方根没有反应
作者: HOPE2021    时间: 2021-8-23 08:48

回复 2# zz100001
2.0.0000版本
  1. @echo off
  2. ENDLOCAL
  3. SETLOCAL DISABLEDELAYEDEXPANSION
  4. chcp 936 > nul
  5. Rem By Hope2021
  6. title Hope计算器[键入H以查看帮助]
  7. mode con cols=38 lines=19
  8. color f9
  9. cls
  10. echo.
  11. echo.
  12. echo.
  13. echo.
  14. echo.
  15. echo.
  16. echo.
  17. echo.
  18. echo.                 HOPE
  19. call :Vbs_Sleep 1000
  20. cls
  21. @goto :Start
  22. :Start
  23. cls
  24. title Hope计算器[键入H以查看帮助]
  25. set "Math=0*0"
  26. set "Result=Error"
  27. color 0f
  28. echo.
  29. set /p Math= ^>^>
  30. if /i "%Math%"=="h" goto :Help
  31. set Math_2=%Math:pi=3.141592653589793238462643383279%
  32. set Math_2=%Math_2:power=^^^^^^^^%
  33. set Math_2=%Math_2:e=2.718281828459%
  34. set Math_2=%Math_2:gs=1.618033988749894848204586834%
  35. call :VisualSet Result "0+%Math_2%"
  36. cls
  37. echo.
  38. echo. ^>^> %Math% = %Result%
  39. echo.
  40. echo. ^>^> 请按回车键进行下一次计算...
  41. pause > nul
  42. @goto :Start
  43. :Vbs_Sleep
  44. echo.Wscript.Sleep %1 > Sleep.vbs
  45. call Sleep.vbs > nul
  46. if exist ReturnKey.vbs del ReturnKey.vbs
  47. @goto :eof
  48. :VisualSet
  49. @echo off
  50. echo X=%~2>>VisualSet.vbs
  51. echo wscript.echo(X)>>VisualSet.vbs
  52. for /f %%a in ('cscript //nologo VisualSet.vbs') do set %1=%%a
  53. if exist VisualSet.vbs del VisualSet.vbs
  54. goto :eof
  55. :Help
  56. echo.
  57. echo.  Hope 简易计算器
  58. echo.
  59. set /p Str=--------------------------------------<nul
  60. echo.
  61. echo.
  62. echo.  加 减 乘 除         + - * /
  63. echo.  圆周率              Pi
  64. echo.  自然常数            E
  65. echo.  黄金分割率          Gs
  66. echo.  次方                Power
  67. echo.  平方根              sqr(x)
  68. echo.  次方根              xPower(y/z)
  69. echo.  sin                 sin(x)
  70. echo.  cos                 cos(x)
  71. echo.  tan                 tan(x)
  72. @goto :Start
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2