質問編集履歴

1

注釈をいれました。

2015/07/24 04:05

投稿

piyotaka
piyotaka

スコア39

test CHANGED
File without changes
test CHANGED
@@ -30,7 +30,7 @@
30
30
 
31
31
 
32
32
 
33
-
33
+ 'Bに入力情報を入れ、For文とMidで一文字ずつ配列に入れる。
34
34
 
35
35
  Y = Len(B)
36
36
 
@@ -44,6 +44,8 @@
44
44
 
45
45
 
46
46
 
47
+ 'iが演算子の時に、-1することにより0~i-1の部分までを変数に入れる。
48
+
47
49
  If InStr(A(i),"+") Or InStr(A(i),"-") Or InStr(A(i),"*") Or InStr(A(i),"/") Then
48
50
 
49
51
 
@@ -76,7 +78,7 @@
76
78
 
77
79
 
78
80
 
79
-
81
+ 'iが演算子時に、+1することにより0~i+1を変数に入れる
80
82
 
81
83
  If InStr(A(i),"+") Or InStr(A(i),"-") Or InStr(A(i),"*") Or InStr(A(i),"/") Then
82
84
 
@@ -108,7 +110,7 @@
108
110
 
109
111
 
110
112
 
111
-
113
+ ’入力情報から出した変数で手に入れた部分を空白にし、空白を削除。
112
114
 
113
115
  UKE = Replace(B,x2,"")
114
116
 
@@ -176,7 +178,7 @@
176
178
 
177
179
 
178
180
 
179
-
181
+ '★まで繰り返し。
180
182
 
181
183
  For i3 = 0 To Y2 - 1
182
184
 
@@ -230,13 +232,13 @@
230
232
 
231
233
 
232
234
 
233
- MsgBox "x3="&x3
235
+ 'MsgBox "x3="&x3
234
-
236
+
235
- MsgBox "x4="&x4
237
+ 'MsgBox "x4="&x4
236
-
238
+
237
- MsgBox "UKE2="&UKE2
239
+ 'MsgBox "UKE2="&UKE2
238
-
240
+
239
- MsgBox "OK2="&OK2
241
+ 'MsgBox "OK2="&OK2
240
242
 
241
243
 
242
244
 
@@ -346,13 +348,13 @@
346
348
 
347
349
 
348
350
 
349
- MsgBox "x5="&x5
351
+ 'MsgBox "x5="&x5
350
-
352
+
351
- MsgBox "x6="&x6
353
+ 'MsgBox "x6="&x6
352
-
354
+
353
- MsgBox "UKE3="&UKE3
355
+ 'MsgBox "UKE3="&UKE3
354
-
356
+
355
- MsgBox "OK3="&OK3
357
+ 'MsgBox "OK3="&OK3
356
358
 
357
359
 
358
360
 
@@ -454,15 +456,15 @@
454
456
 
455
457
 
456
458
 
457
- MsgBox "x7="&x7
459
+ 'MsgBox "x7="&x7
458
-
460
+
459
- MsgBox "x8="&x8
461
+ 'MsgBox "x8="&x8
460
-
462
+
461
- MsgBox "UKE4="&UKE4
463
+ 'MsgBox "UKE4="&UKE4
462
-
464
+
463
- MsgBox "OK4="&OK4
465
+ 'MsgBox "OK4="&OK4
466
+
464
-
467
+ '★これで、数値だけの変数と数値と演算子が入った変数ができる。
465
-
466
468
 
467
469
 
468
470
 
@@ -474,7 +476,17 @@
474
476
 
475
477
 
476
478
 
477
-
479
+ 'ここから主題。
480
+
481
+ '例えばA="+"、B=1,C=1として、
482
+
483
+ 'D=BACでD=2にはならない。
484
+
485
+ 'なので、Replaceで一つ一つ置換していこうと思う。
486
+
487
+ 'しかし、置換した内容は保存されず、元に戻ってしまう。
488
+
489
+ '尚、Eval関数は使用不可とする。
478
490
 
479
491
  If InStr(x2,"+") Then
480
492