Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    13

    autonoleggio

    Scrivere un programma che gestisce un autonoleggio attraverso la costruzione di un archivio. Le operazioni possibili dovranno essere:
    • Inserimento
    • Ricerca
    • Modifica
    • Visualizza
    Per ogni veicolo dovrà essere possibile visualizzare la targa, il tipo, i chilometri, la data di inizio noleggio , la data di fine noleggio, costo noleggio giorno, giorni noleggio, costo noleggio .
    Ricerca e visualizzazioni particolari:
    • Scadenza noleggio
    • Elenco veicolo per km percorsi
    • Fuori uso del veicolo al superamento di una certa soglia di km
    questa è la traccia dell'esercitazione che ho avuto da fare in turbo c++. l'unico problema è che nn riesco a creare la ricerca in base alla:
    1. Marca
    2. Modello
    3. Tipo
    4. Targa
    5. Km
    6. Inizio noleggio
    7. Fine noleggio
    8. Costo noleggio per giorno
    9. Quanti Giorni noleggio
    inpratica io acrei bisogno di un metodo che quando vado sulla funzione ricerca mi esca una spece di menù ke mi dica come in base a cosa la voglio fare e poi clikkando su una delle opzioni me la fa!! x piacere potete aiutarmi???

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Aiutarti come ? Non si postano i compiti gia' fatti ...

    Devi provarci da solo ... il forum serve eventualmente a correggere/migliorare il tuo codice ...

    E poi, avevi gia' postato una questione simile

    http://forum.html.it/forum/showthrea...readid=1326710

    e ti e' stata chiusa ... dai un'occhiata al regolamento ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    13

    autonoleggio

    infatti io nn kiedo un compito da svolgere, kiedo soltanto di aiutarmi a formulare la codifica x come devo ricercare!!

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Quale codifica ... ?

    Comincia a dare tu qualche indicazione ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    13

    autonoleggio

    io x adesso ho fatto soltanto ricerche in base a numeri.
    ricerca(int&n,autonoleggio persone[])
    {
    int trovato,primo,ultimo,medio;
    char cercato[3];
    cin<<cercato;
    trovato=0;
    primo=0;
    ultimo=n-1;
    while (primo <=ultimo&&trovato==0)
    {
    medio=(primo+ultimo)/2;
    if (strcmp(cercato,tabella,[medio].codice)
    ==0)trovato=1;
    else if (strcmp(cercato,tabella[medio].codice>0)primo=medio+1);
    else ultimo=medio+1;
    }
    if (trovato==0)cout<<"auto non trovata";
    else cout<<medio;
    }
    una cosa del genere!!

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    La funzione strcmp si usa per confrontare delle stringhe, non per i numeri ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    13

    autonoleggio

    ok ma sei io voglio fare una ricerca in base alla marca, o al modello o inizio noleggio come faccio??

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    La marca e il modello sono stringhe (presumo). Quindi, proprio in questo caso, dovrai usare la strcmp. L'inizio noleggio e' una data e si deve sapere che tipo di dato hai usato per impostare il criterio di confronto per la ricerca.

    Quello che manca per potere discutere della ricerca, e' tutto il resto del programma ...

    Se l'hai scritto, mostralo USANDO i tag CODE (altrimenti non si capisce nulla).

    In base a come hai scritto tutto il resto del programma, si puo' impostare la ricerca.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    13

    autonoleggio

    questo è il mio programma senza ricerca! se è possibile controllarlo x vedere se ho sbagliato qlk ma soprattutto x aitarmia fare la ricerca!! grazie mille in anticipo =)=)


    #include<iostream.h>
    #include<conio.h>
    #include<fstream.h>
    #include<string.h>
    #include<iomanip.h>
    #include <stdio.h>
    #include <stdlib.h>


    struct dati{
    char marca[20];
    char modello[20];
    char targa[10];
    char tipo[30];
    int km;
    int costo_noleggio;
    int giornitot;
    int superamento_km;
    int inizio_noleggio;
    int fine_noleggi;};

    //struct inizio_noleggio {int giorno,mese,anno;};
    //struct fine_noleggio {int giorno,mese,anno;};


    void caricamento(dati squadra[],int&n);
    void calcoli(dati squadra[],int n);
    void ordinamento(dati squadra[],int n);
    void visualizza(dati squadra[]);
    void scrittura(dati squadra[],int n);
    void lettura(dati squadra[]);SI
    void modifica(dati squadra[],int n);
    void parametri(dati squadra[],int n);
    void aggiorna(dati squadra[],int n);


    void main()
    {
    dati squadra[999];

    int n=0,scelta;
    do{
    clrscr();
    cout<<"ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿";
    cout<<endl;
    cout<<"³"<<"Seleziona: ³"<<endl;
    cout<<"ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´";
    cout<<endl<<"³ "<<"1-Inserire Dati ³"<<endl;
    cout<<"³ "<<"2-Ricerca ³"<<endl;
    cout<<"³ "<<"3-Archiviare Dati ³"<<endl;
    cout<<"³ "<<"4-Lettura da Disco ³"<<endl;
    cout<<"³ "<<"5-Modificare ³"<<endl;
    cout<<"³ "<<"0-Uscire ³"<<endl;
    cout<<"ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ";
    cout<<endl<<"Scelta: ";
    cin>>scelta;
    clrscr();
    switch (scelta)
    {
    case 1:caricamento(squadra, n);
    calcoli(squadra, n);
    ordinamento(squadra, n);
    scrittura(squadra, n);
    break;
    case 2:lettura(squadra);
    break;
    case 3:scrittura(squadra, n);
    break;
    case 4:lettura(squadra);
    break;
    case 5arametri(squadra, n);
    }
    }while(scelta!=0);
    }

    void caricamento(dati squadra[], int&n)
    {
    int incremento;
    cout<<endl;
    do{
    clrscr();
    cout<<"Caricamento"<<endl;
    cout<<endl<<"Marca Autovettura: ";
    cin>>squadra[n].marca;
    cout<<endl<<"Modello Autovettura: ";
    cin>>squadra[n].modello;
    cout<<endl<<"Tipo Autovettura: ";
    cin>>squadra[n].tipo;
    cout<<endl<<"Targa Autovettura: ";
    cin>>squadra[n].targa;
    cout<<endl<<"km Autovettura: ";
    cin>>squadra[n].km;
    cout<<endl<<"Inizio noleggio: ";
    cin>>squadra[n].inizio_noleggio;
    cout<<endl<<"Fine noleggio: ";
    cin>>squadra[n].fine_noleggio;
    cout<<endl<<"Costo Noleggio Al Dì: ";
    cin>>squadra[n].costo_noleggio;
    n++;
    cout<<endl<<endl<<" "<<"ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿";
    cout<<endl<<" "<<"³"<<"Inserire scelta:³"<<endl<<" "<<"ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´"<<endl<<" "<<"³ "<<"1-Caricare ³"<<endl<<" "<<"³ "<<"0-Terminare ³"<<endl<<" "<<"ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ"<<""<<endl<<" "<<"Scelta: ";
    cin>>incremento;
    cout<<endl;
    }while(incremento==1);
    }

    void calcoli(dati squadra[],n)
    {
    int calcola_giorni(void);

    int main()
    {
    int numgiorni1, numgiorni2, differenza;

    numgiorni1 = calcola_giorni();
    numgiorni2 = calcola_giorni();

    differenza=abs(numgiorni1-numgiorni2);

    printf("\n\nDifferenza dei giorni= %d\n\n" , differenza);

    system("PAUSE");
    return 0;
    }


    int calcola_giorni(void)
    {
    int numgiorni=0;
    int giorno, mese, anno;

    printf("Inserisci giorno: ");
    scanf("%d" , &giorno );
    /*controllare la validità del giorno */
    printf("Inserisci mese: ");
    scanf("%d" , &mese );
    /*controllare la validità del mese*/
    printf("Inserisci anno: ");
    scanf("%d" , &anno );
    printf("\n\n");

    /*controllare la validità dell anno*/

    /*controllare validità della data*/

    /*calcoolo num giorni*/

    return numgiorni;
    }

    void ordinamento(dati squadra[], int n)
    {
    int i,j,casella;
    for(i=0;i<n,i++){
    for(j=i+1;j<n,j++){
    if(squadra[i].km<squadra[j].km)
    {
    casella=squadra[i];
    squadra[i]=squadra[j];
    casella=squadra[j];
    }}}}


    ---------------------------------------------------------------------
    fin.close();
    for(j=0;j<i;j++)
    {
    cout<<setw(11)<<squadra[j].marca
    <<setw(6)<<squadra[j].modello
    <<setw(5)<<squadra[j].tipo
    <<setw(6)<<squadra[j].targa
    <<setw(5)<<squadra[j].km
    <<setw(6)<<squadra[j].inizio_noleggio
    <<setw(5)<<squadra[j].fine_noleggio
    <<setw(6)<<squadra[j].costo_noleggio
    <<setw(5)<<squadra[j].giornitot;
    }
    getch();
    }











    void parametri(dati squadra[], int n)
    {
    int scelta;
    do{
    clrscr();
    cout<<"Modifica: "<<endl;
    cout<<"1-Modifica Parametri"<<endl;
    cout<<"2-Inserire altra Autovetture"<<endl;
    cout<<"0-Uscire"<<endl;
    cout>>scelta;
    switch(scelta){
    case 1:modifica(squadra, n);
    break;
    case 2:aggiorna(squadra, n);
    }
    }while(scelta!=0);
    }
    void modifica(dati squadra[], int n)
    int i; char modifica[16];
    lettura(squadra)
    cout<<endl<<"Caricamento"<<endl;
    cout<<"Inseriere marca autovettura da modificare: ";
    cin>>modifica;
    for(i=0;i<n;i++)
    {
    if(strcmp(modifica,squadra[i].marca)==0)
    {
    cout<<endl<<setw(11)<<"Marca"<<setw(6)<<"Modello"< <setw(5)<<"Tipo"<<setw(6)<<"Targa"<<setw(5)<<"km"< <setw(6)<<"Inizio Noleggio"<<setw(5)<<"Fine Noleggio"<<setw(6)<<"Costo Noleggio al Dì"<<setw(5)"<<endl;
    cout<<endl;
    cout<<setw(11)<<squadra[i].marca
    cout<<setw(11)<<squadra[i].marca
    cout<<setw(6)<<squadra[i].modello
    cout<<setw(5)<<squadra[i].tipo
    cout<<setw(6)<<squadra[i].targa
    cout<<setw(5)<<squadra[i].km
    cout<<setw(6)<<squadra[i].inizio_noleggio
    cout<<setw(5)<<squadra[i].fine_noleggio
    cout<<setw(6)<<squadra[i].costo_noleggio<<endl;
    cout<<endl<<"Inserire Marca Autovettura: ";
    cin>>squadra[i].marca;
    cout<<endl<<"Inserire Modello Autovettura: ";
    cin>>squadra[i].modello;
    cout<<endl<<"Inserire Tipo Autovettura: ";
    cin>>squadra[i].tipo;
    cout<<endl<<"Inserire Targa Autovettura: ";
    cin>>squadra[i].targa;
    cout<<endl<<"Inserire km Autovettura: ";
    cin>>squadra[i].km;
    cout<<endl<<"Inserire Inizio noleggio: ";
    cin>>squadra[i].inizio_noleggio;
    cout<<endl<<"Inserire Fine noleggio: ";
    cin>>squadra[i].fine_noleggio;
    cout<<endl<<"Inserire Costo Noleggio Al Dì: ";
    cin>>squadra[i].costo_noleggio;
    }
    }


    calcoli(squadra, n);
    ordinamento(squadra, n);
    scrittura(squadra, n);
    }
    void aggiorna(dati squadra[], int n)
    {
    {
    int i=0,j;
    ifstream nin;
    nin.open("n.txt");
    nin>>n;
    while(! nin.eof())
    {
    i++;
    nin>>n;
    }
    nin.close();
    }
    int incremento;
    cout<<endl;
    cout<<"Aggiornamento"<<endl;
    do{
    cout<<endl<<"Inserire Marca Autovettura: ";
    cin>>squadra[n].marca;
    cout<<endl<<"Inserire Modello Autovettura: ";
    cin>>squadra[n].modello;
    cout<<endl<<"Inserire Tipo Autovettura: ";
    cin>>squadra[n].tipo;
    cout<<endl<<"Inserire Targa Autovettura: ";
    cin>>squadra[n].targa;
    cout<<endl<<"Inserire km Autovettura: ";
    cin>>squadra[n].km;
    cout<<endl<<"Inserire Inizio noleggio: ";
    cin>>squadra[n].inizio_noleggio;
    cout<<endl<<"Inserire Fine noleggio: ";
    cin>>squadra[n].fine_noleggio;
    cout<<endl<<"Inserire Costo Noleggio Al Dì: ";
    cin>>squadra[n].costo_noleggio;
    n++;

    cout<<endl<<"Premere:"<<endl<<"1-Caricare"<<endl<<"0-Terminare"<<endl<<endl<<"Scelta: ";
    cin>>incremento;
    }while(incremento==1);
    calcoli(squadra, n);
    ordinamento(squadra, n);
    scrittura(squadra, n);
    }















    void lettura(dati squadra[])
    {
    int i=0,j;
    ifstream fin;
    fin.open("autonoleggio.txt");
    fin>>squadra[i].marca>>squadra[i].modello>>squadra[i].tipo>>squadra[i].targa>>squadra[i].km>>squadra[i].inizio_noleggio>>squadra[i].fine_noleggio>>squadra[i].costo_noleggio>>squadra[i].giornitot;
    while(!fin.eof())
    {
    i++;
    fin>>squadra[i].marca
    >>squadra[i].modello
    >>squadra[i].tipo
    >>squadra[i].targa
    >>squadra[i].km
    >>squadra[i].inizio_noleggio
    >>squadra[i].fine_noleggio
    >>squadra[i].costo_noleggio
    >>squadra[i].giornitot;
    }
    fin.close();
    //output a video dati
    for(j=0;j<i;j++)
    {
    cout<<"³"<<setw(10)<<squadra[j].marca
    <<setw(6)<<squadra[j].modello
    <<setw(6)<<squadra[j].tipo
    <<setw(5)<<squadra[j].targa
    <<setw(6)<<squadra[j].km
    <<setw(4)<<squadra[j].inizio_noleggio
    <<setw(4)<<squadra[j].fine_noleggio
    <<setw(4)<<squadra[j].costo_noleggio
    <<setw(4)<<squadra[j].giornitot<<"³"<<endl;
    }
    cout<<"ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ ";
    getch();
    }

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 © 2025 vBulletin Solutions, Inc. All rights reserved.