วันพฤหัสบดีที่ 8 สิงหาคม พ.ศ. 2556
Solar System.
//Array คือ รูปแบบการก็บข้อมูลหลายๆตัวที่มีชนิดของข้อมูลเหมือนกันไว้ด้วยกันเป็นชุด โดยเข้าถึงข้อมูลแต่ละตัวใน Array ได้โดยใช้ index เริ่มต้นที่ 0
float[][] planets = { //สร้างตัวแปร array 2มิติ ชนิดจำนวนทศนิยม และกำหนดค่า
{0.35, 2439.7, 0}, //Mercury
{0.7, 6051.9, 0}, //Venus
{1, 6372.8, 1}, //Earth
{1.55, 3402.5, 2}, //Mars
{5.15, 68366, 66}, //Jupiter
{9.5, 60268, 22}, //Saturn
{19.2, 25559, 27}, //Uranus
{30.55, 24622, 13} //Neptune
};
String[]s = {
"Mercury", "Venus", "The Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"
};
void setup() {
size(570, 300); // หน้าจอแสงดผลขนาด570x300
background(0); //พื้นหลังสีดำ
}
void draw(){
smooth();
fill(random(200,255),0,0);
ellipse(-320,145,700,670);
int x=120;
int i=0;
fill(255);
while (i<4) { //while คือ การทำงานในลักษณะวนซ้ำหรือที่เรามักจะได้ยินกันบ่อยๆว่าการ วนลูป ซึ่งการทำงานซ้ำในแต่ละรอบนั้นจะประมวลผลกลุ่มคำสั่งเดิมที่อยู่ภายใต้ ประโยคwhile ซึ่งรอบของการวนซ้ำจะนานเท่าไรนั้นก็ขึ้นอยู่กับว่าผ่านเงื่อนไขการทดสอบว่า เป็นเท็จหรือไม่ ถ้าเป็นเท็จจริงจึงจะหลุดจากการทำงาน
ellipse(x*planets[i][0], 150, planets[i][1]/250, planets[i][1]/250);
drawmoon((x*planets[i][0]),planets[i][1]/250 ,planets[i][2] );
i=i+1;
}
i=4;
x=350;
while (i<5) {
ellipse(x*planets[i][0]/6.5, 150, planets[i][1]/1000, planets[i][1]/1000);
drawmoon((x*planets[i][0]/6.5),planets[i][1]/1000 ,planets[i][2] );
i=i+1;
}
while(i<6){
ellipse(x*planets[i][0]/9, 150, planets[i][1]/1000, planets[i][1]/1000);
drawmoon((x*planets[i][0]/9),planets[i][1]/1000 ,planets[i][2] );
i=i+1;
}
while (i<7) {
ellipse(x*planets[i][0]/15, 150, planets[i][1]/1000, planets[i][1]/1000);
drawmoon((x*planets[i][0]/15),planets[i][1]/1000 ,planets[i][2] );
i=i+1;
}
while (i<8) {
ellipse(x*planets[i][0]/20, 150, planets[i][1]/1000, planets[i][1]/1000);
drawmoon((x*planets[i][0]/20),planets[i][1]/1000 ,planets[i][2] );
i=i+1;
}
}
void drawmoon(float x, float rad, float n) { //ฟังก์ชันที่ใช้ในการวาดพระจันทร์โดยมี x rad c]t n เป็นparameter
int i=0;
while (i<n) {
fill(255);
ellipse(x+rad*0.6*sin(i), 150+(cos(i)*rad*0.6), 3, 3);
i=i+1;
}
}
ป้ายกำกับ:
Lab 6.1
สมัครสมาชิก:
ส่งความคิดเห็น (Atom)
ไม่มีความคิดเห็น:
แสดงความคิดเห็น