Your SlideShare is downloading. ×
  • Like
  • Save
プログラミング技法特論第5回
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

プログラミング技法特論第5回

  • 616 views
Published

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
616
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
0
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. プログラミング技法特論#05
    N.Shimizu
    chiko at kaetsu.ac.jp
    10.5.17
    1
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
  • 2. 条件分岐
    ある条件が成立しているかどうかによって処理を変えること
    Processingではif文を使って表現する
    10.5.17
    2
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
  • 3. if文
    if(条件){
    条件が成り立っている場合の処理
    }else{
    条件が成り立たない場合の処理
    }
    10.5.17
    3
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
  • 4. 3つの場合
    if(条件1){
    条件1が成り立っている場合の処理
    }else if(条件2){
    条件2の成り立っている場合の処理
    }else{
    条件1も2も成り立たない場合の処理

    10.5.17
    4
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
  • 5. 数値の比較
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    5
  • 6. こういう絵を描いてみよう
    6
    論理思考とプログラミング #08 N.Shimizu
    09.12.3
  • 7. AかつB
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    7
    ココ
  • 8. AまたはB
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    8
    A,B全部
  • 9. 論理演算子
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    9
  • 10. こういう絵を描いてみよう
    10
    論理思考とプログラミング #08 N.Shimizu
    09.12.3
  • 11. for文:繰り返しを書く第二の記法
    for(事前にやる処理; 条件; 毎回最後にやる処理){繰り返しの処理
    }
    事前にやる処理;
    while(条件){繰り返しの処理毎回最後にやる処理;
    }
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    11
  • 12. for文で書き直してみよう
    ウィンドウサイズは400x400
    背景は黒
    200個の正方形と200個の長方形がランダムな場所に描かれている
    塗りの色はランダム
    各辺の長さはランダム
    2010.4.27
    12
    プログラミング技法特論 N.Shimizu <chikoski at kaetsu.ac.jp>
  • 13. for文で書き直してみよう
    ウィンドウサイズは400x400
    背景は黒
    20x20の正方形をびっちり敷き詰める
    一つ一つの色はランダム
    2010.4.27
    13
    プログラミング技法特論 N.Shimizu <chikoski at kaetsu.ac.jp>
  • 14. インタラクションを加えてみよう
    09.12.3
    論理思考とプログラミング #08 N.Shimizu
    14
  • 15. インタラクション
    二つのものがお互いに影響しあうこと
    相互作用
    interaction
    人間とコンピュータプログラム
    人間の操作がプログラムの振る舞いを変える
    プログラムが人間の操作を変える
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    15
  • 16. プログラミングのモデルが変わります
    今まで:
    上から順番に実行される
    フロー駆動型 (flow driven)
    これから
    イベントに対応した部分のみ実行される
    イベント駆動型 (event driven)
    16
    論理思考とプログラミング #08 N.Shimizu
    09.12.3
  • 17. イベント
    マウスのボタンが押される
    マウスのボタンが離される
    キーボードのキーが押される
    キーボードのキーが離される
    一定期間が過ぎる
    17
    論理思考とプログラミング #08 N.Shimizu
    09.12.3
  • 18. Processingのテンプレート
    void setup(){
    }
    void draw(){
    }
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    18
  • 19. Processingのテンプレート
    void setup(){
    }
    void draw(){
    }
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    19
    プログラム起動時に実行してほしいことを書く
  • 20. Processingのテンプレート
    void setup(){
    }
    void draw(){
    }
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    20
    一定間隔で実行して欲しいことを書く
  • 21. プログラムの例
    float x, y;
    void setup(){
    size(400, 400);
    colorMode(RGB, 100, 100, 100, 100);
    background(0, 0, 0, 100);
    noStroke();
    x = 0;
    y = 0;
    }
    void draw(){
    background(0, 0, 0, 100);
    x = x + 0.5;
    y = y + 0.5;
    fill(100, 0, 0, 100);
    ellipse(x, y, 20, 20);
    }
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    21
  • 22. メソッド
    プログラムの一部分に名前をつけたもの
    メソッドの宣言:名前をつけること
    部分の指定:{}で囲む
    引数と返り値を持つ
    引数:パラメーター
    返り値:仕事をした結果
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    22
  • 23. さっきのプログラムでは
    void setup(){
    size(400, 400);
    colorMode(RGB, 100, 100, 100, 100);
    background(0, 0, 0, 100);
    noStroke();
    x = 0;
    y = 0;
    }
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    23
    この範囲に対してsetupという名前をつけた
  • 24. void setup()
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    24
    返り値の型
    名前
  • 25.
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    25
  • 26. void setup()
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    26
    このメソッドは返り値を返さない
  • 27. draw: 一定間隔で実行される部分
    void draw(){
    background(0, 0, 0, 100);
    x = x + 0.5;
    y = y + 0.5;
    fill(100, 0, 0, 100);
    ellipse(x, y, 20, 20);
    }
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    27
  • 28. どうなるか考えよう
    void draw(){
    background(0, 0, 0, 100);
    x = x + 0.5;
    y = y + 0.5;
    fill(100, 0, 0, 100);
    ellipse(x, y, 20, 20);
    }
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    28
    backgroundを消す
  • 29. マウスに関する変数
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    29
  • 30. mousePressedの使い方
    if(mousePressed){
    マウスが押された時の処理
    }else{
    マウスが押されなかった時の処理
    }
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    30
  • 31. mouseButtonの使い方
    if(mousePressed){
    if(mouseButton == LEFT){
    左ボタンが押されたときの処理
    }else if(mouseButton == RIGHT){
    右ボタンが押された時の処理
    }
    }
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    31
  • 32. 宿題その1
    マウスがクリックされている間、四角が斜めに移動する
    それ以外の時は円が斜めに移動する
    例に使ったプログラムを変更して書こう
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    32
  • 33. 宿題その2
    マウスカーソルのある位置に円を描く
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    33
    カーソルが移動
  • 34. 宿題
    左クリックした時だけ、マウスカーソルの位置に円を描く
    マウスがクリックされる度に、ランダムな位置に、ランダムな大きさ、ランダムな色で円を10個書く
    10.5.17
    プログラミング技法特論 N.Shimizu<chiko at kaetsu.ac.jp>
    34