更相減損法求最大公約數(Greatest Common Divisor)

Queen_Star發表於2020-04-09

今天給大家介紹如何用更相減損法求兩個數的最大公約數。
思路:1.首先我們要輸入兩個數字,要引入java.util.Scanner;
2. 接下來我們來了解一下更相減損法。更相減損法出自《九章算術》:“可半者半之,不可半者,副置分母、子之數,以少減多,更相減損,求其等也。以等數約之。”具體方法為兩個數之間大的數字減小的數字,之後將得到的差作為減數,較小的數作為被減數,再次相減,一直迴圈直到減數與所得的差相同,此時的差即為兩個數之間的最大公約數。
例如24與18,我們用24-18得到差為6,再將18作為被減數,6作為減數得到18-6=12,再進行12-6=6,我們看到差為6,與減數6相等,再減下去會得到6-6=0。即 24與18的最大公約數為6。
3.根據更相減損法,我們需要判斷兩個數誰大誰小,如果需要交換位置,這就定義一箇中間的變數t.交換完成後需要迴圈相減,直到兩個數差為0,這裡用while語句作為示例。程式碼如下。
在這裡插入圖片描述
歡迎批評指正。如有疑問請聯絡QQ群1085585086。

相關文章