diff --git a/.vs/prog2-ss2020-wienkop/DesignTimeBuild/.dtbcache.v2 b/.vs/prog2-ss2020-wienkop/DesignTimeBuild/.dtbcache.v2 index 92baa5e3d75255cc045ec80e84c9cc0344836d69..89336a2d9bcbcca13ec8d49cf84d8e30d1002035 100644 Binary files a/.vs/prog2-ss2020-wienkop/DesignTimeBuild/.dtbcache.v2 and b/.vs/prog2-ss2020-wienkop/DesignTimeBuild/.dtbcache.v2 differ diff --git a/.vs/prog2-ss2020-wienkop/v16/.suo b/.vs/prog2-ss2020-wienkop/v16/.suo index 30fa204e1ee64c442cdbb7ba941f78fdbae015e0..18b0d7450d9d1c740887e9c4d804138c162ed839 100644 Binary files a/.vs/prog2-ss2020-wienkop/v16/.suo and b/.vs/prog2-ss2020-wienkop/v16/.suo differ diff --git a/05 UebgMo Warenwirtschaft/Program.cs b/05 UebgMo Warenwirtschaft/Program.cs index d305e1e7ea110aad9956f56277dbf76d39e8b2c1..128bdae13a8c840ec469daf8c653628027af3dfc 100644 --- a/05 UebgMo Warenwirtschaft/Program.cs +++ b/05 UebgMo Warenwirtschaft/Program.cs @@ -3,7 +3,8 @@ namespace _05_UebgMo_Warenwirtschaft { // Programmieren Sie ein rudimentäres System zur Verwaltung beliebiger Produkte - // Jedes Produkt soll die folgenden Eigenschaften besitzen, int stueckzahl, double preis, string name + // Jedes Produkt soll die folgenden Eigenschaften besitzen, + // int stueckzahl, double preis, string name // Es soll eigene (abstract oder nicht-abstract) Klassen für einzelne Produkte mit individuellen Datenfeldern geben: // - Metallwaren mit den Unterklassen Schrauben und Nägel // - Milchprodukte mit den Unterklassen Joghurt und Butter @@ -14,12 +15,50 @@ namespace _05_UebgMo_Warenwirtschaft // Geben Sie für jede Klasse - wo sinnvoll - eine Überschreibung der ToString()-Methode an // Legen Sie in Main() ein Feld mit einem Objekt je Klasse an, geben Sie alle Elemente in einer Schleife aus // und schreiben Sie eine Methode, die z.B. nach der Pflanze über den Namen sucht und dieses Objekt zurückliefert - // Rufen Sie dann für die Pflanze die besondere Methode auf. + // Rufen Sie dann für die Pflanze diese besondere Methode auf. + class Produkt + { + int stueckzahl; + double preis; + public string Name { get; private set; } + public Produkt(int stueckzahl, double preis, string name) + { + this.stueckzahl = stueckzahl; + this.preis = preis; + this.Name = name; + } + public double Wert() => preis * stueckzahl; + } + class Gartenprodukte : Produkt + { + public Gartenprodukte(int stückzahl, double preis, string name) + : base(stückzahl, preis, name) { } + } + class Pflanzen:Gartenprodukte + { + public enum Pflanzentyp { nutz, zier}; + Pflanzentyp typ; + public Pflanzen(int stückzahl, double preis, string name, Pflanzentyp typ) + :base(stückzahl, preis, name) + { + this.typ = typ; + } + public void Giessen() { } + + } class Program { static void Main(string[] args) { - Console.WriteLine("Hello World!"); + Produkt[] produkte = new Produkt[3]; + produkte[0] = new Pflanzen(10, 0.35, "Geranien", Pflanzen.Pflanzentyp.zier); + foreach (var item in produkte) + { + if (item.Name == "Geranien") + { + (item as Pflanzen).Giessen(); + } + } } } }