質問編集履歴

1

プログラムの設計ミスがあったため修正しました

2020/12/12 13:06

投稿

stzyang
stzyang

スコア6

test CHANGED
File without changes
test CHANGED
@@ -106,13 +106,15 @@
106
106
 
107
107
  List<String> numberList = new ArrayList<String>();
108
108
 
109
- List<String> formulaList = new ArrayList<String>();
109
+ List<StringBuilder> formulaList = new ArrayList<StringBuilder>();
110
110
 
111
-
111
+ StringBuilder sb = new StringBuilder();
112
112
 
113
- for(int i = 0;i< String.valueOf(totalNumber).length();i++){
114
113
 
114
+
115
+ for(int i = 0;i< String.valueOf(number).length();i++){
116
+
115
- numberList.add(totalNumber.substring(i,i+1));
117
+ numberList.add(String.valueOf(number).substring(i,i+1));
116
118
 
117
119
  }
118
120
 
@@ -126,21 +128,47 @@
126
128
 
127
129
 
128
130
 
129
- //四則演算をここで行う
131
+ //ここで四則演算
130
132
 
131
133
  if(num1+num2+num3+num4==number) {
132
134
 
133
- formulaList.add(num1+"+"+num2+"+"+num3+"+"+num4);
135
+ sb.append(num1);
134
136
 
135
- }if(num1+num2+num3-num4==number) {
137
+ sb.append("+");
136
138
 
139
+ sb.append(num2);
140
+
137
- formulaList.add(num1+"+"+num2+"+"+num3+"-"+num4);
141
+ sb.append("+");
142
+
143
+ sb.append(num3);
144
+
145
+ sb.append("+");
146
+
147
+ sb.append(num4);
148
+
149
+ formulaList.add(sb);
138
150
 
139
151
  }
140
152
 
153
+ if(num1+num2+num3-num4==number) {
141
154
 
155
+ sb.append(num1);
142
156
 
157
+ sb.append("+");
158
+
159
+ sb.append(num2);
160
+
161
+ sb.append("+");
162
+
163
+ sb.append(num3);
164
+
165
+ sb.append("-");
166
+
167
+ sb.append(num4);
168
+
169
+ formulaList.add(sb); }
170
+
143
- //四則演算すべてのパターン書き込む
171
+ //以下同じ処理をすべての四則演算で行う
144
172
 
145
173
 
146
174