26
Сен
2021

Как убрать бесконечный вывод

Решил сделать что-то вроде игры «быки и коровы». Пользователю предлагается угадать вариант компьютера. Но в конце цикла у меня почему-то бесконечно выводится строка n быков, n коров. С чем это связано и как это исправить?

import java.util.Scanner;
import java.util.ArrayList;
public class NewClass {
  public static void main (String [] args) {
    ArrayList <String> number = new ArrayList<String> ();
   int i = (int)(Math.random()*10);
    String s = String.valueOf(i);
    number.add(s);
   while(number.size()<4){
      if(!number.contains(s)){
        number.add(s);
      }
     i = (int) (Math.random() * 10);
      s = String.valueOf(i);
   }    
    ArrayList <String> gNum = new ArrayList <String> ();
    boolean isCon = true;
   int bulls = 0;
   int cows = 0;
   do{
        while (gNum.size()<4){
         int guessi = scan.nextInt();
          String guesss = String.valueOf(gi);//запрашиваем число у пользователя и преобразуем его в строку
          if(!gNum.contains(gs)){
           gNum.add(gs);
          }
        }
        for (int g = 0; g <4; g++){
          String tig = gNum.get(g);
           if(number.contains(tig)){
              if(number.indexOf(tig) == g){
                bulls++;
              } else {
                cows++;
              }
            }
        }
        if (bulls == 4){
          System.out.println("You win!");
          isCon = false;
        }
          System.out.println(bulls + " "+ cows);
          bulls = 0;
          cows = 0;
        }

    }while(isCon == true);
    

    
      }
    }

Источник: https://ru.stackoverflow.com/questions/1332379/%D0%9A%D0%B0%D0%BA-%D1%83%D0%B1%D1%80%D0%B0%D1%82%D1%8C-%D0%B1%D0%B5%D1%81%D0%BA%D0%BE%D0%BD%D0%B5%D1%87%D0%BD%D1%8B%D0%B9-%D0%B2%D1%8B%D0%B2%D0%BE%D0%B4

Тебе может это понравится...

Добавить комментарий