수정 좀 해주세요,,
떠나간그놈
난수발생기 rand()를 이용하여 [0,10)사이의 정수를 1000번 생성하고 그 분포를
조사하시오. 즉, 0, 1, 2, …, 9가 각각 몇 번 발생되었는지 조사하는 프로그램을 switch
문을 이용하여 작성하라.
참고로, [0,N) 사이의 정수 난수를 발생시키는 방법은 다음 두 가지가 있다.
rand() % N
(int)( (double) rand() / (RAND_MAX + 1) * N )
이 두 가지 방법을 이용하여 수행한 후, 결과에 차이가 있는지 분석하라.이 문제인데요,,,이걸 for 문으로 작성했는데
switch로 어떻게 바꾸는지 모르겠어요 ㅡㅡ;;
수정이라고 하기보다는...다시 짜야 되는뎅,,,
switch 로 수정 좀 부탁드려요,,,
#include stdio.h
#include time.h
#include stdlib.hint main()
{
srand(time(NULL));
int i,n;
int a[10];
for(i=0;i10;i++)
{
a[i]=0;
}
for(i=0;i1000;i++)
{
n=(int)( (double) rand() / (RAND_MAX + 1) * 10 );
a[n]++;
}
printf((int)( (double) rand() / (RAND_MAX + 1) * N )\n);
for(i=0;i10;i++)
{
printf(%d - %d\n,i,a[i]);
}for(i=0;i10;i++)
{
a[i]=0;
}
for(i=0;i1000;i++)
{
n=rand()%10;
a[n]++;
}
printf(\nrand() %% N\n);
for(i=0;i10;i++)
{
printf(%d - %d\n,i,a[i]);
}
return 0;
}
-
잠팅이
글구 지난번에 짜서 보내줬잖아요... 버럭~
-
헤벌심
두 가지 for문은 switch안에 case 당 하나씩 배치하세요..
-
보단
이 문제를 switch 문으로 할 줄 몰라서요,, 바꾸는게 아니라,,다시 짜는거에요 ㅠㅠ
-
네코
for는 반복이고.. switch는 조건 선택인데.. 이걸 어떻게 서로 바꾸죠?