size(270,100);
boolean[] a={true,true,true,false}; // เป็นการประกาศตัวแปลเป็นArray
ชนิดboolean(เก็บค่า true,false) ชื่อ a ซึ่งตัวแปลชนิดนี้
จะเก็บค่าได้หลายตัวโดยที่มีตำแหน่ง index เป็นตัวกำกับ
boolean[] b={true,true,false,false};
boolean[] ab=new boolean[a.length]; // เป็นการประกาศตัวแปลเป็นArray
ชนิดboolean(เก็บค่า true,false) ชื่อ ab ซึ่งตัวแปลชนิดนี้
จะเก็บค่าได้หลายตัวโดยที่มีตำแหน่ง index เป็นตัวกำกับ
(ในที่นี้ยังไม่กำหนดค่า แต่่กำหนดให้มีจำนวนข้อมูลเท่ากับ
ความกว้างของ array a ในที่นี้คือ 4)
.ให้ตัวแปลนี้เก็บผลบวกของa และ b โดยไม่รวมตัวทด
boolean[] tod=new boolean[a.length+1]; //ให้ตัวแปลนี้เก็บค่าทดเลข
boolean[] sum=new boolean[a.length]; //ให้ตัวแปลนี้เก็บคำตอบ
int count=a.length-1; //a.length คือความกว้างของarray a ในที่นี้เท่ากับ 4
ดังนั้น count=4-1=3
int r=30,y=50,x=70;
while(count>=0){ //ลูปนี้ทำหน้าที่ในการหาผลบวกของa และ b โดยไม่รวมตัวทด
if(a[count]==true&&b[count]==true){ //เงื่อนไขเทียบค่าaกับbในตำแหน่งเดียวกัน
เมื่อเงื่อนไขเป็นจริงจะทำตามคำสั่งด้านในทำหน้าที่คล้ายการบวก
ab[count]=false; //ตัวแปรabเก็บค่าผลบวกของa และ b โดยยังไม่รวมค่าทดเลข
tod[count]=true; //ตัวแปรtodเก็บค่าทดที่ได้จากการบวกกัน
}
else if(a[count]==false&&b[count]==false){ //เงื่อนไขเทียบค่าaกับbในตำแหน่งเดียวกัน
เมื่อเงื่อนไขเป็นจริงจะทำตามคำสั่งด้านในทำหน้าที่คล้ายการบวก
ab[count]=false;
tod[count]=false;
}
else{ //ในที่นี้คือเงื่อนไข a[count]==true&&b[count]==false
และ a[count]==false&&b[count]==true เป็น
เงื่อนไขเทียบค่าaกับbในตำแหน่งเดียวกัน
เมื่อเงื่อนไขเป็นจริงจะทำตามคำสั่งด้านในทำหน้าที่คล้ายการบวก
ab[count]=true;
tod[count]=false;
}
count=count-1;
}
if(tod[1]==true&&ab[0]!=false){ //เงื่อนไขในการปริ้นค่าตัวแรกที่เราจะปริ้นออกมา
fill(127 ,255, 0);
ellipse(x,y,r,r);
text("true",x,y-20);
}
if(tod[0]==true){ //เงื่อนไขในการปริ้นค่าตัวแรกที่เราจะปริ้นออกมา
fill(127, 255, 0);
ellipse(x,y,r,r);
text("true",x,y-20);
}
x=x+40;
count=0; //กำหนดค่าcount=0เพื่อใช้ในการวนลูปด้านล่าง
while(count<a.length){ //ลูปนี้ทำหน้าที่ในการรวมค่าabและค่าtodเข้าด้วยกัน
เพื่อให้ได้คำตอบ
if(ab[count]==true&&tod[count+1]==true){ //เงื่อนไขเทียบค่าabกับtodในตำแหน่งเดียวกัน
เมื่อเงื่อนไขเป็นจริงจะทำตามคำสั่งด้านในทำหน้าที่คล้ายการบวก
sum[count]=false;
}
else if(ab[count]==false&&tod[count+1]==false){ //เงื่อนไขเทียบค่าabกับtodในตำแหน่งเดียวกัน
เมื่อเงื่อนไขเป็นจริงจะทำตามคำสั่งด้านในทำหน้าที่คล้ายการบวก
sum[count]=false;
}
else { //เงื่อนไขเทียบค่าabกับtodในตำแหน่งเดียวกัน
เมื่อเงื่อนไขเป็นจริงจะทำตามคำสั่งด้านในทำหน้าที่คล้ายการบวก
sum[count]=true;
}
if(sum[count]==true){ //กำหนดเงื่อนไขในการใส่สี
fill(127 ,255, 0);
}
else if(sum[count]==false){
fill(255);
}
text(""+sum[count],x,y-20);
ellipse(x,y,r,r);
x=x+40;
count=count+1;
}
fill(0);
text("Sum(+)=",5,y-20); //เป็นคำสั่งแสดงข้อความโดยกำหนดดังนี้
("ข้อความ"+ค่าที่ต้องการแสดง,ตำแน่งแกนx,ตำแหน่งแกนy)
//อ้างอิงคำสั่งพื้นฐานต่างๆจาก lab1 http://com5630043.blogspot.com/search/label/lab1
//อ้างอิงอธิบายฟังก์ชันจาก lab2 http://com5630043.blogspot.com/search/label/lab2
//อ้างอิงอธิบายเรื่องif-elseจาก lab3 http://com5630043.blogspot.com/search/label/lab3%20%3A%20Condition
ไม่มีความคิดเห็น:
แสดงความคิดเห็น