Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <time.h>
- #include <stdlib.h>
- #define EXPMAX 1000000
- #define NMAX 365
- #define NMIN 2
- int fillDate(int*,int);
- int getInt(char*,int,int);
- int main () {
- srand48(time(0));
- int N, date[NMAX], i, freq, EXP;
- long double prob;
- N = getInt("N persone",NMIN,NMAX);
- EXP = getInt("N esperimenti",1,EXPMAX);
- freq=0;
- for (i=0;i<EXP;i++) {
- freq+= fillDate(date,N);
- }
- prob= freq*100./EXP;
- printf("Percentuale di probabilità: %Lf\n",prob);
- return 0;
- }
- int getInt(char*mess,int min,int max) {
- int out;
- do {
- printf("%s [%d,%d]: ",mess,min,max);
- scanf("%d",&out);
- }while(out<min||out>max);
- return out;
- }
- int fillDate(int*array,int len) {
- int i, j;
- for (i=0;i<len;i++) {
- *(array+i) = lrand48()%(NMAX-1);
- for (j=0;j<i;j++) {
- if (*(array+j)==*(array+i)) return 1;
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement