MineSweeper.java public class MS { public static void main(String[] args) { Gamegm= new Game(); } } --> Game.java public class Game { private Bd bd; boolean fnsh = false; boolean w = false; int tn=0; public jg(){ bd = new Bd(); Py(bd); } public void Py(Bd bd){ do{ tn++; System.out.println(\"Turn \"+tn); bd.show(); fnsh = bd.setPosition(); if(!fnsh){ bd.openNeighbors(); fnsh = bd.w(); } }while(!fnsh); if(bd.w()){ System.out.println(\"Congratulations, you let the 10 fields with the mns in \"+tn+\" tns\"); bd.showMines(); } else { System.out.println(\"Mine! You lost!\"); bd.showMines(); } } } --> Bd.java import java.util.Rnm; import java.util.Scanner; public class Bd { private int[][] mns; private char[][] bdgame; private int Line, Clm; Rnm rnm = new Rnm(); Scanner input = new Scanner(System.in); public Bd (){ mns = new int[10][10]; bdgame = new char[10][10]; stMs(); rnmMines(); fillTips(); startBd(); } public boolean w(){ int ct=0; for(int line = 1 ; line < 9 ; line++) for(int clm = 1 ; clm < 9 ; clm++) if(bdgame[line][clm]==\'_\') ct++; if(ct == 10) return true; else return false; } public void oN(){ for(int i=-1 ; i<2 ; i++) for(int j=-1 ; j<2 ; j++) if( (mns[Ln+i][Clm+j] != -1) && (Ln != 0 && Ln != 9 && Clm != 0 && Clm != 9) ) bdgame[Ln+i][Clm+j]=Character.forDigit(mns[Ln+i][Clm+j], 10); } public int getPosition(int Ln, int Clm){ retn mns[Ln][Clm]; } public boolean setPosition(){ do{ System.out.print(\"\ Ln: \"); Ln = input.nextInt(); System.out.print(\"Clm: \"); Clm = input.nextInt(); if( (bdgame[Ln][Clm] != \'_\') && ((Ln < 9 && Ln > 0) && (Clm < 9 && Clm > 0))) System.out.println(\"Field already shown\"); if( Ln < 1 || Ln > 8 || Clm < 1 || Clm > 8) System.out.println(\"Choose a number between 1 and 8\"); }while((Ln < 1 || Ln > 8 || Clm < 1 || Clm > 8) || (bdgame[Ln][Clm] != \'_\') ); if(getPosition(Ln, Clm)== -1) retn true; else retn false; } public void show(){ System.out.println(\"\ Lns\"); for(int Ln = 8 ; Ln > 0 ; Ln--){ System.out.print(\" \"+Ln + \" \"); for(int Clm = 1 ; Clm < 9 ; Clm++){ System.out.print(\" \"+ bdgame[Ln][Clm]); } System.out.println(); } System.out.println(\"\ 1 2 3 4 5 6 7 8\"); System.out.println(\" Clms\"); } public void fillTips(){ for(int ln=1 ; ln < 9 ; ln++) for(int clm=1 ; clm < 9 ; clm++){ for(int i=-1 ; i<=1 ; i++) for(int j=-1 ; j<=1 ; j++) if(mns[ln][clm] != -1) if(mns[ln+i][clm+j] == -1) mns[ln][clm]++; } } public void showMines(){ for(int i=1 ; i < 9; i++) for(int j=1 ; j < 9 ; j++) if(mns[i][j] == -1) bdgame[i][j]=\'*\'; show(); } public void startBd(){ for(int i=1 ; i Solution MineSweeper.java public class MS { public static void main(String[] args) { Gamegm= new Game(); } } --> Game.java public class Game { private Bd bd; boolean fnsh = false; boolean w = false; int tn=0; public jg(){ bd = new Bd(); Py(bd); } public void Py(Bd bd){ do{ tn++; System.out.println(\"Turn \"+tn); bd.show(); fnsh = bd.setPosition(); if(!fnsh){ bd.openNeighbors(); fnsh = bd.w(); } }while(!fnsh); if(bd.w()){ System.out.pr.