Ciao! Devo scrivere una funzione in C che genera una sequenza di M valori tra 0 e 1 e conta il numero di volte che è stato generato 1.
void funzione(int p[], int M)
{
int i, val;
int somma=0;
srand(time(NULL));
for(i=0;i<M;i++) {
val=rand()%2;
somma=somma+val;
}
write(p[WRITE],&somma,sizeof(int);
exit(0);
}
Una volta contate le occorrenze di 1 si scrive il risultato su una pipe. Nel main vengono definiti due processi diversi che chiamano questa funzione e poi il main dovrà determinare quello che ha contato più 1. Il problema è che tutti e due processi contano sempre lo stesso numero di 1. Come faccio a fare in modo che ad ogni chiamata di funzione cambia il numero di 1 generati?
Grazie!