Ho risolto.
Ho creato una nuova variabile con il valore che non voglio modificare e poi ho modificato solamente quella nuova
new_variabile=variabile
ed ho eseguito tutte le modifiche sulla new.
#include <cstdlib>
#include <iostream>
using namespace std;
int main()
{
int istanti_di_tempo;
int numero_di_prove;
int rack;
int slot;
int domanda_tot_sistema;
int domanda_cliente;
int i;
int p;
int t;
int totale;
int clienti;//ho definito clienti come intero almeno c++ mi prende direttamente la parte intera inferiore
srand((unsigned)time(NULL));//per inizializzare la funzione rand()
cout<<"Quanti istanti di tempo vuoi considerare? ";
cin>>istanti_di_tempo;
cout<<endl;
cout<<"Quante prove vuoi fare? ";
cin>>numero_di_prove;
cout<<endl;
cout<<endl;
cout<<endl;
cout<<endl;
for(p=1;p<=numero_di_prove;p++)
{
cout<<"PROVA "<<p<<endl;
cout<<endl;
cout<<endl;
rack = rand() % (11) + 5;
cout<<"Numero di rack = "<<rack<<endl;
cout<<endl;
slot = rand ()%(11)+20;
cout<<"Numero di slot per rack = "<<slot<<endl;
cout<<endl;
domanda_tot_sistema=slot*rack;
cout<<"Domanda totale che il sistema sopporta = "<<domanda_tot_sistema<<endl;
cout<<endl;
int domanda_min;
int clienti_max;
int clienti_min;
domanda_min=slot/3;
clienti_max=(domanda_tot_sistema/(domanda_min));
clienti_min=domanda_tot_sistema/slot;
clienti= rand()%(clienti_max-clienti_min+1)+clienti_min;
cout<<"Clienti MIN = "<<clienti_min<<endl;
cout<<endl;
cout<<"Clienti MAX = "<<clienti_max<<endl;
cout<<endl;
cout<<"Numero di clienti = "<<clienti<<endl;
cout<<endl;
cout<<"Domanda MIN = "<<domanda_min<<endl;
cout<<endl;
cout<<"Domanda MAX = "<<slot<<endl;
cout<<endl;
cout<<endl;
cout<<endl;
for (t=1;t<=istanti_di_tempo;t++)
{
cout<<"Istante di tempo "<<t<<endl;
cout<<endl;
cout<<endl;
cout<<endl;
etichetta:
totale=0;
int new_slot;
int new_domanda_min;
int new_domanda_tot_sistema;
new_slot=slot;
new_domanda_min=domanda_min;
new_domanda_tot_sistema=domanda_tot_sistema;
for (i = 1; i<= clienti; i++)
{
cout<<"DOMANDA MINIMA = "<<new_domanda_min<<endl;
cout<<"DOMANDA MASSIMA = "<<new_slot<<endl;
cout<<"SLOT = "<<new_slot<<endl;
domanda_cliente = rand() % (new_slot-new_domanda_min+1)+(new_domanda_min);
new_domanda_tot_sistema=new_domanda_tot_sistema-domanda_cliente;
totale=totale+domanda_cliente;
new_slot=new_domanda_tot_sistema/rack;
new_domanda_min=new_slot/3;
cout << "Domanda cliente " << i << " = " << domanda_cliente << endl;
cout<<endl;
cout<<endl;
}
cout<<endl;
cout<<"La capacita' richiesta dal sistema e' = "<<totale<<endl;
cout<<endl;
cout<<endl;
cout<<endl;
cout<<endl;
cout<<endl;
cout<<endl;
}
}
cout<<endl;
system("PAUSE");
return 0;
}
Ora il programma gira ma ho soltanto un problema.
Quando va in esecuzione e stampa i risultati, quando sono molte prove non vedo i risultati dall inizio, come se non entrano e me li taglia quelli iniziali.
Ci sta un modo per esportare i risultati su file??
Grazie e Ancora AUGURI