首页 经验

用于计算最大公约数(GCD)的几种不同语言的代码示例,使用辗转相除法

时间: 2024-11-04 09:19:01

(部分内容来自网络,其真实性存疑,为了避免对您造成误导,请谨慎甄别。)

下面是用于计算最大公约数(GCD)的几种不同语言的代码示例,使用辗转相除法(Euclidean algorithm)实现:

Python

python
def gcd(a, b):  
    while b != 0:  
        a, b = b, a % b  
    return a  

# 示例  print(gcd(48, 18))  # 输出:6

C

c
#include <stdio.h>  int gcd(int a, int b) {  
    while (b != 0) {  
        int temp = b;  
        b = a % b;  
        a = temp;  
    }  
    return a;  
}  

int main() {  
    printf("%d\n", gcd(48, 18));  // 输出:6      return 0;  
}

Java

java
public class GCD {  
    public static int gcd(int a, int b) {  
        while (b != 0) {  
            int temp = b;  
            b = a % b;  
            a = temp;  
        }  
        return a;  
    }  

    public static void main(String[] args) {  
        System.out.println(gcd(48, 18));  // 输出:6  
    }  
}

JavaScript

javascript
function gcd(a, b) {  
    while (b !== 0) {  
        let temp = b;  
        b = a % b;  
        a = temp;  
    }  
    return a;  
}  

// 示例  console.log(gcd(48, 18));  // 输出:6

C++

cpp
#include <iostream>  using namespace std;  

int gcd(int a, int b) {  
    while (b != 0) {  
        int temp = b;  
        b = a % b;  
        a = temp;  
    }  
    return a;  
}  

int main() {  
    cout << gcd(48, 18) << endl;  // 输出:6      return 0;  
}

Go

go
package main  

import "fmt"  func gcd(a, b int) int {  
    for b != 0 {  
        a, b = b, a % b  
    }  
    return a  
}  

func main() {  
    fmt.Println(gcd(48, 18))  // 输出:6  }

这些代码示例展示了如何使用辗转相除法计算两个整数的最大公约数。你可以根据自己的需要选择相应的编程语言,并运行代码以查看结果。

上一个 最大公约数(Greatest Common Divisor,简称 GCD) 文章列表 下一个 抖音直播推流逻辑

最新

工具

© 2019-至今 适观科技

沪ICP备17002269号