如何计算每个数字的重复次数?

所以我有一个 for loop 循环100次,每次循环都会生成一个从1到100的随机数。为了做一些统计,我需要计算每个数字重复的次数。除了手动之外,我不知道该怎么做。

One = 0
Two = 0
Three = 0
Four = 0
Five = 0
for i=1, 100 do
  number = GetRandomNumber(1, 5, 1.5)
  if number == 1 then
    One = One + 1
  elseif number == 2 then
    Two = Two + 1
  elseif number == 3 then
    Three = Three + 1
  elseif number == 4 then
    Four = Four + 1
  elseif number == 5 then
    Five = Five + 1
  end
end

这是我目前的计数方式,但我不想为每个数字手动输入。如何让这更简单?

点赞
用户308010
用户308010
number_counter, number = {}, 0
for i = 1, 100 do
  number = GetRandomNumber(1, 5, 1.5) // 在1到5之间生成一个随机浮点数
  if number_counter[number] then
    number_counter[number] = number_counter[number] + 1 // 如果number已存在,将number计数器加1
  else
    number_counter[number] = 1 // 否则将number计数器设置为1
  end
end

当然,这里假设没有半分(不知道1.5是什么)。然后您可以调用number_counter [#]来查看其值。

2016-05-25 17:27:53