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'шник.
Потому что надо почитать азы джавы.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы
23 нояб. 2024, в 01:31
1000 руб./за проект
23 нояб. 2024, в 00:16
2000 руб./за проект
22 нояб. 2024, в 23:55
3000 руб./за проект