【入門編】 べき乗と平方根・立方根 – JavaScript実践ガイド

みなさん、こんにちは!日夜Web開発の現場でコードと格闘している、チーフアーキテクトの「おやっさん」です。

JavaScriptを学び始めているあなた、日々コツコツとコードを書いていて本当に素晴らしいですね!新しいことを学ぶのは、それだけで大きな一歩です。

ところで、プログラムを書いていると、避けて通れないのが「数値の計算」です。「えっ、数学? 学生時代に苦手だったから、聞いただけで頭が痛くなりそう……」と思ったあなた。大丈夫ですよ、全く心配いりません!

JavaScriptの世界には、面倒で複雑な計算をあなたの代わりに一瞬でやってくれる、とても優秀な「電卓(道具)」がたくさん用意されています。あなたはただ、その道具の使い方を覚えるだけでいいんです。

今回は、数ある計算の中でも、グラフィックの制御やアニメーション、ちょっとしたお買い物サイトの計算などでよく使う「べき乗(累乗)」「平方根(ルート)」「立方根(3乗根)」について、どこよりも優しく、身近な例え話を使って紐解いていきましょう!

エディタを片手に、リラックスして読んでみてくださいね。

—

1. 同じ数を何度もかける!「べき乗(累乗)」

まずは「べき乗」です。名前は難しそうですが、要するに「同じ数を何回も掛け算すること」です。

たとえば、お買い物をしているシーンを想像してみてください。
「1個2円の不思議なアメがあります。このアメは、1日経つと2倍(2×2=4円)になり、2日経つとさらに2倍(2×2×2=8円)になり、3日経つとさらに2倍(2×2×2×2=16円)になります……」

このように、同じ「2」を何度も掛け合わせる計算が「べき乗」です。
JavaScriptでこれを計算する方法は、新旧合わせて2つのやり方があります。

方法①:昔ながらの頼れる道具 `Math.pow()`

まずは、昔から使われている `Math.pow()` という道具(メソッド)です。
`pow` は「Power(力、べき乗)」の略です。

// Math.pow(掛け合わせたい数, 何回かけるか)
const candyPrice = Math.pow(2, 3); // 2を3回かける(2 2 2)

console.log(candyPrice); // 結果は「8」になります!

これは「フードプロセッサー」のようなものです。「2」と「3」という材料を放り込むと、中で自動的に `2 × 2 × 2` を計算して、きれいに整えられた `8` を取り出してくれます。

方法②:今の大本命!直感的で書きやすい “(べき乗演算子)

実は、2016年にJavaScriptがパワーアップした際、もっと直感的に書ける``(アスタリスク2つ)という記号が登場しました。

足し算の `+` や引き算の `-` と同じ感覚で使えます。

// 掛け合わせたい数 何回かけるか
const doubleSize = 2 3; // 2の3乗(2 2 2)

console.log(doubleSize); // 結果はやっぱり「8」です!

現場でも、最近はほとんどのエンジニアがこの “ を使っています。見た目がすっきりしていて、ノートに書く数式に近くて可愛いですよね。

—

2. 面積から1辺の長さを割り出す!「平方根(ルート)」

次は、べき乗の「逆」の計算をしてみましょう。それが「平方根(へいほうこん)」、いわゆる「ルート」です。

例え話として、「正方形のクッキー」を思い浮かべてください。
あなたの手元に、面積が「9平方センチメートル」の正方形のクッキーがあります。
「このクッキーの、たて(またはよこ)の1辺の長さは何センチだろう?」と考えたとします。

「同じ数を2回かけて『9』になる、元の数はなーんだ?」というクイズですね。答えは「3(3×3=9)」です。
この「3」を見つけ出す計算を、JavaScriptでは `Math.sqrt()` という道具で行います。

`sqrt` は「Square Root(平方根)」の略です。

// Math.sqrt(元になる面積)
const sideLength = Math.sqrt(9); // 同じ数を2回かけて「9」になる数を探す

console.log(sideLength); // 結果は「3」になります!

