回答編集履歴
2
ご指摘頂いた点を最適化するべく修正
answer
CHANGED
@@ -69,7 +69,6 @@
|
|
69
69
|
for(int i:price){
|
70
70
|
sum2 += i;
|
71
71
|
}
|
72
|
-
tax(sum2);
|
73
72
|
return tax(sum2);
|
74
73
|
}
|
75
74
|
private int tax(int sum2) {
|
@@ -85,4 +84,35 @@
|
|
85
84
|
消費税を載せた後の金額はint表示なので、
|
86
85
|
(double)ではなく(int)でくくると良かったのですね。
|
87
86
|
|
88
|
-
皆様のお力添えありがとうございました。
|
87
|
+
皆様のお力添えありがとうございました。
|
88
|
+
|
89
|
+
追記:ご指摘頂いたのでもうちょっと修正加えました。
|
90
|
+
```lang-JAVA
|
91
|
+
public class ClassAdd07 {
|
92
|
+
public static void main(String[] args){
|
93
|
+
int[] price = {200,800,500,1100,300};
|
94
|
+
//07呼び出し
|
95
|
+
SubClass07 sub = new SubClass07();
|
96
|
+
|
97
|
+
//合計してtaxを呼ぶtotalメソッドを07から呼び出し
|
98
|
+
int sum = sub.total(price);
|
99
|
+
|
100
|
+
System.out.println("支払い合計は" + sum + "円です。");
|
101
|
+
}
|
102
|
+
}
|
103
|
+
class SubClass07{
|
104
|
+
//合計sum2を求めるメソッド
|
105
|
+
public int total(int[] price) {
|
106
|
+
int sum2 = 0;
|
107
|
+
for(int i:price){
|
108
|
+
sum2 += i;
|
109
|
+
}
|
110
|
+
return tax(sum2);//★
|
111
|
+
}
|
112
|
+
private int tax(int sum2) {
|
113
|
+
//消費税を載せる
|
114
|
+
return (int)(sum2 * 1.05);//★
|
115
|
+
}
|
116
|
+
}
|
117
|
+
|
118
|
+
```
|
1
エラー修正。
answer
CHANGED
@@ -8,20 +8,13 @@
|
|
8
8
|
|
9
9
|
しかしまだ微妙にエラーが残っています。。。
|
10
10
|
型 SubClass07 のメソッド tax() は引数 (int) に適用できません
|
11
|
+
↓
|
12
|
+
エラー修正完了致しましたので更新します。
|
13
|
+
|
11
14
|
該当箇所、★
|
12
15
|
|
13
|
-
|
16
|
+
```lang-JAVA
|
14
17
|
/*
|
15
|
-
SubClass07クラスを作成し、以下の2つのメソッドを作成。
|
16
|
-
1
|
17
|
-
引数で受け取った値に消費税をつけて戻すtaxメソッドを作成。
|
18
|
-
*消費税は5%で計算,小数点以下は切捨て。
|
19
|
-
2
|
20
|
-
引数で受け取ったint型配列の合計を算出,
|
21
|
-
taxメソッドを呼びだし、合計に消費税をつけた値を戻すtotalメソッドを作成。
|
22
|
-
|
23
|
-
mainメソッドからtotalメソッドを呼び出し、totalメソッドから
|
24
|
-
taxメソッドを呼び出して、算出した結果をmainメソッドで出力するプログラムを作成してください。*/
|
25
18
|
package class0709;
|
26
19
|
|
27
20
|
public class ClassAdd07 {
|
@@ -52,4 +45,44 @@
|
|
52
45
|
//消費税を載せる
|
53
46
|
(double)(sum2 * 1.05);
|
54
47
|
}
|
55
|
-
}
|
48
|
+
}
|
49
|
+
```
|
50
|
+
↓修正後
|
51
|
+
修正箇所★
|
52
|
+
```lang-JAVA
|
53
|
+
public class ClassAdd07 {
|
54
|
+
public static void main(String[] args){
|
55
|
+
int[] price = {200,800,500,1100,300};
|
56
|
+
//07呼び出し
|
57
|
+
SubClass07 sub = new SubClass07();
|
58
|
+
|
59
|
+
//合計してtaxを呼ぶtotalメソッドを07から呼び出し
|
60
|
+
int sum = sub.total(price);
|
61
|
+
|
62
|
+
System.out.println("支払い合計は" + sum + "円です。");
|
63
|
+
}
|
64
|
+
}
|
65
|
+
class SubClass07{
|
66
|
+
//合計sum2を求めるメソッド
|
67
|
+
public int total(int[] price) {
|
68
|
+
int sum2 = 0;
|
69
|
+
for(int i:price){
|
70
|
+
sum2 += i;
|
71
|
+
}
|
72
|
+
tax(sum2);
|
73
|
+
return tax(sum2);
|
74
|
+
}
|
75
|
+
private int tax(int sum2) {
|
76
|
+
//消費税を載せる
|
77
|
+
int sum;//★
|
78
|
+
sum = (int)(sum2 * 1.05);//★
|
79
|
+
return sum;//★
|
80
|
+
}
|
81
|
+
}
|
82
|
+
```
|
83
|
+
|
84
|
+
nagiseさんの仰る通り、returnが抜けていたのと、
|
85
|
+
消費税を載せた後の金額はint表示なので、
|
86
|
+
(double)ではなく(int)でくくると良かったのですね。
|
87
|
+
|
88
|
+
皆様のお力添えありがとうございました。
|