Correzione prova pratica del 9 luglio 2003
Correzione prova pratica del 9 luglio 2003
Istruzioni:
il commento iniziale rappresenta il giudizio complessivo sul programma. Nei commenti trovate:
- FIXME: segnalazione di un errore, non necessariamente sono tutti segnalati e non necessariamente sono tutti presi in considerazione
per il voto finale
- TODO: segnala l'assenza di parti di codice
- XXX: segnala qualcosa di non chiaro o inutile ai fini del codice, commenti di ordine generale, errori di battitura o suggerimenti
Il codice presentato non è necessariamente identico a quello consegnato in quanto possono essere state effettuate modifiche per
renderlo compilabile e/o per la corretta indentazione.
//XXX (1) codice incompleto, abbozzo di controllo sbagliato
//<piscina> <veruska>, <140065>, <weru@libero.it>, <dis14>
//<09.07.2003> esame di fondamenti di informatica, corso di laurea in Ingegneria Elettronica
#include<iostream.h>
#include<stdlib.h>
#include<fstream.h>
const char nomefile[] = "tris.txt"; //file predefinito
char matrice [3] [3];
char check (void);
void inizializza_matrice(void);
void get_1player_move(void);
void get_2player_move(void);
void schermo_matrice(void);
char 1player_move=X;
char 2player_move=O;
int main (void)
{
char done;
ifstream fin(nomefile);
if (!fin) {
cerr << "Errore: impossibile aprire file " <<nomefile<<".\n";
exit(1);
}
cout<< "Questo e' il gioco del TRIS, o Tic - Tac - Toe\n.";
cout<< "I due giocatori tracciano il proprio simbolo(una X e una O)"<<endl;
done = ' ';
inizializza_matrice(); //FIXME manca pero' la funzione invocata
do{
schermo_matrice(); //FIXME mancano tutte le funzioni invocate, a parte cio' sembra anche incorretto l'algoritmo
get_1player_move();
done = check();
if (done!= ' ') break;
get_2player_move();
done = check();
}while(done = ' ')
fin.close();
int i,j;
char X;
char O;
//FIXME decisamente sbagliato
for(i=0;i<3;i++) {
for(j=0;j<3;j++)
if (matrice[i] [j]==X) cout<<"Partita vinta dal giocatore 1." <<endl;
if(matrice[i] [j]==O) cout<<"Partita vinta dal giocatore 2." <<endl;
else cout<<"Partita patta" <<endl; }
return 0;
}
Se avete commenti o osservazioni su questa pagina
mandate un messaggio di posta elettronica a
bertozzi@CE.UniPR.IT