ช่วยเขียนคำสั่งเป็นภาษามนุษย์ที่รู้เรื่องการเขียนโปรแกรมนิดหน่อย หน่อยครับ

เขียนคำสั่งวนรอบในการหา ห.ร.ม. ของสองจำนวน

ให้  a  เป็นจำนวนแรก  (เช่น  90)
b   เป็นจำนวนที่ สอง  (เช่น  28)
การหาเศษจากการหาร ใช้สัญลัษณ์  %  เช่น  
          90/28 = 3 เศษ 6  
ดังนั้น  90 % 28   = 6

การหา หรม.โดยวิธีของยุคลิด  ทำดังนี้

นำจำนวนที่สอง  ไปหารจำนวนที่หนึ่ง (ถ้าหารลงตัว ห.ร.ม. คือจำนวนที่ 2)
ถ้าหารไม่ลงตัว ให้นำเศษ(ครั้งที่ 1) ไปหารจำนวนที่สอง  (ถ้าหารลงตัว ห.ร.ม. คือ เศษ(ครั้งที่ 1))
ถ้าหารไม่ลงตัว ให้นำเศษ(ครั้งที่2) ไปหารเศษครั้งที่ 1  (ถ้าหารลงตัว ห.ร.ม. คือ เศษ(ครั้งที่ 2))
ถ้าหารไม่ลงตัว ให้นำเศษ(ครั้งที่3) ไปหารเศษครั้งที่ 2  (ถ้าหารลงตัว ห.ร.ม. คือ เศษ(ครั้งที่ 3))

ใช้สัญลักษณ์แทนได้ดังนี้
     a % b  =  r1     ถ้า r1  = 0  ห.ร.ม. คือ  b
    b % r1 = r2      ถ้า r2  = 0  ห.ร.ม. คือ  r1
     r1 %r 2 = r3    ถ้า r3  = 0  ห.ร.ม. คือ  r2
  อย่างนี้เรื่อยไป จนกว่า เศษ จะเป็น 0
แล้วมันก็จะยาวจนออกทะเล

สามารถลดตัวแปรลงได้ ดังนี้
     a % b  =  0   ห.ร.ม. คือ  b
    b % (a % b)  = 0  ห.ร.ม. คือ  (a % b)
     (a %b) %r (b % (a % b))  = 0  ห.ร.ม. คือ   (b % (a % b))

  อย่างนี้เรื่อยไป จนกว่า เศษ จะเป็น 0
  แล้วมันก็จะใหญ่ขึ้น ๆ  ๆ เหมือนก้นหอย

จะเขียนอย่างไรให้มันวนเป็นวงกลม(ลูป) และหยุดเมื่อได้ค่าที่ต้องการออกมา
ช่วยเขียนเป็นภาษามนุษย์ ที่พอจะรู้เรื่องการเขียนโปรแกรมง่ายนิดๆหน่อย ๆ (เช่นภาษาที่ใช้ใน เอกเซล)
ไม่ต้องลงลึกถึงภาษาซี หรือ จาวา นะครับ
แก้ไขข้อความเมื่อ
แสดงความคิดเห็น
โปรดศึกษาและยอมรับนโยบายข้อมูลส่วนบุคคลก่อนเริ่มใช้งาน อ่านเพิ่มเติมได้ที่นี่