初学Java 求最大公约数

 1 import java.util.Scanner;
 2 public class GreatesCommonDivisor {
 3   public static void main(String[] args) {
 4       Scanner input = new Scanner(System.in);
 5
 6       System.out.print("Enter first integer: ");
 7       int n1 = input.nextInt();
 8       System.out.print("Enter second integer: ");
 9       int n2 = input.nextInt();
10
11       int gcd = 1;
12       int k = 2;
13       while (k <= n1 && k <= n2) {
14           if (n1 % k == 0 && n2 % k == 0)
15               gcd = k;
16           k++;
17       }
18
19       System.out.println("The greatest common divisor for " + n1 + " and " + n2 + " is " + gcd);
20   }
21 }

原文地址:https://www.cnblogs.com/leo2li/p/9662841.html

时间: 2024-10-12 05:17:44

初学Java 求最大公约数的相关文章

java求最大公约数(分解质因数)

下面是四种用java语言编程实现的求最大公约数的方法: package gcd; import java.util.ArrayList; import java.util.List; public class gcd { public static void main(String[] args) { long startTime; long endTime; long durationTime; int[] testArray1 = new int[]{784, 988, 460, 732,

java求最大公约数,和最小公倍数

import java.util.Scanner; public class Test { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int m = sc.nextInt(); int n = sc.nextInt(); if(m<n) { int temp = m; m = n; n = temp; } int t = gy(m,n); System.out.println("

java求最大公约数

public class ArithmeticTest1 {    public static void main(String[] args) {        System.out.println(gab1(88,72));        System.out.println(gab2(88,72));        /**         * gab1(gab1(452,546),90)求取三个数的最大公约数         */        System.out.println(gab

java 求最大公约数

public class Main { public static void main(String[] args) { System.out.println(gcd(4,8)); }//辗转相除法 public static int gcd(int x, int y){ if(y == 0) return x; else return gcd(y,x%y); }} 原文地址:https://www.cnblogs.com/sgbe/p/11413331.html

欧几里得求最大公约数--JAVA递归实现

欧几里得算法求最大公约数算法思想: 求p和q的最大公约数,如果q=0,最大公约数就是p:否则,p除以q余数为r,p和q的最大公约数即q和r的最大公约数. java实现代码: 1 public class Demo0 { 2 public static void main(String[] args) { 3 4 System.out.println(gcd(24,120)); 5 } 6 7 8 public static int gcd(int p,int q){ 9 10 if(q==0)

hdu----(5050)Divided Land(二进制求最大公约数)

Divided Land Time Limit: 8000/4000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 123    Accepted Submission(s): 64 Problem Description It’s time to fight the local despots and redistribute the land. There is a rect

(hdu 2.1.4)又见GCD(求最大公约数GCD的变化题)

题目: 又见GCD Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 2685 Accepted Submission(s): 1327   Problem Description 有三个正整数a,b,c(0<a,b,c<10^6),其中c不等于b.若a和c的最大公约数为b,现已知a和b,求满足条件的最小的c. Input 第一行输入一个n,

递归求最大公约数

  import java.io.IOException; import java.util.Scanner; public class CommonDivisor { public static void main(String[] args)throws IOException{ try{ System.out.println("请输入两个整数!"); Scanner input = new Scanner(System.in); int x = input.nextInt();

【算法】欧几里德算法--求最大公约数

预备知识 因子(除数) 如果有整数 n,a,b .a和b都不为0 ,且 有 n = a*b ,则说a(或者b,以下省略说明)为n的一个因子,或者说a能整除n. 特别的:任何非0整数都是0的因子,所以一般我们不会去求0的因子. 如:3 的因子有  1, -1 ,  3 ,  -3 .然而我们一般只考虑正数因子,因为负数因子和正数因此没有本质上的区别,只是符号不同而已. 素数:素数(也加叫质数)的定义是,如果整数p的因子 只有 ±1 和   ±p,则它就是素数 .特别的:0 和1既不是素数,也不是合