วันอังคารที่ 24 กันยายน พ.ศ. 2556

LCD & GCD The End


 
void setup() {  //ฟังก์ชั่นหลักที่ใช้ในการกำหนดค่า และเรียกใช้สิ่งต่างๆ เป็นฟังก์ชั่นที่ไม่มีการวกกลับ
  int g1=2000;
  int g2=700;
  int l1=6000;
  int l2=820;
  println("The GCD of "+g1+" and "+g2+" is "+gcd(g1, g2));  //แสดงผลลัพธ์ของการหาผลหารร่วมมากระหว่าง 2,000 กับ 700 ออกทางจอ
  println("The LCM of "+l1+" and "+l2+" is "+lcm(l1, l2));  //แสดงผลลัพธ์ของการหาผลคูณร่วมน้อยระหว่าง 6,000 กับ 820
}
int result;  //กำหนดตัวแปรสำหรับการเก็บค่าของผลลัพธ์ที่ได้จากเงื่อนไข
int gcd(int x, int y) {  //กำหนดฟังก์ชั่นสำหรับการหาผลหารร่วมมากที่มี parameter
  if (x==0) {  //กำหนดเงื่อนไข ในกรณีที่ x มีค่าเท่ากับ 0 ทำตามผลด้านล่าง
    result = y;
  }
  else if (y==0) {  //กำหนดเงื่อนไขอีกกรณี ในกรณีที่ y มีค่าเท่ากับ 0 ทำตามผลด้านล่าง
    result = x;
  }
  else if (x>y) {  //กำหนดเงื่อนไขอีกกรณีที่ x มากกว่า y
    gcd(y, x%y);  //กำหนดเพื่อหาผลหารร่วมมากโดยไม่มีเศษเหลือ
  }
  else if (x<=y) {  //กำหนดเงื่อนไขอีกกรณีที่ x น้อยกว่าหรือเท่ากับ y
    gcd(x, y%x);
  }
  return result;  //คืนค่ากลับออกมาโดยไม่มีเศษเหลือ แต่เป็นจำนวนเต็ม
}
int lcm(int x, int y) {  //กำหนดเพื่อการหาผลคูณร่วมน้อย ที่มี parameter
  return x*y/gcd(x, y);  //คืนค่าที่ได้มาเป็นจำนวนเต็มที่เกิดจากการกระทำของสมการ

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

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