#include
#include
int random(int);
void ran (int num[]);
void main(){
int tt[100]; //생성된 난수가 저장될 배열
srand(time(0)); //매번 실행 할때 마다 같은 순서의 난수값을 발생시키 않기 위해 현재 시간값을 준다.
ran(tt); //100개의 난수 발생
printf("\n*** 1부터100까지의 발생 된 난수 ***");
for(int r=0 ; r<100; r++){ //100개 난수
if(r%20 == 0) printf("\n");
printf("%3d ",tt[r]);
}
}
void ran(int num[]){
int i,j;
int sfound;
for (i=0; i<100; ++i){
while(1){
num[i] = random(100);
sfound = 0;// 이미있는값인지확인하기위해플래그설정
for (j=0; j if ( num[j] == num[i] ){ // 같은값이있으면 플래그값을 참으로
sfound = 1;
break;
}
}
if (!sfound)
break; // 같은값이없으면while문탈출
}
}
}
int random(int n) //난수 발생 함수
{
int res;
res = rand() % n; //0에서 n-1까지 난수 발생
return res+1; //그값에 1을 더해주어 반환하면 1에서 n까지 난수 발생
}
댓글 없음:
댓글 쓰기