witam, mam pewien problem. Mianowicie, muszę zrobić zadanie i niby je zrobiłem, błędów nie ma, jednak wyświetla mi złe wyniki. Są 2 klasy, 1 to samochód, a 2 to garaz, który ma zapisywać określoną liczbę samochodów w garażu. obiekty ma przechowywać tablica, jednak działa to źle. klasa garaż wygląda tak:
using System;
using System.Collections.Generic;
using System.Text;
namespace poo1
{
class Garaz
{
public string adres;
public int pojemnosc;
private int liczbaSamochodow = 0;
private Samochod[] samochody;
public Garaz()
{
adres = "nieznany";
pojemnosc = 0;
samochody = null;
}
public Garaz(string adres, int pojemnosc)
{
this.adres = adres;
this.pojemnosc = pojemnosc;
Samochod[] samochody = new Samochod[pojemnosc];
}
public int Pojemnosc
{
get { return pojemnosc; }
set
{
pojemnosc = value;
samochody = new Samochod[pojemnosc];
}
}
public string Adres
{
get { return adres; }
set { adres = value; }
}
public void WprowadzSamochod(Samochod samochod)
{
samochody = new Samochod[pojemnosc];
if (liczbaSamochodow >= pojemnosc)
{ Console.WriteLine("Garaż jest pełny"); }
else
{
samochody[liczbaSamochodow] = samochod;
liczbaSamochodow = liczbaSamochodow++;
}
}
public Samochod WyprowadzSamochod()
{
if (liczbaSamochodow==0)
{Console.WriteLine("Garaz jest pusty"); }
else if (liczbaSamochodow >= pojemnosc)
{
samochody[liczbaSamochodow - 1] = null;
liczbaSamochodow--;
}
return new Samochod();
}
public void WypiszInfo()
{
foreach (Samochod auto in samochody)
{
Console.WriteLine(auto);
}
}
}
}
Testuję ją takim kodem:
Samochod s1 = new Samochod("Fiat", "126p", 2, 650, 6.0);
Samochod s2 = new Samochod("Syrena", "105", 2, 800, 7.6);
Garaz g1 = new Garaz();
g1.Adres = "ul. Garażowa 1";
g1.Pojemnosc = 1;
Garaz g2 = new Garaz("ul. Garażowa 2", 2);
g1.WprowadzSamochod(s1);
g1.WypiszInfo();
g1.WprowadzSamochod(s2);
g2.WprowadzSamochod(s2);
g2.WprowadzSamochod(s1);
g2.WypiszInfo();
g2.WyprowadzSamochod();
g2.WypiszInfo();
g2.WyprowadzSamochod();
g2.WyprowadzSamochod();
Console.ReadKey();
Console.ReadKey();
Problem jest taki, że nie wyświetla w ogóle elementów s2, a jedynie s1, s1, pusty, s1, pusty, pusty. Czy mógł by ktoś naprowadzić w gdzie robię błąd?