Java Pig Latin Converter выплевывает лишнее слово

Я работаю над проектом для моего курса по программным приложениям в WGU. Я решил адаптировать латиноамериканский конвертер на основе Python из предыдущего курса. Я почти сделал это, но когда я запускаю программу, я получаю дополнительное слово. Например, если я ввожу латиницу, она печатает atinLay, а на следующей строке печатает inLatay.

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

import java.util.Scanner; 

public class PigConverter
{ 
public static void main(String[] args) 
    { 
Scanner anscay = new Scanner(System.in);
System.out.print("Enter a word:"); 
String word = anscay.nextLine(); 
System.out.println("This word, in pig latin, would be:");

String pigConvert;
 for (int i=0; i < word.length(); i++)
        {
       if(word.charAt(i)=='a' || word.charAt(i)=='e' || word.charAt(i)=='i' ||
           word.charAt(i)=='o' || word.charAt(i)=='u') 
            {
              String second = word.substring(0,i);
              String first = word.substring(i,word.length());
              System.out.println(first+second+"ay");    
            }

        }
    }
}

1 ответ

Я думаю, что ваш цикл находит ОБА гласные в слове, поэтому он / она делает вывод дважды. Я думаю, что ваша петля должна разорваться, как только вы найдете первый гласный.

Другие вопросы по тегам