La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Gioco dell’impiccato in C

Presentazioni simili


Presentazione sul tema: "Gioco dell’impiccato in C"— Transcript della presentazione:

1 Gioco dell’impiccato in C
Casuccio Giuseppe

2 Approccio modulare Parte operativa grafica

3 Come funziona il programma
Parte Operativa Come funziona il programma

4 Il programma sceglie una parola a caso dal dizionario presente in memoria

5 int *p_parola; /*puntatore*/
char dizionario [MAX_PAROLE] [MAX_LUNG_PAROLE+1]; dizionario = { “alfa”; “beta”; “gamma”; ...} randomize(); p_parola = dizionario[ random( MAX_PAROLE -1 ) ] lunghezza_parola = strlen(p_parola);

6 Come stampare la parola?
Inizializzo un vettore di VISIBILITA’ Se vett_visib[indice] è VISIBILE stampa ( parola[indice] ) Altrimenti stampa(“__”) aumenta incognite stampate;

7 typedef enum {NASCOSTA, VISIBILE} stato_lettera;
stato_lettera vett_visib[MAX_LUNG_PAR+1]; /* tutte le entrate sono NASCOSTE tranne la prima e l’ultima*/ vett_visib[0] = VISIBILE; vett_visib[lung_par] = VISIBILE; /* DA AGGIORNARE OGNI LETTERA CHIAMATA */

8 leggi_lettera() Già chiamata? E’ in parola? Si: esito = GIA_CHIAMATA
No: E’ in parola? Si : esito = TROVATA; aggiorna vett_visib; No: esito = NON_TROVATA; aumenta numero_errori;

9 leggi_lettera(); if (lettera_gia_chiamata(lettera)) /* Memorizzare un vettore esito = GIA_CHIAMATA; di lettere chiamate */ else { if (lettera_in_parola(lettera)) esito = TROVATA; aggiorna_vett_visib(lettera); } num_errori++; esito = ERRORE;

10 Parte Grafica “la schermata”

11 STAMPA LA FIGURA …blank… P-a-r-o-l-a rimanenti

12 Stampa_figura_e_parola (int errori)
{ /* esempio con errori = MAX_ERRORI */ switch ( errori ): { case MAX_ERRORI: - - - Stampa_blank(); printf(“ _____ - - - Stampa_blank(); printf(“ | | Stampa_parola(); printf(“ | - - - Stampa_blank(); printf(“ | |- - - - Stampa_blank(); printf(“ | / \ - - - Stampa_blank(); printf(“___.___ Stampa_blank rimanenti(); }

13 STAMPA LE INFORMAZIONI:
Errori rimanenti ESITO PRECEDENTE Leggi nuova mossa

14 printf (“ Errori Rimanenti: %d \n”,
MAX_ERR – errori_fatti); Stampa_esito_precedente(); * [GIA’ CHIAMATA] * [TROVATA] * [NON TROVATA] printf (“Inserisci una lettera: \n”); leggi_lettera();

15 La stampa della pagina deve essere in un ciclo, che termina quando:
C’è l’IMPICCATO (troppi errori); Gioco Completato; EOF (CTRL+Z)

16 Alla fine si controlla il motivo per cui si è usciti dal ciclo:

17 Se per troppi errori, stampa:
IMPICCATO, la parola esatta era: stampa_parola( );

18 / * */ Se per il gioco completato, stampa: COMPLIMENTI, HAI VINTO!
Il gioco è completato se il numero di incognite stampate = 0 */

19 Se per il comando di EOF, stampa:
Hai deciso di uscire!

20 Fine presentazione

21


Scaricare ppt "Gioco dell’impiccato in C"

Presentazioni simili


Annunci Google