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: 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 (0) non ha mai provato a compilarlo, numerosi errori di sintassi
// <Tarasconi > <Carlo Alberto>, <149699> //FIXME manca l'indirizzo di posta elettronica
// <090703> - esame di fondamenti di informatica, corso di laurea in ingegneria informatica


#include <iostream.h>
#include <fstream.h>

int main () {

  int t, r, c, giocatore = 1;
  int partita [3] [3] = ('0'); //FIXME inizializzazione non corretta




  fstream fin ("tris.txt");

  if (!fin)
    cout <<  (( "Errore di apertura del file "));

  while (fin > r)  //FIXME evidentemente lei non ha mai provato a compilare questo programma

  {fin > c;
    if (giocatore) {gioco [r] [c] = 1; giocatore = 0); //FIXME parentesi etc...
      else (giocatore  [r] [c] = 2; giocatore =1);
    }

    char (controllapartita); //FIXME cosa sarebbe questo?
    int F;
    {             
      if (controlla (gioco) == 'X') cout << " Partita vinta da X\n "; // Assegna partita vinta ad 'X'
      else if (controlla (gioco) == '0') cout << " Partita vinta da 0\n "; // Assegna partita vinta a '0'
      else cout << " Partita patta\n " ; // Assegna partita patta 
    }

    {fin > r;
      if (giocatore == 1 )  {gioco[r][c] = 1; giocatore 'X';}
      else    {partita [r][c] = 1; giocatore '0';}

      cin.close();


      if  (controllapartita == 'Q') cout << "Partita patta";
      else cout << " Partita vinta dal giocatore "<< (controllapartita = 'X');

      return 0;

    }


    int controlla (char a[][]); {

      for (int i=0; i<3; i++) { // Controlla il gioco

  if (m[i][0]==1) && (m[i][1] == 1) && (m[i][2] == 1); return 0;
  else if (m[i][0]==2) && (m[i][1] == 2) && (m[i][2] == 1); return 0;
  else if (m[0][i]==3) && (m[1][i] == 3) && (m[2][i] == 3); return 0;
  else if (m[0][i]==1) && (m[1][i] == 2) && (m[2][i] == 3); return 0;

      }


      if (n[0][0]==1) && (n[1][1] == 1) && (n[2][2] == 1); return 0;
      else if (n[0][0]==0) && (n[1][1] == 0) && (n[2][2] == 0); return 0;
      else if (n[0][2]==0) && (n[1][1] == 0) && (n[2][2] == 0); return 0;
      else if (n[0][2]==1) && (n[1][1] == 1) && (n[2][2] == 1); return 0;  

    }

    else return 'Q';



Se avete commenti o osservazioni su questa pagina
mandate un messaggio di posta elettronica a bertozzi@CE.UniPR.IT