QuizWit

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ QuizWit ] in KIDS
글 쓴 이(By): cocoon (엔젬블)
날 짜 (Date): 1996년09월06일(금) 11시08분02초 KDT
제 목(Title): cella 님에 대한 반론

>그렇다면 출연자가 2를 
>
>선택한 다음, 사회자가 1을 선택하면 0에 자동차가 있다는 것을 알 수 있게 

그것은 출연자가 처음에 자동차를 선택하지 않았다는 것을
  알았을 때만 해당하는 얘기 아닌가요?


>된다. 그러므로 프로그램은 사회자가 여는 커텐의 번호를 가능한 번호 중에서
>
>무작위적으로 선택되어야 할 것이다. 그리고 실제로 그렇게 프로그램을 
>
>고쳐서 실행시키면, 확률은 1/2이 된다.

무작위로 서택하게 해도 역시 2/3, 1/3이 맞습니다.

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
        int car, first, new, oper, change=0, unchange=0;

        unsigned int m, c;

        if(argc==1) {
                printf("Usage : car <number of try>\n");
                return 1;
        }
        m = atoi(argv[1]);

        for(c=0 ; c<m ;c++){
                first = (int)rand(100) %3; /*출연자의 처음 선택*/
                car = (int)rand(100) %3; /*실제 차가들어있는방*/

                for(;;) {
/* 사회자의 선택 */
/* cella님의 뜻대로 가능한 범위에서 무작위 추출*/
                        oper=(int)rand(100)%3;
                        if(oper!=car&&oper!=first)
                                break;
                }

                new = 3-oper-first; /* 선택을 바꿀때의 방*/

                if(car == first) unchange++;
                else if(car == new) change++;
        }

        printf("Changed : %d\nUnchanged : %d\n", change, unchange);

}

[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.