コードでの平方根
Unicodeエスケープ、HTMLエンティティ、LaTeX、そしてJavaScript、Python、Excelなど数種類の言語で実際に平方根を計算する関数まで。
Unicodeエスケープ & HTMLエンティティ
√はUnicodeコードポイントU+221Aです。ほとんどの言語では、生の文字を貼り付ける代わりにエスケープシーケンスを使って文字列リテラルに直接組み込めます。
"\u221A" // √"\u221a" # √"\u221A" // √√ or √content: "\221A";LaTeX
\sqrtはLaTeX、MathJax、KaTeXで、引数の上にバーがついた正しい根号を表示します — 平方根より上の場合は角括弧の数字を追加してください。
\sqrt{x}\sqrt[3]{x}\sqrt[n]{x}コードで平方根を計算する
エスケープシーケンスは画面に記号を表示するだけで、何も計算しません。ここでは各言語での実際の関数や数式と、25に対する結果を紹介します。
Math.sqrt(25);
// 5import math
math.sqrt(25)
# 5.025 ** 0.5
# 5.0=SQRT(A1)Math.sqrt(25);
// 5.0#include <math.h>
sqrt(25);
// 5.0sqrt(25);
// 5SELECT SQRT(25);
-- 525.0.squareRoot()
// 5.0sqrt(25)
# 5知っておくべき注意点
負の数
JavaScriptとJavaではMath.sqrt(-1)はNaNを返します。Pythonのmath.sqrt(-1)は何も返さずValueErrorを発生させます — 入力が負になる可能性がある場合はtry/exceptで囲むか、複素数の結果が必要ならcmath.sqrt()を使ってください。
整数と浮動小数点数の結果
Math.sqrt()は完全平方数であっても常にfloat/doubleを返します — Math.sqrt(25)は5ではなく5(浮動小数点)です。JavaやCのような静的型付け言語では、結果をintではなくdoubleに格納することを忘れないでください。そうしないと値が切り捨てられます。
精度
浮動小数点の平方根は常に正確とは限りません。ほとんどの言語でsqrt(2) ** 2は2ではなく2.0000000000000004のような値になることがあります — 等値比較の前に丸め処理を行ってください。
記号そのものだけが必要ですか?
コピー形式のページには、プレーンテキスト、Unicodeコードポイント、altコード、表計算ソフトの数式として、すぐに貼り付けられる√が用意されています — コードエディタは不要です。
コピー形式を開くよくある質問
コード内で平方根記号を表すUnicodeエスケープは何ですか?
JavaScript、Java、C#の文字列リテラルでは\u221A(大文字のA)を使います。Pythonでは\u221aを使います(小文字でも大文字と同じ結果になりますが、小文字が慣例的なスタイルです)。どちらも同じ文字√、つまりUnicodeコードポイントU+221Aになります。
JavaScriptで平方根を計算するにはどうすればいいですか?
Math.sqrt(x)を使います — 例えばMath.sqrt(25)は5を返します。JavaScriptのMathオブジェクトは複素数を扱えないため、負の数に対してはNaNを返します。
Pythonで平方根を計算するにはどうすればいいですか?
mathモジュールをインポートしてmath.sqrt(x)を呼び出します。例えばmath.sqrt(25)は5.0を返します。指数演算子25 ** 0.5を使うこともでき、こちらはインポート不要ですがどちらもfloatを返します。負の入力の場合math.sqrt()はValueErrorを発生させるため、複素数の結果が必要な場合はcmath.sqrt()を使ってください。
ExcelやGoogle Sheetsで平方根を求める数式は何ですか?
=SQRT(A1)を使い、A1を計算したいセルや数値に置き換えてください。ExcelとGoogle SheetsはどちらもSQRT()の構文が同じです。セルに√という文字を貼り付けるだけでは表示されるだけで、計算はされません。
平方根のLaTeXコマンドは何ですか?
\sqrt{x}はxの上にバーがついた根号を表示します。立方根やそれ以外のn乗根の場合は、角括弧の引数を追加します。立方根なら\sqrt[3]{x}、任意のn乗根なら\sqrt[n]{x}です。LaTeX、MathJax、KaTeXで使用できます。
Math.sqrt(-1)がエラーではなくNaNを返すのはなぜですか?
JavaScriptのMathオブジェクトは実数のみを扱い、負の数の平方根は虚数になります。エラーを投げる代わりに、Math.sqrt()はNaN(Not a Number)を返すため、1つの不正な値が大きな計算全体をクラッシュさせません — 明示的に処理する必要がある場合はNumber.isNaN()で確認してください。