JavaScriptでリダクションを実装する方法

PHPz
リリース: 2023-04-06 13:47:53
オリジナル
732 人が閲覧しました

JavaScript は、さまざまな Web、モバイル、デスクトップ アプリケーションの開発に使用できる、広く使用されているプログラミング言語です。 JavaScript コードを作成するときは、数値に対して演算や計算を実行する必要があり、これらの数値を減らす必要があることがよくあります。 Javascript でリダクションを実装するにはどうすればよいでしょうか?以下では、それらについて 1 つずつ説明します。

1. リダクションとは

数学では、リダクションとは、分数を別の同等の分数に書き込むことです。分子と分母を、割り切れる 2 つの数で割ります。商は分数と呼ばれます。 。

例: $\frac{10}{20}$ は $\frac{1}{2}$ に減らすことができ、$\frac{20}{25}$ は $\ に減らすことができますフラク{4}{5}$。

2. リダクション法の紹介

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}$ の場合、まず $\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$ を獲得しました。

3. 結論

JavaScript で分数を減らす方法はたくさんあり、自分の好みやニーズに応じて選択できます。この記事が、皆さんが削減方法を学び、理解するのに役立つことを願っています。

以上がJavaScriptでリダクションを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!