質問編集履歴

2

文法の修正

2020/07/03 05:58

投稿

-_sora.
-_sora.

スコア12

test CHANGED
File without changes
test CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  ### 発生している問題・エラーメッセージ
8
8
 
9
- 実行はできましたが,なに一つ文字が表示されませんでした.
9
+ 実行はできましたが,重複が検出されず,そのままカタカナ文字がすべて表示されてしいました.
10
10
 
11
11
 
12
12
 
@@ -16,35 +16,23 @@
16
16
 
17
17
  ```ここに言語名を入力
18
18
 
19
-     while ((line = br.readLine()) != null){/* 行単位で処理 */
19
+ while ((line = br.readLine()) != null){/* 行単位で処理 */
20
20
 
21
- int len = line.length();
21
+ int len = line.length();
22
22
 
23
- if (len <= 0) continue;
23
+ if (len <= 0) continue;
24
24
 
25
- int i=0;
25
+ int i=0;
26
26
 
27
- while (i < len){
27
+ while (i < len){
28
28
 
29
- char x = line.charAt(i);
29
+ char x = line.charAt(i);
30
30
 
31
-
32
31
 
33
-    /* 1文字目がカタカナ語か否かを判定 */
34
32
 
35
- if (x >='ァ' && x <= 'ヶ') {
33
+ /* 1文字目がカタカナ語か否かを判定 */
36
34
 
37
- word[key]+=x;
38
-
39
- i++;
40
-
41
- x = line.charAt(i); //読み込む文字を1列進める
42
-
43
-
44
-
45
- /* 二文字目以降がカタカナ語もしくは'ー'か否かを判定 */
46
-
47
- while(x >='ァ' && x <= 'ヶ'||x=='ー') {
35
+ if (x >='ァ' && x <= 'ヶ') {
48
36
 
49
37
  word[key]+=x;
50
38
 
@@ -52,37 +40,53 @@
52
40
 
53
41
  x = line.charAt(i);
54
42
 
55
- }
56
43
 
57
- /* カタカナ文字の重複があるかを確認 */
58
44
 
59
- for(int a=0;a<100;a++) {
45
+ /* 二文字目以降がカタカナ語もしくは'ー'か否かを判定 */
60
46
 
61
- if(word[key].equals(word[a])) {
47
+ while(x >='ァ' && x <= 'ヶ'||x=='ー') {
62
48
 
63
- dup=1; //重複したことを示すフラグ
49
+ word[key]+=x;
64
50
 
65
- if(key==a) {
51
+ i++;
66
52
 
53
+ x = line.charAt(i);
54
+
55
+ }
56
+
67
- dup=0; //添えが同じときに重複した場合はフラグ戻す
57
+ /* カタカナ文重複があるか確認 */
58
+
59
+ for(int a=0;a<100;a++) {
60
+
61
+ if(word[key].equals(word[a])) {
62
+
63
+ dup=1;
64
+
65
+ System.out.println("true");
66
+
67
+ if(key==a) {
68
+
69
+ dup=0;
70
+
71
+ }
68
72
 
69
73
  }
70
74
 
71
75
  }
72
76
 
73
- }
77
+ System.out.println(dup);
74
78
 
75
- key++;
79
+ if(dup!=1) {
76
80
 
77
- if(dup!=1) {
81
+ System.out.println(word[key]);
78
82
 
79
-    System.out.println(word[key]); //重複していない場合のみ文字列を表示
83
+
80
-
81
-
82
-
83
- }*/
84
84
 
85
85
 
86
+
87
+ }
88
+
89
+ key++;
86
90
 
87
91
  }
88
92
 
@@ -92,9 +96,7 @@
92
96
 
93
97
  }
94
98
 
95
- }
99
+ }
96
-
97
-
98
100
 
99
101
  ```
100
102
 
@@ -108,6 +110,8 @@
108
110
 
109
111
  for(int a=0;a<100;a++) でword[a]の値も表示させたが問題なくすべて正常なカタカナ語が表示されました.
110
112
 
113
+ if(word[key].equals(word[a]))の最後でdupの値を表示させたところ,すべて0となってしまったので,if(key==a) dup=0; が毎回実行されているのだと思われます.
114
+
111
115
 
112
116
 
113
117
  ### 補足情報(FW/ツールのバージョンなど)

1

書式の改善

2020/07/03 05:58

投稿

-_sora.
-_sora.

スコア12

test CHANGED
File without changes
test CHANGED
@@ -6,13 +6,7 @@
6
6
 
7
7
  ### 発生している問題・エラーメッセージ
8
8
 
9
-
10
-
11
- ```
12
-
13
9
  実行はできましたが,なに一つ文字列が表示されませんでした.
14
-
15
- ```
16
10
 
17
11
 
18
12