Solved

# Pythagorean Triples - 2nd intro. class to Java programming

Posted on 2000-04-21
1,785 Views
5.18 (Pythagorean Triples) A right triangle can have sides that are all integers.  The set of three integer values for the sides of a right triangle is called a Pythagorean triple.  These three sides must satisfy the relationship that the sum of the squares of two of the sides is equal to the square of the hypotenuse.  Find all Pythagorean triples for side l, side2, and the hypotenuse all no larger than 500.  Use a triple-nested for-loop that tries all possibilities.  This is an example of "brute force" computing.  You will learn in more advanced computer science courses that there are large numbers of interesting problems for which there is no known algorithmic approach other than using sheer brute force.

Write the Java application of exercise 5.18 with the following modifications:
Name the source file Project2.java.
Let the range of side sizes be variable, instead of the fixed 1 to 500 specified in the text.
Allow the user to input the smallest size, but insure this size is at least 1 and at most 500 before allowing execution to continue. In other words, if the user enters 0 or 501, the program should request another value before going on to the next step (and this repetition should continue until an appropriate value is entered).
Allow the user to input the largest size, but insure this size is at least the smallest size and at most 500.
Print all of the Pythagorean triples, with sides at least the smallest and at most the largest size, one per line with appropriate labels. For example, here is adequate output for smallest=5 and largest=15 (a and b are the two sides adjacent the right angle, and h is the hypotenuse):
a: 5, b: 12, h: 13
a: 6, b: 8, h: 10
a: 8, b: 6, h: 10
a: 9, b: 12, h: 15
a: 12, b: 5, h: 13
a: 12, b: 9, h: 15

I need halp on this question...I am in a Java programming class  can someone please help me????  Thanks
0
Question by:volcomman9

Expert Comment

might want to post this in the java topic area
0

LVL 1

Expert Comment

this isn't the place to get your homework done for you.
0

Accepted Solution

ecaterina9 earned 100 total points
//range of side sizes be variable,
int smallest;
int largest;
//do the input box + validation
//look in "Java How to Program" by //Deitel& Deitel for patterns for this
//Use a triple-nested for-loop that //tries all possibilities
for(int k=smallest;k=largest;k++)
for(int p=smallest;p=largest;p++)
for(for q=smallest;q=largest;q++)
if(k*k+p*p==q*q)
cout<<k<<p<<q;//use a Java GUI call here

0

## Featured Post

### Suggested Solutions

This article will show you some of the more useful Standard Template Library (STL) algorithms through the use of working examples.  You will learn about how these algorithms fit into the STL architecture, how they work with STL containers, and why t…
Many modern programming languages support the concept of a property -- a class member that combines characteristics of both a data member and a method.  These are sometimes called "smart fields" because you can add logic that is applied automaticall…
The viewer will learn additional member functions of the vector class. Specifically, the capacity and swap member functions will be introduced.
The viewer will learn how to clear a vector as well as how to detect empty vectors in C++.