java求兩個數(shù)的最大公約數(shù) JAVA如何編寫程序求兩個數(shù)的最大公約數(shù)和最小公倍數(shù)?
JAVA如何編寫程序求兩個數(shù)的最大公約數(shù)和最小公倍數(shù)?自然語言描述計算兩個非負(fù)整數(shù)P和Q的最大公約數(shù):如果Q為0,則最大公約數(shù)為P。否則,將P除以Q得到余數(shù)R。P和Q的最大公約數(shù)是Q和R的最大公約數(shù)。
JAVA如何編寫程序求兩個數(shù)的最大公約數(shù)和最小公倍數(shù)?
自然語言描述計算兩個非負(fù)整數(shù)P和Q的最大公約數(shù):如果Q為0,則最大公約數(shù)為P。否則,將P除以Q得到余數(shù)R。P和Q的最大公約數(shù)是Q和R的最大公約數(shù)。Java代碼公約數(shù)
public static int GCD(int P,int Q){如果(Q==0)返回P int R=P%Q返回GCD(Q,R)}]公倍數(shù)是兩個數(shù)除以最大公約數(shù)的乘積。Public static int g(int p,int q){return p*q/GCD(q,R)}
程序從main開始,然后去你定義的GCD方法調(diào)用,80p不等于0,執(zhí)行else語句,直到GCD調(diào)用GCD方法,但是50和80p兩個參數(shù)的值30500不等于0,繼續(xù)調(diào)用GCD方法直到if(a%B==0)的值為true,結(jié)果返回int t繼續(xù)執(zhí)行其余語句。借答者:邊心風(fēng)絕對80%50=3050%30=2030%20=1020%10=0遞歸10是最大公約數(shù)。最大公約數(shù)可以通過除法得到,最小公約數(shù)等于M和N除以它們的最大公約數(shù)的乘積。int gcd(int m,int n){if(m< n){int temp=n n=m m=temp}if(m%n==0)return n else{m%=n return gcd(n,m)}