วันอังคารที่ 24 กันยายน พ.ศ. 2556

KO



int x = 50;  //กำหนดตัวแปรชนิด Global Variable สองตัวเพื่อให้แทนค่าได้ทุกฟังก์ชั่นในโปรแกรม
int y = 50;
float [][] Reversi = {
  {
    random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2)
    }
  , {
    random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2)
    }
  , {
    random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2)
    }
  , {
    random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2)
    }
  , {
    random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2)
    }
  , {
    random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2)
    }
  , {
    random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2)
    }
  , {
    random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2), random(0, 2)
    }
  };  //กำหนด Array 2 มิติ โดยให้ตัวเลขแต่ละตัวออกมาแทนค่าได้ตามเงื่อนไขในการวนลูปที่เรากำหนดขึ้น ในนี้ ตัวเลขแต่ละตัวในวงเล็บนี้ถูกกำหนดให้นำออกมาใช้แบบสุ่มตามหลักทศนิยม หรือฟังก์ชั่น float พร้อมกับฟังก์ชั่นในการสุ่มเลือก หรือ random() เราจะสังเกตได้ว่า สีของวงกลมที่ใช้แทนเบี้ยนั้นมีการเปลี่ยนไปเรื่อยทุกการใช้งานทีละครั้ง ยิ่งเรากำหนดตัวเลขมากขึ้น การเปลี่ยนสีก็ยิ่งนานขึ้น
  int i = 0;  //กำหนดเพื่อการนับ

int j = 0;
void setup() {  //ฟังก์ชั่นหลักในการตั้งค่าโดยไม่มีการวนซ้ำ
  size(400, 400);  //กำหนดความกว้างและสูงของพื้นที่ เป็น 400x400
  background(#008000);  //ฟังก์ชั่นที่ใช้ในการเติมสีให้กับพื้นหลังโดยสีที่ใส่ไปนี้คือ สีเขียว
  while (x < 400) {  //ในกรณีที่ x น้อยกว่า 400 จึงจะทำการเข้าวนลูปได้
    strokeWeight(3);  //ฟังก์ชั่นที่ใช้ในการกำหนดน้ำหนักของเส้นโดยใส่ตัวเลขลงไปในวงเล็บ
    line(x, 0, x, 400);  //ถ้าเงื่อนไขข้างบนไม่เป็นจริง จะวาดเส้นที่กำหนดด้วยฟังก์ชั่น line
    x = x+51;  //ค่า x จะมีค่าเพิ่มขึ้นทีละ 50 ในเงื่อนไขนี้ หากเป็นจริง
  }
  while (y < 400) {  //ในกรณีที่ y น้อยกว่า 400 จึงจะทำการเข้าวนลูปได้
    line(0, y, 400, y);  //ถ้าเงื่อนไขข้างบนไม่เป็นจริง จะวาดเส้นที่กำหนดด้วยฟังก์ชั่น line
    y = y+51;  //ค่า y จะมีค่าเพิ่มขึ้นทีละ 50 ในเงื่อนไขนี้ หากเป็นจริง
  }
  x = 25;  //กำหนดให้ค่าของตัวแปรทั้งสองนี้ใหม่ และยังคงเป็นจำนวนเต็ม เพื่อนำมาใช้กับลูปถัดไป
  y = 25;
  while (i < Reversi.length) {  //ในกรณีที่ i น้อยกว่าความยาวของ Reversi หรือ 8 จึงจะทำการเข้าวนลูปได้
    while (j < Reversi[i].length) {  //ในกรณีที่ j น้อยกว่าความยาวของ Reversi หรือ 8 จึงจะทำการเข้าวนลูปได้
      if (Reversi[i][j] <= 1) {  //เงื่อนไขที่ว่า Reversi [i][j] มีค่าเท่ากับ 1 หรือไม่ ถ้าใช่จะสร้างวงกลมตามที่กำหนดด้วยฟังก์ชั่นวาดวงรี พร้อมกำหนดใส่สีดำ หรือสีขาว
        fill(#000000);  //สีดำ
      }
      else {  //ฟังก์ชั่นที่ใช้กำหนดอีกเงื่อนไขหนึ่ง
        fill(#FFFFFF);  //สีขาว
      }
      strokeWeight(2);  //ฟังก์ชั่นที่ใช้ในการกำหนดน้ำหนักของเส้นโดยใส่ตัวเลขลงไปในวงเล็บ
      ellipse(x, y, 35, 35);  //วาดวงกลมสองชั้นเพื่อทำเป็นเบี้ยในกระดานเล่นเกม
      x = x+50;  //ค่า x จะมีค่าเพิ่มขึ้นทีละ 50 ในเงื่อนไขนี้ หากเป็นจริง
      j = j+1;  //ค่า j จะมีค่าเพิ่มขึ้นทีละ 1 ในเงื่อนไขนี้ หากเป็นจริง
    }
    j = 0;    //กำหนดให้ค่าของตัวแปรทั้งหมดนี้ใหม่ หลังจากที่ผ่านลูปชั้นก่อนนี้มา หากเป็นจริงจะสิ้นสุดการวนลูป หากไม่เป็นจริง จะยังคงทำการวนลูปซ้ำต่อไป
    x = 25;
    y = y+50;  //ค่า y จะมีค่าเพิ่มขึ้นทีละ 50 ในเงื่อนไขนี้ หากเป็นจริง
    i = i+1;  //ค่า i จะมีค่าเพิ่มขึ้นทีละ 1 ในเงื่อนไขนี้ หากเป็นจริง
  }
}

ไม่มีความคิดเห็น:

แสดงความคิดเห็น