Next: Summary
Up: The for statement
Previous: Example Program: Student Mark
In exercise 7 at the end of Lesson 7
Pythagorean triples were introduced. A Pythagorean triple is a set of
three integers ,
and
such that
. Such a triple
can be produced from two integers
and
,
as follows:
To generate a list of Pythagorean triples m
could be allowed to
take values from its minimum possible value (2) up to some maximum
value entered by the user. For each value of n
from 1 up to
m-1
the corresponding triple could then be evaluated and
output. An algorithmic description for this is:
enter and validate a maximum value for m. for each value of m from 2 to maximum do { for each value of n from 1 to m-1 do { evaluate and print a triple. } }
This description uses a for
loop, a looping construct that repeats the
loop statement as some control variable takes a sequence of
values. Also note that one for loop is nested inside another,
this is very common. From this description the following C++ program
is easily produced:
void main() { int max, // maximum value of m to be used m, n, // control variables for loops t1, t2, t3; // pythagorean triple // enter and validate max do { cout << "Enter a maximum value for m ( >1 ): "; cin >> max; } while (max < 2); // loop on m from 2 to max for (m=2; m <= max; m++) { // now loop on n from 1 to m-1 for (n=1; n < m; n++) { // evaluate and print triple t1 = m*m-n*n; t2 = 2*m*n; t3 = m*m+n*n; cout << t1 << " " << t2 << " " << t3 << endl; } } }
Download program.