05-03 戻り値 08/27

みなさんこんにちわ kotaron7です。

今週末文化祭があります。あと文化祭実行委員でした。忘れてました。
われらがクラスではボディーシールをやります。

ボディーシールのデザインをcanvaに入れて印刷できるようにしたり・・・
クラスTシャツのデザインを考えたり・・・
クラスTシャツを紹介するモデルになったり選んだり・・・
文化祭のシフトをつくったり・・・
宣伝用のポスターと模造紙をつくったり・・・
夏休み中に受け取った先生の書道作品を紹介する紙を作って印刷したり・・・
文化祭での教室のレイアウトや装飾を構想したり・・・
そのために使うものを買い出しにいったり・・・
全部ひとりじゃできないから割り振ってみたり・・・

いろいろやりました。おつかれさま俺。
前日祭はもう明日です。明後日からはもう文化祭スタート!雨降るな!!降らないでください!!

練習問題5-3-2

5-3-1を作ってからそのまま作っちゃいました。

function setup()
{
  print("1人目のBMI: " + calcBMI(1.65, 55));
  print("2人目のBMI: " + calcBMI(1.72, 62));
  print("3人目のBMI: " + calcBMI(1.58, 48));
}

function calcBMI(BMIheight,BMIweight)
{
  return(BMIweight / (BMIheight * BMIheight));
}

戻り値も引数も使いこなせればだいぶコードがすっきり見やすくなるとおもいます。

練習問題5-3-3

function setup() 
{
  // ここにコードを書いてください
  BMI = calcBMI(1.72,62);
  judge = judgeBMI(BMI);
  print("BMIが"+ BMI +"のため「"+judge+"」です。");
}

function calcBMI(h, w)
{
  return w / (h * h);
}

// ここに judgeBMI を書いてください

function judgeBMI(BMI)
{
  if (BMI < 18.5)
  {
    return "低体重";
  }
  else if(BMI < 25)
  {
    return "普通体重";
  }
  else
  {
    return "肥満";
  }
}

難しいなあ、まさかreturnのあと文字列なんて送り返せないだろうし…

と思っていたら文字列を送り戻せました。便利すぎる!
ちょっと頭がこんがらがるんですけどめっちゃスクリプトがみやすい!!

練習問題5-3-4

立方体の体積を求める関数をつくります。

function setup() {
  let v1 = calcBoxVolume(3, 4, 5);
  let v2 = calcBoxVolume(10, 2, 6);

  print("1つ目の体積: " + v1);
  print("2つ目の体積: " + v2);
}

// ここに関数を書いてください

function calcBoxVolume(w, h, d)
{
  return (w * h * d);
}

よかった立方体で~~
公式を忘れてないか怯えながら書きました。

練習問題5-3-5

2つの関数を組み合わせてテスト結果を判定します!

function setup() {
  let avg = calcAverage(70, 50, 20);
  let result = judgePass(avg);

  print("平均点: " + avg);
  print("結果: " + result);
}

// ここに関数を書いてください

function calcAverage(a, b, c)
{
  return ((a+b+c)/3);
}

function judgePass(avg)
{
  if (avg >= 60)
  {
    return "合格";
  }
  else
  {
    return "再挑戦";
  }
}

最初から

 let avg = calcAverage(70, 50, 20);
 let result = judgePass(avg);

が配布されていたので、何も迷わずに計算と判定だけつくれました。
変数名を作ることが多くなるので、命名のセンスが問われます。
avgとして受け取ったものをjudgePassの中でもavgとして扱っているのはいいのか悪いのか。どっちなのかわからないからやらないほうがいいのか、avgを受け取ったんだからavgでいいんじゃないのとも。

関数がメインの第5章完結です。ありがとうございました!

コメントする