Перечислите все слова, которые могут быть сделаны из символов пользовательского ввода (массив Java) - PullRequest
0 голосов
/ 23 сентября 2019
    import java.util.Arrays;
    import java.util.Scanner;

    public class TYM6 {
    String[] words = {"and", "love", "vole", "levo", "the"};

    public  void start() {
        Scanner sc = new Scanner(System.in); // Do not remove for automated testing to work

        System.out.print("Enter your characters: ");
        String chars = sc.nextLine();

       try
       {
            for(int i=0; i<words.length; i++)
            {
                boolean display = true;
                if (words[i].length() == chars.length()) {
                    for (int c = 0; c < chars.length(); c++) {
                        if (Arrays.asList(words).indexOf(chars.charAt(c)) == -1) {
                            display = false;
                            System.out.println("No match");
                        }
                    }
                    if (display) {
                        for (String word : words) {
                            System.out.println(word);
                        }
                    }
                }
            }
       }catch (Exception e) {
           System.out.println("Couldn't find the list of words!");
       }
    }

    public static void main(String[] args) {
        TYM6 tym6 = new TYM6();
        tym6.start();
    }
}

У меня есть массив слов.Программа должна сопоставлять введенные пользователем слова со словами в массиве.Каждую букву можно использовать только один раз в любом порядке.Вводимый пользователем текст не должен быть одним из сгенерированных слов.После ввода пользователем строк символов программа должна перечислить все английские слова, которые можно составить из этих символов.Но я не вижу своей ошибки.

...