Problema con la gestione di vettori paralleli

di il
1 risposte

Problema con la gestione di vettori paralleli

Ho un problema con il mio programma. Precedentemente ho fatto inserire l'alimento, il codice e il prezzo per ogni pezzo. Ora devo aggiungere nel carrello iò che voglio acquistare, quindi faccio inserire all'utente i vari codici. Appena prende il codice dovrebbe spostarlo nel vettore apposta _carr (che sta per carrello) insieme ai relativi dati. Ciò non funziona in entrambi i casi. Non riportano errori di sintassi.

Prima versione:

case 2:
            system ("cls");
            for (int i = 0; i < contatore; i++)
                cout << codice [i] << ". " << alimento [i] << endl;
           
            cout << "Inserisci il codice dei prodotto da inserire nel carrello!" << endl;
            for (int i = 0; i < n; i++)
            {
                cout << i + 1 << ": ";
                cin >> numero;
               
                for (int k = 0; k < n; k++)
                {
                    if (numero == codice [k])
                    {
                        alimento_carr [i] = alimento [k];
                        codice_carr [i] = codice [k];
                        prezzo_carr [i] = prezzo [k];
                    }
                }
            }
           
            break;
Seconda versione:

system ("cls");
            for (int i = 0; i < contatore; i++)
                cout << codice [i] << ". " << alimento [i] << endl;
           
            do
            {
                cout << "Inserisci il codice dei prodotto da inserire nel carrello!" << endl;
                for (int i = 0; i < n; i++)
                {
                    cout << i + 1 << ": ";
                    cin >> codice_carr [i];
                   
                    prezzo_carr [i] = prezzo [k];
                    alimento_carr [i] = alimento [k];
                   
                    cout << "Hai selezionato " << alimento_carr [i] << ". Inserisci quanti pezzi: ";
                    cin >> pezzi [i];
                   
                    k++;
                   
                }
            }
            while (numero != 0);


Qualcuno che mi sa dire come posso sistemarlo?

1 Risposte

  • Re: Problema con la gestione di vettori paralleli

    Scusami, conosco meglio il C e il Java del C++ ma spero di esserti utile lo stesso....
    Innanzitutto chi e' n? Si tratta del numero di elementi da inserire nel carrello? Dove lo acquisisci n?
    
    case 2:
                system ("cls");
                for (int i = 0; i < contatore; i++)
                    cout << codice [i] << ". " << alimento [i] << endl;
               
                cout << "Inserisci il codice dei prodotto da inserire nel carrello!" << endl;
                for (int i = 0; i < n; i++)
                {
                    cout << i + 1 << ": ";
                    cin >> numero;
                   
                    for (int k = 0; k < NUMERO_ELEMENTI_ARRAY_CODICE; k++)
                    {
                        if (numero == codice [k])
                        {
                            alimento_carr [i] = alimento [k];
                            codice_carr [i] = codice [k];
                            prezzo_carr [i] = prezzo [k];
                        }
                    }
                }
               
                break;
    Perche' non definisci una struttura dati per ciascun elemento dell'inventario (magari un albero binario ordinato sulla base dei codici) e operi direttamente sugli elementi della struttura?
Devi accedere o registrarti per scrivere nel forum
1 risposte