Lesson 110 – Basic Arithmetic and the Modulo Operator
var a = 3 + 2;
To subtract numbers, you use the minus sign. So –
var b = 10 - 5;
To multiply you use the asterisk sign and to divide you use a single forward slash. So –
var c = 4 * 5;
var d = 6 / 2;
The modulo operator is represented by a percentage sign.
var e = 9 % 6;
The modulo operator gives you the remainder of the division. In the above example, 6 goes into 9 only one time and you get a remainder of 3 which is the outcome of 9 % 6.
The modulo operator is useful for working out whether a particular number you are working with is odd or even. To determine if the number is odd or even you can use “% 2”. If the modulo is 0 then it is an even number but if the modulo is not 0 then it is an odd number. For example,
45 % 2;
will produce a modulo of 1 so 45 is an odd number.
46 % 2;
will produce a modulo of 0 so it is an even number.
The math rule of precedence will determine in what order calculations are made. Multiplication and division are done first and then addition and subtraction. So the following example will evaluate to the number 13.
var cost = 3 + 5 * 2;
To change the usual order of precedence you can use parenthesis in your code. The next example evaluates to the number 16 because of the use of parenthesis.
var cost = (3 + 5) * 2;
The challenge in this lesson is to:
- Create a prompt that asks the user for the age of his dog;
- Use the supplied formula to convert the age of the dog in dog years to the age of the dog in human years;
- To alert the user with a message telling the user the age of his dog in human years.
This is my solution –
var dogAge = prompt("What is your dog's age?"); var humanAge = (dogAge - 2) * 4 + 21; alert("Your dog is " + humanAge + " years old in human years!");
This is slightly different than Angela’s solution. Her solution was:
var dogAge = prompt("What is your dog's age?"); var humanAge = ((dogAge - 2) * 4) + 21; alert("Your dog is " + humanAge + " years old in human years!");
Lesson 111 – Increment and Decrement Expressions
var x = 5; x++;
This code results in x now being equal to 6 as “x++” increments x (which has been defined as 5) with 1 resulting in 6. It is the equivalent of:
var x = 5; x = x + 1;
You can decrement a number in the same way:
var x = 5; x--;
Once this code is run, x is equivalent to 4 as x (originally defined as 5) is decremented by 1 and becomes 4.
This is the same as:
var x = 5; x = x - 1;
To increment by more than one you can use:
var x = 5; x += 2;
This will increment 5 by adding 2 and produces 7.
You can decrement by more than 1 in the same way. So –
var x = 5; x -= 2;
This results in x being equal to 3.
To multiply by more than 1 you use “*=” and to divide by more than one you use “/=”.
It can be used in the same way with variables. For example,
var x = 5; var y = 3; x += y;
This adds 5 and 3 and the variable x becomes equal to 8.