Advertisement
Guest User

3enlinea

a guest
Sep 3rd, 2015
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.42 KB | None | 0 0
  1.  
  2.  
  3. package semana3;
  4.  
  5. import java.util.ArrayList;
  6. import java.util.Scanner;
  7.  
  8. public class Semana3 {
  9.    
  10.     public static char comprobarGanador(String tablero)
  11.     {
  12.         for(int c = 0 ; c < 3;c++)
  13.         {
  14.             //EN X
  15.             //vertical
  16.             boolean vertical=true;
  17.             //horizontal
  18.             boolean horizontal = true;
  19.             for(int i = 0 ; i< 3;i++)
  20.             {
  21.                 if(tablero.charAt(i*3+c) != 'x')
  22.                     vertical = false;
  23.                 if(tablero.charAt(i+3*c) != 'x')
  24.                     horizontal = false;
  25.             }
  26.             if(vertical || horizontal)
  27.                 return 'x';
  28.             //EN O
  29.             //vertical
  30.             vertical = true;
  31.             //horizontal
  32.             horizontal = true;
  33.             for(int i = 0 ; i< 3;i++)
  34.             {
  35.                 if(tablero.charAt(i*3+c) != 'o')
  36.                     vertical = false;
  37.                 if(tablero.charAt(i+3*c) != 'o')
  38.                     horizontal = false;
  39.             }
  40.             if(vertical || horizontal)
  41.                 return 'o';
  42.         }
  43.         //diagonal
  44.         boolean diagonal=true;
  45.         for(int i = 0; i < 3;i++)
  46.             if(tablero.charAt(i*3+i)!='x')
  47.                 diagonal=false;
  48.         if(diagonal)
  49.             return 'x';
  50.        
  51.         diagonal=true;
  52.         for(int i = 0; i < 3;i++)
  53.             if(tablero.charAt(i*3+2-i)!='x')
  54.                 diagonal=false;
  55.          if(diagonal)
  56.             return 'x';
  57.          
  58.         diagonal=true;
  59.         for(int i = 0; i < 3;i++)
  60.             if(tablero.charAt(i*3+i)!='o')
  61.                 diagonal=false;
  62.          if(diagonal)
  63.             return 'o';
  64.          
  65.         diagonal=true;
  66.         for(int i = 0; i < 3;i++)
  67.             if(tablero.charAt(i*3+2-i)!='o')
  68.                 diagonal=false;
  69.          if(diagonal)
  70.             return 'o';
  71.        
  72.         return ' ';
  73.        
  74.     }
  75.    
  76.     public static void imprimirTablero(String tablero)
  77.     {
  78.         for(int i = 0; i < 3; i++)
  79.         {
  80.             System.out.println(tablero.substring(i*3, i*3+3));
  81.         }
  82.     }
  83.    
  84.     public static String ingresarEnTablero(String tablero, String letra, int indice)
  85.     {
  86.         if(tablero.charAt(indice) != ' ')
  87.             return tablero;
  88.        
  89.         String nuevoTablero = new String();
  90.         nuevoTablero= nuevoTablero.concat(tablero.substring(0, indice));
  91.         nuevoTablero=nuevoTablero.concat(letra);
  92.         nuevoTablero=nuevoTablero.concat(tablero.substring(indice+1, 9));
  93.         return nuevoTablero;
  94.     }
  95.    
  96.     public static int elegirMejor(String tablero)
  97.     {
  98.         int mejor=3;
  99.        
  100.        
  101.         return mejor;
  102.     }
  103.     public static void main(String[] args) {
  104.         Scanner in = new Scanner(System.in);
  105.         String tablero = new String("         ");
  106.         imprimirTablero(tablero);
  107.         while(true)
  108.         {
  109.             System.out.print("Ingrese el lugar: ");
  110.             int indice = in.nextInt();
  111.             tablero = ingresarEnTablero(tablero, "x", indice);
  112.             imprimirTablero(tablero);
  113.            
  114.             int mov = elegirMejor(tablero);
  115.             System.out.println("Movimiento del algoritmo: " + mov);
  116.             tablero = ingresarEnTablero(tablero, "o", mov);
  117.             imprimirTablero(tablero);
  118.            
  119.         }
  120.        
  121.        
  122.        
  123.        
  124.     }
  125.    
  126. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement