Ordinare in ordine decrescente output codice?

di il
88 risposte

88 Risposte - Pagina 6

  • Re: Ordinare in ordine decrescente output codice?

    Purtroppo non riesco a venirne fuori. Consigli su come scrivere il codice?
  • Re: Ordinare in ordine decrescente output codice?

    Ma cosa c'è di difficile? Se devi scrivere su file fai come hai fatto

    f << variabile;
  • Re: Ordinare in ordine decrescente output codice?

    Io voglio stampare tutta l esecuzione del programma.
    Tutto quello che stampa a schermo perchè per un gran numero di prove non mi fa vedere i primi risultati ma solo gli ultimi.
    Se provi a far girare il codice
    #include <cstdlib>
    #include <iostream>
    #include <fstream>
    
    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;
                               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;
                            }            
               }
    ofstream f("C:\Domande programma tesi.txt",ios::out);
    if(!f)
    {
    cout<<"Errore nella scrittura del file";
    return 1;//termina il programma in anticipo
    }
    f<<domanda_cliente<<endl;
    cout<<"Scrittura avvenuta con successo!!!";
        cout<<endl;
        system("PAUSE");
        return 0;
    
    }
    
    vedrai anche se metti un 4 alla prima cosa che ti chiede e un 4 alla seconda cosa che ti chiede e spingi invio.
    La soluzione stampata è incompleta.
  • Re: Ordinare in ordine decrescente output codice?

    Ma cosa intendi con incompleta ...?

    E cosa è la versione stampata? Si stampa su carta ...

    Se intendi "registrata" su file, allora vuol dire che non hai inserito tutte le righe

    f << variabile;

    che ti servivano
  • Re: Ordinare in ordine decrescente output codice?

    Se il titolo della discussione è stampa su file secondo te cosa vorrò intendere con stampa?
    Comunque per incompleto intendo che con molte stampe a schermo che esegue il codice non riesco a vedere tutti i cout dall inizio...ma da un certo punto in poi come se una volta compilato ed eseguito il codice quello che esce fuori può avere al massimo una data dimensione e superata quest ultoma tronca la visualizzazione.
    Spero di essere stato chiaro.
  • Re: Ordinare in ordine decrescente output codice?

    Buongiorno a tutti e buon anno.
    l'output del codice mi da un insieme di domande di n clienti.
    Come fare per ordinarle in ordine decrescente?
  • Re: Ordinare in ordine decrescente output codice?

    Devi memorizzarle da qualche parte (un array o, anche meglio, un vector) e poi applicare uno dei tanti algoritmi di ordinamento esistenti: bubble sort, insertion sort, selection sort, quick sort, ...
  • Re: Ordinare in ordine decrescente output codice?

    Come potrei inserire le domande create nel vettore??
    In questo modo evito anche la lettura da file vero??
  • Re: Ordinare in ordine decrescente output codice?

    Continui ad usare questo thread per qualsiasi problema ... non va bene ... è diventato così lungo e contorto che nessuno lo legge più ...
  • Re: Ordinare in ordine decrescente output codice?

    Ok. Prossima domanda su un altro post
  • Re: Ordinare in ordine decrescente output codice?

    Sì, probabilmente è meglio aprire un nuovo thread che riguardi solo il problema specifico. Comunque per inserire elementi in un vettore va benissimo una normale push_back, a meno che tu non voglia fare un inserimento direttamente nell'ordine corretto. In quest'ultimo caso puoi utilizzare la insert, ma devi conoscere il concetto di iteratore ecc.
  • Re: Ordinare in ordine decrescente output codice?

    Forse ci sono.

    Prima cosa dichiario un vettore della dimensione del numero dei clienti.
    int domanda_cleinti[clienti]
    poi cosa dovrei fare nel codice per inserire le domande create nel vettore?
    Sul manuale non la trovo questa funzione push_back.
  • Re: Ordinare in ordine decrescente output codice?

    Altro thread...
  • Re: Ordinare in ordine decrescente output codice?

    Ok
Devi accedere o registrarti per scrivere nel forum
88 risposte