0

次のコードがありますが、出力がありません。私は次に何をすべきかについて完全に迷っています。次の出力が必要です

四角形の座標: ( 1.1, 1.2 ), ( 6.6, 2.8 ), ( 6.2, 9.9 ), ( 2.2, 7.4 )

  using System;

  class testquadrilaterals 
  {
static void Main() 
{
    quadrilateral obj1 = new quadrilateral(1.1, 1.2, 6.6, 2.8, 6.2, 9.9, 2.2, 7.4);
    Console.ReadLine();
}
  }

  class point 
  {
private double x;
private double y;

public point(double x_coord, double y_coord)
{
    x = x_coord;
    y = y_coord;
}

public double X { get { return x; } set { x = value; } }
public double Y { get { return y; } set { y = value; } }

public void printcoord()
{
    Console.WriteLine("(" + X + ", " + Y + ")");
}
  }

  class quadrilateral
  {
point p1, p2, p3, p4;

public quadrilateral(double x1, double y1, double x2, double y2,
    double x3, double y3, double x4, double y4)
{
    p1 = new point(x1, y1);
    p2 = new point(x2, y2);
    p3 = new point(x3, y3);
    p4 = new point(x4, y4);
}

public point P1 { get { return p1; } set { p1 = value; } }
public point P2 { get { return p2; } set { p2 = value; } }
public point P3 { get { return p3; } set { p3 = value; } }
public point P4 { get { return p4; } set { p4 = value; } }

public string printcoordinates() 
{
    return "Coordinates of Quadrilateral are " + p1.ToString() + " " + p2.ToString() + " " + p3.ToString() + " ";
}

}

4

3 に答える 3

2

print メソッドを呼び出す必要があります。

class testquadrilaterals 
{
    static void Main() 
    {
        quadrilateral obj1 = new quadrilateral(1.1, 1.2, 6.6, 2.8, 6.2, 9.9, 2.2, 7.4);
        Console.WriteLine(obj1.printcoordinates()); // Call your print method
        Console.ReadLine();
    }
}
于 2013-04-02T17:54:25.300 に答える
1

printcoordinates を修正して呼び出します。

public void printcoordinates() 
{
    console.writeline("Coordinates of Quadrilateral are " + p1.ToString() + " " + p2.ToString() + " " + p3.ToString() + " ");

}


class testquadrilaterals 
{
    static void Main() 
    {
        quadrilateral obj1 = new quadrilateral(1.1, 1.2, 6.6, 2.8, 6.2, 9.9, 2.2, 7.4);
        obj1.printcoordinates(); // Call your print method
        Console.ReadLine();
    }
}
于 2013-04-02T17:59:37.197 に答える
0

あなたは上書きpointしていないようですToString-私は思います-あなたは印刷物を持っていますが、接続されていません。

あなたが望むのは、そのprintを呼び出すToStringを定義することです-私がそれを正しく理解していれば、コード

私は代わりにこのようにします - の場合point:

public override string ToString()
{
    return "(" + X + ", " + Y + ")";
}

...そしてクワドリクラスの場合...

public override string ToString()
{
    return "Coordinates of Quadrilateral are " + p1.ToString() + " " + p2.ToString() + " " + p3.ToString() + " ";
}

次のように呼び出します。

Console.Write(obj1.ToString());
于 2013-04-02T17:59:20.680 に答える