java怎么求最大公约数?
最大公约数
①定义
几个自然数公有的约数,叫做这几个数的公约数;其中最大的一个,叫做这几个数的最大公约数。
②辗转相除法
又称“欧几里得算法”,是求最大公约数的算法
求两个数的最大公约数:如果m > n,令余数remainder = m%n,如果余数不为0,则令m = n, n = remainder,再次remainder = m%n,直到remainder = 0,此时n就是最大公约数。
求多个数的最大公约数:先求出其中两个数的最大公约数,再求这个最大公约数与第三个数的最大公约数,依次求下去,直到最后一个为止,最后所得的那个最大公约数,就是所求的几个数的最大公约数
③代码实现
public static int maxCommonDivisor(int m, int n) { if (m < n) { // 保证被除数大于除数 int temp = m; m = n; n = temp; } while (m % n != 0) { // 在余数不能为0时,进行循环 int temp = m % n; m = n; n = temp; } return n; // 返回最大公约数 }
原文地址:https://www.jb51.cc/java/1191916.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。