#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int a[23];
int i, j, count;
int sum = 0;
float f_sum;
srand((unsigned int)time(NULL));
for(count = 0; count < 10000000; count++)
{
for(i = 0; i <sizeof(a)/sizeof(a[0]); i++)
{
a[i] = rand()%365+1;
//printf("%d번째 인덱스 값은 : %d \n", i, a[i]);
}
for (i = 0; i <sizeof(a)/sizeof(a[0]); i++)
{
for(j = 0; j < i; j++)
{
if(a[i] == a[j])
{
//printf("%d번째 값과 %d번째 값이 같다\n", i, j);
sum++;
}
}
}
//printf("=====================================================\n");
}
printf("같은 숫자 횟수는 : %d\n", sum);
f_sum = sum / 10000000.0;
printf("평균 확률은 :%f\n", f_sum);
return 0;
}
이거 생일 역설을 내가 한번 짜본건데 돌아가긴 돌아가거든
근데 소스가 너무 지저분 한거 같아서 그러는데 어떻게 고칠 방법 없을까?
배열 길이를 매번 계산하지 말고 걍 define 해놓고 쓰던가
프로그램 깔끔한데?
여기서 더깔끔하게하는건 쓸데없는짓
C언어 ?