Percent sign


The percent sign is the symbol used to indicate a percentage, a number or ratio as a fraction of 100. Related signs include the permille sign and the permyriad sign , which indicate that a number is divided by one thousand or ten thousand, respectively. Higher proportions use parts-per notation.

Correct style

Form and spacing

English style guides prescribe writing the percent sign following the number without any space between. However, the International System of Units and ISO 31-0 standard prescribe a space between the number and percent sign, in line with the general practice of using a non-breaking space between a numerical value and its corresponding unit of measurement.
Other languages have other rules for spacing in front of the percent sign:
It is often recommended that the percent sign only be used in tables and other places with space restrictions. In running text, it should be spelled out as percent or per cent. For example, not "Sales increased by 24% over 2006", but rather "Sales increased by 24 percent over 2006".

Evolution

Prior to 1425 there is no known evidence of a special symbol being used for percentage. The Italian term per cento, "for a hundred", was used as well as several different abbreviations. Examples of this can be seen in the 1339 arithmetic text depicted below. The letter p with its descender crossed by a horizontal or diagonal strike conventionally stood for per, por, par, or pur in Medieval and Renaissance palaeography.
At some point a scribe of some sort used the abbreviation "pc" with a tiny loop or circle This appears in some additional pages of a 1425 text which were probably added around 1435. This is shown below.
The "pc" with a loop eventually evolved into a horizontal fraction sign by 1650 and thereafter lost the "per".
In 1925 D.E. Smith wrote, "The solidus form is modern."

Usage

Encodings

Unicode

The Unicode code points are:
The ASCII code for the percent character is 37, or 0x25 in hexadecimal.

In computers

Names for the percent sign include percent sign, mod, grapes , and the humorous double-oh-seven.
In computing, the percent character is also used for the modulo operation in programming languages that derive their syntax from the C programming language, which in turn acquired this usage from the earlier B.
In the textual representation of URIs, a % immediately followed by a 2-digit hexadecimal number denotes an octet specifying a character that might otherwise not be allowed in URIs.
In SQL, the percent sign is a wildcard character in "LIKE" expressions, for example SELECT * FROM table WHERE fullname LIKE 'Lisa %' will fetch all records whose names start with "Lisa ".
In TeX and PostScript, and in GNU Octave and MATLAB, a % denotes a line comment.
In BASIC, a trailing % after a variable name marks it as an integer.
In Perl % is the sigil for hashes.
In many programming languages' string formatting operations, the percent sign denotes parts of the template string that will be replaced with arguments. In Python and Ruby the percent sign is also used as the string formatting operator.
In the command processors COMMAND.COM and CMD.EXE, %1, %2,... stand for the first, second,... parameters of a batch file. %0 stands for the specification of the batch file itself as typed on the command line. The % sign is also used similarly in the FOR command.
%VAR1% represents the value of an environment variable named VAR1. Thus:
set PATH=c:\;%PATH%
sets a new value for PATH, that being the old value preceded by "c:\;".
Because these uses give the percent sign special meaning, the sequence %% is used to represent a literal percent sign, so that:
set PATH=c:\;%%PATH%%
would set PATH to the literal value "c:\;%PATH%".
In the C Shell, % is part of the default command prompt.

In linguistics

In linguistics, the percent sign is prepended to an example string to show that it is judged well-formed by some speakers and ill-formed by others. This may be due to differences in dialect or even individual idiolects. This is similar to the asterisk to mark ill-formed strings, the question mark to mark strings where well-formedness is unclear, and the number sign to mark strings that are syntactically well-formed but semantically nonsensical.