これが私が学校のためにしなければならない課題です:
- AreaCircle という名前の新しいプロジェクトを作成します。
- セクション 5.2 から距離法をコピーします。
- 演習 4.2 から円の面積法をコピーします。印刷するのではなく、領域を返すように変更します。
- 2 つのポイント (4 つの整数パラメーター: x1、x2、y1、y2) を取り、double を返す円の別の area メソッドを作成します。両方のメソッドが同じ名前であることを確認してください。パラメータが異なるため、実行されるものは渡されたパラメータによって異なります。この新しい area メソッドでは、distance メソッドを呼び出して円の半径を取得します。
次に、OTHER (元の) area メソッドを呼び出して、円の面積を取得します。 - 精度の失われたコンパイラ エラーが発生しないように、いくつかの変更を加える必要があります。
- メインでは、円の外側の点と円の中心点を表す 4 つの整数の入力をユーザーに求めます (これらは半径の長さを見つけるために使用されます)。適切なエリア メソッドを呼び出します。結果を表示します。
私のコードが正しいかどうかはわかりませんが、動作していないため、明らかに何か問題があります...
public static void main(String[] args) {
Scanner reader;
reader = new Scanner (System.in);
System.out.println("Please enter the coordinates of a circle:");
newLine();
System.out.println("Outside point:");
newLine();
System.out.println("x1:");
int x1 = reader.nextInt();
newLine();
System.out.println("y1:");
int y1 = reader.nextInt();
newLine();
System.out.println("Center Point:");
newLine();
System.out.println("x2:");
int x2 = reader.nextInt();
newLine();
System.out.println("y2:");
int y2 = reader.nextInt();
}
public static void area(double radius, int x1, int x2, int y1, int y2)
{
double areaCircle = (Math.PI * area(x1, x2, y1, y2) * area(x1, x2, y1, y2));
}
public static double area(int x1, int x2, int y1, int y2) {
double radius = distance (x1, y1, x2, y2);
return radius;
}
public static double distance(int x1, int y1, int x2, int y2)
{
double dx = x2 - x1;
double dy = y2 - y1;
double dsquared = dx*dx + dy*dy;
double result = Math.sqrt (dsquared);
return result;
}
//NewLine Method
public static void newLine () {
System.out.println ("");
}