-1

我需要帮助找出我做错了什么。到目前为止,这是我的编码。我正在尝试在圆上绘制坐标。我收到一个非语句错误。

public class MathClass
{

    public static void main (String [] args)
    {

    double y1;
    double y2;
    System.out.println("Points on a Circle of Radius 1.0");
    System.out.printf ( "%6s" , "x1", "y1", "x1" , "y2");
    System.out.println ("----------------------------------");
    for (double x1 = 1.00; x1> -1.10; x1 + -0.10)
    {
        double x1sq= Math.pow(x1,2);
        double r = 1;
        double y1sq = r- x1sq;
        y1= Math.sqrt(y1sq);
        System.out.printf( "%.2f", x1, "   ", y1);

    }

}
4

4 回答 4

3

您的问题出在您发布的代码的第 10 行。问题是这x1 + -0.10是一个表达式,而不是一个语句(因此你得到的“不是一个语句”错误)。你想要x1 += -0.10。或者,更清楚地说,使用-=而不是添加负数,因此整个循环条件如下所示:

for (double x1 = 1.00; x1 > -1.10; x1 -= 0.10)
{ ... }
于 2013-05-02T15:51:43.020 回答
1

您的for循环中有语法错误。你可以像这样重写它:

for (double x1 = 1.00; x1> -1.10; x1 -= 0.10)
于 2013-05-02T15:51:05.253 回答
0

x1 + -0.10 是你的问题,你想要 x1 += -0.10

于 2013-05-02T15:51:40.900 回答
0

你的任务错了

利用 x1 -=0.10

  for (double x1 = 1.00; x1> -1.10; x1 -=0.10)
    {
        double x1sq= Math.pow(x1,2);
        double r = 1;
        double y1sq = r- x1sq;
        y1= Math.sqrt(y1sq);
        System.out.printf( "%.2f", x1, "   ", y1);

    }
于 2013-05-02T15:54:04.013 回答