Сделав что-то вроде этой надежды, это поможет, это даст гласные, согласные каждого слова
public static void main (String args[])
{
Scanner stdin = new Scanner(System.in);
String string1;
System.out.println("Enter a string");
string1 = stdin.nextLine();
string1 = string1.toLowerCase();
int count = 0;
int vowels = 0;
int consonants = 0;
for (String retval: string1.split(" ")){
for (int i = 0; i < retval.length(); i++)
{
char ch = retval.charAt(i);
if (ch == 'a' || ch == 'e' || ch == 'i' ||
ch == 'o' || ch == 'u')
{
vowels++;
}
else
{
consonants++;
}
}
System.out.println(retval.substring(0, 1).toUpperCase() + retval.substring(1)+" has "+vowels+" vowels and "+consonants+" cosonants");
vowels=0;
consonants=0;
}
}
Этот код абсолютно неверен. Это трудно исправить, потому что объединяет несколько ошибок в одном процессе.
Я попытаюсь перечислить некоторые из ваших ошибок:
output
и reset_done
. output <= output + 1;
не могут быть синтезированы или создадут бесконечный цикл в симуляции reset_done
и reset_cnt
бесполезны, поскольку они всегда '1'
reset_cnt
является целым числом, это не может быть AND с булевым значением из выражения counter = 24
output <= output;