Heim  >  Artikel  >  Web-Frontend  >  So finden Sie den größten gemeinsamen Teiler zweier Zahlen in JavaScript

So finden Sie den größten gemeinsamen Teiler zweier Zahlen in JavaScript

WBOY
WBOYOriginal
2022-02-21 16:51:463070Durchsuche

In JavaScript können Sie die Funktionsanweisung und die if-Anweisung mit den Operatoren „%“ und „===“ verwenden, um den größten gemeinsamen Teiler zweier Zahlen zu ermitteln. Die Syntax lautet „function gcd(x,y){if(“. x%y ===0){return y;}return gcd(y,x%y)}".

So finden Sie den größten gemeinsamen Teiler zweier Zahlen in JavaScript

Die Betriebsumgebung dieses Tutorials: Windows 10-System, JavaScript-Version 1.8.5, Dell G3-Computer.

So finden Sie den größten gemeinsamen Teiler zweier Zahlen in JavaScript

In JavaScript finden Sie den größten gemeinsamen Teiler zweier Zahlen.

Beispiele sind wie folgt:

 //功能:求最大公约数
        //参数: x 、y   number
        //返回值: number
        function gcd(x , y){
            if(x % y === 0){
                return y ;
            }
            return gcd(y , x % y)
            //三目运算符写法:
            //return x % y === 0 ? y : gcd(y , x % y) ; 
        }
        var res = gcd(5 , 20) ;
        console.log(res) ;    //5

Andere Methoden:

1. Größter gemeinsamer Teiler – Schleife um den Rest zu finden

    <script>
        //最大公约数  --- 循环求余数
        //功能:两个数的最大公约数
        //参数:x,y  number
        //返回值:最大公约数  number
        function gcd(x , y){
            //比较两个数的大小,取较小的数
            var min = x < y ? x : y ;
            //从大到小循环找第一个公约数
            for(var i = min ; i >= 1 ; i--){
                //判断是否为公约数
                if(x % i == 0 && y % i == 0){
                    return i ;
                }
            }
        }
        var res = gcd(5 , 20);
        document.write(res) ;  //5
    </script>

2. Größter gemeinsamer Teiler – Euklidischer Algorithmus – rekursive Implementierung

f-Methode: Finden Sie den Rest der großen Zahl auf die Dezimalstelle, wiederholen Sie diesen Vorgang, bis der Rest 0 ist

    <script>
        // 最大公约数  --- 欧几里得算法  -- 递归实现
        //递归:大数对小数求余,重复这个过程直到余数为 0
        //功能:求最大公约数
        //参数:m,n   number
        //返回值: number
        function gcd(m , n){
            //大数能否整除小数
            var max = m > n ? m : n ;
            var min = m < n ? m : n ;
            if(max % min == 0){
                //如果能整除,小数就是最大公约数
                return min ;
            }
            else{
                return f(min,  max % min) ;
            }
        }
        var res = gcd(5 , 20) ;
        document.write(res) ;  //5
    </script>

Verwandte Empfehlungen: Tutorial zum Javascript-Lernen

Das obige ist der detaillierte Inhalt vonSo finden Sie den größten gemeinsamen Teiler zweier Zahlen in JavaScript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn