Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    [C++] Tempo di esecuzione e stampa su carta

    Scusate dovrei usare bubble sort e selection sort con degli array e stampare su carta la codifica degli algoritmi il tempo di esecuzione. MI potete dire come si fa a calcolare il tempo di esecuzione del processo e come si stampa il tutto (codifica e tempo) su carta (anzichè a video)?
    Qui vi metto un programma che ho fatto, ripeto non ho alcuna cognizione ne' spiegazione di come calcolare il tempo di esecuzione del solo bubble sort e quindi cosa e dove mettere nell'esempio che vi ho scritto. Se avvio il programma cosi' com'è c'è l'execution time ma varia in base a quanto ci metto ad inserire manualmente i numeri dell'array, non mi dice il tempo di esecuzione del bubble sort.
    E per la stampa su carta come si fa?
    Grazie a tutti.

    codice:
    #include <iostream>
    #include <ctime>
    using namespace std;
    
    int main()
    {
    
    const int n = 3;
    int vet[n];
    int tmp;
    for(int i=0;i<n;i++)
    {
        cin>>vet[i];
    }
    cout<<endl;
    bool flag =  true;
    int stop = n - 1;
    
    while (flag)
    {
        flag = false;
        for (int i = 0; i <= stop; i++)
            if (vet[i] > vet[i + 1])
            {
                //swap(vet[i], vet[i + 1]); // std::swap()
                tmp=vet[i];
                vet[i]=vet[i+1];
                vet[i+1]=tmp;
                flag = true;
            }
    
        stop = stop - 1;
    }
    for(int i=0;i<n; i++)
    {
        cout<<vet[i]<<endl;
       
    }
    }
    Ultima modifica di alka; 22-05-2018 a 09:54 Motivo: Aggiunto il tag CODE

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Per il tempo valgono le risposte che hai avuto in

    https://www.tomshw.it/forum/threads/...a-in-c.711840/

    (inutile riproportele).

    Per la stampa su carta, anche a me sembra strano che lo debba fare il programma.

    Semmai il programma deve produrre un file (di testo) stampabile su qualsiasi stampante disponibile nel sistema in cui sarà spostato.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Per il tempo valgono le risposte che hai avuto in

    https://www.tomshw.it/forum/threads/...a-in-c.711840/

    (inutile riproportele).

    Per la stampa su carta, anche a me sembra strano che lo debba fare il programma.

    Semmai il programma deve produrre un file (di testo) stampabile su qualsiasi stampante disponibile nel sistema in cui sarà spostato.
    Ma come si produce il file di testo stampabile in windows? E comunque non riesco a far uscire il tempo del solo processo del bubble sort....
    Ho provato cosi' ma niente (mi viene sempre l'execution time totale ma se io metto lentamente i valori dell'array l'execution time aumenta quindi non mi da' il tempo solo del processo di bubble sort):


    codice:
    int main()
    {
    time_t inizio = time(NULL);
    
    const int n = 3;
    int vet[n];
    int tmp;
    for(int i=0;i<n;i++)
    {
        cin>>vet[i];
    }
    cout<<endl;
    bool flag =  true;
    int stop = n - 1;
    
    while (flag)
    {
        flag = false;
        for (int i = 0; i <= stop; i++)
            if (vet[i] > vet[i + 1])
            {
                //swap(vet[i], vet[i + 1]); // std::swap()
                tmp=vet[i];
                vet[i]=vet[i+1];
                vet[i+1]=tmp;
                flag = true;
            }
    
        stop = stop - 1;
    }
    for(int i=0;i<n; i++)
    {
        cout<<vet[i]<<endl;
       double tempoDiSorting = difftime(time(NULL), inizio);
    }
    }
    Ultima modifica di MisterMPG; 22-05-2018 a 12:41

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Scusa, mi pare ovvio che questa

    time_t inizio = time(NULL);

    la devi spostare DOPO l'input da tastiera !

    Per generare un file, non sai come si scrive su file di testo? Mi sembra impossibile ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Scusa, mi pare ovvio che questa

    time_t inizio = time(NULL);

    la devi spostare DOPO l'input da tastiera !

    Per generare un file, non sai come si scrive su file di testo? Mi sembra impossibile ...
    Non so generare il file di testo di quello che mi risulta stampato a video con il programma codeblocks...

  6. #6
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Scusa, mi pare ovvio che questa time_t inizio = time(NULL); la devi spostare DOPO l'input da tastiera ! Per generare un file, non sai come si scrive su file di testo? Mi sembra impossibile ...
    Non so generare il file di testo di quello che mi risulta stampato a video con il programma codeblocks...

  7. #7
    .......
    Ultima modifica di MisterMPG; 22-05-2018 a 16:29

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.