03-04 繰り返し(for文2)

学習日

2026年 6月30日

名前

中村仁

自分で作った図形(コードと画像)

function setup() {
  let sum = 0;
  for (let i = 1; i <= 100; i++) {
    sum = sum + i; // または sum += i と書くこともできます

    let r = Math.random();
    print(r);

    if (r <= 0.03) {
      print("★5");
    } else if (r <= 0.03 + 0.07) {
      print("★4");
    } else if (r <= 0.15 + 0.1) {
      print("★3");
    } else if (r <= 0.3 + 0.1 + 0.15) {
      print("★2");
    } else if (r >= 0.55) {
      print("★1");
    }
  }
}

練習問題3-4-4

先の練習問題のガチャを100回引いた結果と、★5が排出された個数を表示するプログラムを作りなさい。

function setup() {
  let sum = 0;
  for (let i = 1; i <= 100; i++) {
    sum = sum + i; // または sum += i と書くこともできます

    let r = Math.random();
    print(r);

    if (r <= 0.03) {
      print("★5");
    } else if (r <= 0.03 + 0.07) {
      print("★4");
    } else if (r <= 0.15 + 0.1) {
      print("★3");
    } else if (r <= 0.3 + 0.1 + 0.15) {
      print("★2");
    } else if (r >= 0.55) {
      print("★1");
    }
  }
}
function setup() {
  let sum = 0;
  let star5=0;
  
  for (let i = 1; i <= 100; i++) {
    sum = sum + i; // または sum += i と書くこともできます

    let r = Math.random();
    print(r);

    if (r <= 0.03) {
      print("★5");
      star5++;
    } else if (r <= 0.03 + 0.07) {
      print("★4");
    } else if (r <= 0.15 + 0.1) {
      print("★3");
    } else if (r <= 0.3 + 0.1 + 0.15) {
      print("★2");
    } else if (r >= 0.55) {
      print("★1");
    }
    print(star5);
  }
}

練習問題3-4-7

ステップ数をi += 10のように記述できるのは便利ですが、ステップ数が1でないと、ループの回数がぱっと見わからなくなってしまうので、使い方には気をつけましょう。
たとえば、次のような場合、何回繰り返すかわかりますか?

function setup() {
  createCanvas(300, 300);
  background(243, 235, 216);
  fill(231, 215, 177);
  noStroke();

  for (let x = 0; x < 6; x++) {
    rect(x * 50, 0, 40, 40);
  }
  for (let x = 0; x < 6; x++) {
    rect(x * 50, 0, 40, 40);
  }
  for (let x = 0; x < 6; x++) {
    rect(x * 50, 50, 40, 40);
  }
  for (let x = 0; x < 6; x++) {
    rect(x * 50, 100, 40, 40);
  }
  for (let x = 0; x < 6; x++) {
    rect(x * 50, 150, 40, 40);
  }
  for (let x = 0; x < 6; x++) {
    rect(x * 50, 200, 40, 40);
  }
  for (let x = 0; x < 6; x++) {
    rect(x * 50, 250, 40, 40);
  }
}


まとめ

カウンタ変数のiはfor文と組み合わせることで、プログラムを行う回数を調整できることがわかりました。カウンタ変数はプログラムで使われない英単語が使われることがわかりました。

コメントする