วันพุธที่ 24 กรกฎาคม พ.ศ. 2556

Calculate Max & Min

Calculate Max and Min Numbers of Homemovies in Thailand

นี่เป็นจำนวนของคนที่ดูภาพยนตร์ที่บ้านในปัจจุบัน อย่างที่เห็น จำนวนของผู้คนที่กำลังหันมาชมภาพยนตร์ที่บ้านในตอนนี้สูงขึ้นมาก อาจเกินกว่าที่ผมประมาณไว้ สำหรับในการคำนวณค่าสูงสุดและค่าต่ำสุดในครั้งนี้ ผมได้ลองนำค่าสูงสุด และค่าต่ำสุดมาเปรียบเทียบ และคำนวณหาในโปรแกรม สำหรับการคำนวณแบบนี้ อาจถือได้ว่าไม่ยากเท่าไร หากยังคงรู้จักการใช้เงื่อนไข หรือฟังก์ชั่น if และฟังก์ชั่นในการวนซ้ำ หรือ while อันดับแรก ผมต้องประกาศตัวแปรแต่ละตัวที่ต้องใช้ และตัวแปรที่ประกาศเป็น Array รวมทั้งค่าสูงสุด และค่าสูงสุด ทั้งหมดนี้ผมประกาศให้เป็นจำนวนเต็ม หรือบางคนสามารถใช้เป็นทศนิยมก็ได้ ต่อมาจึงเริ่มสร้างฟังก์ชั่นที่ใช้ในการวนซ้ำ เพื่อกำหนดเงื่อนไขที่ตนต้องใช้ แล้วจึงกำหนดเงื่อนไขไว้ข้างในอีก โดยสองเงื่อนไขใน loop ที่ผมใช้ แต่ละชุดประกอบด้วยค่าสูงสุด และค่าต่ำสุดที่ใช้ในการคำนวณ แล้วรวมอยู่ในเงื่อนไข หลังจากที่ใช้ทำฟังก์ชั่นเงื่อนไขชุดนี้เสร็จแล้ว ผมจึงสร้างฟังก์ชั่นที่ใช้ในการตรวจสอบค่า Array แต่ละช่องไว้ จากนั้นจึงปิดวงเล็บ ต่อมาผมจึงป้อนคำสั่งในการพิมพ์ค่าสูงสุด และต่ำสุด ตามลำดับ ซึ่งจะแสดงตามผลที่ได้ในเงื่อนไขออกมาบนจอ

Processing Code

int max = 0;  /*ประกาศตัวแปร max เพื่อใช้ในการตรวจสอบค่าในมากที่สุด Array*/
int min = 2500000;  /*ประกาศตัวแปร min เพื่อใช้ในการตรวจสอบค่าน้อยที่สุด*/
int i = 0;  /*ประกาศตัวแปร i โดยเริ่มนับจากช่องแรกใน Array*/
int homemovies[] ={85600, 2189583, 452398, 929386, 2469000};  /*ประกาศ Array ที่มีชื่อ homemovies เพื่อเก็บข้อมูลตัวเลข*/

while(i < homemovies.length) {  /*เมื่อเงื่อนไขตรงตาม loop ใน while โดย i เริ่มต้นที่ 0 และทำไปเรื่อยๆ จนกว่าจะมีค่าน้อยกว่า homemovies.length หรือก็คือจำนวนช่องที่เก็บค่าใน Array ซึ่งจาก homemovies[i] จะมีทั้งหมด 0-4 เมื่อทำจนครบตามเงื่อนไข จึงจะออกจาก loop while*/
      if(max < homemovies[i]) {  /*ทำการตรวจสอบเงื่อนไข โดยเงื่อนไขว่า ให้ max ที่รับมาต้องมาค่าน้อยกว่า ตัวเลขในช่องที่ทำการตรวจสอบเงื่อนไข ซึ่งถ้าเลขใน i ของ Array มีค่าน้อยกว่าก็จะผิดเงื่อนไขและไม่ทำงานในเงื่อนไขนี้*/
       max = homemovies[i];  //กำหนดให้ตัวแปร max มีค่าเท่ากับตัวเลขใน i ของ Array ซึ่งมาจากเงื่อนไขถ้าไม่ตรงเงื่อนไข ตัวแปลก็จะมีค่าคงเดิม
      }
      if(min > homemovies[i]) {  /*ทำการตรวจสอบเงื่อนไข โดยเงื่อนไขว่า ให้ min ที่รับมาต้องมาค่ามากกว่าตัวเลขในช่องที่ทำการตรวจสอบเงื่อนไข  ซึ่งถ้าเลขใน i ของ Array มีค่ามากกว่าก็จะผิดเงื่อนไขและไม่ทำงานในเงื่อนไขนี้*/
       min = homemovies[i];  //กำหนดให้ตัวแปร min มีค่าเท่ากับตัวเลขใน i ของ Array ซึ่งมาจากเงื่อนไขถ้าไม่ตรงเงื่อนไข ตัวแปรก็จะมีค่าคงเดิม
      }
      i=i+1;  //เพิ่มค่า i ทีละ 1 เพื่อให้ while ทำการตรวจสอบค่าใน Array ทีละช่อง
}
println("Max = "+max);  //แสดงค่า max โดยการพิมพ์ออกมาบนจอ
println("Min = "+min);  //แสดงค่า min โดยการพิมพ์ออกมาบนจอเช่นกัน

สำหรับเรื่องนี้ก็มีฟังก์ชั่นชุดใหม่ที่ผมยังไม่เคยลองใช้มาก่อน การทำ Array ยากจริงจนแทบไม่รู้ว่า ตัวเองควรจะเริ่มตรงไหน พอได้เห็นของคนอื่นแล้วลองเอามาทำดูแล้ว เรื่องนี้จึงไม่น่ายากเกินไป

Canvas


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

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