Advertisement
Guest User

Untitled

a guest
May 25th, 2018
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.50 KB | None | 0 0
  1. package testtask;
  2.  
  3. import java.util.Random;
  4. import java.util.Scanner;
  5.  
  6. public class TestTask {
  7.  
  8.     static String[][] tablica;
  9.  
  10.     public static void main(String[] args) {
  11.  
  12.         tablica = new String[5][5];
  13.         tableInitialization();
  14.         while (1 == 1) {
  15.  
  16.             pusteMiejsca();
  17.             rysujTablice();
  18.  
  19.             int X = skanujLiczbe("X");
  20.             int Y = skanujLiczbe("Y");
  21.  
  22.             //pusteMiejsca();
  23.  
  24.             if (!"X".equals(tablica[X][Y])) {
  25.                 tablica[X][Y] = "O";
  26.             }
  27.  
  28.             String wynik = czyWygrane();
  29.             wygranko(wynik);
  30.  
  31.             ruchBota();
  32.  
  33.             wynik = czyWygrane();
  34.             wygranko(wynik);
  35.  
  36.             rysujTablice();
  37.  
  38.         }
  39.  
  40.     }
  41.    
  42.     public static void ruchBota() {
  43.         Random rand = new Random();
  44.             int A = rand.nextInt(5);
  45.             Random rand1 = new Random();
  46.             int B = rand1.nextInt(5);
  47.             if (!"O".equals(tablica[A][B])) {
  48.                 tablica[A][B] = "X";
  49.             }
  50.     }
  51.    
  52.     public static void wygranko(String wynik) {
  53.         if (!" ".equals(wynik)) {
  54.                 rysujTablice();
  55.                 System.out.println("Wygrał gracz " + wynik);
  56.                 System.exit(0);
  57.             }
  58.     }
  59.  
  60.     public static void pusteMiejsca() {
  61.         for (int i = 0; i < 2; i++) {
  62.             System.out.println(" ");
  63.         }
  64.     }
  65.  
  66.     public static int skanujLiczbe(String name) {
  67.         int wynik = 0;
  68.  
  69.         Scanner in = new Scanner(System.in);
  70.         System.out.println("Twój ruch. Podaj współrzędną dla O na osi " + name + ": ");
  71.         wynik = in.nextInt();
  72.  
  73.         return wynik;
  74.     }
  75.  
  76.     public static String czyWygrane() {
  77.  
  78.         //POZIOMO
  79.         int counterO = 0;
  80.         int counterX = 0;
  81.         for (int i = 0; i < tablica.length; i++) {
  82.             for (int j = 0; j < tablica[i].length; j++) {
  83.                 if ("O".equals(tablica[i][j])) {
  84.                     if (j == 0) {
  85.                         counterO = 0;
  86.                         counterO++;
  87.                     }
  88.                     if (j != 0) {
  89.                         if (tablica[i][j].equals(tablica[i][j - 1])) {
  90.                             counterO++;
  91.                             if (counterO >= 4) {
  92.                                 counterO = 0;
  93.                                 return "O";
  94.                             }
  95.                         } else {
  96.                             counterO = 1;
  97.                         }
  98.                     }
  99.                 }
  100.                 if ("X".equals(tablica[i][j])) {
  101.                     if (j == 0) {
  102.                         counterX = 0;
  103.                         counterX++;
  104.                     }
  105.                     if (j != 0) {
  106.                         if (tablica[i][j].equals(tablica[i][j - 1])) {
  107.                             counterX++;
  108.                             if (counterX >= 4) {
  109.                                 counterX = 0;
  110.                                 return "X";
  111.                             }
  112.                         } else {
  113.                             counterX = 1;
  114.                         }
  115.                     }
  116.                 }
  117.             }
  118.         }
  119.  
  120.         //PIONOWO
  121.         counterO = 0;
  122.         counterX = 0;
  123.         for (int j = 0; j < tablica.length; j++) {
  124.             for (int i = 0; i < tablica[j].length; i++) {
  125.                 if ("O".equals(tablica[i][j])) {
  126.                     if (i == 0) {
  127.                         counterO = 0;
  128.                         counterO++;
  129.                     }
  130.                     if (i != 0) {
  131.                         if (tablica[i][j].equals(tablica[i - 1][j])) {
  132.                             counterO++;
  133.                             if (counterO >= 4) {
  134.                                 counterO = 0;
  135.                                 return "O";
  136.                             }
  137.                         } else {
  138.                             counterO = 1;
  139.                         }
  140.                     }
  141.                 }
  142.                 if ("X".equals(tablica[i][j])) {
  143.                     if (i == 0) {
  144.                         counterX = 0;
  145.                         counterX++;
  146.                     }
  147.                     if (i != 0) {
  148.                         if (tablica[i][j].equals(tablica[i - 1][j])) {
  149.                             counterX++;
  150.                             if (counterX >= 4) {
  151.                                 counterX = 0;
  152.                                 return "X";
  153.                             }
  154.                         } else {
  155.                             counterX = 1;
  156.                         }
  157.                     }
  158.                 }
  159.             }
  160.         }
  161.  
  162.         return " ";
  163.     }
  164.  
  165.     static public void rysujTablice() {
  166.         System.out.println("*********");
  167.         System.out.println("**01234**");
  168.         System.out.println("*********");
  169.  
  170.         for (int i = 0; i < tablica.length; i++) {
  171.  
  172.             System.out.print("**");
  173.             for (int j = 0; j < tablica[i].length; j++) {
  174.                 System.out.print(tablica[i][j]);
  175.             }
  176.  
  177.             System.out.print("**");
  178.             System.out.println();
  179.         }
  180.         System.out.println("*********");
  181.         System.out.println("*********");
  182.     }
  183.  
  184.     static public void tableInitialization() {
  185.         for (int i = 0; i < tablica.length; i++) {
  186.             for (int j = 0; j < tablica[i].length; j++) {
  187.                 tablica[i][j] = " ";
  188.  
  189.             }
  190.         }
  191.     }
  192. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement