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