パーセント記号

パーセンテージを表すときに使用する記号
主要な無次元量単位
1単位指数
1 %0.0110−2
1 0.00110−3
1 0.000110−4
1 ppm0.00000110−6
1 ppb0.00000000110−9
1 ppt0.00000000000110−12
1 ppq0.00000000000000110−15
% ‰ ‱

パーセント記号 (%) は、パーセンテージ(百分率)を表すときに使用する記号で、数字の値の後ろに表記することで 100 分の 1 を表す。

同じような記号にパーミル記号 (‰) もあり、この記号は千分率を表し、1000 分の 1 を意味する。また、ほとんど見かけることはないが、10000 分の 1 を意味するパーミリアド記号()も存在する。

由来

per cento

「p100」の用例。1339年。
「PCº」の用例。長い横棒は変形したCの一部。1425年。
「%」を正立させた記号の用例。1648年。

イタリア語の「per cento」(100あたり)に由来するとする説。過程が異なるバリエーションがあるが、以下では D.E.スミス による説明を中心にのべる。

古くは専用のパーセント記号はなく、「per cento」から、「per 100」「p 100」「p cento」などと書かれていた[1]

1425年ごろ、「PC」に「cento」の最終文字「o」を(序数標識「º」のように)小さな丸として添えた記号が現れた[2]

1650年ごろ、「Cº」の部分が変形し「%」を正立させたような記号になり[3]、さらに「P」が脱落した[4]

1925年ごろには、斜め線を使った形( )が現代的とされた[5]

このほか、若干異なる次のような説明もある。

  • 「cento」の略記「c/o」に由来[6]
  • 「pc」の変形[6]

/100

「/100」を変形させ、「/1」を1本の線に略して位置をずらし「%」とした[6]

スペース

数字と%の記号の間にスペースを入れる流儀と入れない流儀がある[7]

スペースを入れる

国際単位系の規則では、数値と単位記号(°C、%を含めて)の間にスペースを入れると規定している[8] [9]。(ただし、唯一の例外として、角度の度分秒(° ’ ”)の場合は、スペースを入れない[10]。)
  • (財)日本適合性認定協会[11]

スペースを入れない

自然言語での用途

パーセント

パーセントを表す。

  • 消費税 10 %
  • 視聴率 15 %
  • 定価の 20 % 引
  • 濃度 5.5 % の食塩水
  • 120 × 50 % = 60 (数学的には不適切だが初等教育では使われることがある[独自研究?]

コマーシャル・マイナス

漢数字大字のように、ミスや改竄を防ぐためマイナス記号 (−) の代わりに使われる。

ただしこの記号は「˙/.」や「./.」の形にグリフされることも多く、Unicode では、この用途には別の符号点 U+2052 が用意されている。

コンピュータでの用途

ASCIIコードに収録されていて入出力しやすいことから、プログラミング言語CUIシェルなどで、本来の意味を超えて特別な意味を持たせていることがある。

書式設定

C言語の書式付入出力関数printf など)では書式指定を示す。たとえば、%d で整数、%c で 1 文字などの出力となる。他の言語でも同様のものが見られる。

剰余演算子

剰余演算子として使用する言語もある。C 言語の例:

int a = 25 % 7;

25 を 7 で割った余り (剰余)の 4 が a に代入される。C 言語では整数型のみだが、Java では実数も扱うことができる。

環境変数

MS-DOS や Microsoft Windows などでは、標準のコマンドラインインタプリタにおいて環境変数を表す記号として使用されている。

echo %PATH%

「%PATH%」が環境変数 PATH の値に置換された後に echo コマンドが実行されて PATH の値が表示される。

その他のコンピュータでの用途

  • URL内のASCII外の文字や、ASCII内でも一部の記号はそのまま送信することができないので、%xx(xxは16進2桁)という形に「パーセントエンコード」して送信される。RFC 3986では、このエンコード方式が「Percent-Encoding」と呼ばれている。
  • MS-DOS/Windowsのシェル(command.com, cmd.exe)のFor文では、「%+英字1文字(例: %i)」でイテレータ変数を表す。また、バッチファイル内では、「%+数字1文字(例: %1)」で引数を表す。
  • crontab では、行内の%はコマンドの終了を意味し、%以降は標準入力からの入力になる。
  • MATLAB などでは、%から行末までがコメントとなる。
  • データベース言語 SQL では、ワイルドカード文字として、「長さ0文字以上の任意の文字列」を意味する。
  • IPv6アドレスリンクローカルアドレスで、インターフェースを明示するときに使うゾーンインデックスとアドレスとの区切りに使用する。IPv6アドレス#リンクローカルアドレスとゾーンインデックスを参照。
  • TeX やそれに準ずる組版システムの原稿中では,当該記号に続く文字列及び改行文字は存在しないものと見做されて処理に移る。

符号位置

記号UnicodeJIS X 0213文字参照名称
%U+00251-1-83%
%
パーセント記号
٪U+066A-٪
٪
パーセント記号
(アラビア文字)
U+20301-2-83‰
‰
‰
パーミル記号
U+2031-‱
‱
パーミリアド記号
U+2052-⁒
⁒
コマーシャルマイナス記号
U+332B1-13-45㌫
㌫
組文字パーセント
U+FF051-1-83%
%
パーセント記号
(全角)

文献

出典

関連項目