RubyでATMのようなアプリを作っています。
各メソッドで計算はできるのですが、タイトルに戻った後に計算結果の残高が毎回反映されず初期値になってしまいます。
"moneyOut"メソッド、"moneyIn"メソッドで計算した残高をタイトルに戻った時に
残高照会で常に計算後の結果を表示させる為には、どのように修正すればよろしいでしょうか?
returnの値だと思うのですが、これ以外に思いつきませんでした。
よろしくお願いします。
Ruby
1def moneyOut(balance, amount) 2 fee = 110 3 result = balance - (amount + fee) 4 puts "#{amount}円引き落としました。残高は#{result}円です" 5 return balance = result 6end 7 8def moneyIn(balance) 9 puts "ご入金額をご指定ください" 10 newMoney = gets.to_i 11 result = balance + newMoney 12 puts "残高は#{result}円です" 13 return balance = result 14end 15 16def moneyCheck(balance) 17 puts "いくら引き落としますか?(手数料110円かかります)" 18 money = gets.to_i 19 fee = 110 20 21 if money + fee <= balance 22 moneyOut(balance, money) 23 else 24 puts "残高不足です" 25 end 26end 27 28def moneyResult(balance) 29 puts "残高:#{balance}円です" 30end 31 32def goodbye 33 exit 34end 35 36def exception 37 puts "入力された値は無効やで" 38end 39 40balance = 100000 41 42while true 43 puts "[0]:お引落" 44 puts "[1]:ご入金" 45 puts "[2]:残高照会" 46 puts "[3]:アプリ終了" 47 puts "メニューを選択してください" 48 input = gets.to_i 49 50 if input == 0 51 moneyCheck(balance) 52 elsif input == 1 53 moneyIn(balance) 54 elsif input == 2 55 moneyResult(balance) 56 elsif input == 3 57 goodbye 58 else 59 exception 60 end 61end
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。