C & C++/C & C++

[Tip] 중복없는 난수 발생

izen8 2011. 4. 4. 13:48
        int su; //발생된 난수저장

        int a,b;

        BOOL bDasi; //숫자가중복될경우 다시하기위한 변수

        for(a=0;a<9;a++)  //난수 9개 발생 
        { 
                bDasi=TRUE; 
                while(bDasi) 
                { 
                        bDasi=FALSE; 
                        su=rand()%10; //난수발생 
                        for(b=0;b 
                        { 
                                if(temp[b]==su)  //중복이면 
                                { 
                                        bDasi=TRUE; //중복이 잇으면 다시while 문을 실행한다 
                                        break
                                }//if 
                        }//for 
                }//while 
                temp[a]=su; //중복이 아니면 대입한다