0
私は、ユーザからフレーズを受け取り、その後母音を数え、すべての母音をその数に従ってソートされた昇順に表示するプログラムを作っています。見えるようになっているかのソート後の出力?
例:私は両方のソート後:
Welcome to the vowel counter and sorter!
Enter a phrase!
aaaaaeeeeiiioou
The vowels and their count:
u 1
o 2
i 3
e 4
a 5
私は私のコードは、私は本当に母音」の後に何をするか分からない除いて結構ですし、そのカウントがあると思います。
Enter a phrase!
aaaaaeeeeiiioou
The vowels and their count:
U 1
U 79
U 79
U 79
U 79
:母音とカウント
int[] vCount = new int[5];
System.out.println("Welcome to the vowel counter and sorter!\nEnter a phrase!");
String input = keyboard.nextLine();
String upInput = input.toUpperCase();
//examine all characters
for (int i=0; i<upInput.length(); i++)
{
switch (upInput.charAt(i))
{
case 'A':
vCount[0]++;
break;
case 'E':
vCount[1]++;
break;
case 'I':
vCount[2]++;
break;
case 'O':
vCount[3]++;
break;
case 'U':
vCount[4]++;
break;
}
}
char[] vArray = {'A', 'E', 'I', 'O', 'U'};
//Bubble Sort
boolean hasSwapped = true;
while (hasSwapped == true)
{
hasSwapped = false; //Assumes it is sorted
for (int i = 0; i<vCount.length-1; i++)
{
if (vCount[i] > vCount[i+1])
{
int temp = vCount[i];
vCount[i] = vCount[i+1];
vCount[i+1] = temp;
hasSwapped = true;
char temp2 = vArray[i];
vArray[i] = vArray[i+1];
vCount[i+1] = temp2;
}
}
}
System.out.println("The vowels and their count:");
for (int i=0; i<vArray.length; i++)
{
System.out.println(vArray[i]+ " " +vCount[i]);
}
}
私の出力は完全に間違っていると台無しです私はあなたが、アレイを印刷するためのループのために必要がありますが、私の出力が道オフになっていると仮定します
これを正しく印刷するのを手伝ってください。
私はそれを見落として驚いています!ありがとうございました。私はちょうど配列を学習し始めました。教授が私たちに学ばせようとしている演習の1つは、バブルソートを使って配列をソートすることです。これは私の最初のプログラミングクラスなので、マップやライブラリについては何も知りません! –
@ChrisM問題はありません、喜んで助けてください。 upvoteして受け入れてください! – nhouser9
upvoteと受け入れる:)ところで、私は私の教授のコードブロックのソートの例を使って、なぜそれがvCount.length -1の行であるか教えてくれますか?for(int i = 0; i