辗除法java(辗除法的原理)
华为云服务器特价优惠火热进行中! 2核2G2兆仅需 38 元;4核4G3兆仅需 79 元。购买时间越长越优惠!更多配置及优惠价格请咨询客服。
合作流程: |
今天给各位分享辗除法java的知识,其中也会对辗除法的原理进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
微信号:cloud7591如需了解更多,欢迎添加客服微信咨询。
复制微信号
本文目录一览:
java 辗转相除法求最大公约数
比较好用的是辗转相除法。
比如:49和91
a b temp
49 % 91 = 49
91 % 49 = 42
49 % 42 = 7
42 % 7 = 0
所以最大公约数就是7.
public class T {
public static void main(String[] args) {
int gcd = gcd(91, 49);
System.out.println(gcd);
}
/**
* greatest commond divisor
* @param a
* @param b
* @return
*/
public static int gcd(int a, int b) {
while(b != 0) {
int temp = a%b;
a = b;
b = temp;
}
return a;
}
}
编写两个类:A和B,在类A中有一个方法,其功能是计算两个正整数的最大公约数?
import java.util.Scanner;
class A //计算2个正整数的最大公约数
{
int max=0;
public int big(int x,int y)
{
int temp=0;
if(xy)/*交换两个数,使大数放在x上*/
{ temp=x;
x=y;
y=temp;
}
while(y!=0)/*利用辗除法,直到y为0为止*/
{
temp=x%y;
x=y;
y=temp;
}
return x;
}
}
class B //计算2个正整数的最小公倍数
{
int min=0;
A l=new A();
public int small(int x,int y)
{
min=x*y/l.big(x,y);
return min;
}}
public class gbs
{
public static void main(String args[])
{
System.out.print("计算2个正整数的最大公约数");
System.out.print("请输入两个数:");
Scanner cin=new Scanner(System.in);
int m=cin.nextInt(),n=cin.nextInt();
A a=new A();
System.out.println("最大公约数为:"+a.big(m,n));
B b=new B();
System.out.println("最小公倍数为:"+b.small(m,n));
}
}
知道合伙人
java编程
不是有辗除法吗
class App{
public int fun(int a,int b){ //计算最大公约数
int t;
while(a%b!=0){
t=a%b;
a=b;
b=t;
}
return b;
}
static public void main(String[] str){
int x,a=45,b=60;
x=fun(a,b);
System.out.println(x+" "+(a*b/x));
}
}

关于辗除法java和辗除法的原理的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
