日本一やさしいプログラマーのブログ

わけあって世界で1ばんやさしいプログラム入門をつくる事になりました

世界で1ばんやさしいプログラム入門6(関数編の後半)

前回は

世界で1ばんやさしいプログラム入門5(関数前編:準備) - 日本一やさしいプログラマーのブログ

 

 

関数の簡単な書き方を解説しました。

次は関数の中身をりんごの計算をできるものに変更します。

前回の続きで

 

function test(){

    return 1

}

 

 

以下のように「りんごの価格の合計」の計算のプログラムに修正します。

 

function test(){

    apple = 5

    price = 120

    totalPrice = apple * price

    return 1

}

 

テキストエディタに書いてコピペでChromeで実行します

f:id:belcrod5:20201110190440p:plain

次に test関数を実行 します

test()

 

f:id:belcrod5:20201110190523p:plain

 結果がまた1になりました。出口から1が出ている事になります。

return 1 としているからです。

 

出口から合計金額を出すために

return 1

return totalPrice に変更してみます。

 

function test(){

    apple = 5

    price = 120

    totalPrice = apple * price

    return totalPrice

}

そして test() で実行もします 

 

f:id:belcrod5:20201110190907p:plain

600 !! りんごの合計金額が出口から出てきました。

 

完成です

 

と言いたい所ですが、このままでは 600 しか返さないので

あまり使いみちがありません。

 

前回の記事の冒頭で言いました目的は

  • りんご5個1つ120円
  • ばなな2個1つ100円
  • みかん4個1つ110円
  • いちご3個1つ90円

 上記の計算を

短くスッキリできれば良いですよね?

 そこで 関数 というものを使って短くする方法を解説します。

という事が当初の目的でした。

 

そこで関数を修正していきます。

先程まで作っていた関数は一旦おいといて

新しく以下の関数を書き

Chromeに貼り付けて実行してみてください。

 

function test(abc){

    return abc

}

 

実行する記述は今回は

test(123)

と書きます。

 

f:id:belcrod5:20201110191659p:plain

123 が返ってきました。次は

test(456)

と書いて実行

f:id:belcrod5:20201110191803p:plain

456が返ってきました

 

123 を指定すると 123

456 を指定すると 456

が返ってくる

 

f:id:belcrod5:20201110192253p:plain

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を移動しました。

 

f:id:belcrod5:20201110193101p:plain

では Chrome に貼り付けて実行してみましょう

 

f:id:belcrod5:20201110193216p:plain

先程の関数を貼り付けた後に test(5) を実行する
600 が返ってきます。

つまり関数に 5を渡す ということは apple5 が入ります。
りんごが5個の時の計算がされたと言うことになります。

 

f:id:belcrod5:20201110194358p:plain

それでは

test(1)

test(2)

test(3)

と「りんごが1つの時、2つの時、3つの時」の合計金額を出してみましょう〜

f:id:belcrod5:20201110194552p:plain

120, 240, 360 と数によって合計金額が簡単に出せましたね!

 

もう少し改良すれば「ばなな、みかん、いちご」も対応できます!

apple を count (カウント:日本語で数)に変更します。

 

function test(count){

    price = 120

    totalPrice = count * price

    return totalPrice

}

 

これで「りんご」専用ではなくなりました(結果一緒ですけどw)

 

次に果物の値段はそれぞれ違うので価格を変えれるようにします。

price = 120 を消して countと同様に入り口から渡せるようにします。

 

function test(countprice){

    totalPrice = countprice

    return totalPrice

}

 

入り口から変数を2つ渡す時はカンマ(,)で区切ります

f:id:belcrod5:20201110195250p:plain ←カンマってこれね

 

実行する時も 2つ指定します

りんご5個で値段が120円の時は

test(5,120)

こちらもカンマで2つ指定します

 

実行してみると

f:id:belcrod5:20201110195806p:plain

できました!成功!

f:id:belcrod5:20201110195714p:plain

イメージはこんな感じですね。これができればあとは簡単

  • りんご5個1つ120円
  • ばなな2個1つ100円
  • みかん4個1つ110円
  • いちご3個1つ90円

 あとは上記の内容を関数に入れて実行します。

  • test(5,120)
  • test(2,100)
  • test(4,110)
  • test(3,90)

 

f:id:belcrod5:20201110200150p:plainうまくいってます!

 

あ!消費税の計算を忘れていました。

消費税は変動しないと仮定して関数に渡せないようにします

 

function test(count, price){

    totalPrice = count * price

    taxRate = 10

    totalPrice = totalPrice + totalPrice / 10

    return totalPrice

}

 

消費税の計算は

世界で1ばんやさしいプログラム入門4(変数応用編) - 日本一やさしいプログラマーのブログ

で解説しています。

 

f:id:belcrod5:20201110200629p:plain

消費税が計算された事が確認できました!

これで果物が何種類あっても短いプログラムで簡単に計算できるようになりました

 

どうでしたでしょうか?簡単ではないですかw

わからない事があればご意見お待ちしております。