testo dell`esercitazione

Transcript

testo dell`esercitazione
Corso di Programmazione Procedurale - Anno Accademico 2003/2004 – Corso di Laurea in Informatica
Esercitazione di Laboratorio
Programmazione Modulare
ESERCIZIO n. 1 (Difficoltà: Base)
Scrivere un programma in linguaggio C++ che consente ad un giocatore di giocare una mano del gioco dei dadi
con il computer. In particolare:
•
Per giocare, il giocatore deve scommettere somma a sua scelta.
•
Poi il giocatore tira due dadi, e il computer tira due dadi. Ogni dado da un punteggio tra 1 e 6. Il punteggio dei
giocatori corrisponde alla somma dei punteggi dei due dadi. NOTA: per scegliere un numero a caso tra 1 e 6 è
possibile effettuare le seguenti operazioni: (a) Inserire nel main() le due istruzioni seguenti come prime linee di
codice:
int seme = time(NULL);
srand(seme);
(b) Utilizzare successivamente la funzione seguente:
int generaNumero() {
return (rand() % 6 + 1);
}
•
Vince la mano chi totalizza il punteggio più alto. Se i due giocatori riportano lo stesso punteggio si verifica un
pareggio.
•
Al termine della mano il computer visualizza l’esito della mano.
ESERCIZIO n. 2 (Difficoltà: Intermedia)
Modificare il programma precedente in modo che consenta al giocatore di giocare un’intera partita al gioco dei dadi.
In particolare:
•
Il programma chiede al giocatore qual è la posta che vuole acquistare (es: 10 Euro);
•
Il giocatore comincia a giocare le mani del gioco. In ogni mano, il giocatore deve scommettere una parte della
sua posta e può scegliere l’ammontare.
•
Poi il giocatore e il computer giocano la mano, secondo le regole riportate sopra.
•
Se il giocatore vince la mano, l’importo scommesso si aggiunge alla sua posta; se il giocatore perde la mano,
l’importo scommesso viene sottratto dalla sua posta (es: se il giocatore scommette 1 Euro con una posta iniziale
di 10 Euro, e i suoi dadi totalizzano 8 – es: 5 + 3 – e i dati del computer totalizzano 5 – es: 4 + 1 – il giocatore
vince la mano e la sua posta diventa di 11 Euro; se successivamente giocatore scommette 2 Euro e i suoi dati
totalizzano 5 – es: 3 + 2 – mentre i dadi del computer totalizzano 12 – ovvero 6 + 6 – il giocatore perde la mano
e la sua posta diventa di 9 Euro).
•
Al termine della mano il computer visualizza l’esito della mano e l’importo della posta rimanente per il giocatore.
•
Il gioco si interrompe nel momento in cui il giocatore decide di fermarsi, oppure quando perde tutta la sua posta.
ESERCIZIO n. 2 (Difficoltà: Avanzata)
Scrivere un programma in linguaggio C++ che consente ad un giocatore di giocare al “Gioco dell’Impiccato” contro il
computer. Il gioco consiste nell’indovinare una parola di massimo 12 lettere prelevata da un file “parola.txt” utilizzando
un massimo di 12 tentativi. Il gioco si svolge come segue.
•
Il computer preleva dal file “parola.txt” la parola da indovinare (es: la parola “calcolatore”)
•
Il computer visualizza all’utente una stringa di caratteri ‘-‘ della stessa lunghezza della parola da indovinare (es: “- - - - - - - - - -“), e il numero di caratteri della parola da indovinare (nell’esempio: 11).
•
Il giocatore effettua dei tentativi fornendo delle lettere. Se il giocatore fornisce una lettera presente nella parola,
questa viene visualizzata nella posizione in cui è presente; inoltre, dopo ogni tentativo, il computer visualizza il
numero di tentativi mancanti all’impiccagione (es: se il giocatore tenta inizialmente la lettera ‘o’, il computer
visualizza: “- - - - o - - - o - -“ e il messaggio “Mancano 5 tentativi all’impiccagione”; se successivamente il
giocatore tenta la lettera ‘t’, il computer visualizza “- - - - o - - t o - -“ e il messaggio “Mancano 4 tentativi
all’impiccagione)
Corso di Programmazione Procedurale - Anno Accademico 2003/2004 – Corso di Laurea in Informatica
•
Il gioco termina quanto finiscono i tentativi disponibili oppure quanto il giocatore indovina completamente le
lettere della parola.
Corso di Programmazione Procedurale - Anno Accademico 2003/2004 – Corso di Laurea in Informatica
Istruzioni per lo Svolgimento dell’Esercitazione
1. Effettuare l’accesso alle macchine del Centro di Calcolo Studenti con il proprio nome utente (matricola) e
la password assegnata. Nel caso in cui non si disponga della password, rivolgersi al personale del
Centro di Calcolo.
2. Una volta effettuato l’accesso, sarà disponibile tra i dischi della macchina, un nuovo disco denominato Z:,
che rappresenta l’area di lavoro personale. In quest’area sarà possibile salvare tutti i file creati durante le
esercitazioni di laboratorio. L’area di lavoro in questione sarà inoltre disponibile successivamente
indipendentemente dalla macchina sulla quale viene verificato l’accesso. Durante l’esercitazione, salvare
i file creati esclusivamente sul disco Z:
3. Gli strumenti disponibili per l’esercitazione sono quelli illustrati a lezione, ed in particolare:
•
Il compilatore Borland BCC 5.5
•
Il compilatore Salford FTN 77
•
L’editor di testi TextPad
NOTA: si suggerisce di (a) configurare la macchina in modo da visualizzare le estensioni per i file
conosciuti (b) configurare TextPad in modo da eliminare l’estensione predefinita .txt. La configurazione dei
compilatori è invece stata già effettuata completamente
4. Per utilizzare gli strumenti è necessario eseguire il Prompt di MS/DOS (Start >> Programmi >>
Accessori >> Prompt di MsDOS) e spostarsi sul disco Z; per farlo digitare il comando Z: <invio>
(SUGGERIMENTO: si consiglia di NON chiudere la finestra con il prompt di MS/DOS, ma di tenerla
aperta contemporaneamente all’editor)
5. Al termine dell’esercitazione disconnettersi e abbandonare il calcolatore senza spegnerlo.