ケーキの名前と個数をコマンドラインから受け取り計算して合計を示すケーキ屋さんのプログラムを作りたいです。
例えば、コマンドラインに「ショートケーキ 2 モンブラン 1」と打った時、ショートケーキの値段×2+モンブランの値段×1で合計を算出できるようになってほしいです。
わたしはコマンドラインで受取る配列の番号に着目し、偶数(0,2,4,...)ならケーキの種類、奇数(1,3,5,..)ならケーキの個数で、奇数と偶数をワンセットで([0][1],[2][3],...)繰り返し処理を行えば良いと考え、以下のようなプログラムを書きました。
java
1class Cakeshop{ 2 public static void main(String[] args){ 3 int cake = 0 ; //cakeの初期化 4 int sum = 0 ; //sumの初期化 5 int each_price = 0 ; //each_priceの初期化 6 7 for( int i=0 ; i<args.length/2 ; i++ ){ 8 //コマンドラインに打ち込まれたケーキ名によってそのケーキの値段を決める 9 if( args[2*i]=="ショートケーキ"){ 10 cake = 320 ; 11 }else if( args[2*i]=="モンブラン" ){ 12 cake = 350 ; 13 }else if( args[2*i]=="チョコレートケーキ" ){ 14 cake = 370 ; 15 }else if( args[2*i]=="いちごのタルト" ){ 16 cake = 400 ; 17 }else{ 18 cake = 300 ; 19 } 20 21 each_price = cake * Integer.parseInt(args[2*i+1]) ; //各ケーキの値段×個数から出た値 22 sum = sum + each_price ; //各ケーキの値段×個数から出た値を加算していき、合計を求める 23 } 24 25 System.out.println( "合計金額は" + sum + "円です。" ) ; 26 } 27}
すると、エラーは出てきませんでしたが、全てどのケーキも300円として計算されてしまいます...。場合分けの方法が間違ってるのでしょうか。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/04/09 12:25
2020/04/09 14:42
2020/04/09 14:56