0

これが私のコードです:

     //a java application prints out all values of pythagorean triples     that        range from 1 to 500. 
      //uses a trippled nested for loop
    public class pythagoreantriples{

        //main method executes java application

        public static void main(String args[]){

       //declare variables


    for(int side_1=3;  side_1 <=500;  side_1++){

       for(int side_2=4; side_2 <=500; side_2++){

            for(int hypo=5; hypo <=500; hypo++){



                Math.pow(hypo,2)=Math.pow(side_1,2)+Math.pow(side_2,2);

                System.out.printf("n/%d/n",     Math.pow(side_1,2),"                 ", Math.pow(side_2,2),"                     ", Math.pow(hypo,2));



    } //end first for loop

    }//end second for loop

    } //end third for loop

    }//end main

    }//end class

コードをコンパイルしようとしたときに生成されるエラーは次のとおりです。

>C:\Users\Courtney\Desktop\chapter five exercises for      >java\pythagoreantriples.java:17: error: unexpected type
            hypo*hypo=side_1*side_1+side_2*side_2;
                ^
  >required: variable
>found:    value
>C:\Users\Courtney\Desktop\chapter five exercises for 

>java\pythagoreantriples.java:19: error: unexpected type




  >Math.pow(hypo,2)=Math.pow(side_1,2)+Math.pow(side_2,2);
                ^
  >required: variable
  >found:    value
  >2 errors

  >Tool completed with exit code 1

私は何を間違っていますか?1 から 500 の範囲のピタゴラス トリプレットのテーブルを出力することになっています。もちろん、forloop が出力する最初のピタゴラス トリプレットは 3^2+4^2=5^2 です。

4

1 に答える 1

0

=失敗したステートメントを条件式に変更し、 を に置き換え、==それを if ステートメントで使用して、現在のトリプルを出力するかどうかを決定する必要があります。

if (Math.pow(hypo, 2) == Math.pow(side_1, 2) + Math.pow(side_2, 2))

また、印刷物で作業する必要があります。Math.pow の結果は int ではなく double です。いずれにせよ、正方形ではなく側面を印刷する必要があります。

于 2015-05-16T11:12:00.107 に答える