Euclid(欧几里得)算法

来源:互联网 发布:2012nba总决赛数据 编辑:程序博客网 时间:2024/05/21 10:01
import java.util.Scanner;public class Euclid {/* * 欧几里得(Euclid)算法: * 计算两个非负整数p和q的最大公约数 * 1.若q是0,则最大公约数为p * 2.若q不为0,将p除以q得到余数r *   p和q的最大公约数即为q和r的最大公约数 **/public static int gcd(int p,int q){if(q==0)return p;int r=p%q;return gcd(q,r);}public static void main(String[] args) {//测试最大公约数算法:while(true){System.out.println("请输入a和b的值:");Scanner sc=new Scanner(System.in);int a=sc.nextInt();int b=sc.nextInt();int c=gcd(a,b);System.out.println(a+"和"+b+"的最大公约数为:"+c);if(a==0&&b==0)break;}}}

原创粉丝点击