# Arithmetic Operations in a Programming Language

## Arithmetic Operations

• Addition: It is represented by the `+` operator. This operation adds two operands together. For example, `a + b` would add the values of `a` and `b`.

• Subtraction: Represented by the `-` operator, this operation subtracts one operand from another. For example, `a - b` would subtract the value of `b` from `a`.

• Multiplication: This is depicted by the `*` operator. In an expression like `a * b`, the value of `a` would be multiplied by `b`.

• Division: The `/` operator is used for division. `a / b` would divide the value of `a` by `b`, yielding the quotient.

• Modulo: This operation, represented by the `%` symbol, gives the remainder after integer division. For example, `a % b` returns the remainder after `a` is divided by `b`.

• Increment: The `++` operator increases the value of a variable by 1. If `a` is a variable, `a++` increases its value by 1.

• Decrement: Similarly, the `--` operator reduces the value of a variable by 1. The operation `a--` would decrease the value of variable `a` by 1.

## Order of Operations

Emphasis must be made on the order of operations, usually remembered through the acronym PEMDAS:

• Parentheses: The highest priority is given to expressions in parentheses.
• Exponents: Next in line are exponents, which include powers and square roots, etc.
• Multiplication and Division: These are next in the precedence order. They are processed from left to right.
• Addition and Subtraction: These operations have the lowest priority and are also performed from left to right.

## Casting and Type Conversion

Sometimes, you might need to perform operations with operands of different data types. In this case, you will need to use type casting:

• Implicit Casting: The programming language automatically converts one data type to another without the programmer’s intervention.
• Explicit Casting: The programmer uses specific functions or methods to convert the data type.

## Unary and Binary Operations

• Unary Operations: These operations only involve one operand. Examples include increment (`++`) and decrement (`--`) operations.
• Binary Operations: These operations involve two operands. Addition, subtraction, multiplication, division, and modulo are binary operations.