算法|Java 求两个整数中的最大公约数
辗转相除法(欧几里得算法)点击打开链接
对要求最大公因数的两个数a、b;
设b 若r1=0,则(a,b)=b;若r1≠0,则再用r1除b,得b=r1q+r2 (0≤r2
【算法|Java 求两个整数中的最大公约数】结论: 设两数为a、b(b
package com.itheima.basic;
import java.util.Scanner;
//导入包public class Test { public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
//创建对象
System.out.println("请输入第一个整数");
int m = sc.nextInt();
//接受第一个数据
System.out.println("请输入第二个整数");
int n = sc.nextInt();
//接受第二个数据
int c = gcd(m, n);
//调用方法,并返回最大公约数
System.out.println(m+"和"+n+"的最大公约数为:"+c);
} public static int gcd(int m, int n) {
if (n == 0) {
return m;
}
int r = m % n;
return gcd(n, r);
}}
推荐阅读
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- 画解算法(1.|画解算法:1. 两数之和)
- 事件代理
- Guava|Guava RateLimiter与限流算法
- 有句话忍很久了,女生要求买房怎么就物质了()
- Java|Java OpenCV图像处理之SIFT角点检测详解
- java中如何实现重建二叉树
- 数组常用方法一
- 【Hadoop踩雷】Mac下安装Hadoop3以及Java版本问题
- 一个选择排序算法