This is an old revision of the document!
To determine factor pairs you can make an iterative loop, and check for how many times your input value is evenly divided by a number, ie. for 6 you would check:
6 % 1 = 0, 6 % 2 = 0, 6 % 3 = 0, 6 % 4 = 2, 6 % 5 = 1, 6 % 6 = 0
There are 4 zeros, so 6 has 4 factors.
Determining factor pairs takes a little bit more work than you would imagine, as you cannot simply divide by 2, because of square numbers, who have an odd number of factors.
Instead, you can ignore 1 as a factor, divide the amount of other factors by 2, then add 1 to your amount of factor pairs.
This process may look like:
int i; for (i=2; i<=input; i++) { if ((input % i) == 0) { factorpairs++; } } factorpairs = (factorpairs / 2) + 1
A for loop is a loop that iterates based on a set of given parameters for example a for loop that starts at 0 and iterates 1000 times would look like:
int i; for (i=0; i<=1000; i++) { whatever you want to happen; }
A while loop is a loop that continues to iterate as long as the input evaluates to true. a while loop that iterates until an input variable reaches some designated value may look like:
while (var != 100) { whatever you want it to do; }
If you arent careful with your condition a while loop will iterate endlessly, preventing your code from moving past the loop
unsigned int var = 0; var = 20; while (var == 20){ do something that doesnt effect var; } the rest of your code;
In this case, because var never changes from 20, the while loop will never end You can also achieve this endless iteration by typing
while (true) { some code; }
Because the condition is always true it will never escape the loop