Arithmetic operators in C# are used to perform mathematical calculations like Addition, Subtraction, Multiplication, Division, and Modulus. Basically, these Arithmetic operators work on two operands. Hence these are called binary operators.
Let us see an example to clearly understand them. The below table shows the list of available Arithmetic operators and explains their operations.
Arithmetic Operators | Example |
---|---|
+ Addition | 3 + 2 = 5 |
– Subtraction | 3 – 2 = 1 |
* Multiplication | 3 * 2 = 6 |
/ Division | 3 / 2 = 1 |
% Modulus | 3 % 2 = 1 |
C# Arithmetic Operators Example
In the following C# example, we are using an integer variable x and double variable y as two operands of the operator and performing arithmetic operations on them.
When applying division/operator, we must keep in mind the following points.
- The division of any number by zero gives an application error. Ex: x/0
- By default, the result will always round to its nearest whole number. Ex: 11/2 gives 5.
- Variables must be of the same data type (int-int, double-double, etc.) unless they can implicitly convert. In Implicit conversion, the System allows conversion in type-safe, and no data can be lost.
- If we want the accurate value of division, for ex: 3/2 = 1.5, where 3 and 2 are integer values, we have to typecast the result to float type explicitly.
using System; class Arithmetic_Operations { static void Main() { int x = 10; int y = 8; int add, sub, multi, div_int, modulus; float div_float; add = x+y; Console.WriteLine("{0} + {1} = {2}", x, y, add); sub = x-y; Console.WriteLine("{0} - {1} = {2}", x, y, sub); multi = x*y; Console.WriteLine("{0} * {1} = {2}", x, y, multi); div_int = x/y; Console.WriteLine("{0} / {1} = {2}", x, y, div_int); div_float = (float)x/y; Console.WriteLine("{0} / {1} = {2}", x, y, div_float); modulus = x%y; Console.WriteLine("{0} % {1} = {2}", x, y, modulus); } }
In the above example, integer variables x and y are the two operands on which we are applying arithmetic operators(+, -, *, /, %).
Coming to the accurate value of 10/8, we have explicitly converted to type float and stored the C# result in a float variable div_float.