From Surf Wiki (app.surf) — the open knowledge base
Unary operation
Mathematical operation with only one operand
Mathematical operation with only one operand
In mathematics, a unary operation is an operation with only one operand, i.e. a single input. This is in contrast to binary operations, which use two operands. An example is any function , where A is a set; the function is a unary operation on A.
Common notations are prefix notation (e.g. ¬, −), postfix notation (e.g. factorial n!), functional notation (e.g. sin x or sin(x)), and superscripts (e.g. transpose A). Other notations exist as well, for example, in the case of the square root, a horizontal bar extending the square root sign over the argument can indicate the extent of the argument.
Examples
Absolute value
Obtaining the absolute value of a number is a unary operation. This function is defined as |n| = \begin{cases} n, & \mbox{if } n\geq0 \ -n, & \mbox{if } n where |n| is the absolute value of n.
Negation
Negation is used to find the negative value of a single number. Here are some examples:
:-(3) = -3
:-( -3) = 3
Factorial
For any positive integer n, the product of the integers less than or equal to n is a unary operation called factorial. In the context of complex numbers, the gamma function is a unary operation extension of factorial.
Trigonometry
In trigonometry, the trigonometric functions, such as \sin, \cos, and \tan, can be seen as unary operations. This is because it is possible to provide only one term as input for these functions and retrieve a result. By contrast, binary operations, such as addition, require two different terms to compute a result.
Examples from programming languages
Below is a table summarizing common unary operators along with their symbols, description, and examples:
| Operator | Symbol | Description | Example |
|---|---|---|---|
| Increment | `++` | Increases the value of a variable by 1 | `x = 2; ++x; // x is now 3` |
| Decrement | `--` | Decreases the value of a variable by 1 | `y = 10; --y; // y is now 9` |
| Unary Plus | `+` | Indicates a positive value | `a = -5; b = +a; // b is -5` |
| Unary Minus | `-` | Indicates a negative value | `c = 4; d = -c; // d is -4` |
| Logical NOT | `!` | Negates the truth value of a Boolean expression | `flag = true; result = !flag; // result is false` |
| Bitwise NOT | `~` | Bitwise negation, flips the bits of an integer | `num = 5; result = ~num; // result is -6` |
JavaScript
In JavaScript, these operators are unary:
- Increment:
++x,x++ - Decrement:
--x,x-- - Positive:
+x - Negative:
-x - Ones' complement:
~x - Logical negation:
!x
C family of languages
In the C family of languages, the following operators are unary:
- Increment:
++x,x++ - Decrement:
--x,x-- - Address:
&x - Indirection:
*x - Positive:
+x - Negative:
-x - Ones' complement:
~x - Logical negation:
!x - Sizeof:
sizeof x, sizeof(type-name) - Cast:
(*type-name*) *cast-expression*
Unix shell (Bash)
In the Unix shell (Bash/Bourne Shell), e.g., the following operators are unary:
- Pre and Post-Increment:
++$x,$x++ - Pre and Post-Decrement:
--$x,$x-- - Positive:
+$x - Negative:
-$x - Logical negation:
!$x - Simple expansion:
$x - Complex expansion:
${#x}
PowerShell
In the PowerShell, the following operators are unary:
- Increment:
++$x,$x++ - Decrement:
--$x,$x-- - Positive:
+$x - Negative:
-$x - Logical negation:
!$x - Invoke in current scope:
.$x - Invoke in new scope:
&$x - Cast:
[*type-name*] *cast-expression* - Cast:
+$x - Array:
,$array
References
References
- Weisstein, Eric W.. "Unary Operation".
- Weisstein, Eric W.. "Binary Operation".
- (20 March 2024). "Unary Operators in Programming".
- "Unary Operators".
- "C/C++ Language Reference".
- (2 March 2014). "Unary Operators - C Tutorials - Sanfoundry".
- "Shell Arithmetic (Bash Reference Manual)". GNU Operating System.
- (26 October 2023). "Unary Operators in Bash".
- (3 September 2021). "Expressions - PowerShell". Microsoft.
This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page.
Ask Mako anything about Unary operation — get instant answers, deeper analysis, and related topics.
Research with MakoFree with your Surf account
Create a free account to save articles, ask Mako questions, and organize your research.
Sign up freeThis content may have been generated or modified by AI. CloudSurf Software LLC is not responsible for the accuracy, completeness, or reliability of AI-generated content. Always verify important information from primary sources.
Report