Trace-Tabellen - Einstieg in die Informatik frankjuchim https://www.youtube.com/watch?v=6USCNFjnZNs Transkript (automatisch erstellt) 0:00 herzlich willkommen zurück zu diesem Video heute geht es um trace Tabellen was genau Trays Tabellen sind und wo wir sie anwenden können das erfahren wir in 0:07 diesem Video los geht's [Musik] alles klar lasst uns starten und wir gucken uns erst einmal an wofür wir 0:20 überhaupt trace Tabellen brauchen können in welchem Einsatzgebiet sie sozusagen unterwegs sind und zwar kennen wir immer noch das Problem wir haben in den 0:29 letzten Wochen Variablen kennengelernt also vor zwei Wochen letzte Woche haben wir Variablen so ein bisschen angewendet und 0:34 im Laufe eines Programms da wechselt eine Variable häufig den Wert der wie das hier gezeichnet mal das ist die eine Zahl die drin ist man ist die andere 0:42 Zahl hier drin ist und man verliert so ein bisschen den Überblick und mit trace Tabellen kann man einmal dann sozusagen sein Programm überprüfen und gucken wann 0:52 hat denn meine variable welchen Wert bei einer bestimmten Eingabe wie genau das funktioniert das gucken wir uns jetzt mal ein Beispiel an und zwar habe ich 1:00 mal ein kleines Programm mitgebracht was genau das Programm macht das kann man erstmal gar nicht sagen aber auch dafür nutzen dann seht ihr schon als nächstes 1:10 haben wir die Zeilen durchnummeriert und das ist der erste wichtige Punkt bei trade Tabellen wie nummeriere ich die Zeiten ihr seht ich habe mich alle 1:18 Zeilen nummeriert zum Beispiel das wiederhole bis habe ich nicht nummeriert als Teilenummer ich habe die eins bis sechs nur nummeriert an in den Zeilen wo 1:27 sozusagen Anweisungen Werte von Variablen ändern können ja bei irgendwelchen Abfragen zum Beispiel ist die Stelle größer als Länge von Zahl 1:35 dass da zwischen vier und fünf passiert es ist nicht so interessant für mich das ändert keinen Wert den brauche ich diese Zeilen nicht nummerieren welche Zahlen 1:44 durchnummeriert habe dann kommt als nächstes naja meine Eingabe und zwar werde ich jetzt die Zahl bitte 1:53 Anfang eine Zahl abgefragt die mir Algorithmus 435 eingegeben hier drei fünf was macht wissen wir noch gar nicht aber das 2:03 können wir mit Hilfe der Trade herausfinden und space Tabelle beinhaltet schon das Wort Tabelle und die Tabelle sieht auch genauso aus die 2:11 Hand in unserem Fall für diesen speziellen Algorithmus jetzt fünf Spalten eine Spalte gibt es immer das ist die Zeile das ist die 2:21 erste Spalte immer und dann gibt es pro variabel die in dem Programm Auftritt eine Spalte wir haben jetzt folgende Spalten einmal die Spalte beantworten 2:31 einmal die Spalte zahlen und einmal die Spalte Ergebnisse und einmal die spaltestelle diese fünf Variablen finden wir in unserem Programm 2:42 auch wieder so und nun machen wir folgendes in der Festival wir gehen Zeile für Zeile durch und gucken welche Werte unsere Variablen 2:53 haben womit haben wir ne unsere Eingabe ist 435 das passiert im Zeile 1 deswegen steht das auch also in Zeile 1 legen wir unsere variable Antwort mit ihr drei 3:06 fünf vier 135 und alle anderen variantenstelle haben noch keine Werte deswegen machen wir das man Strich rein dann gehen wir weiter zur Zeile 2 na ja 3:19 da wird die Zahl auf Antwort gesetzt das heißt Antwort bleibt so wir schreiben immer alles mit das heißt Teile 2 Antwort bleibt 435 Zahl wird 3:31 auch auf Antwort gesetzt also ist auch 435 Ergebnisse und Stelle sind weiterhin leer gucken wir uns die nächste Zeile an 3:40 Zeile 3 da setzen wir Ergebnisse auf Null klar das machen wir dann auch in unserer Tabelle also alles andere bleibt so 3:48 ändert sich ja nichts ja Antwort und Zahl bleiben gleich Zeile ist 3 Ergebnisse 5.0 gesetzt Stelle hat noch gar keinen Wert der setzen wir jetzt auf 3:56 eins in Zeile 4 also auch noch alles klar wenn wir schon bisher ist nichts Großes passiert ist einfach so jetzt müssen wir folgendes überprüfen und zwar 4:07 überprüfen wir wiederhole bis ist die Stelle größer als Länge von zahlen unsere Stelle ist 1 Länge von Zahl ist 3 4:18 also ist die Stelle kleiner als Länge von zahlen damit wiederhole bis ist das noch nicht erfüllt also gehen wir ins Zeile 5 für 4:28 die Schleife einmal aus in Zeile 5 setzen wir Ergebnis auf Ergebnis plus Zeichen Stelle von Zahlen okay jetzt 4:39 müssen wir überlegen Ergebnis ist 0 also machen wir Null plus Zeichen Stelle des 1 und Zahl Stelle eins von Zahl ist 4:51 4 also haben wir das schön 0 + 4 0 + 4 sind das heißt in den nächsten Zeile würden wir 4:59 Ergebnisse auf 4 setzen und dann in Zeile 6 ändern wir stellen um 1 das heißt Stelle ein und um eine 5:09 erhöht wird jetzt auch in Zeile 6 ist dann stelle einen Höhe alles andere wird wieder so mitgeschrieben so jetzt springen wir wieder in unser wiederhole 5:18 bis und überprüfen ja Stelle ist jetzt zwei und damit immer noch nicht größer echt größer als 3 weil das ist ja die Länge von Zahlen 5:31 immer noch die länge 3 also machen wir noch mal Zeile 5 und das ist ja die komplizierte Zeile wir haben jetzt in Ergebnis steht vier drinnen ist 5:42 2 anstelle 2 von Zahl steht die 3 also haben wir vier plus drei vier plus drei sind 7 also kommt im nächsten Teil 5:53 unserer trace-tabelle die 7 raus in Ergebnis und wir haben auch wieder Zeile 5 6:05 das ist ganz entscheidend die anderen bleiben hier bleiben gleich Ergebnisse 7 Stelle bleibt auf zwei in der nächsten Zeile Zeile 6 geht es wieder weiter dann 6:13 erhöhen wir wieder die Stellung ein und der Rest bleibt gleich und wir sehen schon Antwort und Zahl bleiben eigentlich die ganze Zeit gleich weil in 6:21 der Schleife dort drüben wird auch gar nichts an Antwort und Zahl geändert deswegen werden wir die einfach immer mitschreiben aber wir sollen schreiben 6:29 Sie auch mit wir wollen ja eine vollständige trailstabelle am Ende haben so wieder einschalten Durchlauf geschafft 6:37 nächster Schleifen Durchlauf wir gucken wieder bei wiederhole bist Belle ist jetzt 3 ist 3 echt größer als 3 nein also machen wir noch einen Durchlauf wir 6:48 haben 7 Plus und jetzt haben wir die letzte Stelle von Zahl das ist dann oh hier wenn ich die drei jetzt ist die fünf 6:55 sieben plus fünf sind 12 das heißt im Ergebnis müsste jetzt 12 gehen und an dieser Stelle müsste jetzt Zeile 5 sein also haben wir hier Zeile 5 die hinter 7:06 mir beiden bleiben gleich mal sehen so und hier kommt die 12 rein natürlich die drei wunderbar und dann haben wir noch mal eine Zeile 7:17 alle sechs noch mal die beiden Einträge hinter mir bleiben gleich die 12 bleibt und Stelle wird auch hier geschält so und nun gehen wir 7:28 wieder zu wiederhole bis Bier ist echt größer als Länge von zahlenlänge von zahlungswert 3 und damit ist unser Algorithmus beendet an dieser Stelle 7:37 haben wir unseren Algorithmus einmal komplett durchlaufen und wir haben erkannt alles klar unser Algorithmus addiert am Ende alle 7:45 einzelnen Ziffern der Zahl unsere Eingabe hintereinander auf und was ist das das ist am Ende einfach die Quersumme die herauskommt also haben wir 7:56 herausgefunden mit dieser scheiß Tabelle herausgefunden dass unser Algorithmus im Endeffekt die Quersumme der Eingabe berechnen eine Kleinigkeit möchte ich 8:05 noch machen damit wir so ein bisschen ein Algorithmus auch einteilen lernen wir haben zum einen also einmal den oberen Bereich des Algorithmus einmal 8:11 den unteren Bereich des Algorithmus ich schleife sozusagen der obere Bereich wird häufig Initialisierung genannt und der unteren Bereich ist die 8:22 Wiederholung bis die Abbruchbedingung erfüllt ist also wir haben im Endeffekt zwei Teile eines Algorithmus die Initialisierung läuft immer relativ 8:30 glatt durch da ist selten eine Schleife und unten haben wir dann den Teil der häufiger wiederholt ausgeführt wird deshalb eine Abbruchbedingung erfüllt 8:40 ist nun haben wir die tracervelle eingesetzt um herauszufinden was unser Algorithmus eigentlich tut bin aber noch eine andere 8:48 Einsatzmöglichkeit von tractabellen und die ist noch häufiger und zwar wollen wir anhand einer Chase Tabelle herausfinden wo ein Fehler in unserem 8:56 Algorithmus stecken könnte häufig wissen wir ja was an sein Algorithmus tun soll aber wir haben irgendwie einen kleinen Fehler drin und den müssen wir finden 9:03 genau das kommt in der kleinen Übungsaufgabe jetzt kommt die kannst du am besten machen wir haben den Fakultät sehr gut Fakultät 9:12 ja Fakultät von fünf ist beispielsweise 5 x 4 x 3 x 2 x 1 wir wollen uns einen Algorithmus programmieren genau diese Fakultät für eine eingegebene Zahl 9:23 berechnet ich habe einen Vorschlag gemacht ihr seht so aus unsere Eingabe soll zum Beispiel vier sein 9:30 und deine Aufgabe ist nun überprüfe die Funktionsweise das Algorithmus mit Hilfe einer Chase Tabelle und naja die lagebus ist noch 9:40 nicht ganz korrekt deine Aufgabe auch versuchen mal den Fehler in dem Algorithmus zu finden und melde dich gerne in den Kommentaren wenn du ihn 9:47 gefunden und korrigiert hast einen kleinen Tipp bekommst du noch von mir weil häufig ist es schwierig die Tabelle beim ersten Mal aufzustellen Quelle 9:54 würde so aussehen du hast hier Spalten die Zeile natürlich die Antwort natürlich wieder und n und q wie viel Zeilen es gibt rate ich dir an dieser 10:03 Stelle natürlich noch nicht hast du nur noch offene Fragen zu den trace Tabellen und zu anderen Themen Informatik Mathematik oder anderen 10:10 Fragen zu Grundlagen der Informatik dann freue ich mich von dir zu hören oder zu lesen in den Kommentaren ansonsten wenn du Lust hast mit mir in den nächsten 10:17 Wochen weiterhin ein bisschen die Grundlagen der Informatik zu erforschen dann freue ich mich für den Kanal abonnierst und wir sehen uns beim 10:24 nächsten Video bis dann ciao [Musik]