搜索
查看: 7099|回复: 0

[资源分享] 1~36进制转换器-批处理

[复制链接]
发表于 2013-5-29 20:53:14 | 显示全部楼层 |阅读模式
本文来自lyz810的空间,http://hi.baidu.com/lyz810/blog/item/db31cc42614f2b0273f05ddf.html

  1. @echo off &setlocal enabledelayedexpansion
  2. color 1e
  3. mode con cols=60 lines=10
  4. :start
  5. cls
  6. set b=
  7. set d=
  8. set e=
  9. set f=
  10. title 进制转换器
  11. set /p jzq=请输入转换前的进制数(1~36)
  12. set /p jzh=请输入转换后的进制数(1~36)
  13. set /p num=请输入数值
  14. set count=1
  15. set num=#%num%
  16. :check
  17. set b=!num:~-%count%,1!
  18. if /i "%b%"=="a" set b=10
  19. if /i "%b%"=="b" set b=11
  20. if /i "%b%"=="c" set b=12
  21. if /i "%b%"=="d" set b=13
  22. if /i "%b%"=="e" set b=14
  23. if /i "%b%"=="f" set b=15
  24. if /i "%b%"=="g" set b=16
  25. if /i "%b%"=="h" set b=17
  26. if /i "%b%"=="i" set b=18
  27. if /i "%b%"=="j" set b=19
  28. if /i "%b%"=="k" set b=20
  29. if /i "%b%"=="l" set b=21
  30. if /i "%b%"=="m" set b=22
  31. if /i "%b%"=="n" set b=23
  32. if /i "%b%"=="o" set b=24
  33. if /i "%b%"=="p" set b=25
  34. if /i "%b%"=="q" set b=26
  35. if /i "%b%"=="r" set b=27
  36. if /i "%b%"=="s" set b=28
  37. if /i "%b%"=="t" set b=29
  38. if /i "%b%"=="u" set b=30
  39. if /i "%b%"=="v" set b=31
  40. if /i "%b%"=="w" set b=32
  41. if /i "%b%"=="x" set b=33
  42. if /i "%b%"=="y" set b=34
  43. if /i "%b%"=="z" set b=35
  44. if "%b%"=="#" goto run
  45. if %b% GEQ %jzq% echo 输入有误,请重新输入 &pause >nul &goto start
  46. set /a count+=1
  47. goto check
  48. :run
  49. title 正在将%jzq%进制数%num%转换为%jzh%进制数,请稍后......
  50. echo 正在将%jzq%进制数%num%转换为%jzh%进制数,请稍后......
  51. if %jzq% EQU 1 goto run_5
  52. set count=1
  53. set a=1
  54. set c=0
  55. :run_1
  56. set b=!num:~-%count%,1!
  57. if /i "%b%"=="a" set b=10
  58. if /i "%b%"=="b" set b=11
  59. if /i "%b%"=="c" set b=12
  60. if /i "%b%"=="d" set b=13
  61. if /i "%b%"=="e" set b=14
  62. if /i "%b%"=="f" set b=15
  63. if /i "%b%"=="g" set b=16
  64. if /i "%b%"=="h" set b=17
  65. if /i "%b%"=="i" set b=18
  66. if /i "%b%"=="j" set b=19
  67. if /i "%b%"=="k" set b=20
  68. if /i "%b%"=="l" set b=21
  69. if /i "%b%"=="m" set b=22
  70. if /i "%b%"=="n" set b=23
  71. if /i "%b%"=="o" set b=24
  72. if /i "%b%"=="p" set b=25
  73. if /i "%b%"=="q" set b=26
  74. if /i "%b%"=="r" set b=27
  75. if /i "%b%"=="s" set b=28
  76. if /i "%b%"=="t" set b=29
  77. if /i "%b%"=="u" set b=30
  78. if /i "%b%"=="v" set b=31
  79. if /i "%b%"=="w" set b=32
  80. if /i "%b%"=="x" set b=33
  81. if /i "%b%"=="y" set b=34
  82. if /i "%b%"=="z" set b=35
  83. if "%b%"=="#" goto run_2
  84. set /a c=%b%*%a%+%c%
  85. set /a a*=%jzq%
  86. set /a count+=1
  87. goto run_1
  88. :run_2
  89. if %jzh% EQU 1 goto run_3
  90. set /a d=%c%-%c%/%jzh%*%jzh%
  91. set /a c=%c%/%jzh%
  92. set f=%d%
  93. if %d% EQU 10 set f=A
  94. if %d% EQU 11 set f=B
  95. if %d% EQU 12 set f=C
  96. if %d% EQU 13 set f=D
  97. if %d% EQU 14 set f=E
  98. if %d% EQU 15 set f=F
  99. if %d% EQU 16 set f=G
  100. if %d% EQU 17 set f=H
  101. if %d% EQU 18 set f=I
  102. if %d% EQU 19 set f=J
  103. if %d% EQU 20 set f=K
  104. if %d% EQU 21 set f=L
  105. if %d% EQU 22 set f=M
  106. if %d% EQU 23 set f=N
  107. if %d% EQU 24 set f=O
  108. if %d% EQU 25 set f=P
  109. if %d% EQU 26 set f=Q
  110. if %d% EQU 27 set f=R
  111. if %d% EQU 28 set f=S
  112. if %d% EQU 29 set f=T
  113. if %d% EQU 30 set f=U
  114. if %d% EQU 31 set f=V
  115. if %d% EQU 32 set f=W
  116. if %d% EQU 33 set f=X
  117. if %d% EQU 34 set f=Y
  118. if %d% EQU 35 set f=Z
  119. set e=%f%%e%
  120. if %c% EQU 0 goto stop
  121. goto run_2
  122. :run_3
  123. set count=0
  124. set g=0
  125. :run_4
  126. set g=%g%0
  127. set /a count+=1
  128. if %count% EQU %c% set e=%g% &goto stop
  129. goto run_4
  130. :run_5
  131. set count=1
  132. :run_6
  133. set b=!num:~-%count%,1!
  134. set /a c=%count%-2
  135. if "%b%"=="#" goto run_2
  136. set /a count+=1
  137. goto run_6
  138. :stop
  139. cls
  140. title %jzq%进制数%num:~1%转换为%jzh%进制的结果为%e%
  141. echo %jzq%进制数%num:~1%转换为%jzh%进制的结果为%e%
  142. pause >nul
  143. goto start
复制代码


相关帖子

回复

使用道具 举报

联系我们(Contact)|手机版|萝卜头IT论坛 ( 苏ICP备15050961号-1 )

GMT+8, 2024-11-23 20:41 , Processed in 0.089266 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表