Board logo

标题: [数值计算] 问如何统计随机数字出现次数及我的BAT代码的问题 [打印本页]

作者: hfgjgx    时间: 2023-8-9 12:13     标题: 问如何统计随机数字出现次数及我的BAT代码的问题

最近学了一下输出随机数,忽然想统计一下数字的数量
但没有什么好办法,我的想法是把输出的数字与所有数字对比,
虽然感觉这样循环比对是可以用for做到,但我不会
所以写成下面这样,但又怕写错,所以写了一半不写了先测试一下
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /l %%i in (1,1,50) do set /a var=!random!%%10 &if !var!==0 set /a a1+=1 else if !var!==1 set /a a2+=1 else if !var!==2 set /a a3+=1
  4. echo !a1!
  5. pause
复制代码
结果:
(几行或没有"运算符不存在")
数字(例如6,7)
请按任意键继续......
求大佬解释原因并给出正解
作者: Batcher    时间: 2023-8-9 12:40

回复 1# hfgjgx


调整一下格式再试试:
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /l %%i in (1,1,50) do (
  4.     set /a var=!random!%%10
  5.     if !var!==0 (
  6.         set /a a1+=1
  7.     ) else if !var!==1 (
  8.         set /a a2+=1
  9.     ) else if !var!==2 (
  10.         set /a a3+=1
  11.     )
  12. )
  13. echo,!a1!
  14. pause
复制代码

作者: 77七    时间: 2023-8-9 16:54

  1. @echo off
  2. if 1 equ 1 (set n=1) else set n=2
  3. echo %n%
  4. set n=
  5. if 1 equ 1 set "n=1" else set n=2
  6. echo %n%
  7. set n=
  8. if 1 equ 1 set n=1 else set n=2
  9. echo %n%
  10. set n=
  11. if 1 equ 2 set n=1 else set n=2
  12. echo %n%
  13. pause
复制代码

作者: hfgjgx    时间: 2023-8-9 17:05

回复 2# Batcher

输出变正常了,没有输出"运算符不存在"
作者: hfgjgx    时间: 2023-8-9 17:07

回复 3# 77七
你的代码不对吧




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