辗转相除法求最大公约数(使用递归实现)~

简介: 辗转相除法求最大公约数(使用递归实现)~

代码实现:

package org.example.and.check.set;
import java.util.Scanner;
public  class test12{
    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);
        //求x,y的最大公约数
        int x=scanner.nextInt();
        int y=scanner.nextInt();
        System.out.println(greatestCommonDivisor(x,y));
    }
    public static int greatestCommonDivisor(int x,int y){
//        辗转相除法:取两个数中最大的数做除数,较小的数做被除数,用最大的数除较小数,如果余数为0,则较小数为这两个数的最大公约数,如果余数不为0,
//        用较小数除上一步计算出的余数,直到余数为0,则这两个数的最大公约数为上一步的余数。
        //大数作为除数,小数作为被除数,每次递归的除数为上次的被除数,而每次的被除数为上次的余数
        int f=0;
        if(y>0){
            f= greatestCommonDivisor(y,x%y);
        } else if (y==0) {
            f= x;
        }
        return f;
    }
}

测试:

6
8
2
目录
打赏
0
0
0
0
5
分享
相关文章
倚天产品介绍|倚天710平台稳定性-内存隔离降级运行
本文介绍利用倚天710平台的RAS特性,实现OS降级运行,提高系统稳定性
32 C语言 - 命令行参数
32 C语言 - 命令行参数
90 0
5分钟Deepseek R1本地化部署
DeepSeek R1 是一款基于Transformer架构的先进大语言模型,以其强大的自然语言处理能力和高效的推理速度著称。本文介绍如何通过开源框架Ollama在本地快速部署DeepSeek R1。Ollama简化了大型语言模型的部署过程,支持多种操作系统和模型格式,提供便捷的安装、启动及API接口,使得研究人员和开发者能轻松运行和定制模型。通过简单的命令行操作和HTTP API,用户可以在本地环境中高效利用DeepSeek R1的强大功能。
582 5
MapboxGL可视化之千里江山图
本文记录了作者在Mapbox GL中实现山峰等值面效果的过程,灵感来源于百度地图的山峰展示方式。作者通过下载和处理DEM数据,使用QGIS生成等值面,并通过Mapbox GL的fill图层实现分段渲染,最终效果宛如“千里江山图”,美不胜收。
174 0
|
11月前
|
模型(Model)
【8月更文挑战第19天】
244 2
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问