一个家庭两个孩子,已知一个是女孩,另一个是女孩的概率是?C++

复制代码
 1 #include <ctime>
 2 #include <iostream>
 3 #include <algorithm>
 4 
 5 using namespace std;
 6 
 7 class family{
 8 public:
 9     family(int cnt = 10000) :cnt(cnt), g1(0), g2(0){} 
10     void test(){
11         srand((unsigned)time(nullptr));
12         for(int i = 0; i < cnt; ++i){
13             auto x = rand() % 2;
14             auto y = rand() % 2;
15             if(x == girl && y == girl) // 两个都是女孩
16                 g2++;
17             if(x == girl || y == girl) // 两个孩子至少有一个是女儿
18                 g1++;
19         }
20         cout << g2 * 1.0 / g1 << endl;    
21     }
22 
23 private:
24    // 概率论公式: 设g1表示第一个孩子是女孩,g2表示第二个孩子是女孩,则有P(g2|g1) = P(g1g2) / P(g1)
25     constexpr static int girl = 0;
26     constexpr static int boy = 1;
27     int cnt;//实验次数
28     int g1, g2;
29 };
30 
31 
32 int main()
33 {
34     family a;
35     a.test();
36 
37     return 0;
38 }
复制代码

 

posted @   鸿钧三清  Views(758)  Comments(0Edit  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示