Dubbio sulla lista.

di il
6 risposte

Dubbio sulla lista.

Buongiorno a tutti , sono alle prese con questo pezzo di programma riguardante una lista :
printf("\nVuoi effettuare una ricerca? 1=si,0=no");
                        scanf("%d",&scelta_1);
                        if(scelta_1==0){
                        printf("\n\nNessuna ricerca , stampo la lista: \n\n");
        
                            print_list(head);
                            Save_to_file(head,FILENAME);
                            system("pause");
                            return 0;} 
                         else {
                        printf("\n\nInserire dati per la ricerca: ");
                        scanf("%s",trial);
                          
                        Search_in_list(head,trial);}
                  printf("\nVuoi eliminare il record? 1=si,0=no");
scanf("%d",&scelta_2);
                        if(scelta_2==0){
                                        printf("\n\nnessuna eliminazione\n\n");
                        
        print_list(head);}
        else {
        printf("\n Cancello il record trovato:\n\n");
                        
                        head = delete_record(head, trial);
                        print_list(head);}
                        
                        Save_to_file(head,FILENAME);
                        printf("Indice: \n\n");
                        print_list(head);
                        system("pause");
                        return 0;
                        }


La questione è molto semplice , una volta inseriti tutti i nominativi , il programma mi permette di effettuare una ricerca tra i nomi inseriti.
Se la ricerca va a buon fine io posso scegliere se eliminare o meno il record, fin qui tutto ok .
Il problema nasce dal fatto che se il record non viene trovato nella lista mi dice lo stesso se io voglio eliminare o meno il record(ma il record non c'è!!!!)
Come posso risolvere tale ambiguità ?

Praticamente dovrei creare una condizione sulla variabile trial , ma questa è un char e non posso fare come se fosse di tipo int.

6 Risposte

  • Re: Dubbio sulla lista.

    Data la tua mancanza di voglia di imparare invito tutti gli utenti di abilitare lo stato "al lupo al lupo" nei confronti di daniele90 fino a che non torni la voglia di ascoltare e imparare.
  • Re: Dubbio sulla lista.

    Ma è vietato utilizzare dev c++ ?
    spiegatemi..
  • Re: Dubbio sulla lista.

    daniele90 ha scritto:


    ma è vietato utilizzare dev c++ ?
    spiegatemi..
    Nulla e' vietato, se funziona. Ma il prodotto e' OBSOLETO con un compilatore OBSOLETO, NON VIENE PIU' MANTENUTO e quindi eventuali bug NON SONO STATI PIU'CORRETTI DALL"ALBA DEI TEMPI.

    Conviene utilizzare prodotti piu' recenti, perche' scritti con librerie piu' recenti (ad esempio la GUI) e perche' implementano delle funzionalta' (come il refactoring) che derivano da concetti di programmazione piu' recenti.
  • Re: Dubbio sulla lista.

    Devi cercare di indentare correttamente il codice ... prova a sistemare il codice quando lo posti sul forum altrimenti non si capisce un bel niente ...

    Comunque, la funzione che fa la ricerca credo sia chiamata in

    Search_in_list(head,trial);

    Adesso, spiega cosa c'entra la trial che è quello che vuoi cercare.

    Inoltre, chiamata in questo modo, come fai a capire se il dato è stato trovato o no?
    E' ovvio che la richiesta di cancellazione c'è sempre dato che la domanda non è sottoposta a nessuna if.
  • Re: Dubbio sulla lista.

    Ok , mi adeguo alle vostre direttive e non toccherò piu dev c++ premettendovi che compilo anche su gcc a linea di comando, questo va bene?
  • Re: Dubbio sulla lista.

    Oltre a questo, rileggi il mio post per quanto riguarda la funzione di ricerca.
Devi accedere o registrarti per scrivere nel forum
6 risposte