Conto Corrente

di il
22 risposte

22 Risposte - Pagina 2

  • Re: Conto Corrente

    Sì una cosa del genere, ovviamente ne inserisci 3 o 4 di esempio, altrimenti non ti rimane più spazio per inserirne altri dopo.
    L'ID utente decidi se vuoi generarlo in automatico, oppure se usare un numero progressivo.
    Per il saldo usa un float.
  • Re: Conto Corrente

    Alexv ha scritto:


    Sì una cosa del genere, ovviamente ne inserisci 3 o 4 di esempio, altrimenti non ti rimane più spazio per inserirne altri dopo.
    L'ID utente decidi se vuoi generarlo in automatico, oppure se usare un numero progressivo.
    Per il saldo usa un float.
    Il numero uso uno progressivo dichiarato da me.
    Comunque per quanto riguarda questo vettore mi da un errore nella parentesi e non capisco qual'è
  • Re: Conto Corrente

    Se è progressivo perché hai dato numeri a caso negli utenti di esempio?
    Che errore ti da?
  • Re: Conto Corrente

    Alexv ha scritto:


    Se è progressivo perché hai dato numeri a caso negli utenti di esempio?
    Che errore ti da?
    Io l'ho assegnato e poi faccio correntisti.ID_conto++ cosi da esempio 1234 diventa 1235, questo intendo per progressivo, l'errore mi dice che :
    Array has incomplete element type 'struct Correntisti' -----L'errore me lo da all'inizio dove c'è il vettore

    MAIN
    #include "header.h"
    #define max_utenti 2
    int main() {
    
        int p_operazione;
        int contatore=0;
        int nuovi_ut=0;
        int importo=0;
        int n_conto_ins;
    
    
        correntista.ID_conto=1234;
        //correntisti[n].ID_conto = ID_conto++;
        struct Correntisti correntisti[10][/b] = {  {"Giulio","Rossi",24726,1500},
                                                {"Silvio","Muru",81685,5500},
                                                {"Gaia","Ruggiero",32784,3500},
                                                {"Noemi","Assuidi",19752,12000},
                                                {"Orsola","Livio",66478,1040}
                                             };
    
        cc.num_conto=56789;
    
        printf("\nQueste sono le operazioni disponibili,sceglierne una:\n 1)Nuovo Conto\n 2)Deposito\n 3)Prelievo\n 4)Mostra Saldo\n 5)Lista Movimenti"
               "\nQuale operazione desideri eseguire?\n");
        scanf("%d", &p_operazione);
    
            switch (p_operazione)
            {
                case 1://Inserimento nuovo correntista
                {
                    fflush(stdin);
                    if (nuovi_ut <= max_utenti)
                    {
                        printf("Inserisci il dati della persona da inserire:\nNome: ");
                            gets(correntista.Nome);
                        printf("\nCognome:");
                            gets(correntista.Cognome);
                        //Generazione del codice utente univoco
                        printf("\nIl tuo codice utente e':%d",correntista.ID_conto);
                        correntista.ID_conto++;                         //Incremento del codice univoco (non so se va qua)
    
    
                        cc.saldo=0;                                   //Azzeramento del saldo
                        //cc.num_conto=987654321;                      //assegnazione del codice conto corrente
                        //correntista.ID_conto=cc.num_conto;          //Ad un Id_utente corrisponde un numero di conto corrente
    
                        //cc.num_conto++;                           //Incremento del numero del conto(non so se va qua)
    
                    }
                        cc.num_conto++;                             //Incremento del numero del conto(non so se va qua)
                    printf("\nIl tuo conto e' stato aperto con successo,effettua il primo deposito per abilitare il tuo conto");
                    printf("\n\nInserisci l'importo da depositare:");
                    scanf("\n%d",&importo);
    
                    versamento(importo);
    
                }break;
                case 2://Deposito
                    {
                        importo=0;
                        printf("Inserisci il numero di conto:");
                        scanf("%d",&n_conto_ins);
                        if (n_conto_ins == correntista.ID_conto)
                        {
                            printf("\n\nInserisci l'importo da depositare:");
                            scanf("\n%d", &importo);
                            versamento(importo);
                        }
                        else
                            printf("\nIl tuo conto non esiste");
    
                    }break;
                case 3://Prelievo
                {
                    importo=0;
                    printf("Inserisci il numero di conto:");
                    scanf("%d",&n_conto_ins);
                    if (n_conto_ins == correntista.ID_conto)
                    {
                        printf("\n\nInserisci l'importo da prelevare:");
                        scanf("\n%d", &importo);
                        prelievo(importo);
                    }
                    else
                        printf("\nIl tuo conto non esiste");
                }break;
                case 4://Mostra Saldo
                {    //Mostra saldo
                    printf("Inserire il numero di conto:");
                    scanf("%d",&n_conto_ins);
                    if (n_conto_ins == correntista.ID_conto)
                        printf("\nIl tuo saldo e':%d",cc.saldo);
                    else
                        printf("\nIl tuo conto non esiste");
    
                }break;
                case 5://Lista Movimenti Utente
                 {
                        printf("Inserire il numero di conto:");
                        scanf("%d",&n_conto_ins);
                    if (n_conto_ins == correntista.ID_conto)
                    {
                        //MOSTRAMI LA LISTA DEI MOVIMENTI CHE HA FATTO QUESTO UTENTE
                    }
                    else
                        printf("\nIl tuo conto non e' stato trovato");
                }break;
                case 0:
                    return 0;
            }
    
    return 0;
    
    PROTOTIPI
    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>
    
    struct Movimenti_Bancari{
            int numero_cc;      //numero del conto corrente associato al Id del correntista
            int *operazione;    //scelta delle operazioni da fare(prelievo/deposito)
            int cronologia_mov;
            int conteggio_movimenti;
    
    }movimenti;
    
    struct Correntista{
        char *Nome[10];                    //10 sta per max di lettere
        char *Cognome[10];
        int ID_conto;                    //codice univoco del correntista
        struct Movimenti_Bancari;       //Lista movimenti del correntista
    
    }correntista;
    
    
    struct Conto{
        float saldo;
        int num_conto;                  //Poiche ad ogni ID_conto si deve creare un numero di ccA
    
    }cc;
    
    int versamento(int );
    
    int prelievo(int importo);
    
    FUNCTION
    int versamento(int importo){
    
        cc.saldo=cc.saldo+importo;      //Deposito
    
        //Qui ci vorrebbe qualcosa che andasse a salvare l'operazione nella struct Movimenti Bancari.cronologia_mov
    
        printf("\nL'accredito di %d sul conto di %s %s e' stato effettuato",importo,correntista.Nome,correntista.Cognome);
    }
    
    int prelievo(int importo){
    
        if (cc.saldo >=importo)
        {
            cc.saldo=cc.saldo-importo;      //Effettuo il prelievo se il saldo è disponibile
    
            //Qui ci vorrebbe qualcosa che andasse a salvare l'operazione nella struct Movimenti Bancari.cronologia_mov
            printf("\nIl prelievo di %d dal conto di %s %s e' stato effettuato",importo,correntista.Nome,correntista.Cognome);
        }
    }
  • Re: Conto Corrente

    La struct si chiama Correntista con la a.
  • Re: Conto Corrente

    Alexv ha scritto:


    La struct si chiama Correntista con la a.
    Okay perfetto, trovi altri errori(sicuramente) che dovrei correggere?
  • Re: Conto Corrente

    Compila? Fa quello che deve fare?
  • Re: Conto Corrente

    Alexv ha scritto:


    Compila? Fa quello che deve fare?
    Allora per quandto riguarda la parte dell'inseriemnto si anche se vorrei sapere se lo salva nel vettore con successo poichè non ne sono sicuro, poi per quanto riguarda prelievo e saldo vorrei capire come gestire la lista movimenti e come segnare ogni operazione nella cronologia, a te compila e secondo te rispecchia la traccia? Cosa mi mancherebbe?
Devi accedere o registrarti per scrivere nel forum
22 risposte