1 Datentypen In jeder Sprache gibt es Arten von Elementen, in Sprachen für Menschen nennen wir z.B. verschiedene Wörter Verben und Nomen, in Programmiersprachen haben wir außer Schlüsselworten der Sprache selbst verschiedene Arten von Daten mit denen gearbeitet wird. 1.1 Konventionen und Ausgabe In Java wie in allen imperativen Programmiersprachen verwendet man viele Variablen. Diese brauchen immer einen Namen. Aus der Schule sind wir gewohnt sehr kurze Namen wie x, y oder vielleicht φ zu verwenden. In Programmen macht dies keinen Sinn, denn es wird schwer den Sinn noch zu erkennen, wenn so kurze Namen verwendet werden. Am besten ist es sprechende Namen zu nehmen: datum, sekunden oder seitenlayout sind einfacher zu verstehen. Namen dürfen beliebig lang sein und müssen mit einem Buchstaben beginnen. Das sind A- Z, a-z und auch _ und $. Nach dem ersten Buchstaben dürfen sie auch Zahlen enthalten. Der Unterstrich und das Dollarzeichen sollen nicht verwendet werden, sie wurden früher für automatisch erzeugten Code genutzt und sind nur aus historischen Gründen erlaubt. Eine allgemeine Konvention ist, alle Variablen mit einem kleinen Buchstaben beginnen zu lassen und wenn es ein Satz wird die Anfangsbuchstaben der Worte groß zu schreiben. Also z.B. printServer12, userInterface oder auch iteratorFactory. Ausgaben werden mit dem Befehl System.out.print() gemacht. Was zwischen den Klammern steht wird ausgegeben. Schreibt man System.out.println() so wird zu- sätzlich ein Zeilenumbruch ausgegeben. 1 System.out.println("Hallo Welt"); 2 // gibt Hallo Welt aus 1.2 Variablen und Zahlen Damit unsere Programme sinnvolle Dinge tun benötigen sie meist Daten mit denen sie etwas machen können. Diese Daten werden in einem Speicherbereich in einem Programm abgelegt. Bevor man mit einer Variablen arbeiten kann muss man sie erst einmal deklarieren, d.h. an- legen: 1 int meinErsterInteger; Der Typ ist hier int. Es gibt ganze Zahlen, die wir mit dem Wort int markieren und Fließkommazahlen, für die wir double nehmen. In die Variable kommt eine Zahl, in dem wir eine Zuweisung machen: 1 meinErsterInteger = 5; 19.
[Audio] In unserer Präsentation über Java und andere imperative Programmiersprachen betrachten wir verschiedene Datentypen für Zahlen, die in unseren Programmen verwendet werden können. Diese werden in Variablen gespeichert, um sinnvolle Handlungen durchführen zu können. Wie funktioniert jedoch die Deklaration und Zuweisung von Variablen? Für Fließkommazahlen, die als 5.0 im Programm angezeigt werden, erfolgt die Deklaration und Zuweisung in einer Zeile, wie wir hier sehen: "double meinErsterDouble = 5.0;". Im Gegensatz zu mathematischen Variablen muss eine Programmvariable immer einen Wert enthalten, da sie andernfalls nicht verwendet werden kann und ein Fehler vom Compiler erkannt wird. Nun, da wir wissen, wie man Variablen deklariert und ihnen Werte zuweist, können wir auch Rechnungen durchführen. Die Grundrechenarten wie Addition, Subtraktion, Multiplikation und Division sind in Java verfügbar. In unserem Beispiel sehen wir eine einfache Formel, die wir berechnen. Häufig müssen Variablen in einem Programm um 1 erhöht werden. Dafür gibt es verschiedene Möglichkeiten: "i = i + 1;", "i += 1;", oder "i++;". Ebenso funktioniert es mit der Verringerung von Variablen durch die Verwendung von "-" und den Abkürzungen "+=" und "++". Zusätzlich zu den Grundrechenarten gibt es auch die Modulo-Operation, die den Rest beim Teilen ausgibt. Diese ist besonders nützlich bei der Arbeit mit ganzen Zahlen und ermöglicht es, im selben Zahlenbereich zu bleiben. Neben den verschiedenen Datentypen für Zahlen haben wir auch den boolean-Typ kennengelernt, der nur "wahr" oder "falsch" als Werte aufnehmen kann. Dieser wird vor allem bei Vergleichen verwendet und ermöglicht es, den Ablauf eines Programms zu steuern. Das war Slide Nummer 2 von insgesamt 18. Als Nächstes werden wir uns mit dem Thema der Kontrollstrukturen befassen. Vielen Dank für Ihre Aufmerksamkeit..
[Audio] Wir verwenden verschiedene Arten von Daten in Java und anderen imperativen Programmiersprachen, um sinnvolle Dinge in unseren Programmen zu tun. Diese Daten werden mit sprechenden Namen versehen und in Variablen gespeichert. Doch wie können wir sie vergleichen? Die Folie 3 von 18 zeigt uns die Vergleichsoperatoren in Java. Wir kennen die bekannten Operatoren wie "kleiner", "größer", "gleich" und "ungleich" für Zahlen. Doch wie ist es mit Text? Hier kommt der String-Typ ins Spiel, wie in Beispiel auf Folie 4 zu sehen ist. Neben int und double gibt es noch weitere Datentypen, wie byte, short, char und long, die je nach Anwendung ausgewählt werden. Wir müssen angeben, ob eine Zahl long oder float ist, indem wir ein "l" oder "f" an die Konstante anhängen. Das Beispiel auf Folie 5 verdeutlicht dies. Nun kennen wir die grundlegenden Vergleichsoperatoren und wichtige Datentypen in Java. Doch wie können wir sie kombinieren? Wir haben logische Operatoren wie "und", "oder" und "nicht", die auf Folie 6 erklärt werden. Es ist auch möglich, mehrere Vergleiche gleichzeitig durchzuführen, um komplexe Bedingungen zu prüfen - ein Beispiel dazu findet sich auf Folie 7. Damit haben wir einen Einblick in die wichtigsten Vergleichsoperatoren und Datentypen in Java erhalten. Auf den folgenden Folien werden wir tiefer in die Thematik einsteigen..
[Audio] In der Programmierung werden sprechende Namen für verschiedene Datentypen verwendet, die in Variablen gespeichert werden, um sinnvolle Aktionen in Programmen auszuführen. Auch in Java und anderen imperativen Programmiersprachen gibt es verschiedene Datentypen für Zahlen, die kleiner sind als der int-Typ. Der short-Typ kann beispielsweise 16-Bit-Werte speichern, während der byte-Typ nur 8-Bit-Werte aufnehmen kann. Für Zeichenketten wird der String-Typ genutzt, der immer in doppelten Anführungszeichen steht. Wenn jedoch nur ein einzelnes Zeichen benötigt wird, greift man auf den char-Typ zurück. Ein Beispiel dafür ist die Definition einer Variable, die den Buchstaben 'a' speichert und einfachen Anführungszeichen nutzt. Manchmal ist es jedoch notwendig, mit verschiedenen Datentypen gleichzeitig zu arbeiten. Nehmen wir an, wir möchten das zehnte Zeichen eines Wortes bestimmen, indem wir zu einem Buchstaben wie 'c' die Zahl 10 addieren. In Java kann dies mittels Typecasts realisiert werden. Dazu definieren wir eine char-Variable für den Buchstaben 'c' und eine int-Variable für die Zahl 10. Anschließend erhöhen wir den Wert der char-Variable um den Wert der int-Variable, indem wir sie mit '+=' verbinden. Java passt dabei automatisch den Datentyp der Variablen an, um sicherzustellen, dass wir immer noch mit einem char-Typ arbeiten. Dieser Vorgang wird als Typecast bezeichnet. In Java werden auch implizite Typecasts durchgeführt, wenn unterschiedliche Datentypen miteinander verrechnet werden. Wenn beispielsweise einer ganzen Zahl ein Fließkommazahl-Typ zugewiesen wird, erfolgt ein impliziter Typecast. Jedoch findet dieser nur statt, wenn der Wertebereich erweitert wird, nicht jedoch in umgekehrter Richtung. Im folgenden Beispiel wird versucht, die Zahl 1000 in einer Variable vom Typ byte zu speichern, was aufgrund des begrenzten Wertebereichs nicht möglich ist. Um diese Einschränkung zu umgehen, gibt es die Möglichkeit, einen expliziten Typecast durchzuführen, bei dem der Zieldatentyp explizit angegeben wird. Dies ist auch der Grund für die Bezeichnung "expliziter Typcast". Manchmal ist es jedoch notwendig, gegen die Richtung des impliziten Typecasts zu arbeiten. In diesem Fall muss der gewünschte Datentyp angegeben werden, um ein korrektes Ergebnis zu erzielen..
[Audio] In Java und anderen imperativen Programmiersprachen gibt es verschiedene Arten von Daten, die durch sprechende Namen gekennzeichnet und in Variablen gespeichert werden, um sinnvolle Aktionen in unseren Programmen auszuführen. Bisher haben wir die grundlegenden Datentypen kennengelernt und mit ihnen gearbeitet. Nun werden wir uns mit Kontrollstrukturen beschäftigen, die uns ermöglichen, je nach Bedarf unterschiedliche Anweisungen auszuführen. Zunächst werden wir uns mit Blöcken beschäftigen. In Java können mehrere Anweisungen, die zusammengehören, in einem Block zusammengefasst werden. Dieser Block wird dann wie eine einzelne Anweisung behandelt und führt mehrere Schritte aus. Als nächstes werden wir uns die if-Anweisung ansehen. Mit dieser können wir unterschiedliche Fälle unterscheiden. In der einfachsten Form wird eine Anweisung nur ausgeführt, wenn eine bestimmte Bedingung erfüllt ist. In unserem Beispiel wird zunächst Anweisung1 ausgeführt und anschließend wird der boolsche Ausdruck in der Klammer ausgewertet. Ist dieser wahr, wird AnweisungX ausgeführt, andernfalls wird Anweisung2 ausgeführt. Ein konkretes Beispiel könnte folgendermaßen aussehen: if(alter < 14) rabatt = 20; Die Variable "alter" wird zuvor im Programm gesetzt oder vom Benutzer eingegeben. Je nach Alter wird dann eine bestimmte Aktion ausgeführt. Anstatt einer einzelnen Anweisung können wir auch einen Block von Anweisungen verwenden, um mehrere Aufgaben auszuführen..
[Audio] In Java und anderen imperativen Programmiersprachen gibt es verschiedene Arten von Daten, für die sprechende Namen verwendet werden und die in Variablen gespeichert werden, um sinnvolle Dinge in unseren Programmen zu tun. Kontrollstrukturen sind ein wichtiger Bestandteil von Java. Eine davon ist das if-Statement, welches Bedingungen überprüft und je nach Ergebnis verschiedene Anweisungen ausführt. Auf Folie 6 findet sich ein Beispiel für die Verwendung des if-Statements. Hier wird überprüft, ob das Alter einer Person unter 14 Jahren liegt. Wenn dies der Fall ist, werden automatisch drei Variablen definiert, nämlich "rabatt", "druckenMitBildchen" und "familientarif". Diese Variablen sind bereits sinnvoll benannt und können im weiteren Verlauf des Programms verwendet werden. Ein häufiger Fehler besteht darin, nach dem if-Statement ein Semikolon zu setzen. Dadurch wird eine leere Anweisung hinzugefügt, die ungewollt immer ausgeführt wird. Falls im if-Block nur eine Anweisung enthalten ist, können die geschweiften Klammern weggelassen werden. Falls mehrere Möglichkeiten abgefragt werden müssen, gibt es das else-if-Statement. Dies erlaubt es, verschiedene Fälle abzudecken und Anweisungen für jeden Fall festzulegen. Wenn zwei Fälle sich gegenseitig ausschließen, kann auch ein else-Teil angegeben werden, der ausgeführt wird, wenn der boolsche Ausdruck des if-Statements falsch ist. Auf Folie 7 findet sich ein Beispiel für die Verwendung des else-if-Statements. Hier wird überprüft, welches Fahrzeug eine Person je nach Alter fahren darf. Es werden mehrere if-Abfragen gemacht, die jeweils ausschließen. Falls es nur zwei verschiedene Fälle gibt, kann auch ein else-Teil angegeben werden. Kontrollstrukturen sind unverzichtbar in der Programmierung und ermöglichen es, Bedingungen zu überprüfen und Anweisungen entsprechend auszuführen. Es ist wichtig, richtig mit geschweiften Klammern und Semikolons umzugehen, um unerwünschte Ergebnisse zu vermeiden. Auf den nächsten Folien werden wir uns weitere Kontrollstrukturen ansehen..
[Audio] Die switch-Anweisung ist eine praktische Möglichkeit, um in Java und anderen imperativen Programmiersprachen mehrere Fälle zu unterscheiden. Dabei werden sprechende Namen für verschiedene Arten von Daten verwendet und in Variablen gespeichert. Dies ermöglicht es uns, sinnvolle Dinge in unseren Programmen zu tun. Eine übliche Methode, um Mehrfachverzweigungen zu schreiben, ist die Verwendung von mehreren if-else-Statements. In manchen Fällen kann dies jedoch zu mehrdeutigem Code führen, wie beim sogenannten Dangling-else-Problem. Um dies zu vermeiden, empfiehlt es sich, Klammern zu setzen, um die Lesbarkeit zu verbessern. Eine alternative Möglichkeit zur if-else-Konstruktion ist die switch-Anweisung. Diese ermöglicht es, mehrere Fälle auf übersichtliche Art und Weise zu unterscheiden. Bei komplexeren Mehrfachverzweigungen empfehlen wir daher, die switch-Anweisung zu nutzen..
[Audio] Die Struktur der Kontrollstrukturen in der Programmiersprache Java und anderen imperativen Sprachen ermöglicht die Verwendung von verschiedenen Arten von Daten, die durch aussagekräftige Namen gekennzeichnet und in Variablen gespeichert werden. Diese Daten ermöglichen es uns, sinnvolle Aktionen in unseren Programmen auszuführen. In der achten Folie wird die Anwendung von switch-Case-Anweisungen dargestellt. Diese ermöglichen es uns, abhängig vom Wert einer Variablen verschiedene Codeblöcke auszuführen. Dabei können wir bestimmten Fällen spezifische Anweisungen zuweisen, die durch break-Anweisungen voneinander getrennt werden. Wenn kein Fall zutrifft, können wir im default-Block festlegen, welche Anweisungen ausgeführt werden sollen. Es ist auch möglich, mehrere Fälle zusammenzufassen und dabei das break wegzulassen. Dadurch werden die darauf folgenden Anweisungen solange ausgeführt, bis ein break erreicht wird oder der switch-Befehl beendet ist. In unserem Beispiel sehen wir, wie anhand des Werts einer Zahl unterschiedliche Ausgaben erzeugt werden können. Auch das Zusammenfassen mehrerer Fälle zu einem Codeblock ist möglich, beispielsweise bei Zweierpotenzen oder Vielfachen von 3. Diese Kontrollstrukturen bieten uns die Möglichkeit, unsere Programme noch flexibler und effizienter zu gestalten. In der nächsten Folie werden weitere Beispiele für die Verwendung von switch-Case-Anweisungen gezeigt.".
[Audio] Schleifen sind ein wichtiges Konzept in Java und anderen imperativen Programmiersprachen. Sie ermöglichen es uns, Dinge in unseren Programmen zu wiederholen und somit effizienter zu arbeiten. Immer wieder muss ein Computer Aufgaben ausführen, die sich wiederholen. Es wäre sehr umständlich, jede Anweisung einzeln einzugeben. Außerdem ist es oft nicht im Voraus bekannt, wie oft eine Anweisung ausgeführt werden muss. Hier kommen die Schleifen ins Spiel: Mit ihnen können wir einen bestimmten Codeblock so oft ausführen lassen, wie wir möchten, oder bis eine bestimmte Bedingung erfüllt ist. Eine der einfachsten Arten von Schleifen ist die for-Schleife, auch bekannt als Zähl-Schleife. Sie wird verwendet, wenn bereits bekannt ist, wie oft eine Anweisung ausgeführt werden soll. Ein Beispiel einer for-Schleife ist: for(int i=1; i<10; i=i+1) Die Klammer nach dem for besteht aus drei Teilen, die mit einem ; getrennt werden. Im ersten Teil wird die Zählvariable deklariert und initialisiert, im zweiten Teil wird die Bedingung angegeben und im dritten Teil wird festgelegt, wie die Zählvariable erhöht oder verkleinert werden soll. Es ist auch möglich, die Schleife in Kurzschreibweise zu verwenden, indem man den dritten Teil weglässt und stattdessen ++ schreibt. Eine weitere Möglichkeit für Schleifen ist die while-Schleife. Im Gegensatz zur for-Schleife wird hier nicht im Voraus festgelegt, wie oft die Anweisung ausgeführt werden soll. Stattdessen wird eine Bedingung angegeben, die erfüllt sein muss, damit die Schleife weiter durchlaufen wird. Ein Beispiel für eine while-Schleife ist: while (bedingung) Hier wird der Codeblock solange wiederholt, bis die Bedingung nicht mehr erfüllt ist. Schleifen sind eine wichtige Möglichkeit, um in Java und anderen imperativen Programmiersprachen effizient zu arbeiten. Je nach Situation und Anforderungen können entweder for-Schleifen oder while-Schleifen verwendet werden, um wiederkehrende Aufgaben zu erledigen..
[Audio] Ein weiteres wichtiges Konzept in der Programmierung ist die Verwendung von Schleifen. Schleifen ermöglichen es uns, bestimmte Codeblöcke mehrfach auszuführen, solange eine bestimmte Bedingung erfüllt ist. In Java und anderen imperativen Programmiersprachen gibt es verschiedene Arten von Schleifen, die benannt und in Variablen gespeichert werden können, um sinnvolle Aktionen in unseren Programmen auszuführen. Eine Möglichkeit ist die Verwendung einer while-Schleife, um solange zu lernen, wie wir Prüfungen schreiben müssen, ohne dass wir weiter üben müssen, wenn wir keine Prüfungen mehr haben. Eine andere Option ist die do-while-Schleife, bei der der Code zuerst ausgeführt wird und dann die Bedingung überprüft wird. Dies verhindert unnötige Code-Wiederholungen und mögliche Fehler. In dem folgenden Beispiel wird die Methode "wuerfle()" verwendet, um eine Zufallszahl zwischen 1 und 6 zu erzeugen. Solange das Ergebnis nicht 4 ist, wird weitergewürfelt. Die do-while-Schleife ist eine effiziente Lösung für dieses Problem..
[Audio] Unser nächstes Thema beschäftigt sich mit verschachtelten Schleifen in Java und anderen imperativen Programmiersprachen. Diese ermöglichen es uns, komplexe Aufgaben durch die Verschachtelung mehrerer Schleifen zu lösen. Bei diesen Schleifen werden Variablen verwendet, um sinnvolle Elemente in unseren Programmen zu erstellen. Es ist jedoch wichtig, bei der Verwendung von verschachtelten Schleifen auf mögliche Fehler zu achten. Ein häufiger Fehler ist das falsche Setzen eines Semikolons, wodurch der Schleifenkörper nicht ausgeführt wird. Dies kann zu ungewollten Ergebnissen wie einer Endlosschleife führen. Deshalb sollte bei der Verschachtelung von Schleifen immer darauf geachtet werden, die Semikolons korrekt zu setzen. Ein Beispiel für eine verschachtelte Schleifenstruktur ist die Darstellung eines Dreiecks aus Sternchen. Dabei hängt die Anzahl der Sterne in jeder Zeile von der jeweiligen Zeilennummer ab. Um dieses Muster zu erstellen, können wir eine äußere Schleife verwenden, die die Zeilennummer zählt, und eine innere Schleife, die diese Zahl zur Bestimmung der Anzahl der Sterne in einer Zeile nutzt. Bitte stellen Sie sicher, dass Schleifen sorgfältig verschachtelt werden, um Fehler zu vermeiden. Danke für Ihre Aufmerksamkeit..
3 Schleifen 30.
[Audio] Diese Präsentation befasst sich mit Arrays in Java und anderen imperativen Programmiersprachen. Folie 13 von insgesamt 18 beschäftigt sich mit der Definition und Verwendung von Arrays. Ein Array ist eine Datenstruktur, die es ermöglicht, über einen Index auf eine Reihe von Elementen desselben Typs zuzugreifen. Es kann als Regal mit vielen Fächern betrachtet werden, in denen jeweils nur ein Element desselben Typs gespeichert werden kann. In Java gibt es verschiedene Arten von Daten, die in Variablen mit sprechenden Namen gespeichert werden können, eine davon sind Arrays. Wir werden uns nun eindimensionale Arrays ansehen, die wie ein Regal mit festgelegter Größe und nummerierten Fächern sind. Diese können jeweils nur ein Element desselben Typs aufnehmen. Zum Beispiel können wir damit alle Teilnehmer einer Vorlesung erfassen, indem wir ein Array mit 120 Fächern für 120 Teilnehmer anlegen. Der Datentyp dieses Arrays ist int, also ein Array aus Daten vom Typ Integer. Bei der Erstellung eines Arrays verwenden wir das Schlüsselwort "new" gefolgt vom Datentyp und der Anzahl der Elemente, die das Array enthalten soll. Es ist wichtig zu beachten, dass Java mit dem Index 0 beginnt und nicht mit 1. Um auf die Elemente eines Arrays zuzugreifen, verwenden wir ihren Index, der der Nummer des jeweiligen Fachs entspricht. Zum Beispiel können wir die Matrikelnummern der Teilnehmer in das Array eintragen. Das "String[] args" hinter "main" ist eine Variable vom Typ String[], also ein Array aus Strings. Es gibt auch eine Möglichkeit, die Elemente eines Arrays direkt bei der Erstellung anzugeben, ohne die Größe extra angeben zu müssen, da Java diese automatisch ermittelt..
[Audio] Arrays sind ein wichtiges Werkzeug in Java und anderen imperativen Programmiersprachen. Sie erlauben uns, verschiedene Datentypen in Variablen zu speichern und sinnvolle Aktionen in unseren Programmen auszuführen. Eine besondere Art von Arrays sind mehrdimensionale Arrays, mit denen wir beispielsweise Matrizen oder Tabellen darstellen können. Um einzelne Elemente auszugeben, verwenden wir den aussagekräftigen Namen der Variablen, in der das Array gespeichert ist, zusammen mit der Indexnummer des gewünschten Elements. Zum Beispiel wird mit dem Code "System.out.println(primzahlen[3])" das vierte Element des Arrays "primzahlen" ausgegeben. Wenn wir alle Elemente eines Arrays ausgeben möchten, können wir dies auch mit einer Schleife tun. Dabei ist es wichtig zu beachten, dass der Index immer bei 0 beginnt. Die Methode "arrayname.length" gibt uns die Anzahl der Einträge im Array, sodass wir eine flexible Schleife erstellen können, die sich der Größe des Arrays anpasst. Es ist jedoch wichtig, bei der Arbeit mit Schleifen und Arrays vorsichtig zu sein. Wenn die Abbruchbedingung falsch gesetzt wird, können nicht alle Elemente bearbeitet werden und das Programm kann abstürzen. Daher sollten wir immer sorgfältig überprüfen, ob der Index und die Schleifenbedingung korrekt gesetzt sind. Mehrdimensionale Arrays ermöglichen es uns, mehr als eine Dimension von Daten darzustellen. Zum Beispiel können wir eine 3x3-Matrix erstellen, indem wir ein zweidimensionales Array mit 3 Zeilen und 3 Spalten erstellen und es dann befüllen. In der Programmierung haben wir oft mit großen Datenmengen zu tun, die alle denselben Typ haben. In solchen Fällen sind Arrays eine äußerst praktische Lösung. Ob beim Berechnen von mathematischen Reihen, beim Erstellen von Grafiken oder beim Verwalten von Konten, Bankkonten oder Bibliotheken - Arrays sind ein unverzichtbares Werkzeug für die Verarbeitung großer Datenmengen. Im nächsten Abschnitt werden wir uns genauer mit dem Thema mehrdimensionale Arrays beschäftigen und sehen, wie wir sie effektiv nutzen können, um komplexe Datenstrukturen darzustellen..
[Audio] Die Programmierung in Java und anderen imperativen Programmiersprachen beinhaltet die Arbeit mit Daten. Diese Daten werden in sprechenden Variablennamen gespeichert, um ihre Bedeutung im Programm deutlich zu machen. Es gibt verschiedene Arten von Daten, wie ganzzahlige Werte, Kommazahlen und Zeichenketten, die wir in unseren Programmen verwenden. Diese können auch in mehrdimensionalen Arrays gespeichert werden, wodurch eine Matrix entsteht. Um auf die einzelnen Werte in der Matrix zuzugreifen, nutzen wir Schleifen. Ein Beispiel dafür ist eine Schleife für die Zeilen und innerhalb dieser eine Schleife für die Spalten. Dadurch können wir auf jeden Wert in der Matrix zugreifen. Am Ende der Iteration wird ein Zeilenumbruch eingefügt, um die Ausgabe übersichtlicher zu gestalten. Die Länge einer Zeile in der Matrix erreichen wir durch die Verwendung der Arraylänge des entsprechenden Arrays. Durch die Nutzung von mehrdimensionalen Arrays können wir komplexe Datenstrukturen in unseren Programmen abbilden." Die Arbeit mit Daten ist ein wichtiger Bestandteil der Programmierung in Java und anderen imperativen Programmiersprachen. Um ihre Bedeutung im Programm klar zu machen, werden diese in Variablen gespeichert, die sprechende Namen tragen. Es gibt verschiedene Arten von Daten, wie beispielsweise ganzzahlige Werte, Kommazahlen und Zeichenketten, die in unseren Programmen verwendet werden. Diese können auch in mehrdimensionalen Arrays gespeichert werden, wodurch eine Matrix entsteht. Um auf die einzelnen Werte in der Matrix zuzugreifen, nutzen wir Schleifen. Ein Beispiel dafür ist eine Schleife für die Zeilen und innerhalb dieser eine Schleife für die Spalten. Dadurch können wir auf jeden einzelnen Wert in der Matrix zugreifen. Am Ende der Iteration wird ein Zeilenumbruch eingefügt, um die Ausgabe übersichtlicher zu gestalten. Die Länge einer Zeile in der Matrix erreichen wir durch die Verwendung der Arraylänge des entsprechenden Arrays. Durch die Nutzung von mehrdimensionalen Arrays können wir also komplexe Datenstrukturen in unseren Programmen abbilden..
4 Arrays 34.
[Audio] "Wir sprechen heute über Methoden in Java und anderen imperativen Programmiersprachen. Methoden sind wiederbenutzbare Code-Einheiten, die uns helfen, die Komplexität von Programmen zu beherrschen und den Quelltext übersichtlich zu halten. Dieses Konzept ähnelt dem der Funktionen in der Mathematik. Zum Beispiel kann die Methode f(x) = x2 das Quadrat einer Zahl berechnen. Wir können auch festlegen, für welche Zahlen diese Methode gültig ist, z.B. für natürliche Zahlen (N → N). In Java deklarieren wir Methoden folgendermaßen: 1 public static int f(int x) Hier hat die Methode den Namen f und einen int-Parameter mit dem Namen x. Der Begriff vor dem Methodennamen ist der Rückgabetyp, in diesem Fall int. Das bedeutet, dass die Methode eine Zahl vom Typ int zurückgibt, die durch das Schlüsselwort return bestimmt wird. Um die Methode auszuführen, rufen wir sie in der main-Methode auf: 1 int ergebnis = f(5); Hier wird die Methode f mit dem Argument 5 aufgerufen und das Ergebnis, in diesem Fall die Zahl 25, der Variablen ergebnis zugewiesen. Die Attribute public und static können wir später bei der Objektorientierung erklären, wichtig ist nur, dass sie benötigt werden, um die Methode aus der main-Methode aufzurufen. Es kann vorkommen, dass eine Methode keine Rückgabe hat, in diesem Fall nutzen wir den Rückgabetyp void. Das bedeutet, dass die Methode keine Wert zurückgibt, sondern nur bestimmte Aufgaben ausführt, z.B. das Drucken von Text auf dem Bildschirm. Wir haben nun gelernt, dass Methoden wichtige Werkzeuge sind, um komplexe Programme übersichtlich und strukturiert zu halten. Vielen Dank für Ihre Aufmerksamkeit..
[Audio] In Java and other imperative programming languages, there are different types of data for which we use meaningful names and store in variables in order to perform useful actions in our programs. On the previous slide, we talked about methods and how they can be used for code reusability. Today, we will take a closer look at methods and how they can accept different parameters. Let us begin with the first method: "print_error". This method accepts a parameter of type String and then prints out an error message. As we can see, the syntax of this method is very simple and understandable. However, in some cases, it is necessary for a method to accept more than one parameter. In this case, we can use our method "power". This method calculates the n-th power of a real number, where n is a natural number. The method "power" accepts two parameters, one of type double and one of type int. It then multiplies x n times and returns the result. Note that the variables within the method are local and do not change outside of the method when used inside it. When we have multiple methods with the same name, but different parameters, it is called method overloading. Java is able to determine which method should be called based on the parameters. In conclusion, we can say that there can be unlimited number of methods with the same name in a program, as long as their parameters are different. And with that, we have reached the end of our presentation. We hope that you now have a better understanding of methods in Java and other imperative programming languages. Thank you for your attention..