求两个整数的最大公约数与两个整数的最小公倍数

求两个整数的最大公约数
import java.util.Scanner;

public class ZuiDaGongYueShu {
  public static void main(String[] args) {
   Scanner sc=new Scanner(System.in);

   System.out.print("请输入两个整数用来求最大公约数:");
   int a=sc.nextInt();
   int b=sc.nextInt();
   int min,c=0;
   if(a>b) min=b; else min=a;
   for(int i=1;i<=min;i++) {
    if(b%i==0&&a%i==0) {
     c=i;
    }
    }
   System.out.println("这两个数的最大公约数为:"+c);
  }
}

结果显示:
请输入两个整数用来求最大公约数:15 25
这两个数的最大公约数为:5
求两个整数的最小公倍数
import java.util.Scanner;

public class ZuiXiaoGongBeiShu {
  public static void main(String[] args) {
   Scanner sc=new Scanner(System.in);
   
   System.out.print("请输入两个整数用来求最小公倍数:");
   int a=sc.nextInt();
   int b=sc.nextInt();
   int max,c=0;
   if(b>a) max=b; else max=a;
   for(int i=max;i>=max;i++) {
    if(i%b==0&&i%a==0) {
     c=i;  break;
    }
   }
   System.out.println("这两个数的最小公倍数为:"+c);
  }
}

结果显示:
请输入两个整数用来求最小公倍数:15 25
这两个数的最小公倍数为:75
求最大公因数与最小公倍数存在公式法
import java.util.Scanner;

public class ZuiDaGongYueShu2 {
  public static void main(String[] args) {
   Scanner sc=new Scanner(System.in);
   
   System.out.print("请输入两个整数用来求最大公约数:");
   int a=sc.nextInt();
   int b=sc.nextInt();
   if(a<b) {
    int t=a;
    a=b;
    b=t;//此时b为最小的数
   }
   int i;
   for(i=b;i>0;i--)
   if(b%i==0&&a%i==0) {
     break;
    }
   System.out.println("这两个数的最大公约数为:"+i);
   
   //有一个公式  最小公倍数=a*b/最大公约数
   int k=a*b/i;
   System.out.println("这两个数的最小公倍数为:"+k);
  }
}

结果显示:
请输入两个整数用来求最大公约数:15 20
这两个数的最大公约数为:5
这两个数的最小公倍数为:60
发布了163 篇原创文章 · 获赞 58 · 访问量 4149

猜你喜欢

转载自blog.csdn.net/qq_45696288/article/details/104862316