关于概率算法的问题,不知道逻辑错在哪里,求debug
做个骰子成功几率的分析,投n颗骰子,第一次投成功的几率是a,然后投成功的骰子,需要再投1次,这次成功的几率是b。第二次成功的骰子才算最终成功。
要分析出n颗骰子,最终成功0到n颗的概率。
我写了个算法,求出的结果,合计0到n颗的概率不近似1,而且差别很大,求教各位大大算法有什么错误。
我算法的基本思路:
先统计出第一次投成功0-n颗骰子的概率列表。这步我自认没有问题,合计验算结果近似1
for (var i = 0; i <= n; i++){FirstSuccessRateTbl.Add(i, Utils.C(n, i)*(decimal)(Math.Pow((double)firstSucessRate,i)*Math.Pow((double)firstLoseRate,n-i))); }
其中Utils.C是我按C概率公式写的函数。FirstSuccessRateTbl用的是哈希表。
然后以第一次成功的概率表作为条件概率统计后一次成功X颗的几率,即累加第一次成功X及X以上颗骰子的情况下第二次投成功X颗的概率。
decimal sucessXRate = 0; for (int i = x; i <= n; i++) {sucessXRate += FirstSuccessRateTbl[i] * (decimal)(Math.Pow((double)secordSucessRate, i)*Utils.C(i,i-x)*Math.Pow((double)secordFailRate,i-x)); } return sucessXRate;
但是按这个算法算下来,2次成功0-n颗的几率合计不为1,不知道错误在哪里。
关于概率算法的问题,不知道逻辑错在哪里,求debug >> csharp
这个答案描述的挺清楚的:
http://www.goodpm.net/postreply/csharp/1010000008918700/关于概率算法的问题不知道逻辑错在哪里求debug.html
转载于:https://www.cnblogs.com/scrumme/p/7135934.html
关于概率算法的问题,不知道逻辑错在哪里,求debug相关推荐
- c语言火车票管理系统360问答,C语言 车票管理系统 前面一点点的程序,不知道报错是什么意思,可以解释一下吗?代码的具体问题是什么...
满意答案 #include "stdio.h" #include #include #define N 1000 typedef struct //定义新结构体Ticket { 5 ...
- n个人围成一圈 报数java_n个人围成一圈报数,报到3的人退出,依次直到剩下一人,这人是第几个人?用java,不知道哪里错...
importjava.util.Scanner;publicclasscjj{publicstaticvoidmain(String[]args){Scannerinput=newScanner(Sy ...
- 杭电c语言课程设计实验7,杭电1072 BFS 大神给看看啊 郁闷整整10个小时了 不知道哪里错wa...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 NightmareTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K ( ...
- kernel php segfault,php不停报错segfault,求高手帮忙
系统日志不停报:Dec 21 18:54:09 CentOS5 kernel: php-cgi[6529]: segfault at 000000000839d518 rip 000000000070 ...
- keil 报错解决 Loading PDSC Debug Description failed forSTMicroelectronics STM32xxxx
当我们导入新的包时,可能会出现下面的报错. 会提示报错的路径: 所以就需要去找对应的路径 找到后先将只读属性去掉. 然后简单点,就用记事本打开: 然后 ctrl + f,点出查找界面,输出 Messa ...
- Python发送邮件报错554,求解答。
import smtplib from email.mime.text import MIMEText from email.utils import formataddrmsg = MIMEText ...
- hive中insert插入一条记录报错,跪求高人指点!!!
问题描述: 在hive中创建数据库和数据表之后,进行insert操作报错. hive (myhive)> insert into stu values (1,"zhangsan&quo ...
- 求解!IDEA使用泛型V,K,V报红(报错),求大佬支招(已解决)
public class LRULinkedHashMap extends LinkedHashMap {public V put(K key, V value){try {lock.lock();r ...
- 对逻辑回归损失函数进行求导
如果我们基于逻辑回归的损失函数做GD梯度下降,那么就要求梯度,而我们知道求梯度是loss损失函数对theta求偏导. 1.首先先对逻辑回归函数求导(后面对loss求偏导会用到) 2.逻辑回归损失函数 ...
最新文章
- 平年闰年c语言源代码,C语言平年闰年问题
- javascript 匿名函数的理解
- c语言随机延迟5-10秒,linux下写个C语言程序,要求有0.5微秒以下的延时,要怎样写...
- 浅谈网络协议(一) 为什么要学网络协议
- 【安全漏洞】Resin解析漏洞分析
- 【阿里云课程】卷积神经网络:结构单元、卷积层反向传播求解与典型模型
- 扩展类加载器 Extension ClassLoader
- LeetCode 1945. 字符串转化后的各位数字之和
- SpringBoot笔记整理(二)
- CVPR 2019 行人检测新思路:高级语义特征检测取得精度新突破
- Bootstrap三角箭头.caret 类
- AngularJs form.FormController、ngModel.NgModelController
- springboot mybatisplus 多数据源_【SpringBoot DB 系列】MybatisPlus 多数据源配置
- eclipse为项目设置jdk
- 经典混响插件免安装+50拓展 – Audio Ease Altiverb 7 XL 7.2.8 WiN
- 小米便签产品级的源码
- Kali 利用setoolkit制作钓鱼网站
- uniapp使用IPA苹果支付
- linux 复制文件提示略过目录xxx
- 戴尔刀片服务器型号在哪里,戴尔 PowerEdge M640 刀片式服务器:服务器 | Dell 中国大陆...
热门文章
- java监听焦点事件_【Java Swing公开课|Java Swing焦点事件监听器怎么用,看完这篇文章你一定就会了】- 环球网校...
- 已知法向量 求投影_MIT—线性代数笔记15 子空间投影
- Oracle 11g ora 15018,oracle 11gR2 RAC root.sh 错误 ORA-15072 ORA-15018
- python excel 数据匹配实现vlookup功能_如何用python实现excel中的vlookup功能?
- curd什么意思中文_查英英字典:What a shame是什么意思?
- 平板的android版本是5.0.2,EMUI5.0荣耀平板2升级固件下载
- Linux相关配置 集群免密码登录配置
- linux ps 详解 博客,Linux PS 命令 详解(转)
- 检查各计算机所属工作组ip,如何在Win8.1/RT 8.1中添加语言或键盘
- c语言之优先级 结合性与自增运算,C语言之优先级、结合性与自增运算