4.给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
来源:互联网 发布:数据分析师cda看什么书 编辑:程序博客网 时间:2024/06/07 19:29
4.给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
问题分析:现在给了一个能随机生成1~5的随机函数,怎样利用这个已知条件生成一个1~7的随机函数呢?既然要生成的是随机数那么生成1,2,3,4,5,6,7的概率就应该是一样的。显然现在光生成1~5之间的数就不够了,我们想到应该要加大生成数的范围,并且加大范围的同时还要保证每个数产生的概率一样,于是有这样一种方法用这个表达式来扩大生成数范围:rand5()*5+rand5(),新的数据范围变成:6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30.并且可以看出来这个25个数出现的可能性是一样的,于是我们可以只用6~26之间的21个数变成1~7这7个数,于是就是要每3个数对应一个数,即:
6,7,8对应1
9,10,11对应2
…………
24,25,26对应7
这种变化对应的方式是(6 - 3)/ 3 = 1,(7 - 3) / 3 = 1,(8-3) / 3 = 1.看看代码吧:
相关代码:
1 int rand7()2 {3 int i;4 //直到产生6~26之间的数跳出循环5 while((i=rand5()*5+rand5()) > 26) ;6 return (i-3)/3;7 }
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数。
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数。
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数。
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数。
- 给定能随机生成整数 1 到 5 的函数,写出能随机生成整数 1 到 7 的函数。
- 4.给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 谷歌面试题:给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 网易游戏 从笔试到offer 经验分享——寻找最适合自己的公司和岗位
- Ubuntu apt安装软件失败的情况
- Android中View绘制流程以及invalidate()等相关方法分析
- [access][jdbc]java连接access数据库
- 成都传智播客java培训10月份新班开班
- 4.给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
- 验证模型
- UVA 11354 Bond(prim+LCA,4级)
- 16进制字符串与图片互转
- linux编程--获取文件状态与文件映射mmap .
- UIALertView的基本用法与UIAlertViewDelegate对对话框的事件处理方法
- 什么是java序列化,如何实现java序列化?
- Service详解之路01_怒说Service生命周期
- [设计模式笔记]三. 行为型模式--18. Iterator模式(迭代器)对象行为型模式(一)