Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*Il gioco del 15 consiste nel disporre le celle da 1 a 15 per riga in una matrice
- 4x4. Avendo a disposizione una sola cella vuota, è possibile spostare solo le
- celle adiacianti alla cella vuota, in orizzontale ed in verticale.
- Progettare ed implementare un programma che legga da file una
- configurazione del gioco e verifichi se rappresenta la soluzione, usando un
- contenitore della STL.
- Implementare una versione parallella che, usando i thread, consenta di
- verificare più file contemporaneamente.*/
- #include <iostream>
- #include <fstream>
- using namespace std;
- bool verifica(int matrice[][4], const int n)
- {
- bool risultato= true;
- for(int i=0; i<n; i++)
- {
- for(int j=0; j<n; j++)
- if(matrice[i][j]!=(i*n+j+1)&&(i*n+j)!=(n*n)-1)
- risultato=false;
- }
- return risultato;
- }
- int main()
- {
- fstream problema;
- problema.open("problema.txt", ios::in);
- char appoggio[3];
- int matrice [4][4];
- const int n=4;
- for(int i=0; i<n; i++)
- {
- for(int j=0; j<n; j++)
- {
- problema>>appoggio;
- matrice[i][j]=atoi(appoggio);
- }
- }
- for(int i=0; i<n; i++)
- {
- for(int j=0; j<n; j++)
- cout<<"\t"<<matrice[i][j];
- cout<<endl;
- }
- if (verifica(matrice, n))
- cout<<"vero"<<endl;
- else
- cout<<"falso"<<endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement