Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【PHP8.x】sqrt()関数の使い方

sqrt関数の使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

sqrt関数は、指定された数値の平方根(二乗根)を計算する関数です。数学的な計算において、ある数値を二乗すると元の数値になる値を見つける際に利用されます。

この関数は、ただ一つの引数numを受け取ります。numは平方根を計算したい数値を指定します。通常は整数型(int)または浮動小数点数型(float)の値を渡しますが、PHPの型変換の規則に従い、他の型の値が渡された場合も可能な限り数値として解釈されます。

sqrt関数は、計算された平方根の値を浮動小数点数型(float)として返します。例えば、sqrt(9)3.0を返します。

特に注意すべき点として、数学的に実数の範囲で負の数の平方根は定義されません。そのため、もし引数numに負の数を指定した場合、sqrt関数は特別な浮動小数点値であるNaN (Not a Number) を返します。NaNは「数値ではない」ことを示す値であり、計算が有効な実数として結果を出せない場合に用いられます。

sqrt関数は、数値演算を伴う様々なプログラミングタスク、例えば幾何学的な計算や統計処理などで幅広く活用される、PHPの基本的な数学関数の一つです。PHP 8においてもその基本的な動作に変更はありません。

構文(syntax)

1<?php
2echo sqrt(25);
3?>

引数(parameters)

float $num

  • float $num: 平方根を計算したい数値。非負の数である必要があります。

戻り値(return)

float

引数に指定された数値の平方根を浮動小数点数(float)で返します。

サンプルコード

PHP sqrt関数で平方根を計算する

1<?php
2
3declare(strict_types=1);
4
5// 正の数の平方根を計算します。
6$number1 = 16;
7$squareRoot1 = sqrt($number1);
8echo "{$number1} の平方根は {$squareRoot1} です。" . PHP_EOL;
9
10// 平方根が整数にならない数の例です。
11$number2 = 2;
12$squareRoot2 = sqrt($number2);
13echo "{$number2} の平方根は {$squareRoot2} です。" . PHP_EOL;
14
15// 0の平方根を計算します。
16$number3 = 0;
17$squareRoot3 = sqrt($number3);
18echo "{$number3} の平方根は {$squareRoot3} です。" . PHP_EOL;
19
20// 負の数を引数に渡すと、結果は非数 (Not A Number) を意味する NAN になります。
21$negativeNumber = -9;
22$squareRootNaN = sqrt($negativeNumber);
23
24echo "{$negativeNumber} の平方根を計算した結果: ";
25var_dump($squareRootNaN);
26
27?>

PHPのsqrt()関数は、指定した数値の正の平方根を計算して返す関数です。

この関数は引数を1つ取ります。引数には、平方根を求めたい数値を指定します。引数に渡された数値の平方根が、戻り値として浮動小数点数(float型)で返されます。

サンプルコードでは、いくつかの例を示しています。まず、16のような正の数を引数に渡すと、その平方根である4が正しく計算されます。次に、2のように平方根が整数にならない数値を渡した場合でも、1.414... のような小数点を含む近似値が返されます。また、0の平方根は0となります。

注意すべき点は、負の数を引数に渡した場合です。-9のように負の数の平方根は実数の範囲では計算できないため、エラーにはならず、計算結果として「非数(Not A Number)」を意味する特殊な値 NAN が返されます。これは計算が不可能であることを示すための値です。

sqrt()関数は、引数に指定した数値の正の平方根を計算します。引数には整数も渡せますが、戻り値は常にfloat(浮動小数点数)型になる点に注意してください。例えばsqrt(16)の結果は4ですが、データ型はfloatです。最も重要なのは、負の数を引数に渡した場合の挙動です。この場合、エラーにはならず、計算結果が「非数 (Not A Number)」を意味するNANという特殊な値になります。NANかどうかを判定するには、is_nan()関数を使います。予期せぬ動作を防ぐため、sqrt()関数に値を渡す前に、その値が0以上であることを確認する処理を入れるとより安全なコードになります。

PHPのsqrt()で平方根を計算する

