romanbel
@romanbel
Программист

Почему не работает код?

package ru.andwin.cities;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

class Main{
    public static void main(String[] args) throws IOException {
        //Переменыные
        char quot = '"';
        int counter = 0;
        String first;
        String last;
        String message;
        String[] а = new String[4];
        а[0] = "АНИВА";
        а[1] = "АПШЕРОНСК";
        а[2] = "АРЗАМАС";
        а[3] = "АНАПА";
        int ар;
        String[] б = new String[4];
        б[0] = "БАЙМАК";
        б[1] = "БАЛАХНА";
        б[2] = "БЕЛГОРОД";
        б[3] = "БУЗУЛУК";
        int бр;
        String[] в = new String[4];
        в[0] = "ВЕЛИКИЙНОВГОРОД";
        в[1] = "ВОЛГОГРАД";
        в[2] = "ВЛАДИМИР";
        в[3] = "ВОРОНЕЖ";
        int вр;
        String[] г = new String[4];
        г[0] = "ГОРНО-АЛТАЙСК";
        г[1] = "ГЛАЗОВ";
        г[2] = "ГРЯЗИ";
        г[3] = "ГУБКИН";
        int гр;
        String[] д = new String[4];
        д[0] = "ДАНИЛОВ";
        д[1] = "ДЗЕРЖИНСК";
        д[2] = "ДНО";
        д[3] = "ДЯТЬКОВО";
        int др;
        String[] е = new String[4];
        е[0] = "ЕЛЬНЯ";
        е[1] = "ЕССЕНТУКИ";
        е[2] = "ЕНИСЕЙСК";
        е[3] = "ЕРШОВ";
        int ер;
        String[] ж = new String[4];
        ж[0] = "ЖЕЛЕЗНОВОДСК";
        ж[1] = "ЖИГУЛЁВСК";
        ж[2] = "ЖЕРДЕВКА";
        ж[3] = "ЖЕЛЕЗНОДОРОЖНЫЙ";
        int жр;
        String[] з = new String[4];
        з[0] = "ЗАВИТИНСК";
        з[1] = "ЗАВОЛЖСК";
        з[2] = "ЗАВОЛЖЬЕ";
        з[3] = "ЗАДОНСК";
        int зр;
        String[] и = new String[4];
        и[0] = "ИВАНГОРОД";
        и[1] = "ИВАНТЕЕВКА";
        и[2] = "ИСТРА";
        и[3] = "ИРБИТ";
        int ир;
        String[] к = new String[4];
        к[0] = "КАЛИНИНГРАД";
        к[1] = "КАЛУГА";
        к[2] = "КАЛАЧ-НА-ДОНУ";
        к[3] = "КАМЕННОГОРСК";
        int кр;
        String[] л = new String[4];
        л[0] = "ЛАБИНСК";
        л[1] = "ЛЕНИНОГОРСК";
        л[2] = "ЛЕНИНСК";
        л[3] = "ЛЕСОСИБИРСК";
        int лр;
        String[] м = new String[4];
        м[0] = "МАМОНОВО";
        м[1] = "МЕЩОВСК";
        м[2] = "МИАСС";
        м[3] = "МИЧУРИНСК";
        int мр;
        String[] н = new String[4];
        н[0] = "НАЗАРОВО";
        н[1] = "НАХОДКА";
        н[2] = "НЕВЬЯНСК";
        н[3] = "НЕМАН";
        int нр;
        String[] о = new String[4];
        о[0] = "ОЗЕРСК";
        о[1] = "ОРЕНБУРГ";
        о[2] = "ОРСК";
        о[3] = "ОСА";
        int ор;
        //других букв нет - всё равно не работает

        //Процесс игры
        System.out.println("Добро пожаловать в игру " + quot + "Города" + quot + "\nСоздатель игры - человек\n               Правила: \nправила будут потом");
        System.out.println("Мой город: МОСКВА");
        while (true) {
            counter++;
            System.out.print("Ваш город: ");
            BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
            message = br.readLine();
            first = message.charAt(0) + "";
            last = message.charAt(message.length() - 1) + "";
            if (counter == 1) {
                last = "А";
            }
            if(first.equals(last)){
                last = message.charAt(message.length() - 1) + "";
                if (last.equals("А")) {
                    ар = (int)(Math.random()*3);
                    last = а[ар].charAt(а[ар].length() - 1) + "";
                    System.out.println("Мой город: " + а[ар]);
                } else if (last.equals("Б")) {
                    бр = (int)(Math.random()*3);
                    last = б[бр].charAt(б[бр].length() - 1) + "";
                    System.out.println("Мой город: " + б[бр]);
                } else if (last.equals("В")) {
                    вр = (int)(Math.random()*3);
                    last = в[вр].charAt(в[вр].length() - 1) + "";
                    System.out.println("Мой город: " + в[вр]);
                } else if (last.equals("Г")) {
                    гр = (int)(Math.random()*3);
                    last = г[гр].charAt(г[гр].length() - 1) + "";
                    System.out.println("Мой город: " + г[гр]);
                } else if (last.equals("Д")) {
                    др = (int)(Math.random()*3);
                    last = д[др].charAt(д[др].length() - 1) + "";
                    System.out.println("Мой город: " + д[др]);
                } else if (last.equals("Е")) {
                    ер = (int)(Math.random()*3);
                    last = е[ер].charAt(е[ер].length() - 1) + "";
                    System.out.println("Мой город: " + е[ер]);
                } else if (last.equals("Ж")) {
                    жр = (int)(Math.random()*3);
                    last = ж[жр].charAt(ж[жр].length() - 1) + "";
                    System.out.println("Мой город: " + ж[жр]);
                } else if (last.equals("З")) {
                    зр = (int)(Math.random()*3);
                    last = з[зр].charAt(з[зр].length() - 1) + "";
                    System.out.println("Мой город: " + з[зр]);
                } else if (last.equals("И")) {
                    ир = (int)(Math.random()*3);
                    last = и[ир].charAt(и[ир].length() - 1) + "";
                    System.out.println("Мой город: " + и[ир]);
                } else if (last.equals("К")) {
                    кр = (int)(Math.random()*3);
                    last = к[кр].charAt(к[кр].length() - 1) + "";
                    System.out.println("Мой город: " + к[кр]);
                } else if (last.equals("Л")) {
                    лр = (int)(Math.random()*3);
                    last = л[лр].charAt(л[лр].length() - 1) + "";
                    System.out.println("Мой город: " + л[лр]);
                } else if (last.equals("М")) {
                    мр = (int)(Math.random()*3);
                    last = м[мр].charAt(м[мр].length() - 1) + "";
                    System.out.println("Мой город: " + м[мр]);
                } else if (last.equals("Н")) {
                    нр = (int)(Math.random()*3);
                    last = н[нр].charAt(н[нр].length() - 1) + "";
                    System.out.println("Мой город: " + н[нр]);
                }
            }
        }
    }
}
  • Вопрос задан
  • 181 просмотр
Решения вопроса 1
...
first = message.charAt(0) + "";
last = message.charAt(message.length() - 1) + "";
if (counter == 1) {
   last = "А";
}
if(first.equals(last)){
...

Потому что вы сравниваете первую и последнюю букву из того, что введет пользователь, а хотели видимо совсем другое

А вообще - учитесь дебажить
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
jamakasi666
@jamakasi666 Куратор тега Java
Просто IT'шник.
Потому что надо почитать азы джавы.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Bell Integrator Ульяновск
До 400 000 ₽
Bell Integrator Хабаровск
До 400 000 ₽
Bell Integrator Ижевск
До 400 000 ₽
03 мая 2024, в 00:45
1000 руб./за проект
02 мая 2024, в 23:56
2000 руб./за проект