将随机范围从1-5扩展到1-7。给定一个在1到5范围内产生随机整数的函数,写一个在1到7范围内产生随机整数的函数。什么是简单的解决方案?什么是减少内存使用或在较慢的CPU上运行的有效解决方案?
3 回答
慕勒3428872
TA贡献1848条经验 获得超6个赞
int rand7() { int vals[5][5] = { { 1, 2, 3, 4, 5 }, { 6, 7, 1, 2, 3 }, { 4, 5, 6, 7, 1 }, { 2, 3, 4, 5, 6 }, { 7, 0, 0, 0, 0 } }; int result = 0; while (result == 0) { int i = rand5(); int j = rand5(); result = vals[i-1][j-1]; } return result; }
添加回答
举报
0/150
提交
取消