03-01 条件分岐 26/04/16

こんにちは!kotaron7です。how are you?と聞かれたとき学校では I’m fine! thank youと教えられますが、実際は I’m good とか、 I’m doing well とか別に答えずに how are you!!と返すこともあるそうですよ。

練習問題3-1-1
今日はここから、分岐を使って未成年か成人してるかどうかを判断します。

function setup() {
  createCanvas(400, 400);
  let age = 18;
  if (age < 18)
    {
      print("未成年だね");
    }
  else if(age >= 18)
  {
    print("成人してるね");
  }
}

else if を使いましたが、2つならelseでもよかったですね。

練習問題3-1-2
続いて、勇者が姫に告白をする前に、神様に相談しているそうなので手伝ってあげます。

function setup() {
  // 好感度を仮に設定
  let affinity = 2;

  // メッセージ表示
  print("勇者「神様、姫に告白したいのですが…」");
  if (affinity >= 80)
    {
      print("神「バッチリ!」");
    }
  else if (affinity >= 60 && affinity < 80)
    {
      print("神「そこそこやね」");
    }
  else
    {
      print("神「やめたら?」");
    }
}

affinityが80以上、60以上と素直に書いてしまうと80を超えていたときどっちにも反応しちゃうので、affinity < 80 にするのがポイントですね。
神様が辛辣でした…

次、例題3-1-4をやってみましょう。

ガチャの仕組みってこういうことなんですね。たしかにランダム🦆。

function setup() {
  let r = random();
  print(r);
  let username = "toratyann";
  if (username == "tora")
    {
      r = r-0.5;
      print("チートによって"+r)
    }
  if (r < 0.03)
  {
    print("★5!");
  } 
  else if (r >= 0.03 && r < 0.1)
  {
    print("★4");
  }
  else if (r >= 0.1 && r < 0.25)
  {
    print("★3");
  }
  else if (r >= 0.25 && r < 0.55)
  {
    print("★2");
  }
  else 
  {
    print("★1");
  }
}

チート使って確率めっちゃゆるゆるにできます。みんなはusernameでtoraを使わないでくださいね!
確率が二回目以降足していかれないとおかしいことに気づくべきでしたね。
星5排出率3%、星4排出率7%のとき、判定の範囲をそのまま “” r <0.07 “”にすると実際の確率が4%と、実際より少なくなっちゃいます。

さすがバグの温床🤮どんなにできるヤツでもここではたまーに間違えちゃいそうですよ。

コメントする