From 6645c8305b00f090c78e4fb9f9771e9dab8dea85 Mon Sep 17 00:00:00 2001 From: fdai7781 Date: Sun, 12 Nov 2023 14:52:40 +0000 Subject: [PATCH 1/9] Update UebungJava.md --- UebungJava.md | 163 +++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 162 insertions(+), 1 deletion(-) diff --git a/UebungJava.md b/UebungJava.md index f4946c3..75e7e6b 100644 --- a/UebungJava.md +++ b/UebungJava.md @@ -1,2 +1,163 @@ -### Zeile 36 bis 38 aktiviert +# Bevor Zeile 36 bis 38 aktiviert wurde: + +### Ausgegeben: + +(Nummern willkuerlich ausgewaelt) + +Enter an integer number: 3 +number 3 passed check: true + +Enter an integer number: 4 +number 4 passed check: false + +Enter an integer number: 5 +number 5 passed check: true + +Enter an integer number: 6 +number 6 passed check: false + +Enter an integer number: 0 +number 0 passed check: true + +Enter an integer number: 11 +number 11 passed check: true + +Enter an integer number: 12 +number 12 passed check: false + +# Zeile 36 bis 38 aktiviert + +Ausgegeben: + +enter an integer number: 3 +input: 3, Schleifenvariable: 2, Ergebnis 1 +number 3 passed check: true + +enter an integer number: 4 +input: 4, Schleifenvariable: 2, Ergebnis 0 +number 4 passed check: false + +enter an integer number: 5 +input: 5, Schleifenvariable: 2, Ergebnis 1 +input: 5, Schleifenvariable: 3, Ergebnis 2 +input: 5, Schleifenvariable: 4, Ergebnis 1 +number 5 passed check: true + +enter an integer number: 6 +input: 6, Schleifenvariable: 2, Ergebnis 0 +number 6 passed check: false + +enter an integer number: 0 +number 0 passed check: true + +enter an integer number: 11 +input: 11, Schleifenvariable: 2, Ergebnis 1 +input: 11, Schleifenvariable: 3, Ergebnis 2 +input: 11, Schleifenvariable: 4, Ergebnis 3 +input: 11, Schleifenvariable: 5, Ergebnis 1 +input: 11, Schleifenvariable: 6, Ergebnis 5 +input: 11, Schleifenvariable: 7, Ergebnis 4 +input: 11, Schleifenvariable: 8, Ergebnis 3 +input: 11, Schleifenvariable: 9, Ergebnis 2 +input: 11, Schleifenvariable: 10, Ergebnis 1 +number 11 passed check: true + +enter an integer number: 12 +input: 12, Schleifenvariable: 2, Ergebnis 0 +number 12 passed check: false + +# Breakpoint + Debugg Modus + +### Zahl 45 + +Zahl 45 eingegeben und ausgegeben wurde die Variable: + +nextInt: 45 +i:2 + +f5 gedrückt neue Variable: + +input: 45, Schleifenvariable: 2, Ergebnis 1 + +i:3 + +erneut f5 gedrückt: + +input: 45, Schleifenvariable: 3, Ergebnis 0 +number 45 passed check: false + +### Zahl 47 + + private boolean checkNumber(int nextInt) { nextInt = 47 + for (int i = 2; i < nextInt; i++) { i = 2, nextInt = 47 + int result = nextInt % i; nextInt = 47, i = 2 + out.println(String.format( + "input: %d, Schleifenvariable: %d, Ergebnis %d", nextInt, i, + result)); + if (0 == result) { + return false; + } + } + return true; + } +Variable: + +nextInt: 47 +i: 2 + +f5 (Resume): + + private boolean checkNumber(int nextInt) { nextInt = 47 + for (int i = 2; i < nextInt; i++) { i = 3, nextInt = 47 + int result = nextInt % i; nextInt = 47, i = 3 + out.println(String.format( + "input: %d, Schleifenvariable: %d, Ergebnis %d", nextInt, i, + result)); + if (0 == result) { + return false; + } + } + return true; + } + +Variable: + +nextInt: 47 +i:3 + +f5 (Resume): + + private boolean checkNumber(int nextInt) { nextInt = 47 + for (int i = 2; i < nextInt; i++) { i = 4, nextInt = 47 + int result = nextInt % i; nextInt = 47, i = 4 + out.println(String.format( + "input: %d, Schleifenvariable: %d, Ergebnis %d", nextInt, i, + result)); + if (0 == result) { + return false; + } + } + return true; + } +Variable: + +nextInt: 47 +i: 4 + +### Uebung 2 + + private boolean checkNumber(int nextInt) { nextInt = 23 + if (count > nextInt) + return true; + if (nextInt % count == 0) + return false; + nextInt = nextInt - (nextInt / count); nextInt = 23, count = 3 + count++; count = 3 + return checkNumber(nextInt); nextInt = 23 + } + +Variable: + +nextInt: 23 +count: 3 From e055879fad2829303b1067b5f02e6b74e4fe2add Mon Sep 17 00:00:00 2001 From: fdai7781 Date: Sun, 12 Nov 2023 17:48:03 +0000 Subject: [PATCH 2/9] Update von privatem Laptop --- UebungJava.md | 103 ++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 88 insertions(+), 15 deletions(-) diff --git a/UebungJava.md b/UebungJava.md index 75e7e6b..470fffd 100644 --- a/UebungJava.md +++ b/UebungJava.md @@ -1,4 +1,6 @@ -# Bevor Zeile 36 bis 38 aktiviert wurde: +# Uebung 1 + +## Bevor Zeile 36 bis 38 aktiviert wurde: ### Ausgegeben: @@ -25,7 +27,7 @@ number 11 passed check: true Enter an integer number: 12 number 12 passed check: false -# Zeile 36 bis 38 aktiviert +## Zeile 36 bis 38 aktiviert Ausgegeben: @@ -66,20 +68,20 @@ enter an integer number: 12 input: 12, Schleifenvariable: 2, Ergebnis 0 number 12 passed check: false -# Breakpoint + Debugg Modus +## Breakpoint + Debugg Modus ### Zahl 45 Zahl 45 eingegeben und ausgegeben wurde die Variable: -nextInt: 45 -i:2 +nextInt = 45 und +i = 2 f5 gedrückt neue Variable: input: 45, Schleifenvariable: 2, Ergebnis 1 -i:3 +i = 3 erneut f5 gedrückt: @@ -102,8 +104,8 @@ number 45 passed check: false } Variable: -nextInt: 47 -i: 2 +nextInt = 47 und +i = 2 f5 (Resume): @@ -122,8 +124,8 @@ f5 (Resume): Variable: -nextInt: 47 -i:3 +nextInt = 47 und +i = 3 f5 (Resume): @@ -141,10 +143,33 @@ f5 (Resume): } Variable: -nextInt: 47 -i: 4 +nextInt = 47 und +i = 4 + +# Uebung 2 + +## Ohne Breakpoint +enter an integer number: 3 + +number 3 passed check: true + +enter an integer number: 4 + +number 4 passed check: false + +enter an integer number: 11 + +number 11 passed check: false + +enter an integer number: 12 + +number 12 passed check: false + +enter an integer number: 0 + +number 0 passed check: true -### Uebung 2 +## Breakpoint Zeile 40 + Zahl 45 eingegeben private boolean checkNumber(int nextInt) { nextInt = 23 if (count > nextInt) @@ -158,6 +183,54 @@ i: 4 Variable: -nextInt: 23 -count: 3 +nextInt = 23 und +count = 3 + +9 Eintraege im Debugg review, darunter 3 Unterpunkte. +Die Unterpunkte in "Thread [main]" heissen: +- Uebung2.checkNumber(int) +- Uebung2.run() +- Uebung2.main(String[]) + +## step over + + private boolean checkNumber(int nextInt) { nextInt = 16 + if (count > nextInt) + return true; + if (nextInt % count == 0) + return false; + nextInt = nextInt - (nextInt / count); nextInt = 16, count = 4 + count++; count = 4 + return checkNumber(nextInt); nextInt = 16 + } + +Variable: + +nextInt = 16 und +count = 4 + +von Zeile 40 nichts geandert. Weiterhin auf Zeile 40. +10 Eintraege im Debugg review, darunter 4 Unterpunkte. +Die Unterpunkte in Thread [main] heissen: +- Uebung2.checkNumber(int) +- Uebung2.checkNumber(int) +- Uebung2.run() +- Uebung2.main(String[]) + +## step into + +von Zeile 40 zu Zeile 34. +11 Eintraege im Debugg review, darunter 5 Unterpunkte. +Die Unterpunkte in Thread [main] heissen: +- Uebung2.checkNumber(int) +- Uebung2.checkNumber(int) +- Uebung2.checkNumber(int) +- Uebung2.run() +- Uebung2.main(String[]) + +# Fragen für die naechste Vorlesung/Übung: +Welche Eintraege im Debugg review sind erfordert? +Welcher Inhalt Variable sind erfordert? +Programm wie bisher starten bedeutet ohne Debuggen? +bei Uebung2 nach dem ersten Stichpunkt keine Ergebnisse aufschreiben? From 774ccf5e0a7c58e3a45fe4487c1a49afebfea0cd Mon Sep 17 00:00:00 2001 From: fdai7781 Date: Sun, 12 Nov 2023 19:22:01 +0000 Subject: [PATCH 3/9] Update Lerntagebuch.md (Auf privatem Laptop) --- Lerntagebuch.md | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/Lerntagebuch.md b/Lerntagebuch.md index dfa3116..1cab7a1 100644 --- a/Lerntagebuch.md +++ b/Lerntagebuch.md @@ -25,7 +25,21 @@ Befehle die ich erlernt habe: - Programmiersprachen kennenlernen - Die Programmiersprachen (TypeScript, JavaScript etc.) ausarbeiten in einer Gruppe aus 3-4 Leuten ### Erkenntnis -Durch die Erkenntnis verschiedener Programmiersprachen und Paradigmen kann ich diese in Gruppenprojekte verwenden. Natuerlich nachdem man Erkenntnisse gewonnen hat. +Die SOLID-Prinzipien sind die Zusammenfassung von 5 Prinzipien, die in der objekorientierten Programmierung dazu beitragen, den Code wertbar, flexibel und robust zu machen. Das KISS-Prinzip, auch Stupid-Prinzip genannt, ist ein Leitsatz, der propagiert Dinge nicht zu kompliziert zu sehen / zu machen und die einfachste Loesung fuer ein Problem zu suchen (Keep It Simple, Stupid (Einer der Interpretationen des KISS-Akronyms)). ### Wiederholung -Imperative Programmierung ist ein Programmierparadigma, in dem ein Programm aus eine Folge von Anweisungen besteht, die vorgeben, in welcher Reihenfolge was vom Computer getan werden soll. Beispiele hierzu waeren natuerlich Programmiersprachen, sowie Koch Rezepte oder Prozess-Checklisten. Hier sieht man auch, dass vieles nur in einer bestimmten Reihenfolge funktioniert. Ansonsten waere das Endergebnis nicht zufriedenstellend. +Imperative Programmierung ist ein Programmierparadigma, in dem ein Programm aus eine Folge von Anweisungen besteht, die vorgeben, in welcher Reihenfolge was vom Computer getan werden soll. Beispiele hierzu waeren natuerlich Programmiersprachen, sowie Koch Rezepte oder Prozess-Checklisten. Hier sieht man auch, dass vieles nur in einer bestimmten Reihenfolge funktioniert. Ansonsten waere das Endergebnis nicht zufriedenstellend / nicht korrekt. Die ersten Programmiersprachen, die Imperativ als Paradigma enthalten waren sehr hardwarenahe und benoetigten eine "Schritt fuer Schritt" Anweisung. + +--- +## SU 03 (07.11.2023) + +### Lernziel +- Uebung 1 und 2 in Java (VsCode) bearbeitet und Endergebnisse notiert +- Geschichte der Programmierwerkzeuge +- Entwurfsmuster Definition, Vor- / Nachteile, Beispiele etc. +- Alles rund um IDE +### Erkenntnis +Die Endergebnisse der Uebung finden Sie in einer seperaten Datei Namens "UebungJava". +### Wiederholung +IDE im Zusammenhang von Debugging bedeutet die Arbeitsreihenfolge der Prozedur und Methoden, so wie die Werte von Variablen, waerend der Laufzeit des Programms zu Beobachten. +Der erste Computer Bug wurde 1945 festgehalten. From 23a05df5fc00c18cdb7b563cc2d1edd4c8fddc5b Mon Sep 17 00:00:00 2001 From: fdai7781 Date: Sun, 12 Nov 2023 21:29:25 +0000 Subject: [PATCH 4/9] Update (auf privatem Laptop) --- Lerntagebuch.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/Lerntagebuch.md b/Lerntagebuch.md index 1cab7a1..844045a 100644 --- a/Lerntagebuch.md +++ b/Lerntagebuch.md @@ -34,12 +34,13 @@ Die ersten Programmiersprachen, die Imperativ als Paradigma enthalten waren sehr ## SU 03 (07.11.2023) ### Lernziel -- Uebung 1 und 2 in Java (VsCode) bearbeitet und Endergebnisse notiert +- Uebung 1 und 2 in VsCode (Java) bearbeitet und Endergebnisse notiert - Geschichte der Programmierwerkzeuge - Entwurfsmuster Definition, Vor- / Nachteile, Beispiele etc. - Alles rund um IDE ### Erkenntnis -Die Endergebnisse der Uebung finden Sie in einer seperaten Datei Namens "UebungJava". +Die Endergebnisse der Uebung finden Sie in einer seperaten Datei Namens "UebungJava". Durch die Uebung kann ich den Vorgang vom Debuggen verstehen und anwenden. +Das Debugging ist in Gruppenprojekten nuetzlich, um Fehler recht schnell zu finden und den Code der anderen Gruppenteilnehmer schneller nachvollziehen zu koennen. ### Wiederholung -IDE im Zusammenhang von Debugging bedeutet die Arbeitsreihenfolge der Prozedur und Methoden, so wie die Werte von Variablen, waerend der Laufzeit des Programms zu Beobachten. -Der erste Computer Bug wurde 1945 festgehalten. +Die IDE bedeutet "integrated development environment" (oder im deutschen "integrierte Entwicklungsumgebung" genannt). Sie ist eine Sammlung von Computerprogrammen, mit denen die Aufgaben der Softwareentwicklung moeglichst ohne Medienbrueche bearbeitet werden koennen. +Definition Medienbrueche: wenn waehrend einer Informationsverarbeitung, innerhalb der Uebertragungskette, ein wechsel des Arbeitsmediums erfolgt. Soll, wenn moeglich, minimiert oder gar vermieden werden, da die Gefahr auf verlangsamen der Informationsbearbeitung und einer Informatinsfaelschung besteht. From 693c64af98aa43a0981e414de16315aa9f054b70 Mon Sep 17 00:00:00 2001 From: fdai7781 Date: Sun, 12 Nov 2023 21:38:50 +0000 Subject: [PATCH 5/9] Update (vom privatem Laptop) --- Lerntagebuch.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Lerntagebuch.md b/Lerntagebuch.md index 844045a..8a57f88 100644 --- a/Lerntagebuch.md +++ b/Lerntagebuch.md @@ -25,9 +25,9 @@ Befehle die ich erlernt habe: - Programmiersprachen kennenlernen - Die Programmiersprachen (TypeScript, JavaScript etc.) ausarbeiten in einer Gruppe aus 3-4 Leuten ### Erkenntnis -Die SOLID-Prinzipien sind die Zusammenfassung von 5 Prinzipien, die in der objekorientierten Programmierung dazu beitragen, den Code wertbar, flexibel und robust zu machen. Das KISS-Prinzip, auch Stupid-Prinzip genannt, ist ein Leitsatz, der propagiert Dinge nicht zu kompliziert zu sehen / zu machen und die einfachste Loesung fuer ein Problem zu suchen (Keep It Simple, Stupid (Einer der Interpretationen des KISS-Akronyms)). +Die SOLID-Prinzipien sind die Zusammenfassung von 5 Prinzipien, die in der objekorientierten Programmierung dazu beitragen, den Code wertbar, flexibel und robust zu machen. Das KISS-Prinzip, auch Stupid-Prinzip genannt, ist ein Leitsatz, der propagiert Dinge nicht zu kompliziert zu sehen oder zu machen und die einfachste Loesung fuer ein Problem zu suchen (Keep It Simple, Stupid (Einer der Interpretationen des KISS-Akronyms)). ### Wiederholung -Imperative Programmierung ist ein Programmierparadigma, in dem ein Programm aus eine Folge von Anweisungen besteht, die vorgeben, in welcher Reihenfolge was vom Computer getan werden soll. Beispiele hierzu waeren natuerlich Programmiersprachen, sowie Koch Rezepte oder Prozess-Checklisten. Hier sieht man auch, dass vieles nur in einer bestimmten Reihenfolge funktioniert. Ansonsten waere das Endergebnis nicht zufriedenstellend / nicht korrekt. +Imperative Programmierung ist ein Programmierparadigma, in dem ein Programm aus eine Folge von Anweisungen besteht, die vorgeben, in welcher Reihenfolge was vom Computer getan werden soll. Beispiele hierzu waeren natuerlich Programmiersprachen, sowie Koch Rezepte oder Prozess-Checklisten. Hier sieht man auch, dass vieles nur in einer bestimmten Reihenfolge funktioniert. Ansonsten waere das Endergebnis nicht zufriedenstellend oder nicht korrekt. Die ersten Programmiersprachen, die Imperativ als Paradigma enthalten waren sehr hardwarenahe und benoetigten eine "Schritt fuer Schritt" Anweisung. --- @@ -36,7 +36,7 @@ Die ersten Programmiersprachen, die Imperativ als Paradigma enthalten waren sehr ### Lernziel - Uebung 1 und 2 in VsCode (Java) bearbeitet und Endergebnisse notiert - Geschichte der Programmierwerkzeuge -- Entwurfsmuster Definition, Vor- / Nachteile, Beispiele etc. +- Entwurfsmuster Definition, Vor- und Nachteile, Beispiele etc. - Alles rund um IDE ### Erkenntnis Die Endergebnisse der Uebung finden Sie in einer seperaten Datei Namens "UebungJava". Durch die Uebung kann ich den Vorgang vom Debuggen verstehen und anwenden. From 6270462ab4fe76738e6d54a3ae8dcea691b1585c Mon Sep 17 00:00:00 2001 From: fdai7781 Date: Sun, 12 Nov 2023 21:39:45 +0000 Subject: [PATCH 6/9] Update (vom privatem Laptop) --- Lerntagebuch.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Lerntagebuch.md b/Lerntagebuch.md index 8a57f88..81e55aa 100644 --- a/Lerntagebuch.md +++ b/Lerntagebuch.md @@ -39,7 +39,7 @@ Die ersten Programmiersprachen, die Imperativ als Paradigma enthalten waren sehr - Entwurfsmuster Definition, Vor- und Nachteile, Beispiele etc. - Alles rund um IDE ### Erkenntnis -Die Endergebnisse der Uebung finden Sie in einer seperaten Datei Namens "UebungJava". Durch die Uebung kann ich den Vorgang vom Debuggen verstehen und anwenden. +Die Endergebnisse der Uebung finden Sie in einer seperaten Datei Namens "UebungJava.md". Durch die Uebung kann ich den Vorgang vom Debuggen verstehen und anwenden. Das Debugging ist in Gruppenprojekten nuetzlich, um Fehler recht schnell zu finden und den Code der anderen Gruppenteilnehmer schneller nachvollziehen zu koennen. ### Wiederholung Die IDE bedeutet "integrated development environment" (oder im deutschen "integrierte Entwicklungsumgebung" genannt). Sie ist eine Sammlung von Computerprogrammen, mit denen die Aufgaben der Softwareentwicklung moeglichst ohne Medienbrueche bearbeitet werden koennen. From 2f7822355cfc34ff793f851386f5b3b40b84860c Mon Sep 17 00:00:00 2001 From: fdai7781 Date: Sun, 12 Nov 2023 21:44:51 +0000 Subject: [PATCH 8/9] Update von privatem Laptop --- Lerntagebuch.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Lerntagebuch.md b/Lerntagebuch.md index 81e55aa..1761421 100644 --- a/Lerntagebuch.md +++ b/Lerntagebuch.md @@ -34,7 +34,7 @@ Die ersten Programmiersprachen, die Imperativ als Paradigma enthalten waren sehr ## SU 03 (07.11.2023) ### Lernziel -- Uebung 1 und 2 in VsCode (Java) bearbeitet und Endergebnisse notiert +- Uebung 1 und 2 in VsCode (Java) bearbeitet und Endergebnisse notiert - Geschichte der Programmierwerkzeuge - Entwurfsmuster Definition, Vor- und Nachteile, Beispiele etc. - Alles rund um IDE From 3ff7a813db095714b655976ed7e28a28e2b68771 Mon Sep 17 00:00:00 2001 From: fdai7781 Date: Fri, 17 Nov 2023 10:32:15 +0000 Subject: [PATCH 9/9] Delete Test.md --- Test.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 Test.md diff --git a/Test.md b/Test.md deleted file mode 100644 index e69de29..0000000