Inserire caratteri alfanumerici in un array

di il
11 risposte

Inserire caratteri alfanumerici in un array

Qualcuno ha idea di come creare un array ad esempio codiceidentificativo[6] in C in cui inserire caratteri alfanumerici tipo da 1 a 5 e da 'A' a 'C'? ad esempio che se io inserisco "C3R421" segnali errore e invece se inserisco "A232C4" me lo dia corretto?
Dovrei fare un controllo cella per cella o esiste qualche altro modo?
Grazie in anticipo

11 Risposte

  • Re: Inserire caratteri alfanumerici in un array

    In C devi fare il controllo carattere per carattere ma con un ciclo.
  • Re: Inserire caratteri alfanumerici in un array

    oregon ha scritto:


    In C devi fare il controllo carattere per carattere ma con un ciclo.
    Del tipo?
  • Re: Inserire caratteri alfanumerici in un array

    Un ciclo for che faccia la scansione di tutti i caratteri e una if che controlli che il singolo elemento sia tra quelli consentiti/non consentiti a seconda del tipo di operazione che vuoi fare di conseguenza.

    Prova a scrivere del codice, è roba elementare, se non scrivi tu codice di questo tipo, come fai ad imparare a programmare in C?
  • Re: Inserire caratteri alfanumerici in un array

    #include <stdio.h>
    #include <string.h>
    int main(){
      char codiceidentificativo[] = "A232C4";
      char input[100];
      do {
        printf("Inserisci il codice:\n");
        scanf("%99s", input);
      } while(strcmp(codiceidentificativo, input) != 0);
      printf ("Codice corretto!");
      return 0;
    }
  • Re: Inserire caratteri alfanumerici in un array

    Il codice che ti ha mostrato Weirstrass controlla solo che tu abbia inserito quel codice preciso non che il codice inserito rispetti le regole che hai indicato.
  • Re: Inserire caratteri alfanumerici in un array

    Weierstrass ha scritto:


    #include <stdio.h>
    #include <string.h>
    int main(){
      char codiceidentificativo[] = "A232C4";
      char input[100];
      do {
        printf("Inserisci il codice:\n");
        scanf("%99s", input);
      } while(strcmp(codiceidentificativo, input) != 0);
      printf ("Codice corretto!");
      return 0;
    }
    Non volevo fare questo. Volevo fare uno scanf che da errore se inserisco un codice formato ad esempio da 6 valori e questi valori devono essere compresi solo tra due determinati valori
  • Re: Inserire caratteri alfanumerici in un array

    Ti ho detto cosa fare dopo la scanf, non aspettare la "pappa pronta" .... prova a scrivere tu il codice ...
  • Re: Inserire caratteri alfanumerici in un array

    oregon ha scritto:


    Ti ho detto cosa fare dopo la scanf, non aspettare la "pappa pronta" .... prova a scrivere tu il codice ...
    Sisi riesco a farlo, è abbastanza semplice ma lungo. Speravo esistesse qualche tipo di comando che facesse il tutto senza fare 20 righe di codice
  • Re: Inserire caratteri alfanumerici in un array

    Magari non servono neanche 20 righe di codice ... se magari ci provi ...
  • Re: Inserire caratteri alfanumerici in un array

    Non ho letto bene, scusate. Comunque è una cosa di poche righe
  • Re: Inserire caratteri alfanumerici in un array

    Appunto per questo, secondo me, l'esercizio lo deve fare lui ... almeno impostarlo ...
Devi accedere o registrarti per scrivere nel forum
11 risposte