Buongiorno, ritorno per chiedere il vostro aiuto
Dopo aver implementato una funzione tipo randexp(T,t) che produce
tempi t distribuiti secondo un epsonenziale con parametro T, adesso ho bisogno di fare un ulteriore passaggio.
Devo mettere in relazione la vita media di un nucleo padre e di un nucleo figlio in una catena di decadimenti. I tempi di vita dei nuclei sono quelli generati dalla mia funzione randexp (T,t).
Avendo T_padre vita media del padre, e T_figlio è la vita media del figlio,
se chiamo randexp(T_padre, t1) ottengo il t1 di vita di un nucleo padre, e se chiamo randexp(T_figlio, t2) ottengo il t2 di vita di un nucleo figlio.
Se sommo t1+t2 ottengo la vita totale della coppia.
Ripeto questo passo tutte le N volte che mi serve, e ho prodotto N accoppiate padre+figlio.
Ho bisogno quindi di sommare i tempi t che ho ottenuto dalla mia funzione. Come posso fare? Ho provato ad utilizzare una semplice somma ma non riesco a sommare 2 valori. Dei 1000 numeri che ho generato devo ottenere le N somme di 2 valori.
Ho bisogno di creare un array in cui salvare i numeri generati e poi sommarli?
Il mio codice di partenza è il seguente:
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <math.h>
float randexp (float T, float t)
{
t = (rand()*1.0)/RAND_MAX;
return (-T)*log(t);
}
int main()
{
float y,t,T ; int i;
for(i=0; i<1000; i++){
T=1;
y = randexp (T,t);
printf("%f\t", y);
}
getch();
}