如何在没有条件的情况下更新直方图?
How to update a histogram without conditionals?
我正在编写一个掷骰子程序,它掷骰子并打印一个直方图,显示每个数字出现的次数。 (1-6)
例如:
1-xxxxxxx
2-xxx
3-xxxxxxxxx
4-xx
5-
6-x
程序询问用户应掷骰子多少次,因此循环应 运行 并掷骰子多少次。骰子上的每个数字在程序中都表示为向量元素,因此例如出现 5 次(比如 7 次)的次数为 vector[4] == 7 我的问题是我不允许使用 switch 语句或 if 语句来更新每个数字的计数。我问了我的助教,他告诉我 vector::operator[] 会起作用,但我什至不知道那有什么用,在线参考也无济于事。有谁知道如何实现这一点,因为我对 C++ 和我的教授还很陌生。没有教太多。谢谢!
由于您在问题中提供的信息很少,我假设您(几乎)拥有所有 运行 并且正在工作,您只需要知道如何使用 [=11= 增加矢量]..
int r = random number between 1 and 6
my_vector[r-1] += 1;
就是这样:)
我正在编写一个掷骰子程序,它掷骰子并打印一个直方图,显示每个数字出现的次数。 (1-6)
例如:
1-xxxxxxx
2-xxx
3-xxxxxxxxx
4-xx
5- 6-x
程序询问用户应掷骰子多少次,因此循环应 运行 并掷骰子多少次。骰子上的每个数字在程序中都表示为向量元素,因此例如出现 5 次(比如 7 次)的次数为 vector[4] == 7 我的问题是我不允许使用 switch 语句或 if 语句来更新每个数字的计数。我问了我的助教,他告诉我 vector::operator[] 会起作用,但我什至不知道那有什么用,在线参考也无济于事。有谁知道如何实现这一点,因为我对 C++ 和我的教授还很陌生。没有教太多。谢谢!
由于您在问题中提供的信息很少,我假设您(几乎)拥有所有 运行 并且正在工作,您只需要知道如何使用 [=11= 增加矢量]..
int r = random number between 1 and 6
my_vector[r-1] += 1;
就是这样:)