整数をローマ数字に変換するためのJavaScriptアルゴリズム
たとえば、intToRoman()などの関数を作成する必要があるとします。この関数は、名前が示すように、引数として渡された数値に相当するローマ字を返します。
この関数のコードを書いてみましょう-
例
const intToRoman = (num) => { let result = ""; while(num){ if(num>=1000){ result += "M"; num -= 1000; }else if(num>=500){ if(num>=900){ result += "CM"; num -= 900; }else{ result += "D"; num -= 500; } }else if(num>=100){ if(num>=400){ result += "CD"; num -= 400; }else{ result += "C"; num -= 100; } }else if(num>=50){ if(num>=90){ result += "XC"; num -= 90; }else{ result += "L"; num -= 50; } }else if(num>=10){ if(num>=40){ result += "XL"; num -= 40; }else{ result += "X"; num -= 10; } }else if(num>=5){ if(num>=9){ result += "IX"; num -= 9; }else{ result += "V"; num -= 5; } }else{ if(num>=4){ result += "IV"; num -= 4; }else{ result += "I"; num -= 1; } } } return result; }; console.log(intToRoman(178)); console.log(intToRoman(89)); console.log(intToRoman(55)); console.log(intToRoman(1555));
出力
コンソールでのこのコードの出力は-
になりますCLXXVIII LXXXIX LV MDLV
-
JavaScriptで特別な番号をチェックする
問題 最初で唯一の引数として数値numを受け取るJavaScript関数を作成する必要があります。 数値numの桁の合計が回文数の場合はtrueを返し、それ以外の場合はfalseを返す必要があります。 たとえば、関数への入力が-の場合 const num = 781296; その場合、出力は-になります。 const output = true; 出力の説明 781296の桁の合計が33であるため、これは回文数です。 例 以下はコードです- const num = 781296; const findSum = (num, sum = 0) => { if(num){ re
-
JavaScriptの数字に接尾辞を追加する
問題 最初で唯一の引数として数値numを受け取るJavaScript関数を作成する必要があります。 この関数のタスクは、次のルールに従って、数値に「st」、「nd」、「rd」、「th」を追加することです。 stは、1で終わる数字で使用されます(例:1番目、最初に発音されます) ndは、2で終わる数字で使用されます(例:92番目、92番目と発音) rdは、3で終わる数字で使用されます(例:33番目、33番目と発音) 上記の規則の例外として、11、12、または13で終わるすべての「10」の数字は-thを使用します(たとえば、11番目、11番目と発音、112番目、100番目と発音) t