JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

JavaScriptで2つの数値を受け取り整数の大小関係を比較する方法

JavaScriptでは、2つの数値(例えば num1num2)を受け取り、それらの大小関係を判定する関数を作成できます。この関数は以下のように動作します。

  • num1num2 より大きい場合、「greater」(大きい)を返します。

  • num2num1 より大きい場合、「smaller」(小さい)を返します。

  • どちらでもない場合(つまり2つの数値が等しい場合)は、「equal」(等しい)を返します。

実装例

以下がそのコードです。

const compareIntegers = (num1, num2) => {
    if(typeof num1 !== 'number' || typeof num2 !== 'number'){
        return false;
    };
    if(num1 > num2){
        return 'greater';
    }else if(num2 > num1){
        return 'smaller';
    }else{
        return 'equal';
    };
};
console.log(compareIntegers(12, 56));
console.log(compareIntegers(72, 56));
console.log(compareIntegers(12, 12));
console.log(compareIntegers(12, 33));

コードの解説

この関数はアロー関数式を使って定義されています。まず最初に型チェックを行い、引数が数値型でない場合は false を返して不正な入力に対応しています。その後、if / else if / else 文による条件分岐で、num1num2 の大小関係を判定し、結果に応じた文字列を返します。

出力結果

コンソールには以下の出力が表示されます。

smaller
greater
equal
smaller

このように、関数は渡された2つの数値を正確に比較し、その大小関係を文字列として返すことが確認できます。シンプルながら、入力値の型チェックを組み合わせることで、より堅牢な比較処理を実現しています。

  1. JavaScriptで2つの数値を加算する際に必要な繰り上がり(キャリー)の回数を求める方法

    問題 2つの数値を受け取るJavaScriptの関数を記述する必要があります。 この関数は、まるで紙の上で筆算を行うように、その2つの数値を加算する際に発生する繰り上がり(キャリー)の回数を数えて返すものとします。 例えば、次の図のように 179 と 284 を足し合わせる場合、繰り上がりは2回発生します。したがって、この2つの数値を渡したとき、関数は 2 を返す必要があります。 解き方のポイント この問題は、各桁を下の位から順番に見ていき、「その桁の2つの数字と、前の桁からの繰り上がりの合計が10以上になったかどうか」を判定することで解けます。 剰余演算子(%)を使えば、数値の一番下の

  2. 2進数同士の乗算を最速で行う方法 ― 分割統治法による効率的なアルゴリズム

    2つの数が2進数(バイナリ)の文字列として与えられたとき、それらの積をいかに速く、効率的に求めるか。本記事ではその手法を詳しく解説します。 この問題は分割統治法(Divide and Conquer)を用いることで、非常に高い効率で解決できます。基本的なアイデアは、それぞれの数を前半と後半の2つの部分に分割し、部分ごとの結果を組み合わせて全体の積を得ることです。 ここで、最初の数 X を Xleft と Xright に、2番目の数 Y を Yleft と Yright に分割すると、積は次のように表されます。 さらに計算をシンプルにするため、上式は次のように変形できます。 この手法は