Czesc, powie mi ktos moze czemu wszystkie obiekty typu Prostokat maja u mnie wartosc tyle ile ostatni z nich czyli dlugosc - 1, szerokosc - 3 ?
using System;
namespace xyz
{
// Napisz program, który tworzy klasę Prostokat, zawierającą dwie prywatne dane
// składowe: dlugosc, szerokosc, dwie prywatne metody: powierzchnia(), obwod() oraz metodę
// publiczną – Prezentuj() (która wyświetla powierzchnię i obwód prostokąta) i konstruktor
// inicjalizujący.W metodzie Main() zdefiniuj obiekt i uruchom dla niego metodę Prezentuj().
// Uzupełnij program z poprzedniego zadania o definicje tablicy obiektów dla
// prostokątów. W metodzie Main() wyświetl powierzchnie oraz obwód wszystkich prostokątów
// w tablicy używając (wewnątrz pętli foreach) metody publicznej Prezentuj().
class Program
{
static void Main()
{
Prostokat[] tab = new Prostokat[3];
tab[0] = new Prostokat(1, 2);
tab[1] = new Prostokat(3, 4);
tab[2] = new Prostokat(1, 3);
//Prostokat[] tab = { new Prostokat(1, 2), new Prostokat(3, 4), new Prostokat(1, 1) };
foreach (Prostokat t in tab)
{
t.Prezentuj();
}
// Prostokat p1 = new Prostokat(2, 3);
// p1.Prezentuj();
// Prostokat p2 = new Prostokat(1, 1);
// p2.Prezentuj();
// Prostokat p3 = new Prostokat(2, 2);
// p3.Prezentuj();
}
}
public class Prostokat
{
static private int Dlugosc { get; set; }
static private int Szerokosc { get; set; }
public Prostokat(int _d, int _s)
{
Dlugosc = _d;
Szerokosc = _s;
}
private static int Powierzchnia()
{
return Dlugosc * Szerokosc;
}
private static int Obwod()
{
return 2 * Dlugosc + 2 * Szerokosc;
}
public void Prezentuj()
{
System.Console.WriteLine("Pole prostokata wynosi: {0}, a jego Obwod: {1}", Powierzchnia(), Obwod());
//Wyswietl powierzchnie i obwod prostokata
}
}
}