# A-level Computing/AQA/Paper 1/Fundamentals of programming/Arithmetic operations

Programming languages provide a basic set of operators to calculate simple arithmetic.
Let's look at a short example of arithmetic operations before we jump into the operators themselves.
In this example we will also be using some basic variables. In VB.NET the Dim operator creates the variable, whilst in Python you can simply assign the value to the variable.
| VB.NET | Python |
| Dim Commission As Single Dim Sales As Single Sales = 3142.51 Commission = 0.3 * Sales ' Calculate 30% commission. | Sales = 3142.51 Commission = 0.3 * Sales # Calculate 30% commission. |
First, we set the total Sales to 3142.51.
The * operator calculates multiplication, so line 4 is equivalent to multiplying 0.3 and Sales together. Sales is 3142.51, so our result should be the product of 0.3 and 3142.51, and stored in Commission.

## Why the funny symbols?

With the exception of addition and subtraction, the symbols used are different to the ones used in real life. This is simply because the other symbols are not available on a standard keyboard (try and find ÷ ≠ m² on yours!) or the symbol is in the alphabet and can be used for naming a variable (x).

## Addition

This adds two numbers together, and is denoted by the "+" symbol. If strings are involved it may also do String concatenation, that means sticking the two strings together. Examples:
| VB.NET | Python |
| x = 7 + 2 ' Results in 9. x = 25 + -4 ' Results in 21. Dim StringA As String StringA = "A string" + "Another string" ' Results in "A stringAnother string" | x = 7 + 2 # Results in 9. x = 25 + -4 # Results in 21. StringA = "A string" + "Another string" # Results in "A stringAnother string" |
There is a second addition operator, "+=". It increments the variable on the left of the += by the amount indicated on the right. Examples:
| VB.NET | Python |
| Dim x As Integer = 54 x += 89 ' result is 143 x += 7 ' result is 150 | x = 54 x += 89 # result is 143 x += 7 # result is 150 |
It also works with Strings as a concatenation operator. Examples:
| VB.NET | Python |
| Dim x As String = "A fox" x += " jumped" ' result is "A fox jumped" x += " over the fence" ' result is "A fox jumped over the fence" | x = "A fox" x += " jumped" # result is "A fox jumped" x += " over the fence" # result is "A fox jumped over the fence" |

## Subtraction

This subtracts two numbers, and is denoted by the "-" symbol. Examples:
| VB.NET | Python |
| Dim x As Integer x = 7 - 2 ' Results in 5. x = 25 - -4 ' Results in 29. | x = 7 - 2 # Results in 5. x = 25 - -4 # Results in 29. |

## Multiplication

This multiplies two numbers, and is denoted by the "*" symbol. Examples:
| VB.NET | Python |
| Dim x As Integer x = 7 * 2 ' Results in 14. x = 25 * -4 ' Results in -100. | x = 7 * 2 # Results in 14. x = 25 * -4 # Results in -100. |

## Division

There are more types of division than the one denoted by the "/" symbol. There is also integer division and remainder division.

### Normal

This is the most commonly used form of division and is denoted by the "/" operator. Examples:
| VB.NET | Python |
| Dim x As Single ' (note that we must use the Single class to have decimals) x = 7 / 2 ' Results in 3.5. x = 25 / 4 ' Results in 6.25 | x = 7 / 2 # Results in 3.5. x = 25 / 4 # Results in 6.25 |

## Integer division

This divides two numbers, and gives the result without the remainder if the quotient is a decimal. Examples:
| VB.NET | Python |
| Dim x As Integer x = 7 \ 2 ' Results in 3. x = 25 \ 4 ' Results in 6. | x = 7 \ 2 # Results in 3. x = 25 \ 4 # Results in 6. |

## Remainder Division

This divides two numbers, and gives the result's remainder if the quotient is a decimal. This is denoted by the operator "Mod" in VB.NET and "mod" in Python. Examples:
| VB.NET | Python |
| Dim x As Integer x = 7 Mod 2 ' Results in 1. x = 25 Mod 4 ' Results in 1. | x = 7 mod 2 # Results in 1. x = 25 mod 4 # Results in 1. |

## Exponentiation

This is raising a number to a power, i.e. $7^{2}$ is 49 . For example $7^{2}$ is:
| VB.NET | Python |
| Dim x As Integer x = 7 ^ 2 ' Results in 49. | x = 7 ^ 2 # Results in 49. |
This results in the number 49 being assigned to the variable x. It can also be used to calculate the square root of a number. The square root of a number is the number raised to the power of 0.5.
| VB.NET | Python |
| Dim x As Integer x = 7 ^ 0.5 ' Results in 2.645. | x = 7 ^ 0.5 # Results in 2.465. |
Note: It is necessary to ensure that the variables be correctly declared to get the desired results. The following example works, but will produce the wrong result. This is because the Integer class does not allow decimal places (just like mathematical integers.)
| VB.NET | Python |
| Dim x As Integer x = 9 ^ 0.5 ' Results in 3. | x = 9 ^ 0.5 # Results in 3. |
Since x is declared as an Integer type, the value square root, a real number, is stored incorrectly.
Any nth root of number can be calculated by raising the number to the power of $1/n$:
| VB.NET | Python |
| Dim x As Single Dim n As Single n = 7 x = 2 ^ (1 / n) | n = 7 x = 2 ^ (1 / n) |
This is because $x^{\frac {1}{n}}={\sqrt[{n}]{x}}$.

## BODMAS

You have probably learnt about the order of operations in maths. BODMAS also applies to computer calculations. This means that when calculating a sum, the program will calculate:
* Brackets
* Order (powers n^2 etc)
* Division
* Multiplication
* Addition
* Subtraction
* Example:BODMAS in vb
* For example:
* console.writeline( (3+4)/7 )
* console.writeline( 3+4/7 )
* console.writeline( 3+4/7-1 )
* Code Output
* 1 3.57142857 2.57142857
* If in doubt use the brackets!