Confronto tra vettori di stringhe c++

di Anonimizzato13790 il
4 risposte

char *ingredienti[]={"uova","cioccolato","zucchero"};

char *dispensa[]={"uova","latte","zucchero"};

Salve ho questi due vettori sopra....Praticamente devo controllare se,dato il vettore ingredienti,
vi è uno o piu elementi che nella dispensa mancano e inserirli in un 3o vettore chiamato lista...

come posso fare??? ci sto sbattendo da un'ora ma niente...

4 Risposte

  • Con carta e penna come lo faresti?
  • Il problema e' estremamente semplice. Praticamente banale.

    Devi applicare al tuo problema i concetti di teoria degli insiemi che hai studiato.

    Se malauguratamente speravi di svicolare da tali concetti, mi dispiace, ma sono fondamentali.

    Quindi, se non sei in grado di affrontarlo, la domanda sorge spontanea: perche'?

    Che cosa e' che non sai?

    Non sai niente di teoria degli insiemi?
    Non sai come si scandisce un vettore (non una lista)?
    Non sai come si confrontano due stringhe?
    Non sai inventarti un algoritmo?
    Non sai implementare l'algoritmo?

    Dal pezzetto di codice che hai scritto (ma bastava anche solo la prima riga , l'occhio clinico insegna ), sei a rischio di un grosso problema ...

    Ma dipende da come scriverai il codice ...
  • Ora ve lo scrivo
  • migliorabile ha scritto:


    Il problema e' estremamente semplice. Praticamente banale.

    Devi applicare al tuo problema i concetti di teoria degli insiemi che hai studiato.

    Se malauguratamente speravi di svicolare da tali concetti, mi dispiace, ma sono fondamentali.

    Quindi, se non sei in grado di affrontarlo, la domanda sorge spontanea: perche'?

    Che cosa e' che non sai?

    Non sai niente di teoria degli insiemi?
    Non sai come si scandisce un vettore (non una lista)?
    Non sai come si confrontano due stringhe?
    Non sai inventarti un algoritmo?
    Non sai implementare l'algoritmo?

    Dal pezzetto di codice che hai scritto (ma bastava anche solo la prima riga , l'occhio clinico insegna ), sei a rischio di un grosso problema ...

    Ma dipende da come scriverai il codice ...
    
    
    char *ingredienti[]={"zucchero","cioccolato"};
    
    char *dispensa[]={"uova"};
    
    
    char *lista[20];
    
    int l=0;
    
    for (int i=0;i<3;i++)
    {
    
        if(*(ingredienti+i) != *(dispensa) )
        {
            *(lista+l) = *(ingredienti+i);
            l++;
        }
            }
    for(int i=0;i<2;i++)
    cout<<*(lista+i)<<endl;
    
        return 0;
    }
    
    
    
    okkkkkkk cosi funziona per ho un dubbio.... praticamente se aumento a 3 l indice del for che mi stampa lista succede che mi stampa elementi di un array di stringhe che ho dichiarato nel main ma che non ha nulla a che fare con lista...
Devi accedere o registrarti per scrivere nel forum
4 risposte