BUNZIN NET ポータル / プログラムは考え方です / メルマガバックナンバーリスト
前のメルマガ / 次のメルマガ

2009/09/07発行 『【櫻井です】サンプルの関数についてもう少し詳しく説明します』

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
レンタル掲示板とクイズ投稿サイトを開発した櫻井文人の
プログラムの考え方が身につくメルマガ『プログラムは考え方です』
───────────────────────────────────
メルマガ発行人
櫻井文人のプロフィール ⇒ http://www.bunzin.net/program/prof.html
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

こんにちは、メルマガ発行人の櫻井文人です。
ひさびさにビッグマックを食べたら、なんだか印象が変わってしまいました。
詳しくは編集後記で。


前回のメルマガでは関数の詳細について説明しました。
今回のメルマガでは、過去のメルマガで何回か登場した
サンプルのプログラム「okashi.vbs」の中の
「お菓子の個数を入力して金額を計算する関数」について説明していきます。


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■■ サンプルの関数についてもう少し詳しく説明します
───────────────────────────────────

過去のメルマガで何回か登場したサンプルのプログラム「okashi.vbs」の中の
「お菓子の個数を入力して金額を計算する関数」について、もう少し詳しく
説明します。

「お菓子の個数を入力して金額を計算する関数」の内容は以下の通りでした。

    1行目:rem **********************************************
    2行目:rem お菓子の個数を入力して金額を計算する関数
    3行目:rem **********************************************
    4行目:Function CalculateOkashi()
    5行目:   n = InputBox ("50円のお菓子をいくつ買いますか?")
    6行目:   CalculateOkashi = 50 * n
    7行目:End Function

 ※メルマガで紹介したプログラムの全体の内容については、
  コチラのメルマガのバックナンバーで確認できます ⇒
     http://www.bunzin.net/program/mailmaga/backnumber/20090811.html

それでは、各行毎に関数の内容について説明していきたいと思います。

 4行目からが関数の記述になります。

   ここでは、関数が「CalculateOkashi」という
   名前であることを記しています。

   他から関数を呼び出す場合はこの名前を指定して呼び出します。

 5行目は実際の関数の中身です。

   ここでは、買うお菓子の数をユーザに入力
   してもらったあと、その入力した数を変数「n」に保存しています。

   例では、関数の中身は1行だけですが、
   もちろん何行書いても良いです。

 6行目では、呼び出し元に戻り値を返してあげています。

   VBScriptの場合は、「関数の名前 = 戻り値」のように記述します。

   この関数では、変数「n」から買うお菓子の数を取り出して、
   お菓子の値段である50円をかけることで、合計金額を計算します。
   そして、その計算結果を呼び出し元に返してあげています。

   例では、戻り値に計算式を指定してますが、変数だけを指定したり、
   直接数字を指定しても良いです。

 7行目では、関数の記述の終わりを記しています。


この関数には引数がありません。つまり関数を作る場合は、
引数は必要がなければなくても良いということです。
もちろん戻り値も必ず必要ではありません。

関数を作る場合は・・・

 関数がどのよう処理を行うか?
 その処理を行うためには、どんな情報を渡してもらう必要があるのか?
 そして呼び出し元に返してあげるべき情報があるのか?

・・・といった条件に応じて、引数や戻り値を関数につけるかを検討すれば
良いです。


さて、次回のメルマガでは、この引数の無い関数に引数をつけてみて、
もう少し関数の使い方の幅が広がるようにしてみたいと思います。


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■■ 編集後記
───────────────────────────────────

マクドナルドで久々にビッグマックを食べました。
そしたら以前と比べて随分とビッグマックの印象が変わっていました。
その変わりようは自分でも驚くほどです。

実は、最近はクォーターパウンドバーガーばかり食べていたので、
半年くらいビッグマックを食べていませんでした。

クォーターパウンドバーガーにハマる前のビッグマックの印象は、
ボリューム満点でガッツリ食べれる感じでした。

ところが、久々にビッグマックを食べたら、妙にあっさりしていて、
ボリュームもなく、肩透かしな感じでした。
さらにヘルシーな感じに思えました。
(レタスが入っているからなのかもしれませんが・・・)

もちろんビッグマックそのものが、変わったわけではありません。

クォーターパウンドバーガーを食べ続けたことによって、
私の中のビッグマックへの価値観が変わっただけです。

例えるなら、同じプールの水でも、より暖かいプールから移ってきた
人は冷たく感じ、そしてより冷たいプールから移ってきた人は
暖かく感じる感覚に近いものでしょうか。

まったく同じものでも、条件によって感じかたが
すごく変わるもんだなあとあらためて思い知らされました。


最後までお読みいただき、ありがとうございました。


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

●櫻井が開発したレンタル掲示板は
  コチラ ⇒ http://www.bunzin.gr.jp/m_board/

  画像のアップロードも可能なレンタル掲示板です。
  無料ですのでお気軽にどうぞ。


●櫻井が開発したクイズ投稿サイトは
  コチラ ⇒ http://www.bunzin.gr.jp/quiz/

  あなたが考えたクイズを投稿することができます。
  投稿されたクイズに回答することもできます。
  無料ですのでお気軽にどうぞ。


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
メルマガ発行人 櫻井文人

メルマガ発行責任者情報は
 コチラ ⇒ http://www.bunzin.net/program/mghsinfo.html

アドレス変更と登録解除はコチラ ⇒ http://www.mag2.com/m/0000293166.html

メルマガバックナンバーは
 コチラ ⇒ http://www.bunzin.net/program/mailmaga/backnumber/

櫻井文人のプロフィール ⇒ http://www.bunzin.net/program/prof.html

ご意見・ご感想はコチラ ⇒ bunzin●bunzin.gr.jp
(メール送信の際は、●を@に置き換えてください。)
(櫻井が確実に読みますが、返信は保障できません。)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 
メルマガ登録・解除
 
前のメルマガ / 次のメルマガ
企画・運営・管理 BUNZIN NET