電子書籍の厳選無料作品が豊富!

プログラミングの問題で分からないものがあります。


m人のグループに同じ誕生日の人が二人以上いる確率Pはどのような式で表されるか?
ただし、誕生日は1年365年に渡ってランダムに分布すると仮定する。(まず、同じ誕生日の人が一人もいない確率を考えるとよい。)

グループ人数mの入力に対しPを計算するプログラムを作りなさい。
Pが初めて1/2を超えるmの値を求めよ。(そのようなmの値を求めるプログラムを作りなさい。)


回答お願いします。

A 回答 (3件)

static int bd[365];



int samebd(int d){
if(bd[d]) return 0;
bd[d] =1;
return 1;
}

int main(){
int a = 100;
float aa,ab,q;
for(int i=0;i<100000;i++){
memset(bd,0,sizeof(bd));
for(int j =0;j<a;j++){
if(!samebd(rand()%365))
{ab++;break;}
}
aa++;
}
printf("%f¥n",ab/aa);
return 0;

}
    • good
    • 0

こんにちは。



23人です。

「誕生日のパラドックス」でググってみて下さい。
    • good
    • 1

何が判らない?



> m人のグループに同じ誕生日の人が二人以上いる確率Pはどのような式で表されるか?

これが判らないなら、プログラムは無理。

数学のカテゴリで質問した方が良いよ。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!