Java (x,y)半径为1.0的圆上点的坐标。我需要帮助找到x2和y2
我的评估是做这个项目,下面列出了说明Java (x,y)半径为1.0的圆上点的坐标。我需要帮助找到x2和y2,java,Java,我的评估是做这个项目,下面列出了说明 圆的半径应为1.0 在算术表达式中使用适当的数学类方法 初始测试期间,x坐标值应改变0.1。程序运行后,验证增量是否可以 也可为0.01或0.001,代码仅作微小更改 在格式整齐的表格中显示信息。(请参阅预期输出。)使用格式网格可节省为开发布局所需的时间 您的输出。背景:回想一下代数课上 勾股定理可用于确定x或y坐标,如果 你知道圆的半径和x或y的值。 假设您正在处理一个半径为1的圆。如果你 迭代x的连续值,然后可以计算 y的对应值。确保使用数学类的方法来
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("");
}
}
您已将y1和y2计算为相同的值,因为代码相同:
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));
从结果来看,y2的值应该是y1的负数。请尝试以下方法:
double y1 = Math.sqrt(Math.pow(r, 2) - Math.pow(x1[i], 2));
double y2 = -y1;
它还应该有一个if语句,因为只有另一个答案的 以及-0.00的输出
double y1 = Math.sqrt(Math.pow(r, 2) - Math.pow(x1[i], 2));
double y2 = 0.00;
if (y1 != 0.00)
{
y2 = (-y1);
}
避免-0.00的更好方法是
double y1 = Math.sqrt(Math.pow(r, 2) - Math.pow(x1[i], 2));
double y2 = 0 - y1;
这将节省空间并更快地运行您是发布此问题的同一人吗?没有,但是这个问题看起来和我的一样。好吧,一定是很多人设置了相同的问题。不用担心,我只是好奇…非常感谢。这很有帮助。
double y1 = Math.sqrt(Math.pow(r, 2) - Math.pow(x1[i], 2));
double y2 = 0 - y1;