Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    [C] Aiuto programma inserimento pin

    Codice PHP:
    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>
    #include <string.h>
    /*
    Scrivere un programma per simulare l'inserimento di un PIN per il telefonino.
    Nella prima fase viene costruito il PIN di riferimento, che deve essere di
    lunghezza 5 e deve essere costruito in modo casuale. Nella seconda fase
    l’utente inserisce il codice di tentativo e ha al massimo 3 tentativi per indovinarlo*/

    int main()
    {
        
    srand(time(NULL));
        
    int i,Tentativi;
        
    char Pin[5];
        
    char PinSegreto[5]={48+rand()%10,48+rand()%10,48+rand()%10 ,48+rand()%10 ,48+rand()%10};
        
    printf("Pin  segreto:  ");
        for(
    i=0;i<5;i++)
        {
            
    printf("%c"PinSegreto[i]);
        }
        
    Tentativi=3;
        if(
    Tentativi>0)
        {
            
    printf("\nHai %d tentativi\n"Tentativi);
            
    gets(Pin);
            if(
    strncmp(Pin PinSegreto5) ==0)
            {
               
    printf("Corretto\n");
               
    Tentativi=0;
            }
             else
             
    Tentativi--;
        }

    return 
    0;} 
    Non riesco a capire perchè non funziona, parte ma se inserisco il pin (giusto o sbagliato) il programma termina chiedendomi di premere un pulsante per chiuderlo.

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Occhio ... la gets prevede una stringa terminata da NULL quindi non di 5 ma di 6 caratteri.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Occhio ... la gets prevede una stringa terminata da NULL quindi non di 5 ma di 6 caratteri.
    aggiustato il size di Pin ma niente

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Se inserisci il pin giusto funziona. Con quello sbagliato termina subito dato che non hai messo un ciclo in base ai tentativi.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Se inserisci il pin giusto funziona. Con quello sbagliato termina subito dato che non hai messo un ciclo in base ai tentativi.
    capito. ora aggiusto e vedo

  6. #6
    Codice PHP:
    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>
    #include <string.h>
    /*
    Scrivere un programma per simulare l'inserimento di un PIN per il telefonino.
    Nella prima fase viene costruito il PIN di riferimento, che deve essere di
    lunghezza 5 e deve essere costruito in modo casuale. Nella seconda fase
    l’utente inserisce il codice di tentativo e ha al massimo 3 tentativi per indovinarlo*/

    int main()
    {
        
    srand(time(NULL));
        
    int i,n=3;
        
    char pin[6]={48+rand()%10,48+rand()%10,48+rand()%10 ,48+rand()%10 ,48+rand()%10};
        
    char pin_2[6];
        
    printf("Inserisci pin");
        for(
    i=n;i>0;i--)
        {
            
    printf("\n%d tentativi rimasti\n",n);
            
    gets(pin_2);
            if(
    strncmp(pin_2 ,pin5) ==0)
            {
               
    printf("Accesso verificato\n");
               
    i=0;}
            else
                
    n--;
            if(
    n==0)
                
    printf("Accesso negato\n");
    }

    return 
    0;} 
    fatto posto la soluzione. magari può essere di aiuto a qualcun altro

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Era meglio che nel codice precedente sostituissi

    if (tentativi>0)

    con

    while (tentativi>0)
    No MP tecnici (non rispondo nemmeno!), usa il forum.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.