/****************************************************** ** Name: ** Filename: ptriples.cpp ** Project #: Deitel & Deitel 2.55 ** Project Description: Find all Pythagorean triples for side1, side2 and hypotenuse in which all sides are no larger than 500. Use a triple nested for loop that tries all possibilites. ** Output: All Pythagorean triples for side1, side2 and hypotenuse in which all sides are no larger than 500. ** Input: None ** Algorithm: Instruct user of process to be performed. If 500 or less then calculate using formula a^2 + b^2 = c^2 by running 3 loops to find all posible combinations When combination equals a^2 + b^2 = c^2 then print out results, and add up the number of solutions and print out solutions at the end. End program ******************************************************/ // Include files #include // used for cin, cout #include using namespace std; // Global Type Declarations // Function Prototypes void instruct (void); void pause (); //Global Variables - should not be used without good reason. int main () { // Declaration section int side1, // Side 1 of triangle side2, // Side 2 of triangle hyp, // Hypotenuse of triangle sols = 0; // Number of pythogorean triples solutions // Executable section instruct (); cout << "\nPossible combinations are:\n\n"; for (side1 = 1; side1 <= 500; side1++) { for (side2 = 1; side2 <= 500; side2++) { for (hyp = 1; hyp <= 500; hyp++) { if (( side1 * side1 + side2 * side2) == hyp * hyp ){ cout << side1 << "\t" << side2 << "\t" << hyp << "\n"; ++sols; if ( sols % 10 == 0 ) pause (); } } } } cout << "\nThere is a total of " << sols << " possible solutions" << endl ; pause (); return 0; } void instruct (void) { // Declaration section cout << "This program will find all Pythagorean triples for\n" << "side1, side2 and hypotenuse in which all sides are no\n" << "larger than 500" << endl ; // Executable section } void pause () { // Declaration section // Executable section cout << "\nPress any key to continue..."; getch(); cout << "\r"; cout << " "; cout << "\r"; } /* Program Output This program will find all Pythagorean triples for side1, side2 and hypotenuse in which all sides are no larger than 500 Possible combinations are: 3 4 5 4 3 5 5 12 13 ... ... ... 480 108 492 480 140 500 483 44 485 There is a total of 772 possible solutions Press any key to continue... */