質問するログイン新規登録

回答編集履歴

2

説明を追加

2020/07/03 07:32

投稿

Daregada
Daregada

スコア11992

answer CHANGED
@@ -6,4 +6,16 @@
6
6
  }*/
7
7
  ```
8
8
 
9
- のインクリメントとif文の順番を入れ替える。あるいは、`word[key - 1]`を表示すればいい。ついでに「`*/`」を取る(なぜここに)。`key`をインクリメントしてから`word[key]`を表示したら、そりゃ何も表示されないだろう。
9
+ のインクリメントとif文の順番を入れ替える。あるいは、`word[key - 1]`を表示すればいい。ついでに「`*/`」を取る(なぜここに)。`key`をインクリメントしてから`word[key]`を表示したら、そりゃ何も表示されないだろう。
10
+
11
+ 重複確認は、`word[0]`~`word[key - 1]`までの内容と`word[key]`の内容を比較すればいいので、
12
+ ```Java
13
+ /* カタカナ文字の重複があるかを確認 */
14
+ for(int a = 0; a < key; a++) {
15
+ if(word[key].equals(word[a])) {
16
+ dup = 1;
17
+ break;
18
+ }
19
+ }
20
+ ```
21
+ とすればいい。これなら、keyとaが等しくなることはないので、i文はいらない。また、dupがいったん1になったなら、残りの要素と比較する必要はないのですぐにbreakすればいい。

1

`がひとつ足りなかった

2020/07/03 07:32

投稿

Daregada
Daregada

スコア11992

answer CHANGED
@@ -1,5 +1,5 @@
1
1
  いろいろ突っ込みたいところはあるけど、何も出ない状態から結果を表示するだけなら、
2
- ``Java
2
+ ```Java
3
3
  key++;
4
4
  if(dup!=1) {
5
5
  System.out.println(word[key]); //重複していない場合のみ文字列を表示