วันพฤหัสบดีที่ 18 กรกฎาคม พ.ศ. 2556

Railway




CODE
void setup(){
   size(350,200);
   background(250);
 }
 void draw(){
   drawRailway();
 }
 void drawRailway(){
   int x = 10;
   int y1 = 40;
   int spacey = 120;
   int spacex = 50;
   int n = 6;
   int n1 = 0;
    while(n1<=n){        //เมื่อตัวแปร n1<=n เป็นจริงจะทำให้แสดงรูปสี่เหลี่ยม และทำซ้ำไปจนกว่า n1<=n เป็นเท็จ
      noStroke();
      fill(193,187,187);
      rect(x,20,30,160);          //ตำแหน่งของสี่เหลี่ยมจะขึ้นอยู่กับค่าของตัวแปร x (แนวนอน)
      x = x + spacex;          //ช่วยให้เกิดการเลื่อนตำแหน่ง*
      n1 = n1+1;          //เป็นการเพิ่มค่าของตัวแปร n1 ช่วยทำให้เกิดการทำซ้ำจนกว่าจะเป็นเท็จ
    }
   strokeWeight(15);
   stroke(100,60,50);
   line(0,y1,width,y1);          //ตำแหน่งของเส้นจะขึ้นอยู่กับค่าของตัวแปร y1 (แนวตั้ง)
   y1 = y1 + spacey;          //เพิ่มค่าตัวแปรให้ y1 ทำให้เกิดการเลื่อนตำแหน่ง**   
   line(0,y1,width,y1);          //ตำแหน่งของเส้นจะขึ้นอยู่กับค่าของตัวแปร y1 (แนวตั้ง)
}

จากโค้ด      ค่า n1 = 0 และ n = 6 เมื่อ while(n1<=n){} จะทำให้เกิดรูปสี่เหลี่ยมครั้งแรกและเกิดการทำซ้ำ 6 ครั้ง รวมทั้งหมดจะมีรูป 7 รูป ซึ่งจะเริ่มทำตั้งแต่ 0 ถึง 6  ถ้าเปลี่ยนค่า n = 1 จะทำให้เกิดดังรูป


 
การเลื่อนตำแหน่ง  *เป็นการทำซ้ำที่อยู่ในฟังก์ชันwhile()
                       **เป็นการเพิ่มค่าตัวแปรและแทนค่าตัวแปร ซึ่งจะไม่มีการทำซ้ำอย่างฟังก์ชันwhile()

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

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