diff --git a/.vs/prog2-ss2020-wienkop/v16/.suo b/.vs/prog2-ss2020-wienkop/v16/.suo index 34f1685925841711f6c001c2a8b95acbe1cdf65d..0ef6c52db3b03046a9a0063b9fbeec252153b60a 100644 Binary files a/.vs/prog2-ss2020-wienkop/v16/.suo and b/.vs/prog2-ss2020-wienkop/v16/.suo differ diff --git a/01Indexer/Program.cs b/01Indexer/Program.cs index f314cf4f7926ae09b9d43fc992703ec441bfa613..1c412164f3219f6969e4e68ed1dfe6de2ea0ed38 100644 --- a/01Indexer/Program.cs +++ b/01Indexer/Program.cs @@ -50,6 +50,9 @@ namespace _01Indexer pm1[2] = new Person("Claudia"); pm1[3] = new Person("Dieter"); + if (pm1["Berta"]!= null) + Console.WriteLine("Berta ist im Feld vorhanden!"); + #region Weitere Möglichkeiten Person[] pers = pm1["er"]; foreach (Person p in pers) diff --git a/07 UebgSaKeyValueList/Program.cs b/07 UebgSaKeyValueList/Program.cs index b526db861e05b219c73d65736cb386af2a0ebaef..ab27840bcc9ca154077db0555444ec2aed8dd515 100644 --- a/07 UebgSaKeyValueList/Program.cs +++ b/07 UebgSaKeyValueList/Program.cs @@ -4,14 +4,34 @@ using System.Collections.Generic; // Modifizieren/Erweitern Sie die KeyValue Klassen bzw. das Main()-Programm // derart, dass Sie eine weitergehende Kalenderverwaltung realisieren. In // Main erstellen Sie bitte eine Menü mit Auswahl: -// 1 - Termin eintragen (tt.mm|Thema|Projekt|Teilnehmer) +// 1 - Termin eintragen (tt.mm|Thema|Projekt|Teilnehmer|Uhrzeit) // 2 - Monatstermine auflisten; Eingabe Monat mm // 3 - Jahrestermine auflisten // 4 - Alle Termine eines Projekts im Monat mm; Eingabe mm|Projektname // Diskutieren Sie die KeyValue-Struktur + +// 12 x 100 (5 Tage x 4 Wochen x 5 Termine/Tag); 10 Projekte // Variante 1: Ebene 1: Monat; Ebene 2: Projekt; Value 2: Restliche Infos -// Variante 2: Ebene 1: Datum; Value 1: Restl. Infos +// 06 | { +// Prog2 | { +// 09, 8:45, Übung, Gruppe-B +// 09, 9:45, Vorlesung, alle +// } +// | { +// DigBB | { ... +// Ebene 1: 12 Elemente, 10 Elemente, 10 Einträge/Proj. +// Suchschritte: 6 + 5 + 5 = 16 +// Variante 2: Ebene 1: Datum; Value 1: Restl. Infos +// 09-06 | { +// 08:00, Übung, Prog2, Gruppe-B +// 09:45, Vorlesung, Prog2, alle +// } +// 10-06 | { +// 09:45, Vorlesung, DigBB, alle +// } +// Ebene 1: 240 Arbeitstage, Ebene 2: 5 Elemente +// Suchschritte: 120 + 3 = 123 namespace _07KeyValueList { @@ -56,6 +76,10 @@ namespace _07KeyValueList KeyValueListe<string, List<Termin>> terminverwaltung = new KeyValueListe<string, List<Termin>>(); terminverwaltung["03.06.2020"] = termineMi; terminverwaltung["02.06.2020"] = termineDi; + terminverwaltung["02.06.2020"].Add(new Termin("11:30 Teams", "BayernMINT")); + + KeyValueListe<string, KeyValueListe<char, string>> l3 = new KeyValueListe<string, KeyValueListe<char, string>>(); + l3["Wienkop"]['A'] = "Teambesprechung"; foreach (var tag in terminverwaltung) { diff --git a/07 UebgSaKeyValueList/liste.cs b/07 UebgSaKeyValueList/liste.cs index 2288bfe63b200229eec70081fd5a7901e1ed7570..2a50a2c492cd978de812d8221cb4f70f704d7ac4 100644 --- a/07 UebgSaKeyValueList/liste.cs +++ b/07 UebgSaKeyValueList/liste.cs @@ -22,7 +22,7 @@ namespace _07KeyValueList Element anf = null, ende = null; int anz = 0; // Sehr sinnvoll für Index-Ops //public StringListe() { } - public void AddEnd(K key, V val) + private void AddEnd(K key, V val) { Element neuesElement = new Element(key,val); // 1. Neues Element anlegen anz++; diff --git a/07InterfaceStack/Program.cs b/07InterfaceStack/Program.cs index 2a9ff987ba44ffed64b3899659cb73f0147091b3..1037407245c129166d174affe4e230b0136ce704 100644 --- a/07InterfaceStack/Program.cs +++ b/07InterfaceStack/Program.cs @@ -66,18 +66,27 @@ namespace _06InterfaceStack + + + + + + class Program { static void Main(string[] args) { - IStack<string> stack = new ArrayStack<string>(); - stack.Push("Anton"); - stack.Push("Berta"); - stack.Push("Claudia"); + //IStack<string> stack1 = new ArrayStack<string>(); + IStack<string> stack1 = new ListStack<string>(); + //IStack<string> stack1 = new IStack<string>(); + // Nicht zulässig, da IStack<> eine abstrakte Klasse ist! + stack1.Push("Anton"); + stack1.Push("Berta"); + stack1.Push("Claudia"); - while (stack.Count > 0) - Console.WriteLine(stack.Pop()); + while (stack1.Count > 0) + Console.WriteLine(stack1.Pop()); } } } diff --git a/07KeyValueList/liste.cs b/07KeyValueList/liste.cs index 2288bfe63b200229eec70081fd5a7901e1ed7570..2a50a2c492cd978de812d8221cb4f70f704d7ac4 100644 --- a/07KeyValueList/liste.cs +++ b/07KeyValueList/liste.cs @@ -22,7 +22,7 @@ namespace _07KeyValueList Element anf = null, ende = null; int anz = 0; // Sehr sinnvoll für Index-Ops //public StringListe() { } - public void AddEnd(K key, V val) + private void AddEnd(K key, V val) { Element neuesElement = new Element(key,val); // 1. Neues Element anlegen anz++; diff --git a/07NichtNachmachen/Program.cs b/07NichtNachmachen/Program.cs index c816e94cdc06b56e071dc0bfe6b3e3022d228a6f..f16956e37037f72541062de7c9cf6b3abfcec1d3 100644 --- a/07NichtNachmachen/Program.cs +++ b/07NichtNachmachen/Program.cs @@ -14,10 +14,11 @@ namespace _06NichtNachmachen // BITTE SO REALISIEREN: class Motorrad { - Rad a,b; + Rad a,b; // ~ ein Motorrad *HAT* / *BESITZT* zwei Räder public void xxx() { + a.durchmesser = 55; b.durchmesser = 55; } } @@ -26,7 +27,7 @@ namespace _06NichtNachmachen // !!! NICHT NACHMACHEN !!! - // Bitte bei Vererbung zwischen hat-ein und ist-ein Relation unterscheiden + // Bitte bei Klassenbeziehungen zwischen hat-ein und ist-ein Relation unterscheiden // Vererbung: ist-ein Relation => Motorrad ist-ein(e Spezialisierung) eines Rads // Besitzt: hat-ein Relation => Motorrad hat- zwei Räder class MotorradVererbt : Rad @@ -38,6 +39,8 @@ namespace _06NichtNachmachen durchmesser = 55; } } + + class Program { static void Main(string[] args)