首頁  >  文章  >  web前端  >  javascript怎麼實現約分

javascript怎麼實現約分

PHPz
PHPz原創
2023-04-06 12:45:26733瀏覽

Javascript 是一種廣泛使用的程式語言,可用於開發各種 Web 應用、行動應用和桌面應用。在編寫 Javascript 程式碼時,經常需要對數字進行運算和計算,而這些數字往往需要進行約分。怎麼樣才能在 Javascript 中實現約分呢?下面,我們將一一探討。

一、什麼是約分

在數學中,約分就是將一個分數寫成另外一個等值的分數,分子和分母都能夠被整除的兩個數相除得到的商稱為分數。

例如: $\frac{10}{20}$,可約分為$\frac{1}{2}$,$\frac{20}{25}$ 可約分為$\ frac{4}{5}$。

二、約分方法介紹

1.求最大公約數法

#求分子分母的最大公約數,然後分子分母同時除以最大公約數即可。

程式碼如下:

function gcd(a, b) {
    if (b === 0) {
        return a;
    } else {
        return gcd(b, a % b);
    }
}

function reduceFraction(numerator, denominator) {
    var divisor = gcd(numerator, denominator);
    return [numerator / divisor, denominator / divisor];
}

舉例:對於分數$\frac{24}{60}$,求最大公約數為$12$,那麼最終約分得$2/5$ 。

2.循環相除法

將分子分母同時除以一個大於 $1$ 的整數,直到分子分母沒有公約數,就可以得到約分後的分數。

程式碼如下:

function reduceFraction(numerator, denominator) {
    var gcd = 1;
    var smaller = Math.min(numerator, denominator);
    for (var i = 2; i <= smaller; i++) {
        if (numerator % i === 0 && denominator % i === 0) {
            gcd = i;
        }
    }
    return [numerator / gcd, denominator / gcd];
}

舉例:對於分數$\frac{24}{60}$,可以先除以$2$ 得到$\frac{12}{30 }$,再除以$2$ 得到$\frac{6}{15}$,最終約分得$2/5$。

3.相減法

分子分母同時減去一個相同的數,直到分子分母沒有公約數,就可以得到約分後的分數。

程式碼如下:

function reduceFraction(numerator, denominator) {
    var smaller = Math.min(numerator, denominator);
    for (var i = smaller; i >= 2; i--) {
        if (numerator % i === 0 && denominator % i === 0) {
            numerator /= i;
            denominator /= i;
        }
    }
    return [numerator, denominator];
}

舉例:對於分數$\frac{24}{60}$,可以先將其分子分母同時減去$12$ 得到$\frac{2 }{5}$,最終約分得$2/5$。

三、結語

在 Javascript 中約分分數的方法有很多種,我們可以依照自己的喜好和需求來選擇。希望這篇文章能對大家學習和了解約分方法有所幫助。

以上是javascript怎麼實現約分的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn