天天看点

GCD(Great Common Divisor)的欧几里得算法

编号:1

C版本:

GCD(Great Common Divisor)的欧几里得算法

#include <stdio.h>

GCD(Great Common Divisor)的欧几里得算法
GCD(Great Common Divisor)的欧几里得算法

long gcd(long a,long b){

GCD(Great Common Divisor)的欧几里得算法

    long rem=0;

GCD(Great Common Divisor)的欧几里得算法
GCD(Great Common Divisor)的欧几里得算法

    while(b!=0)    {

GCD(Great Common Divisor)的欧几里得算法

        rem=a%b;

GCD(Great Common Divisor)的欧几里得算法

        a=b;

GCD(Great Common Divisor)的欧几里得算法

        b=rem;

GCD(Great Common Divisor)的欧几里得算法

    }

GCD(Great Common Divisor)的欧几里得算法

    return a;

GCD(Great Common Divisor)的欧几里得算法

}

GCD(Great Common Divisor)的欧几里得算法
GCD(Great Common Divisor)的欧几里得算法

int main(){

GCD(Great Common Divisor)的欧几里得算法
GCD(Great Common Divisor)的欧几里得算法

    long a=0,b=0;

GCD(Great Common Divisor)的欧几里得算法
GCD(Great Common Divisor)的欧几里得算法

    scanf("%ld,%ld",&a,&b);    

GCD(Great Common Divisor)的欧几里得算法

    printf("The greatest common divisor of the two is : %ld",gcd(a,b));

GCD(Great Common Divisor)的欧几里得算法
GCD(Great Common Divisor)的欧几里得算法

    return 0;

GCD(Great Common Divisor)的欧几里得算法
GCD(Great Common Divisor)的欧几里得算法
GCD(Great Common Divisor)的欧几里得算法
GCD(Great Common Divisor)的欧几里得算法

Java版本:

GCD(Great Common Divisor)的欧几里得算法

package problem1;

GCD(Great Common Divisor)的欧几里得算法
GCD(Great Common Divisor)的欧几里得算法

import java.io.*;

GCD(Great Common Divisor)的欧几里得算法
GCD(Great Common Divisor)的欧几里得算法

public class Main {

GCD(Great Common Divisor)的欧几里得算法
GCD(Great Common Divisor)的欧几里得算法

    public static void main(String[] args) {

GCD(Great Common Divisor)的欧几里得算法

        try {

GCD(Great Common Divisor)的欧几里得算法

            BufferedReader reader = new BufferedReader(new InputStreamReader(

GCD(Great Common Divisor)的欧几里得算法

                    System.in));

GCD(Great Common Divisor)的欧几里得算法
GCD(Great Common Divisor)的欧几里得算法

            long a = Integer.parseInt(reader.readLine());

GCD(Great Common Divisor)的欧几里得算法

            long b = Integer.parseInt(reader.readLine());

GCD(Great Common Divisor)的欧几里得算法

            System.out.println("The greatest common divisor of the two is "

GCD(Great Common Divisor)的欧几里得算法

                    + gcd(a, b));

GCD(Great Common Divisor)的欧几里得算法

        } catch (Exception e) {

GCD(Great Common Divisor)的欧几里得算法

            System.out.println(e);

GCD(Great Common Divisor)的欧几里得算法

        }

GCD(Great Common Divisor)的欧几里得算法
GCD(Great Common Divisor)的欧几里得算法
GCD(Great Common Divisor)的欧几里得算法

    private static long gcd(long a, long b) {

GCD(Great Common Divisor)的欧几里得算法

        while (b != 0) {

GCD(Great Common Divisor)的欧几里得算法

            long rem = a % b;

GCD(Great Common Divisor)的欧几里得算法

            a = b;

GCD(Great Common Divisor)的欧几里得算法

            b = rem;

GCD(Great Common Divisor)的欧几里得算法
GCD(Great Common Divisor)的欧几里得算法

        return a;

GCD(Great Common Divisor)的欧几里得算法
GCD(Great Common Divisor)的欧几里得算法
GCD(Great Common Divisor)的欧几里得算法

本文转自冬冬博客园博客,原文链接:http://www.cnblogs.com/yuandong/archive/2006/06/25/435221.html,如需转载请自行联系原作者