diff --git a/.vs/prog2-ss2020-wienkop/v16/.suo b/.vs/prog2-ss2020-wienkop/v16/.suo index 30f293facaa1e2505d739813d9876a429cb1159f..b612d53acbbb1083334176e8a85028dd93d5a88c 100644 Binary files a/.vs/prog2-ss2020-wienkop/v16/.suo and b/.vs/prog2-ss2020-wienkop/v16/.suo differ diff --git a/02VerketteteListe-2/Program.cs b/02VerketteteListe-2/Program.cs index f8357e57dc0b8bfdf60480db6af31f394fcb1308..6dbaa4fe5c465c28f2dd61e58c8b8fa7eb2856d5 100644 --- a/02VerketteteListe-2/Program.cs +++ b/02VerketteteListe-2/Program.cs @@ -125,14 +125,25 @@ namespace _02VerketteteListe_2 // an der gespeicherten Pos. weitergemacht. } } + public IEnumerable Iterate(int offset=0) + { + Element item = anf; + for (int i = 0; i < offset; i++) + item = item.next; + while( item != null) + { + yield return item.name; + item = item.next; + } + } - // foreach --> GetEnumerator() merkt sich die Pos nach yield return und liefert ("Anton") - // item = "Anton" - // foreach --> GetEnumerator(), überprüft, ob noch eine Ausführungspos. gespeichert ist - // JA: --> hier geht die Ausführung weiter - // item=item.next, merkt sich die Pos nach yield return und liefert ("Berta") - // item = "Berta" - // ... bis GetEnumerator() am Methodenende angelangt ist. + // foreach --> GetEnumerator() merkt sich die Pos nach yield return und liefert ("Anton") + // item = "Anton" + // foreach --> GetEnumerator(), überprüft, ob noch eine Ausführungspos. gespeichert ist + // JA: --> hier geht die Ausführung weiter + // item=item.next, merkt sich die Pos nach yield return und liefert ("Berta") + // item = "Berta" + // ... bis GetEnumerator() am Methodenende angelangt ist. public void DeleteFirst() { // 1.Fall: Liste ist leer @@ -257,7 +268,7 @@ namespace _02VerketteteListe_2 //l1.Print(); l1.AddBeforeNth(2, "Bodo"); l1.Print(); - foreach (string item in l1.Filter("er")) + foreach (string item in l1.Iterate(2)) { Console.WriteLine($"foreach: {item}"); } diff --git a/03 UebgDi ZyklischeListe/Program.cs b/03 UebgDi ZyklischeListe/Program.cs index 4ea9820799ad2d8ec653e66ad5d4d03eb31cb518..bcc41da3e1c32779014dc8d3965f3fc8c2789795 100644 --- a/03 UebgDi ZyklischeListe/Program.cs +++ b/03 UebgDi ZyklischeListe/Program.cs @@ -20,10 +20,11 @@ namespace _03_UebgDi_ZyklischeListe anf = ende = neuesElement; else ende = ende.next = neuesElement; // 3. Neues Element am Ende anfügen + ende.next = anf; // Zyklus schließen: Ende auf Anf verweisen lassen } public void CloseCycle() { - ende.next = anf; + ende.next = anf; // Zyklus schließen: Ende auf Anf verweisen lassen } public void Print() { diff --git a/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.dll b/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.dll index 5c0598e53f327bb14720853d5d2fa446bd0ef75f..01a79bea3422c9967e9d2f013272768794a00004 100644 Binary files a/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.dll and b/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.dll differ diff --git a/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.pdb b/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.pdb index 9fe0144024127376b2ac67420d6ee0b07d839397..d223db810e295176512857777f7f63764b356d8a 100644 Binary files a/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.pdb and b/03BinTree/bin/Debug/netcoreapp3.1/03BinTree.pdb differ diff --git a/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.csprojAssemblyReference.cache b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.csprojAssemblyReference.cache index 74fe67b1ca671095970d4a7fbcae2417231e8f41..d7dd684443de8ada82f92a8e0cf14a64b9096fd6 100644 Binary files a/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.csprojAssemblyReference.cache and b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.csprojAssemblyReference.cache differ diff --git a/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.dll b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.dll index 5c0598e53f327bb14720853d5d2fa446bd0ef75f..01a79bea3422c9967e9d2f013272768794a00004 100644 Binary files a/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.dll and b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.dll differ diff --git a/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.pdb b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.pdb index 9fe0144024127376b2ac67420d6ee0b07d839397..d223db810e295176512857777f7f63764b356d8a 100644 Binary files a/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.pdb and b/03BinTree/obj/Debug/netcoreapp3.1/03BinTree.pdb differ diff --git a/04 UebgMo ZyklischeListe/Program.cs b/04 UebgMo ZyklischeListe/Program.cs index 719039d485214aeec4ab9f7244b67f27523ec098..7a759f0ceea06415f6e277a80a6b7e4b1d9e7582 100644 --- a/04 UebgMo ZyklischeListe/Program.cs +++ b/04 UebgMo ZyklischeListe/Program.cs @@ -15,25 +15,47 @@ namespace _04_UebgMo_ZyklischeListe Element iterator = null; public void AddEnd(string name) { - + Element neuesElement = new Element(name); // 1. Neues Element anlegen + + if (anf == null) // 2. Leere Liste? + anf = ende = neuesElement; + else + { + ende.next = neuesElement; // 3. Neues Element am Ende anfügen + ende = ende.next; + } + ende.next = anf; + iterator = ende; } public void CloseCycle() { - + ende.next = anf; } public void Print() { - + if (anf == null) + return; + // Wir wissen: Es existiert mindestens EIN Element + Element tmp = anf; + do + { + Console.WriteLine(tmp); + tmp = tmp.next; + } while (tmp != null && tmp != anf); } public void SetIterator(int offset = 0) { - + iterator = anf; + for (int i = 0; i < offset; i++) + iterator = iterator.next; } - public string GetName() ; - public void MoveNext() { } - } + public string GetName() => iterator.name; + public void MoveNext() { iterator = iterator.next; } + } + // Programmierer 1 // =========================================================== + // Anwender class Program { static void Main(string[] args) @@ -41,7 +63,7 @@ namespace _04_UebgMo_ZyklischeListe CycleList cl = new CycleList(); cl.AddEnd("Anton"); cl.AddEnd("Berta"); - cl.CloseCycle(); + //cl.CloseCycle(); cl.Print(); Console.WriteLine("-------------"); cl.AddEnd("Claudia"); diff --git a/04 UebgMo ZyklischeListe/bin/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.deps.json b/04 UebgMo ZyklischeListe/bin/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.deps.json new file mode 100644 index 0000000000000000000000000000000000000000..e93a485f00bfce7740fcccad3568c733ef899f9b --- /dev/null +++ b/04 UebgMo ZyklischeListe/bin/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.deps.json @@ -0,0 +1,23 @@ +{ + "runtimeTarget": { + "name": ".NETCoreApp,Version=v3.1", + "signature": "" + }, + "compilationOptions": {}, + "targets": { + ".NETCoreApp,Version=v3.1": { + "04 UebgMo ZyklischeListe/1.0.0": { + "runtime": { + "04 UebgMo ZyklischeListe.dll": {} + } + } + } + }, + "libraries": { + "04 UebgMo ZyklischeListe/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + } + } +} \ No newline at end of file diff --git a/04 UebgMo ZyklischeListe/bin/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.dll b/04 UebgMo ZyklischeListe/bin/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.dll new file mode 100644 index 0000000000000000000000000000000000000000..1be08615678305fc6e19fbb6e2afc2c5fdb7530a Binary files /dev/null and b/04 UebgMo ZyklischeListe/bin/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.dll differ diff --git a/04 UebgMo ZyklischeListe/bin/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.exe b/04 UebgMo ZyklischeListe/bin/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.exe new file mode 100644 index 0000000000000000000000000000000000000000..7bff3e8b45891c7386fbae69bfcb6c3c202077c4 Binary files /dev/null and b/04 UebgMo ZyklischeListe/bin/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.exe differ diff --git a/04 UebgMo ZyklischeListe/bin/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.pdb b/04 UebgMo ZyklischeListe/bin/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.pdb new file mode 100644 index 0000000000000000000000000000000000000000..3e444d3b343b8a819f52f2ca325ec071240d0f44 Binary files /dev/null and b/04 UebgMo ZyklischeListe/bin/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.pdb differ diff --git a/04 UebgMo ZyklischeListe/bin/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.runtimeconfig.dev.json b/04 UebgMo ZyklischeListe/bin/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.runtimeconfig.dev.json new file mode 100644 index 0000000000000000000000000000000000000000..3becea41545888f98131d88ad51766e8ddde3bce --- /dev/null +++ b/04 UebgMo ZyklischeListe/bin/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.runtimeconfig.dev.json @@ -0,0 +1,8 @@ +{ + "runtimeOptions": { + "additionalProbingPaths": [ + "C:\\Users\\wienkop\\.dotnet\\store\\|arch|\\|tfm|", + "C:\\Users\\wienkop\\.nuget\\packages" + ] + } +} \ No newline at end of file diff --git a/04 UebgMo ZyklischeListe/bin/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.runtimeconfig.json b/04 UebgMo ZyklischeListe/bin/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.runtimeconfig.json new file mode 100644 index 0000000000000000000000000000000000000000..bc456d7868bb54ec1809da30e339cd43f0a8a09c --- /dev/null +++ b/04 UebgMo ZyklischeListe/bin/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.runtimeconfig.json @@ -0,0 +1,9 @@ +{ + "runtimeOptions": { + "tfm": "netcoreapp3.1", + "framework": { + "name": "Microsoft.NETCore.App", + "version": "3.1.0" + } + } +} \ No newline at end of file diff --git a/04 UebgMo ZyklischeListe/obj/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.csproj.CoreCompileInputs.cache b/04 UebgMo ZyklischeListe/obj/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000000000000000000000000000000000000..866b744e18d17bd43f4fc4b66cbb3dbc817b1992 --- /dev/null +++ b/04 UebgMo ZyklischeListe/obj/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +c0523642d3f3714f80c0cf31b3f8720f51a0bc09 diff --git a/04 UebgMo ZyklischeListe/obj/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.csproj.FileListAbsolute.txt b/04 UebgMo ZyklischeListe/obj/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.csproj.FileListAbsolute.txt new file mode 100644 index 0000000000000000000000000000000000000000..290d03f484de52c46383531a88757d233b696477 --- /dev/null +++ b/04 UebgMo ZyklischeListe/obj/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.csproj.FileListAbsolute.txt @@ -0,0 +1,13 @@ +C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\04 UebgMo ZyklischeListe\bin\Debug\netcoreapp3.1\04 UebgMo ZyklischeListe.exe +C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\04 UebgMo ZyklischeListe\bin\Debug\netcoreapp3.1\04 UebgMo ZyklischeListe.deps.json +C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\04 UebgMo ZyklischeListe\bin\Debug\netcoreapp3.1\04 UebgMo ZyklischeListe.runtimeconfig.json +C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\04 UebgMo ZyklischeListe\bin\Debug\netcoreapp3.1\04 UebgMo ZyklischeListe.runtimeconfig.dev.json +C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\04 UebgMo ZyklischeListe\bin\Debug\netcoreapp3.1\04 UebgMo ZyklischeListe.dll +C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\04 UebgMo ZyklischeListe\bin\Debug\netcoreapp3.1\04 UebgMo ZyklischeListe.pdb +C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\04 UebgMo ZyklischeListe\obj\Debug\netcoreapp3.1\04 UebgMo ZyklischeListe.csproj.CoreCompileInputs.cache +C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\04 UebgMo ZyklischeListe\obj\Debug\netcoreapp3.1\04 UebgMo ZyklischeListe.AssemblyInfoInputs.cache +C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\04 UebgMo ZyklischeListe\obj\Debug\netcoreapp3.1\04 UebgMo ZyklischeListe.AssemblyInfo.cs +C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\04 UebgMo ZyklischeListe\obj\Debug\netcoreapp3.1\04 UebgMo ZyklischeListe.dll +C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\04 UebgMo ZyklischeListe\obj\Debug\netcoreapp3.1\04 UebgMo ZyklischeListe.pdb +C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\04 UebgMo ZyklischeListe\obj\Debug\netcoreapp3.1\04 UebgMo ZyklischeListe.genruntimeconfig.cache +C:\Users\wienkop\source\repos\prog2-ss2020-wienkop\04 UebgMo ZyklischeListe\obj\Debug\netcoreapp3.1\04 UebgMo ZyklischeListe.csprojAssemblyReference.cache diff --git a/04 UebgMo ZyklischeListe/obj/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.csprojAssemblyReference.cache b/04 UebgMo ZyklischeListe/obj/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.csprojAssemblyReference.cache new file mode 100644 index 0000000000000000000000000000000000000000..8a5ef041ae8402be96bf3fc66b33aedfc9a2f5c5 Binary files /dev/null and b/04 UebgMo ZyklischeListe/obj/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.csprojAssemblyReference.cache differ diff --git a/04 UebgMo ZyklischeListe/obj/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.dll b/04 UebgMo ZyklischeListe/obj/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.dll new file mode 100644 index 0000000000000000000000000000000000000000..1be08615678305fc6e19fbb6e2afc2c5fdb7530a Binary files /dev/null and b/04 UebgMo ZyklischeListe/obj/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.dll differ diff --git a/04 UebgMo ZyklischeListe/obj/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.exe b/04 UebgMo ZyklischeListe/obj/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.exe new file mode 100644 index 0000000000000000000000000000000000000000..7bff3e8b45891c7386fbae69bfcb6c3c202077c4 Binary files /dev/null and b/04 UebgMo ZyklischeListe/obj/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.exe differ diff --git a/04 UebgMo ZyklischeListe/obj/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.genruntimeconfig.cache b/04 UebgMo ZyklischeListe/obj/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.genruntimeconfig.cache new file mode 100644 index 0000000000000000000000000000000000000000..34bedab819ef1631d37d6e87ef9a716c545a105e --- /dev/null +++ b/04 UebgMo ZyklischeListe/obj/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.genruntimeconfig.cache @@ -0,0 +1 @@ +86c8e15dd33445635927cfaf398408205fd11473 diff --git a/04 UebgMo ZyklischeListe/obj/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.pdb b/04 UebgMo ZyklischeListe/obj/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.pdb new file mode 100644 index 0000000000000000000000000000000000000000..3e444d3b343b8a819f52f2ca325ec071240d0f44 Binary files /dev/null and b/04 UebgMo ZyklischeListe/obj/Debug/netcoreapp3.1/04 UebgMo ZyklischeListe.pdb differ