More Related Content
Similar to プログラミング技法特論第4回
Similar to プログラミング技法特論第4回 (20)
More from Noritada Shimizu
More from Noritada Shimizu (20)
プログラミング技法特論第4回
- 2. 先週の内容 変数 値に名前をつけたもの 型 繰り返し 条件が成り立っている間 同じ処理を繰り返す 10.5.10 2 プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
- 4. size(400, 400);colorMode(RGB, 100, 100, 100, 100);background(0, 0, 0, 100);noStroke();int n = 0;while(n < 2000){ float fr = random(0, 100); float fg = random(0, 100); float fb = random(0, 100); float fo = random(0, 100); stroke(fr, fg, fb, fo); float xa = random(0, width); float xb = random(0, width); float ya = random(0, height); float yb = random(0, height); line(xa, ya, xb, yb); n = n + 1;} 10.5.10 プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp> 4
- 5. 問題その2 ウィンドウサイズは400x400 背景は黒 200個の正方形と200個の長方形がランダムな場所に描かれている 塗りの色はランダム 各辺の長さはランダム 2010.4.27 5 プログラミング技法特論 N.Shimizu <chikoski at kaetsu.ac.jp>
- 6. size(400, 400);colorMode(RGB, 100, 100, 100, 100);background(0, 0, 0, 100);noStroke();int n = 0;while(n < 400){ float fr = random(0, 100); float fg = random(0, 100); float fb = random(0, 100); float fo = random(0, 100); fill(fr, fg, fb, fo); float w = random(20, 80); float h = random(20, 80); float x = random(0, width - w); float y = random(0, height - h); rect(x, y, w, h); n = n + 1;} 10.5.10 プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp> 6
- 8. size(400, 400);colorMode(RGB, 100, 100, 100, 100);background(0, 0, 0, 100);stroke(90, 90, 90, 100);int i = 0;int l = 20;while(i < width / l){ int j = 0; while(j < height / l){ float fr = random(0, 100); float fg = random(0, 100); float fb = random(0, 100); fill(fr, fg, fb, 100); rect(i * l, j * l, l, l); j = j + 1; } i = i + 1;} 10.5.10 プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp> 8
- 9. こういう絵を描いてみよう 黒地に円を書く 塗りはなし 上3分の1は赤の円 次の3分の1は青の円 最後の3分の1は緑の円 円の大きさ、位置はランダム 10.5.10 9 プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
- 13. こういう絵を描いてみよう 黒地に円を書く 塗りはなし 上3分の1は赤の円 次の3分の1は青の円 最後の3分の1は緑の円 円の大きさ、位置はランダム 10.5.10 13 プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
- 14. プログラムの骨組み size(400, 400); colorMode(RGB, 100, 100, 100, 100); background(0, 0, 0, 100); noFill(); intn = 0; while(n < 400){ float r = random(20, 80); float x = random(r, width – r); float y = random(r, height – r); 円を描く n = n + 1; } 10.5.10 プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp> 14
- 16. 円の描き方 if(上3分の1に描く場合){ stroke(100, 0, 0, 100); ellipse(x, y, r, r); }else if(次の3分の1に描く場合){ stroke(0, 100, 0, 100); ellipse(x, y, r, r); }else{ stroke(0, 0, 100, 100); ellipse(x, y, r, r); } 10.5.10 16 プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
- 17. 共通部分を外に出す if(上3分の1に描く場合){ stroke(100, 0, 0, 100); }else if(次の3分の1に描く場合){ stroke(0, 100, 0, 100); }else{ stroke(0, 0, 100, 100); } ellipse(x, y, r, r); 10.5.10 17 プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
- 20. 円を描く部分 if(y < height / 3){ stroke(100, 0, 0, 100); }else if(y < height * 2 / 3){ stroke(0, 100, 0, 100); }else{ stroke(0, 0, 100, 100); } ellipse(x, y, r, r); 10.5.10 20 プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
- 21. 全体 size(400, 400); colorMode(RGB, 100, 100, 100, 100); background(0, 0, 0, 100); noFill(); intn = 0; while(n < 400){ float r = random(20, 80); float x = random(r, width – r); float y = random(r, height – r); if(y < height / 3){ stroke(100, 0, 0, 100); }else if(y < height * 2 / 3){ stroke(0, 100, 0, 100); }else{ stroke(0, 0, 100, 100); } ellipse(x, y, r, r); n = n + 1; } 10.5.10 プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp> 21
- 33. 今日のまとめ if文:条件分岐 条件式 条件式の例:数値比較 &&と||を使って条件を組み合わせられる for文:繰り返しの第2の書き方 10.5.10 プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp> 33