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

BINARY CALCULATION >>>



 boolean [] M = {false, true, true, false,false, false};  /*เทียบเหมือนกับ BINARY 011000*/
  boolean [] S = {true,  false, true, true, false, false};  /*เทียบเหมือนกับ BINARY 1011100*/
  boolean [] result = new boolean [M.length];  /*สร้างตัวแปร Array ชนิด boolean ขึ้นมาชื่อว่า result ไว้เก็บค่า M^S*/
  boolean [] translate = new boolean [M.length];  /*สร้างตัวแปร Array ชนิด boolean ขึ้นมาชื่อว่า translate ไว้เก็บค่าตัวที่พิจารณา*/
boolean [] MS = new boolean [M.length];  /*สร้างตัวแปร Array ชนิด boolean ขึ้นมาชื่อว่า MS ไว้เก็บค่าคำตอบ*/
  int i;  /*ประกาศตัวแปร i ขึ้นมาเป็นจำนวนเต็ม ซึ่งเป็นตัวแปรแบบ local variable*/
  boolean z = false;  /*สร้างตัวแปรชนิด boolean ที่ชื่อว่า z ให้มีค่าเป็นเท็จ*/
  int d = 46;  /*เส้นผ่านศูนย์กลางของวงกลมแต่ละอัน*/
  int x = d; /*ประกาศตัวแปร x  ขึ้นมาเป็นจำนวนเต็ม ให้มีค่าเท่ากับ d ( local variable)*/
  int y = 50;  /*ประกาศตัวแปร y ขึ้นมาเป็นจำนวนเต็ม ให้มีค่าเท่ากับ  50  ( local variable)*/

for(i = M.length-1; i >= 0; i--) {  /*ให้ค่าเริ่มต้นของ i = M.length-1 ตรวจสอบเงื่อนไขว่า i >= 0 หรือไม่ ทุกครั้งก่อนออกจาก loop i นำค่าที่เข้ามาลบไปทีละ 1*/
  result[i] = M[i]^S[i];  /*นำค่า M[i]^S[i] มาใส่ในตัวแปร result[i]*/
  if(M[i]&S[i] == true) {  /*M[i]&S[i] เป็น true หรือไม่*/
    if(i-1 >= 0) {  /*i-1 มากกว่าหรือเท่ากับ 0 หรือไม่*/
    translate[i-1] = false;  /*กำหนดให้ translate ตัวที่ i-1 มีค่าเป้น false*/
    } else z = true;  /*ให้ z = true*/
  }
  println(result[i]);
}


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

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