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

Bar chart




CODE
int [] a = {55,35,45,80,20};          //สร้าง Array ชื่อ a ที่มีข้อมูล 5 ตัว เพื่อเก็บค่าตัวเลขในแต่ละลำดับ
int x = 25;          //ตัวแปร x เท่ากับ 25
int y = 350;          //ตัวแปร y เท่ากับ 350
int i = 0;          //ตัวแปร i เท่ากับ 0 (ลำดับที่ 0 ใน Array)
void setup(){
  size(325,460);
  background(0);
          //แสดงคำอธิบาย
  fill(247,32,36);          //red
  text("-Maximum",x,400);
  fill(25,96,245);          //blue
  text("-Minimum",x,420);
  fill(252,252,5);          //yellow
  text("-Average",x,440);
 
  while(i<a.length){          //ถ้าค่าตัวแปร i น้อยกว่าความยาวของ Array ชื่อ a (ซึ่งเท่ากับ 5)
          //แสดงแท่งแผนภูมิที่เป็นค่าสูงสุด
    if(a[i] == max(a)){         //ถ้า Array ชื่อ a ในลำดับ i มีค่าเท่ากับ ค่าสูงสุดใน Array ชื่อ a
      fill(247,32,36);          //red
      println("Max = " + a[i]);
      textSize(15);
      text(a[i],x,y+20);
    }
    else if(a[i] == min(a)){         //ถ้า Array ชื่อ a ในลำดับ i มีค่าเท่ากับ ค่าต่ำสุดใน Array ชื่อ a
          //แสดงแท่งแผนภูมิที่เป็นค่าต่ำสุด
      fill(25,96,245);          //blue
      println("Min = " + a[i]);
      textSize(15);
      text(a[i],x,y+20);
    }
          //แสดงแท่งแผนภูมิอื่นๆที่ไม่เป็นค่าสูงสุดและค่าต่ำสุด
    else{         //กรณีอื่นๆ ที่ Array ชื่อ a ในลำดับ i ที่มีค่าไม่เท่ากับ ค่าสูงสุดและต่ำสุดใน Array ชื่อ a
      fill(49,245,25);          //green
      textSize(15);
      text(a[i],x,y+20);
    }
    noStroke();
    rect(x,y,20,(-4)*a[i]);
    i = i + 1;
    x = x + 50;
  }
          //แสดงแท่งแผนภูมิที่เป็นค่าเฉลี่ย
  int avra = (a[0]+a[1]+a[2]+a[3]+a[4])/a.length;          //ตัวแปร avra มีค่าเท่ากับ Array ชื่อ a ที่มีลำดับตั้งแต่ 0 ถึง 4 นำมารวมกันแล้วหารด้วยความยาวของ Array ชื่อ a (ซึ่งมีค่าเท่ากับ 5)
  noStroke();
  fill(252,252,5);          //yellow
  rect(x,y,20,avra*(-4));
  println("Avr = " + avra);
  textSize(15);
  text(avra,x,y+20);
}

จากโค้ด  ถ้าเปลี่ยนค่าใน Array ชื่อ a จาก int [] a = {55,35,45,80,20}; เป็น int [] a = {50,45,20,10,5}; จะได้ดังรูป



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

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