1<?php
2
3/**
4 * 与えられた数値の平方根を計算し、その結果を出力するサンプルコードです。
5 * sqrt() 関数は、引数として渡された数値の正の平方根を返します。
6 * 引数と戻り値は float 型です。
7 */
8function calculateAndDisplaySquareRoot(): void
9{
10    echo "PHPの sqrt() 関数とは?\n";
11    echo "==================================\n";
12    echo "sqrt() 関数は、指定された数値の平方根(スクエア・ルート)を計算します。\n";
13    echo "例えば、sqrt(9) は 3 を返します。\n\n";
14
15    // 例1: 正の整数の平方根を計算
16    $number1 = 9.0;
17    $squareRoot1 = sqrt($number1); // 9の平方根は3
18    echo "数値 {$number1} の平方根は: {$squareRoot1}\n";
19
20    // 例2: 小数の平方根を計算
21    $number2 = 25.0;
22    $squareRoot2 = sqrt($number2); // 25.0の平方根は5.0
23    echo "数値 {$number2} の平方根は: {$squareRoot2}\n";
24
25    // 例3: 一般的な数の平方根を計算
26    $number3 = 2.0;
27    $squareRoot3 = sqrt($number3); // 2の平方根は約1.414...
28    echo "数値 {$number3} の平方根は: {$squareRoot3}\n";
29
30    // 例4: 負の数の平方根を計算
31    // 負の数の平方根は実数ではないため、PHPのsqrt()関数は "NaN" (Not a Number) を返します。
32    $number4 = -4.0;
33    $squareRoot4 = sqrt($number4);
34    echo "数値 {$number4} の平方根は: {$squareRoot4}\n";
35    echo "(注意: 負の数の平方根は実数ではないため、NaN (Not a Number) が返されます。)\n";
36}
37
38// 関数を実行して結果を表示
39calculateAndDisplaySquareRoot();
40
41?>

このPHPサンプルコードは、組み込み関数である sqrt() の使い方を解説するものです。sqrt() 関数は、引数として渡された数値の「正の平方根」を計算し、その結果を返します。

関数に平方根を求めたい数値を渡すと、その計算結果が戻り値として得られます。引数と戻り値はどちらも浮動小数点数(float)型です。サンプルコードでは、まず 925.0 のような正の数の平方根を計算し、それぞれ 35.0 という正しい結果が得られることを示しています。

また、このコードの重要な点は、負の数を引数として渡した場合の挙動も示していることです。実数の世界では負の数の平方根は定義できないため、sqrt(-4.0) のように計算しようとすると、PHPは「数値ではない」ことを示す特別な値 NaN (Not a Number) を返します。このように、このサンプルは sqrt() 関数の基本的な使い方と注意点を学ぶ上で非常に役立ちます。

sqrt()関数を使用する際は、引数に負の数を渡すと計算結果がNAN (Not a Number) という特殊な値になる点に注意が必要です。NANは数値として扱えないため、その後の計算で意図しないエラーを引き起こす原因になります。ユーザーからの入力値などを扱う場合は、事前に値が0以上であるかを確認するか、is_nan()関数で計算結果を検証することで、より安全なプログラムになります。また、この関数の戻り値は必ず浮動小数点数(float)型です。例えばsqrt(9)の結果は、整数の3ではなく浮動小数点数の3.0となることを覚えておきましょう。

PHP sqrt(3) で平方根を計算する

1<?php
2
3/**
4 * 指定された数値の平方根を計算し、結果を表示するサンプルコード。
5 *
6 * sqrt関数は、引数として与えられた数値の平方根 (square root) を計算します。
7 * PHP 8では、引数には float 型を推奨し、戻り値も float 型となります。
8 */
9
10// 平方根を計算したい数値を定義します。
11// キーワード「3」に最も関連性の高い例として、3を使用します。
12$numberToCalculate = 3.0; // float型で指定することが推奨されますが、整数値も自動的に変換されます。
13
14// PHPの組み込み関数である sqrt() を使用して、平方根を計算します。
15$squareRootResult = sqrt($numberToCalculate);
16
17// 計算結果を分かりやすいメッセージとともに表示します。
18echo "数値 {$numberToCalculate} の平方根は {$squareRootResult} です。\n";
19
20?>

PHPのsqrt関数は、指定された数値の平方根を計算するための組み込み関数です。システムエンジニアを目指す初心者の方でも、数値計算を扱う際に利用する機会があるでしょう。

この関数は、引数として平方根を求めたい数値を一つ受け取ります。PHP 8では、引数にはfloat型(浮動小数点数)を指定することが推奨されており、サンプルコードでは3.0のように記述しています。整数値を渡した場合でも、自動的にfloat型に変換されて処理されますのでご安心ください。

sqrt関数は計算結果として、引数で与えられた数値の平方根をfloat型で返します。この戻り値を別の変数に代入することで、後続の処理や画面表示に利用できます。

サンプルコードでは、まず$numberToCalculateという変数に3.0を定義し、その変数をsqrt()関数の引数として渡して平方根を計算しています。計算された結果は$squareRootResult変数に格納され、最後にecho文を使って「数値 3.0 の平方根は 1.73205081 です。」のように、分かりやすい形で画面に出力されます。このように、sqrt関数を使えば、簡単な記述で数値の平方根を正確に求めることが可能です。

