Oppure

Loading
01/05/11 16:41
kaiser92@hotmail.it
salve a tutti, sono nuovo nel forum (ho letto il regolamento e spero di aver capito in che modo evitare di infrangerlo :D)

Vorrei un aiutino, sto creando una rubrica telefonica utilizzando il compilatore Dev C++. La rubrica non è ancora completa. Non sono praticissimo del linguaggio C++, lo sto studiando, e vorrei che mi aiutaste a capire cosa devo fare per salvare i contatti inseriti e, successivamente, visualizzarli.

Spero possiate aiutarmi! Grazie a tutti :)

il codice (che, ripeto, è ancora incompleto) è questo:

#include <stdio.h>
#include <iostream>
//*****RUBRICA TELEFONICA 1.O*******




main () {
                               // creazione del tipo "info"
           typedef struct {
            char cognome[35];
            char nome[35];
            char via[30];
            int numero[10];
            char citta[30];
            int cap[5];
            char provincia[2];
            int fisso[20];
            int cellulare[15];
            char email[40];
            } info;
     info dati;       // dichiarazione della variabile "dati", di tipo info
                     // che conterrà le informazioni dei contatti. 
     
     
     char temp;       
     int scelta;
       
     printf("RUBRICA TELEFONICA\n\n \a       \a  \a");             /* TITOLO */
     
     
     printf("Scegliere una delle seguenti voci di menu':\n"         /* MENU */
            "1) Inserimento nuovo contatto\n"
            "2) Visualizza contatti\n"
            "3) Ricerca contatto\n"
            "4) Elimina contatto\n\n"
            "Inserire la propria scelta:");
     scanf("%d", &temp);
     
     /* INSERIMENTO NUOVO CONTATTO */
     
     if (temp==1) {
                  //INFO ANAGRAFICHE                               
        printf("Inserimento nuovo contatto\n");                                  
        printf("Cognome: ");
        scanf("%s",&dati.cognome);
        printf("Nome: ");
        scanf("%s",&dati.nome);
                  //INFO INDIRIZZO  
        printf("Via: ");
        scanf("%s",&dati.via);       
        printf("Numero: ");
        scanf("%s",&dati.numero);
        printf("Citta': ");
        scanf("%s",&dati.citta);
        printf("Cap: ");
        scanf("%s",&dati.cap);
        printf("Provincia: ");
        scanf("%s",&dati.provincia);
                  //INFO RECAPITO 
        printf("Telefono Fisso: ");
        scanf("%s",&dati.fisso);
        printf("Telefono Cellulare: ");
        scanf("%s",&dati.cellulare);
        printf("eMail: ");
        scanf("%s",&dati.email);
        
        
      
     
     printf("\nInserire un nuovo contatto?\nDigitare 1 per Si e 0 per No\n");
     scanf("%d",&scelta);
     
     while(scelta!=0) {
                   
                   
     printf("\n\n\nInserimento nuovo contatto\n");                                  
        printf("Cognome: ");
        scanf("%s",&dati.cognome);
        printf("Nome: ");
        scanf("%s",&dati.nome);
     
        printf("Via: ");
        scanf("%s",&dati.via);       
        printf("Numero: ");
        scanf("%s",&dati.numero);
        printf("Citta': ");
        scanf("%s",&dati.citta);
        printf("Cap: ");
        scanf("%s",&dati.cap);
        printf("Provincia: ");
        scanf("%s",&dati.provincia);
     
        printf("Telefono Fisso: ");
        scanf("%s",&dati.fisso);
        printf("Telefono Cellulare: ");
        scanf("%s",&dati.cellulare);
        printf("eMail: ");
        scanf("%s",&dati.email);
        printf("\nInserire un nuovo contatto?\nDigitare 1 per Si e 0 per No\n");
        scanf("%d",&scelta);
       
       } // chiusura del WHILE
        
      
       }  //*********//chiusura primo IF



// CREAZIONE FUNZIONE DI VISUALIZZAZIONE E ORDINAMENTO



if (temp==2) { //secondo if
printf("\n\nI contatti presenti in rubrica sono:\n\n");




}
        
        
        
       
system ("PAUSE");
return 0;
}

Ultima modifica effettuata da kaiser92@hotmail.it 01/05/11 16:43
aaa
01/05/11 16:45
kaiser92@hotmail.it
probabilmente avrei dovuto utilizzare delle funzioni fin dall'inizio, c'è però un modo di sfruttare quello che ho fatto finora (anche se mi rendo conto che non è stilisticamente/tecnicamente ottimo)?
aaa
01/05/11 17:39
crybot
dici di scrivere in c++ ma usi ancora printf e scanf o_O

in ogni caso non ho capito cosa intendi per salvare i contatti. intendi forse salvarli in modo da averli alla prossima esecuzione del programma oppure salvarli per l'effettiva esecuzione del programma?

P.S. default main non e` supportato in c++
Ultima modifica effettuata da crybot 01/05/11 17:43
aaa
01/05/11 17:47
kaiser92@hotmail.it
Ho scritto che non sono praticissimo di C++ e che lo sto studiando. Uso scanf e printf semplicemente perchè così mi è stato insegnato :yup:. Comunque, intendo salvare i contatti per l'effettiva esecuzione del programma.
aaa
01/05/11 17:51
crybot
beh se e` cosi` che ti hanno insegnato non ti hanno insegnato il c++, ma non e` importante.

quello che devi fare e` racchiudere i contatti all'interno di un array e poi rivisualizzarli con un ciclo, e` praticamente alla base di tutti gli algoritmi, array e ciclo.
aaa
01/05/11 17:54
kaiser92@hotmail.it
ook grazie, ci sbareo un po' :)
aaa
09/05/11 21:22
frank87
Non so se hai studiato la programmazione ad oggetti,se cosi fosse ti consiglierei di farti una classe "Contatto" e poi successivamente una classe "rubrica" nella quale potresti fare una list o un vector di "Contatto" dove memorizzare i vari contatti e i vari metodi per accedervi.
aaa
12/05/11 5:13
Postato originariamente da frank87:

Non so se hai studiato la programmazione ad oggetti,se cosi fosse ti consiglierei di farti una classe "Contatto" e poi successivamente una classe "rubrica" nella quale potresti fare una list o un vector di "Contatto" dove memorizzare i vari contatti e i vari metodi per accedervi.

Che sarebbe già un miglioramento non indifferente. Aggiungo di studiare (se non te lo hanno insegnato, vai per conto tuo) almeno un po' di I/O in C++. Printf e Scanf, per quanto supportate dal C++, non garantiscono lo stesso livello di ottimizzazione
e affidabilità di funzioni quali cout e cin. Più in generale, ti consiglio di STUDIARE IL C++. Puoi farlo attraverso un libro, o più velocemente (e meno approfonditamente) attraverso una buona guida online. SE scegli il libro, leggi qui: public-inheritance.blogspot.com/2011/04/…
Se, invece, vuoi solo una rapida infarinatura per poter finire il tuo programma, puoi usare la guida di HTML.it (che non ti linko, mi fa troppo schifo). Un buon compromesso è un libro che puoi consultare sul computer. Ed è qui che ti consiglio l'arcinoto "Thinking in C++", di Bruce Eckel, che puoi scaricare da uno dei mirror consigliati per l'Italia in fondo a questa pagina: mindview.net/Books/…