世界で1ばんやさしいプログラム入門6(関数編の後半)
前回は
世界で1ばんやさしいプログラム入門5(関数前編:準備) - 日本一やさしいプログラマーのブログ
関数の簡単な書き方を解説しました。
次は関数の中身をりんごの計算をできるものに変更します。
前回の続きで
function test(){
return 1
}
↓
以下のように「りんごの価格の合計」の計算のプログラムに修正します。
function test(){
apple = 5
price = 120
totalPrice = apple * price
return 1
}
次に test関数を実行 します
test()
結果がまた1になりました。出口から1が出ている事になります。
return 1 としているからです。
出口から合計金額を出すために
return 1 を
return totalPrice に変更してみます。
function test(){
apple = 5
price = 120
totalPrice = apple * price
return totalPrice
}
そして test() で実行もします
600 !! りんごの合計金額が出口から出てきました。
完成です
と言いたい所ですが、このままでは 600 しか返さないので
あまり使いみちがありません。
前回の記事の冒頭で言いました目的は
- りんご5個1つ120円
- ばなな2個1つ100円
- みかん4個1つ110円
- いちご3個1つ90円
上記の計算を
短くスッキリできれば良いですよね?
そこで 関数 というものを使って短くする方法を解説します。
という事が当初の目的でした。
そこで関数を修正していきます。
先程まで作っていた関数は一旦おいといて
新しく以下の関数を書き
Chromeに貼り付けて実行してみてください。
function test(abc){
return abc
}
実行する記述は今回は
test(123)
と書きます。
123 が返ってきました。次は
test(456)
と書いて実行
456が返ってきました
123 を指定すると 123
456 を指定すると 456
が返ってくる
123が入口から入って何の加工もされないまま出口から出てきたイメージです
このように関数には入り口に 変数 を指定できるのです。
説明ばかりになってきたので実際にやってみましょう
前回つくったりんごの合計金額の計算関数が以下のものですね
function test(){
apple = 5
price = 120
totalPrice = apple * price
return totalPrice
}
これを関数の入り口で値を指定できるように修正します
function test(apple){
price = 120
totalPrice = apple * price
return totalPrice
}
apple = 5 を消して test(apple) かっこの中に appleを移動しました。
では Chrome に貼り付けて実行してみましょう
先程の関数を貼り付けた後に test(5) を実行する
600 が返ってきます。
つまり関数に 5を渡す ということは apple に 5 が入ります。
りんごが5個の時の計算がされたと言うことになります。
それでは
test(1)
test(2)
test(3)
と「りんごが1つの時、2つの時、3つの時」の合計金額を出してみましょう〜
120, 240, 360 と数によって合計金額が簡単に出せましたね!
もう少し改良すれば「ばなな、みかん、いちご」も対応できます!
apple を count (カウント:日本語で数)に変更します。
function test(count){
price = 120
totalPrice = count * price
return totalPrice
}
これで「りんご」専用ではなくなりました(結果一緒ですけどw)
次に果物の値段はそれぞれ違うので価格を変えれるようにします。
price = 120 を消して countと同様に入り口から渡せるようにします。
function test(count, price){
totalPrice = count * price
return totalPrice
}
入り口から変数を2つ渡す時はカンマ(,)で区切ります
←カンマってこれね
実行する時も 2つ指定します
りんご5個で値段が120円の時は
test(5,120)
こちらもカンマで2つ指定します
実行してみると
できました!成功!
イメージはこんな感じですね。これができればあとは簡単
- りんご5個1つ120円
- ばなな2個1つ100円
- みかん4個1つ110円
- いちご3個1つ90円
あとは上記の内容を関数に入れて実行します。
- test(5,120)
- test(2,100)
- test(4,110)
- test(3,90)
うまくいってます!
あ!消費税の計算を忘れていました。
消費税は変動しないと仮定して関数に渡せないようにします
function test(count, price){
totalPrice = count * price
taxRate = 10
totalPrice = totalPrice + totalPrice / 10
return totalPrice
}
消費税の計算は
世界で1ばんやさしいプログラム入門4(変数応用編) - 日本一やさしいプログラマーのブログ
で解説しています。
消費税が計算された事が確認できました!
これで果物が何種類あっても短いプログラムで簡単に計算できるようになりました
どうでしたでしょうか?簡単ではないですかw
わからない事があればご意見お待ちしております。