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

練習問題3-4-3

次のガチャを10回引いた結果を表示するプログラムを作りなさい。

function setup() {
  
  for(let i =1; i <= 10; i++){
   let r =random(1);
   if (r < 0.03) {
    print("★★★★★");
   } 
   else if(r < 0.10){
    print("★★★★")
   }
   else if(r < 0.25){
    print("★★★")
   }
   else if(r < 0.55){
    print("★★")
   }
   else if(r < 1.00){
    print("★")
  }
} 
}
  

説明であった、「<」と「<=」の使い方を踏まえて今回は、見やすい方はどちらか考え、
最初に変数を1にして、繰り返す条件を「変数<=10」というふうに作ってみました。

練習問題3-4-4

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

function setup() {
  let hosigo=0
  
  for(let i =1; i <= 100; i++){
   let r =random(1);
   if (r < 0.03) {
    print("★★★★★");
    hosigo = hosigo + 1
   } 
   else if(r < 0.10){
    print("★★★★")
   }
   else if(r < 0.25){
    print("★★★")
   }
   else if(r < 0.55){
    print("★★")
   }
   else if(r < 1.00){
    print("★")
   }
  }
  print("★5の排出数:" + hosigo + "個")
}
  
printの使い方の見直しになったので良かったです。

練習問題3-4-6

カウンタ変数は慣例でijkを使うとありますが、なぜ、abcではないのでしょうか?理由を検索して、記事下部のコメント機能を使って解答して下さい。

カウンタ変数で[i,j,k]が、よく使われる理由を自分なりに調べてまとめると、
昔のプログラミング言語で、iからnには特殊な意味があり、iはプログラミングに関係する英単語の頭文字でもあったため、使われるようになり、i,j,kの順に使われやすい。
私が調べるとこのような結論に至りました。間違ってたらごめんなさい。

練習問題3-4-8

以下は横方向に四角を敷き詰めるプログラムです。縦方向にも敷き詰めるように変更しなさい。

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

  for (let x = 0; x < 6; x++) {
    for(let y =0; y < 6; y++){
    rect(x * 50, y * 50, 40, 40);
    }
  }
}
わかると楽しかったです。

コメントする