💡 つまずきがちなポイント:「半分にするのとは違うの?」

ここでプログラミング初心者の多くが、ふとこう思ってしまいます。
「あれ? 2で割る(半分にする)のとは違うんだっけ?」

大丈夫、ここ、すごくつまずきやすいところです! ゆっくり整理しましょう。

  • 9を半分(2で割る)にすると: `4.5` です。
  • 9の平方根(同じ数を2回かけて9になる数)は: `3` です。

「半分にする」のではなく、「自分自身を掛け合わせてその数になるパートナー(相棒)を探す」のが平方根です。そう覚えると、スッキリしませんか?

—

3. 立体的な箱から1辺の長さを探す!「立方根(3乗根)」

最後は、さらに一歩進んで「立方根(りっぽうこん)」です。

今度はクッキーではなく、「正六面体(サイコロ型)のプレゼントボックス」をイメージしてください。
この箱の体積(中身の広さ)は「27立方センチメートル」です。
「この箱の、1辺の長さは何センチだろう?」と考えます。

今度のクイズは、「同じ数を3回かけて『27』になる、元の数はなーんだ?」です。
答えは「3(3×3×3=27)」ですね。

この「3」を一瞬で探してくれるのが、`Math.cbrt()` という道具です。
`cbrt` は「Cube Root(立方根・3乗根)」の略。Cube(キューブ)は「立方体」のことですね。

// Math.cbrt(元になる体積)
const boxSideLength = Math.cbrt(27); // 同じ数を3回かけて「27」になる数を探す

console.log(boxSideLength); // 結果は「3」になります!

3Dのアニメーションを作ったり、画面上の立方体のサイズを計算したりするときに、この `Math.cbrt()` がそっとあなたを助けてくれます。

—

4. 現場の知恵:1つにまとめたサンプルコードで遊んでみよう!

ここまでの道具たちを、1つのファイルにまとめて動かせるサンプルコードを用意しました。
ぜひエディタに貼り付けて、数字を色々変えて遊んでみてください。

「もしここを4に変えたら、どうなるかな?」と実験してみるのが、プログラミングが一番早く上達する秘訣ですよ!

// ==========================================
// JavaScript べき乗・平方根・立方根の実験室
// ==========================================

// 1. べき乗(掛け合わせる)
const base = 5;
const exponent = 3;

// おなじみの 演算子を使って、5の3乗(5 5 5)を計算
const powerResult = base exponent;
console.log(`${base} の ${exponent} 乗は: ${powerResult} です!`); // 125

// 2. 平方根(2乗してその数になる相棒探し)
const area = 64; // 例えば、面積が64の正方形
const side = Math.sqrt(area);
console.log(`面積が ${area} の正方形の1辺の長さは: ${side} です!`); // 8

// 3. 立方根(3乗してその数になる相棒探し)
const volume = 125; // 例えば、体積が125のサイコロ
const edge = Math.cbrt(volume);
console.log(`体積が ${volume} のサイコロの1辺の長さは: ${edge} です!`); // 5

—

おやっさんからの温かいアドバイス

最後に、現場で戦う私から、ちょっとした安心材料をお渡しします。

JavaScriptで小数の計算(例えば `0.1 + 0.2` など)をすると、パソコンの仕組み上の都合で、たまに `0.30000000000000004` のような「ものすごく細かいおまけ(誤差)」がついてしまうことがあります。
これは「浮動小数点数の丸め誤差」と呼ばれるもので、あなたのコードが間違っているわけではありません。

もし、平方根やべき乗の計算をしていて、おかしな小数が出てきても、「あ、これが噂のお茶目な誤差か!」と笑い飛ばして大丈夫。実務では `Math.round()`(四捨五入)などの道具を使って、優しく整えてあげれば解決します。

焦らず、一歩ずつ、これらの便利な道具たちと仲良くなっていってくださいね。

あなたが書くこれからのコードが、誰かのWebサイトを素敵に彩ることを心から応援しています。またいつでも頼ってくださいね!

コメント

タイトルとURLをコピーしました