兩個數字的公約數的 Java 程式
在本文中,我們將學習如何使用 Java 查詢兩個數字的公約數。該程式將使用遞迴方法計算兩個數字的最大公約數 (GCD),然後確定這兩個數字共享多少個約數。輸出將顯示公約數的總數。
問題陳述
編寫一個 Java 程式來查詢並計算兩個給定數字的公約數。下面是相同的演示 -
輸入
val_1= 68
val_2= 34
輸出
The common divisors between the two numbers is
4
查詢兩個數字的公約數的步驟
以下是查詢兩個數字的公約數的步驟 -
- 定義一個名為 Demo 的類,其中包含靜態方法。
- 建立一個 find_gcd 方法,使用遞迴計算兩個數字的 GCD。
- 建立一個 common_divisors 方法,使用 GCD 計算公約數。
- 使用 for 迴圈 迭代從 1 到 GCD 平方根的數字。
- 使用 if-else 語句 檢查 GCD 是否可以被當前數字整除
- 如果可以整除並且除數等於商,則將計數加 1。
- 否則,將計數加 2。
- 在主方法中,初始化兩個數字並呼叫 common_divisors 方法。
- 列印公約數的總數。
兩個數字的公約數的 Java 程式
下面是兩個數字的公約數的示例 -
public class Demo{
static int find_gcd(int val_1, int val_2){
if (val_1 == 0)
return val_2;
return find_gcd(val_2%val_1,val_1);
}
static int common_divisors(int val_1,int val_2){
int no = find_gcd(val_1, val_2);
int result = 0;
for (int i=1; i<=Math.sqrt(no); i++){
if (no%i==0){
if (no/i == i)
result += 1;
else
result += 2;
}
}
return result;
}
public static void main(String args[]){
int val_1 = 68, val_2 = 34;
System.out.println("The common divisors between the two numbers is ");
System.out.println(common_divisors(val_1, val_2));
}
}
輸出
The common divisors between the two numbers is 4
程式碼解釋
名為 Demo 的類包含一個靜態函式,該函式接受兩個值並使用遞迴返回最大公約數。另一個函式呼叫此最大公約數函式,並迭代 1 到最大公約數平方根之間的數字。
接下來,條件是迭代的值的模數應等於零,接下來,值除以迭代的值應等於迭代的值,然後結果(最初初始化為 0)加 1。如果條件不滿足,則結果加 2。在主函式中,初始化兩個值,並在其上呼叫上述函式。相關結果顯示在螢幕上。
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP