user1928899 - 2 years ago 112
Java Question

# (x, y) coordinates of points on a circle of radius 1.0. I need help finding x2 and y2

My assessment was to do the program and the instructions are listed below.

1. The radius of the circle should be 1.0.

2. Use the appropriate Math class methods in your arithmetic expression(s).

3. The value of the x coordinate should change by 0.1 during initial testing. After the program is working verify that the increment can
also be 0.01, or 0.001 with only minor changes to the code.

4. Display the information in a neatly formatted table. (See expected output.) Use a Formatting Grid to save time developing the layout for
Pythagorean Theorem can be used to determine the x or y coordinate if
you know the radius of the circle and the value of either x or y.
Assume that you are dealing with a circle whose radius is 1. If you
iterate through successive values of x, then you can calculate the
corresponding value of y. Be sure to use methods of the Math class to
set up the arithmetic expression.

This is the circle: http://i.stack.imgur.com/NypKz.png

I did the program below.

``````public class PointsOnACircleV1 {
public static void main(String[ ] args)
{
double[] x1 = { 1.0, 0.90, 0.80, 0.70, 0.60, 0.50, 0.40, 0.30, 0.20,
0.10, 0.00, -0.10, -0.20, -0.30, -0.40, -0.50, -0.60, -0.70,
-0.80, -0.90, -1.00 };

double r = 1;

System.out.println("      Points on a Circle of Radius 1.0");
System.out.println("       x1        y1        x2        y2");
System.out.println("---------------------------------------------");

for (int i = 0; i < x1.length; i++) {
double y1 = Math.sqrt(Math.pow(r, 2) - Math.pow(x1[i], 2));
double y2 = Math.sqrt(Math.pow(r, 2) - Math.pow(x1[i], 2));
System.out.printf("%10.2f%10.2f%10.2f%10.2f%n", x1[i], y1, x1[i], y2);
}
System.out.println("");
}
}
``````

The output is supposed to be like this: http://i.stack.imgur.com/pywwJ.png

I am getting a different output. My output is coming like this.

``````      Points on a Circle of Radius 1.0
x1        y1        x2        y2
---------------------------------------------
1.00      0.00      1.00      0.00
0.90      0.44      0.90      0.44
0.80      0.60      0.80      0.60
0.70      0.71      0.70      0.71
0.60      0.80      0.60      0.80
0.50      0.87      0.50      0.87
0.40      0.92      0.40      0.92
0.30      0.95      0.30      0.95
0.20      0.98      0.20      0.98
0.10      0.99      0.10      0.99
0.00      1.00      0.00      1.00
-0.10      0.99     -0.10      0.99
-0.20      0.98     -0.20      0.98
-0.30      0.95     -0.30      0.95
-0.40      0.92     -0.40      0.92
-0.50      0.87     -0.50      0.87
-0.60      0.80     -0.60      0.80
-0.70      0.71     -0.70      0.71
-0.80      0.60     -0.80      0.60
-0.90      0.44     -0.90      0.44
-1.00      0.00     -1.00      0.00
``````

``````double y1 = Math.sqrt(Math.pow(r, 2) - Math.pow(x1[i], 2));
``````double y1 = Math.sqrt(Math.pow(r, 2) - Math.pow(x1[i], 2));