ホームページ >ウェブフロントエンド >jsチュートリアル >Codewars - 初心者向けシリーズ #um の数字
ご挨拶
このシリーズでは、Codewars の課題と私の思考プロセスを投稿しています。私は可能な限り JS と Node 18 を使用しています。明確にするために、私はそれらを公正に使用しています。
それでは、このシリーズの次は Sum of Numbers です。この特定の問題では、コーディングというよりは数学です。面積を計算する必要があります。たとえば、このグラフでは、-5 から 4 までのすべての値が表示されます。
必要に応じて統合を使用できますが、より簡単な方法があります。線形関数を扱っているため、中央値を検索し、範囲を乗算できます。
したがって、その方程式をコードに挿入するだけで済みます。次のように始まります:
function getSum(a, b) { //Good luck! }
function getSum(a, b) { let sum = (b ** 2 - a ** 2 + b + a ) / 2 ; return sum; }
私たちはそれをテストし、次のことを行います:
でも、なぜでしょうか?方程式が正しく簡略化されていることはわかっているので... ああ。これが問題です:
getSum(a, b)
(a,b) はまさにその順序です。入力が (-5,4) の場合は機能しますが、(4,-5) の場合は機能しません。修理?どちらの状況でも「if」ステートメントをコーディングできます。そんなことはしませんけどね。これをやります:
if (a > b){ let c = a; a = b; b = c; }
それで、すべてをまとめました。
function getSum(a, b) { if (a > b){ let c = a; a = b; b = c; } let sum = (b ** 2 - a ** 2 + b + a ) / 2 ; return sum; }
ややまともで読みやすい。
キャー。水を飲みましょう???
前
以上がCodewars - 初心者向けシリーズ #um の数字の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。