sqrt関数は、負の数値を引数に与えると、NAN (Not A Number) を返します。これはエラーではありませんが、意図しない結果を避けるため、引数は0以上の値であることを事前に確認するよう心がけましょう。PHP 8では引数にfloat型が推奨されますが、整数値も自動的にfloatへ変換されます。コードの意図を明確にするには、3.0のように明示的にfloat型で指定するのが良いでしょう。戻り値は常にfloat型です。計算結果がNANであるかどうかの確認にはis_nan()関数が利用できます。

PHPのsqrt()関数で平方根を計算する

1<?php
2
3/**
4 * 指定された数値の平方根を計算し、結果を表示する関数です。
5 *
6 * システムエンジニアを目指す初心者の方へ:
7 * PHPの `sqrt()` 関数は、与えられた数値の正の平方根(ルート)を計算します。
8 * 例えば、`sqrt(25)` は `5` を返します。
9 * 引数には `float` 型の数値(小数点を含む数値)を指定しますが、
10 * 整数の数値(例: `144`)を渡してもPHPが自動的に `float` 型に変換して処理します。
11 * 負の数を渡すと、実数ではないため `NaN` (Not a Number: 数値ではない) という特殊な値が返されます。
12 *
13 * @param float $number 平方根を計算したい数値
14 * @return void この関数は値を返さず、結果を直接出力します。
15 */
16function calculateAndDisplaySquareRoot(float $number): void
17{
18    // sqrt() 関数を使って平方根を計算します。
19    // PHP 8では、引数と戻り値が float 型であることが明示されています。
20    $squareRoot = sqrt($number);
21
22    echo "元の数値: " . $number . "\n";
23    echo "平方根: " . $squareRoot . "\n";
24
25    // 計算結果がNaN(Not a Number)であるかをチェックし、負の数の平方根に関する補足説明をします。
26    if (is_nan($squareRoot)) {
27        echo "  (注: 負の数の平方根は実数ではないため、'NaN' (Not a Number) と表示されます)\n";
28    }
29    echo "\n"; // 結果の間に改行を入れて見やすくします
30}
31
32// --- サンプルコードの実行例 ---
33
34// 正の数の平方根を計算する例
35calculateAndDisplaySquareRoot(25.0);
36
37// 整数を渡した場合の例 (PHPが自動的にfloatに変換します)
38calculateAndDisplaySquareRoot(144);
39
40// 小数点を含む数の平方根を計算する例
41calculateAndDisplaySquareRoot(2.25);
42
43// 負の数の平方根を計算する例 (NaNが返されます)
44calculateAndDisplaySquareRoot(-9.0);
45
46?>

PHPのsqrt()関数は、指定された数値の正の平方根(ルート)を計算するために使用される基本的な関数です。この関数は、extensionとしてPHPに組み込まれており、PHP 8では引数も戻り値もfloat型であることが明示されています。

引数には平方根を計算したい数値をfloat型で渡します。例えば25.0のような小数点を含む数値ですが、144のような整数を渡した場合でも、PHPが自動的にfloat型に変換して処理を行いますので、特に意識する必要はありません。戻り値は、計算された平方根をfloat型で返します。

特に留意すべき点として、負の数を引数に渡した場合は、実数ではないためNaN(Not a Number: 数値ではない)という特殊な値が返されます。

サンプルコードでは、calculateAndDisplaySquareRootという関数内でsqrt()関数を用いて、様々な数値の平方根を計算しています。25.01442.25のような正の数や整数に対しては、それぞれ5.012.01.5といった正しい平方根がfloat型で出力されます。一方、-9.0のように負の数を渡すと、NaNが表示され、実数ではない場合の挙動を明確に確認できます。このように、sqrt()関数は数値計算において非常に役立つ機能です。

PHPのsqrt()関数は、指定された数値の正の平方根を計算し、float型で返します。引数にはfloat型が期待されますが、整数を渡してもPHPが自動的にfloat型に変換して処理しますのでご安心ください。ただし、負の数を引数として渡すと、実数の平方根ではないため、NaN (Not a Number: 数値ではない) という特殊な値が戻されます。このNaNは通常の数値とは異なるため、計算結果を扱う際はis_nan()関数を使ってNaNかどうかを必ずチェックし、適切な処理を行うようにしましょう。これにより、予期せぬエラーを防ぎ、安全で堅牢なプログラムを作成できます。

関連コンテンツ

関連プログラミング言語