我收到的不是声明错误

时间:2013-05-02 15:48:17

标签: java

我需要帮助弄清楚我做错了什么。这是我到目前为止的编码。 我想在圆上绘制坐标。我得到的不是陈述错误。

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 个答案:

答案 0 :(得分:3)

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

for (double x1 = 1.00; x1 > -1.10; x1 -= 0.10)
{ ... }

答案 1 :(得分:1)

for循环中存在语法错误。你可以像这样重写它:

for (double x1 = 1.00; x1> -1.10; x1 -= 0.10)

答案 2 :(得分:0)

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

答案 3 :(得分: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);

    }