Controllare se un elemento è già stato inserito in un array

di il
22 risposte

22 Risposte - Pagina 2

  • Re: Controllare se un elemento è già stato inserito in un array

    La struttura non ha importanza ... qui tu non sai fare l'input di una stringa C che è una cosa più "di base" ...

    Comunque, il controllo del codice non è "immediato", non lo fai con una linea di codice.

    Devi tenere sempre il conto di quanti elementi della struttura hai già inserito in una variabile.
    Dopo l'input del nuovo codice (che puoi fare in una stringa temporanea), esegui un ciclo for per confrontare il valore dell'input con ogni codice di ogni elemento della struttura.
    Se durante il ciclo for il confronto viene soddisfatto (il confronto tra stringhe lo fai con la if e la funzione strcmp), allora vuol dire che il codice già c'è e lo dici all'utente per ripetere l'input.
    Altrimenti accetti l'input copiando con la strcpy il nuovo codice nel prossimo elemento della struttura e aggiorni il contatore.
  • Re: Controllare se un elemento è già stato inserito in un array

    oregon ha scritto:


    Dopo l'input del nuovo codice (che puoi fare in una stringa temporanea), esegui un ciclo for per confrontare il valore dell'input con ogni codice di ogni elemento della struttura.
    La parte dopo, quella del strcmp e strcpy l'ho capita, ma questa no... Cioè, non so come farla più che altro... Cosa intendi con "ogni codice di ogni elemento della struttura"?
  • Re: Controllare se un elemento è già stato inserito in un array

    Quando l'utente inserisce il nuovo codice devi scorrere tutto il vettore di struct confrontando il nuovo valore con quelli già presenti.

    Comuque prima di tutto ciò sistema l'input dei dati. Il codice o lo tratti come una stringa o come un singolo int, e a seconda dei casi nella scanf usi %s o %d e per i confronti usi == o strcmp().

    ciao
  • Re: Controllare se un elemento è già stato inserito in un array

    dvaosta ha scritto:


    Quando l'utente inserisce il nuovo codice devi scorrere tutto il vettore di struct confrontando il nuovo valore con quelli già presenti
    La mia difficoltà è proprio questa, cioè non capisco come farlo... Abbiate pazienza ç_ç
  • Re: Controllare se un elemento è già stato inserito in un array

    Con un ciclo for dove incrementi una variabile che funge da indice del vettore di struct.

    Ma che corso di studi stai facendo? a che anno sei?

    ciao
  • Re: Controllare se un elemento è già stato inserito in un array

    Okay, ci sono riuscito. Comunque come ho già detto frequento la facoltà di Ingegneria e Scienze Informatiche, e sono al primo anno... Solo che stanno ammucchiando robe senza sosta e per chi non ha mai fatto programmazione risulta parecchio difficile...
    Grazie per l'aiuto
  • Re: Controllare se un elemento è già stato inserito in un array

    Effettivamente è strano che dopo 1 mese du corso già ti facciano usare le struct.

    Ma in che politecnico sei?
  • Re: Controllare se un elemento è già stato inserito in un array

    A Cesena, è un nuovo corso che ha unito quello di scienze e tecnologie informatiche e quello di ingegneria informatica
Devi accedere o registrarti per scrivere nel forum
22 risposte