Programmieren in Java
|
|
- Sara Albrecht
- vor 7 Jahren
- Abrufe
Transkript
1 Einführung in die (imperative) Programmierung: Kontrollstrukturen
2 2 Wiederholung (Datentyp) Ein Datentyp beschreibt eine Menge von Werten der gleichen Art Der Datentyp legt zudem fest, welche Operationen auf seinen Werten erlaubt sind Primitive Datentypen: Datentypen, deren Werte nicht in Werte anderer Typen zerlegt werden können Beispiel: 27: ganze Zahl (Datentyp int) A: Buchstabe (Datentyp: char) Gegenbeispiel: Angenommen es gäbe einen Datentyp CallNumber CallNumber(areaCode, number) CallNumber buisness = CallNumber(0251, ); CallNumber besteht aus areacode und number Beides sind ganze Zahlen aus dem Bereich int CallNumber ist also zusammengesetzt aus den primitiven Datentyp int
3 3 Wiederholung (Variablen) Variable sind Bezeichner, die zur Laufzeit für den Wert eines bestimmten Datentyps stehen Eine Variable wird mittels des Zuweisungsoperators = definiert: Deklaration: DATENTYP Bezeichner = WERT AUSDRUCK ; Zuweisung: optional Bezeichner = WERT AUSDRUCK DATENTYP ; Java ist case-senstive : Zwei Bezeichner mit gleichem Namen, aber unterschiedlicher Groß- und Kleinschreibung, beschreiben nicht die gleiche Variable! Vor der ersten Nutzung müssen Variablen einen Wert haben Variablen haben eine Gültigkeitsbereich, genannt Scope In Java wird ein Scope durch Code-Blöcke definiert
4 4 Wiederholung (statische Typisierung) Java ist statisch typisiert Innerhalb eines Scopes und dessen Kindern kann es keine Deklaration zweier Variablen mit gleichem Namen geben Wenn eine Variable für Werte eines bestimmten Typs deklariert wurde, kann sie innerhalb ihres Scopes und dessen Kindern keinen Wert eines anderen Typs annehmen { int number = 27; SCOPE I { int secondnumber = number * number ; float number = 37f; // Error! SCOPE II float secondnumber = f; // Ok!
5 5 Wiederholung (Coersion) Automatische Umwandlung einer Variablen eines kleineren Datentyps in einen größeren float number = 37 * 27f ; float number = int * float ; Multiplikationsoperator * erwartet Operanden gleichen Typs Links wird float erwartet also muss rechts ein float-wert stehen Typ int ist Teilmenge des Typs float Java kann den Wert 37 automatisch zum Wert 37.0f umwandeln float number = 37f * 27f ; float number = float * float = Die Deklaration/Zuweisung ist also zulässig
6 6 Wiederholung (Cast) Wird links int erwartet, wird die Zuweisung nicht mehr compiliert: int number = 37 * 27f ; Links wird int erwartet, also muss rechts int liefern Der Compiler überprüft nicht die Werte sondern nur die Datentypen float ist größer als int keine automatische Umwandlung möglich Man kann den Compiler zwingen die Umwandlung durchzuführen Cast: ( DATENTYP ) WERT AUSDRUCK BEZEICHNER int number = ( int ) ( 37 * 27.0f ) ; int number = (int) (37 * 27.0f); Der Cast-Typ muss Teilmenge des Ursprungstyps sein
7 7 Anwendung: Coercion Wie stellt man fest, ob eine ganze Zahl gerade ist: int number =?; int temp = number / 2; Falls number ungerade ist, so wäre number / 2 keine ganze Zahl Nach den Typregeln muss das Ergebnis allerdings eine ganze Zahl sein, da temp als int ganzzahlig definiert wurde In Java bedeutet dies: Die Nachkommastellen werden weggeschnitten -27 / 2 = -13; 99 / 2 = 49; -27 / 2.0f = -13.5f; 99 / 2.0f = 49.5f; Teilt man anstelle von 2 durch 2.0f, so ist das Ergebnis nach den Regeln für die Operatorüberladung aus dem Bereich float Dementsprechend ist number gerade falls: boolean even = (number/2) - (number/2.0) == 0; Oder einfach mittels des %-Operators (ganzzahliger Rest beim Teilen) boolean even = number % 2 == 0; 27 % 4 = 3; // 27 = 6 * % 2 = 0;
8 8 Wiederholung (boolesche Operatoren) & true false true true false false false false true false true true true false true false ^ true false true false true false true false Und Oder Ausschließendes Oder(xor) int number =?; boolean test1 = number >= 0; boolean test2 = number <= 100; boolean testand = test1 && test2; boolean testor = test1 test2; boolean testxor= test1 ^ test2; int number = 50; int number = -50; testand testor testxor => true => true => false testand testor testxor => false => true => true Die Operatoren und & bieten per Doppelnotation sogenannte Kurzschlusssemantik, die in der Regel bevorzugt werden sollten
9 9 Boolesche Operatoren Der unäre Operator! (nicht) dreht eine boolesche Aussage um:! true false false true Negation int number =?; boolean uneven =!(number % 2 == 0); // oder boolean uneven = number % 2!= 0); Es gilt:!( A B) ==! A &! B A, B boolean!( A & B) ==! A! B A, B boolean De Morgansche Gesetze
10 10 Verzwickte Lage Bisher kennt ein Programm nur eine Richtung Wie würde man folgende Problemstellung programmieren: int number =? falls number gerade falls number ungerade System.out.println("gerade"); System.out.println("ungerade"); Es gibt aktuell keine Möglichkeit den Programmverlauf zu verzweigen Ohne Verzweigung lässt sich obiges Problem allerdings nicht lösen Ein Konstrukt ist nötig, welches den Verlauf von einer Bedingung abhängig macht
11 11 Bedinge Anweisung (2) Die if-else-anweisung: int number =?; if ( BEDINGUNG ) { if (number % 2 == 0) { SATZ; BLOCK System.out.println("Gerade"); else { else { SATZ; BLOCK System.out.println("Ungerade"); optional BEDINGUNG == WERT VARIABLE AUSDRUCK boolean Syntax: Die Bedingung muss geklammert werden Der else-teil ist optional Beinhaltet der Code-Teil (if oder else) nur einen Satz so können auch die geschweiften Klammern weggelassen werden
12 12 Fallunterscheidung Mit der if-else Konstruktion lässt sich der Programmverlauf in Abhängigkeit einer Bedingung in zwei Richtungen verzweigen Was wenn die Bedingung nicht auf true oder false reduzierbar ist? char color =? falls color == 'R' falls color == 'O' falls color == 'G' System.out.println("bremsen"); System.out.println("fahren"); System.out.println("gas"); Möglichkeit Reduktion : Die Bedingungen auf einzelne Aussagen reduzieren Geschachtelte if-else Blöcke
13 13 Fallunterscheidung (if-else) char color =?; if (color == 'R') { System.out.println("bremsen"); else { if (color == 'O') { System.out.println("gas"); else { if (color == 'G') { System.out.println("fahren"); Nachteile: Verschachtelungstiefe des Codes steigt mit jeder neuen Bedingung Jede Bedingung muss der Schachtelungstiefe entsprechend überprüft werden
14 14 Fallunterscheidung (switch-case) Das switch-case Konstrukt dient zur Verzweigung des Programmcodes in Abhängigkeit von n-verschiedenen Bedingungen switch ( AUSDRUCK ) { char color =?; case LITERAL 1 : { SATZ; BLOCK break case : case LITERAL n : { SATZ; BLOCK switch (color) { case 'R': { System.out.println("bremsen"); break; case 'O': { System.out.println("gas"); break; AUSDRUCK break int char String enum case 'G': { System.out.println("fahren"); break;
15 15 Switch-Case Die switch-zeile erwartet einen geklammerten Ausdruck Dieser Ausdruck muss einen konstanten Wert liefern Pro möglichen Wert kann ein case-block definiert werden Der Wert wird als Konstante nach case angegeben Nach dem Doppelpunkt wird ein Code-Block definiert, der den Programmverlauf für diesen Wert enthält Enthält dieser Code-Block nur einen Satz kann die Klammerung weggelassen werden Der Codeblock sollte mit einem break abgeschlossen werden (optional, aber die Regel) Was passiert: Der Ausdruck muss entweder vom Typ int, char, String oder enum sein Er wird ausgewertet Existiert eine Übereinstimmung so wird zu diesem Block gesprungen
16 16 Switch-Case (Besonderheiten) Ist der Programmverlauf für verschiedene Fälle identisch, so können die case-blöcke zusammengefasst werden case LITERAL 1 : case LITERAL m : case LITERAL n : Die break-anweisung ist optional Achtung: Ohne break werden alle nachfolgenden Blöcke auch ausgeführt, egal ob deren Bedingung eintrat oder nicht! Im Beispiel wird switch über einen Wert vom Typ char ausgeführt Der Datentyp char enthält mehr als nur die drei definierten Fälle Mit default anstelle von case kann Default-Verhalten festgelegt werden default : Ohne default bzw. Treffer bewirkt die switch-anweisung einfach nichts
17 17 Switch vs. if Da bei switch alle case-werte konstant sind, ist bereits vor der Laufzeit klar wo in welchem Fall hingesprungen werden muss Dynamische Probleme sind mit switch nicht lösbar: int number =? falls number < 0 falls number == 0 falls color > 0 System.out.println("klein"); System.out.println("groß"); System.out.println("null"); Die Bedingung kleiner bzw. größer als sind nicht konstant und daher nicht mit als case-fall abbildbar
18 18 Schleifen Schreiben Sie ein Programm, dass die ersten n positiven Quadratzahlen ab 1 ausgibt. int n =?; System.out.println(1); System.out.println(4); System.out.println(n * n); n Mit dem bisher bekannten müssten n-zeilen Code geschrieben werden Die Anzahl n ist allerdings unbekannt bzw. dynamisch Es bedarf eines Konstrukts, dass Code oder Codeblöcke in Abhängigkeit von einer Bedingung solange hintereinander ausführt, bis die Bedingung erfüllt ist Dieses Konstrukt wird Schleife genannt Eine Schleife wird iteriert (Mehrfachausführung des gleichen Codes) Die meisten Programmiersprachen bieten mehrere Konstrukte zur Definition von Schleifen
19 19 Schleifen (while und do-while) int n =?; while ( BEDINGUNG ) { SATZ; BLOCK int iteration = 1; while (iteration <= n) { System.out.println(iteration * iteration ); iteration = iteration + 1; BEDINGUNG == WERT VARIABLE AUSDRUCK boolean int n =?; do { int iteration = 1; do { while SATZ; BLOCK ( BEDINGUNG ) ; System.out.println(iteration * iteration ); iteration = iteration + 1; while (iteration <= n);
20 20 Schleifen (while und do-while) II Beide Beispielprogramme iterieren über die Hilfevariable iteration Solange die Bedingung nicht zu false auswertet, wird iteriert Die Hilfsvariable wird in jedem Iterationsschritt um 1 erhöht Nach n + 1 Schritten ist der Wert der Variablen größer als n Die Bedingung wird zu false und die Schleife beendet Achtung: Der Unterscheid zwischen beiden Schleife ist der Zeitpunkt zu dem die Bedingung ausgewertet wird int iteration = -1; while (iteration > 0 && iteration < 100) { System.out.println(iteration); iteration = iteration + 1; int iteration = -1; do { System.out.println(iteration); iteration = iteration + 1; while (iteration > 0 && iteration < 100); -1
21 21 Die Schleife genauer Die Iterationsdauer einer Schleife hängt direkt von der Bedingung ab Wird während der Iteration der Zustand des Programmes hinsichtlich der Bedingung niemals geändert, läuft diese unendlich lange Unendliche Schleifen sind selten gewollt In der Regel kann man den Code-Block einer Schleife wie folgt aufteilen int n =?; while ( BEDINGUNG ) { SATZ; BLOCK int iteration = 1; while (iteration <= n) { System.out.println(iteration * iteration ); UPDATE iteration = iteration + 1; Im UPDATE-Bereich wird der Programmzustand so geändert, dass dieser zur Bedingung konvergiert Das UPDATE kann auch vor dem eigentlichen Code-Block geschehen
22 22 Schleifen (for) Neben while und do-while bietet Java die for-schleife an for ( ZUWEISUNG ; BEDINGUNG ; UPDATE ) { SATZ; BLOCK Die Iteration über eine Zählvariable wie in den vorherigen Beispielen (iteration) ist der klassische Einsatz für die for-schleife int n =?; for(int iteration = 1; iteration <= n; iteration = iteration + 1) { System.out.println(iteration * iteration); int iteration = 1; ) while (iteration <= n) { System.out.println(iteration * iteration); iteration = iteration + 1;
23 23 Die for-schleife im Detail Die ZUWEISUNG findet nur vor der ersten Iteration statt Wird innerhalb der ZUWEISUNG eine neue Variable deklariert, so ist ihr Gültigkeitsbereich die for-schleife selbst Die BEDINUNG wird vor jeder Iteration überprüft und solange iteriert, wie diese zu true auswertet UPDATE dient zur Aktualisieren der Bedingung UPDATE wird nach jeder Iteration ausgeführt Alle drei ZUWEISUNG, BEDINUNG und UPDATE sind optional Die Operatoren +=, ++, -=, -- falls? == 1 iteration = iteration +?; iteration +=?; iteration ++; iteration = iteration -?; Iteration -=?; iteration --; for(int iteration = 1; iteration <= n; iteration ++) {
24 24 Schleifen mit break und continue steuern Mit break kann die Iteration direkt und damit unabhängig von der eigentlichen Bedingung abgebrochen werden int n =?; int max =?; int square; for (int i = 1; i <= n; i++) { square = i * i; System.out.println(square); if (square > max) break; Mit continue kann ein Iterationsschritt übersprungen/abgebrochen werden int n =?; int rangemin =?; int rangemax =?; int square; for (int i = 1; i <= n; i++) { square = i * i; if (square <= rangemin && square >= rangemax) continue; System.out.println(square);
25 25 Zusammenfassung Fallunterscheidung mit if-else oder switch Wie unterscheiden sich if-else und switch Iteration/Schleifen while do-while for Unterschied zwischen while und do-while Inkrement/Dekrement/Shortcut-Operatoren für -/+ Schleifensteuerung mittels break und continue
26 26 Anhang: ZIVinteraktiv-Abstimmung QR-Code zur anonymen Abstimmung:
27 27 Netbeans Zu Hause : html Mobile Version ohne Windows-Installation von Java/Netbeans Download Verschieben auf U: Rechtsklick auf Netbean Extract Here Im neuen Ordner Netbeans per Doppelklick auf starten
28 28 Netbeans Begrüßungsbildschrim
29 29 Netbeans (Neues Projekt) File New Project Categories: Java Projects: Java Application New Java Application: Project-Name: NAME Nutzerverzeichnis U:\Java Ggf. Verzeichnis erstellen Create Main Class: Nein
30 30 Netbeans (Neue Basisklasse) File New File Categories: Java File Types: Java Class New Java Class: Class-Name: NAME Alles andere lassen Die Warnung unten kann vorerst ignoriert werden
31 31 Netbeans (Übersicht) Ausführen Codeeditor Projektübersicht Klassenübersicht Konsole
32 32 Netbeans (Neue Klasse, Alternatvie) In der Projekt-Übersicht Rechtsklick auf den Projektnamen New Java Class Der File-Typ Dialog (Folie 28) entfällt
33 33 Netbeans (Ausführen) Um ein Projekt ausführen zu können, muss in mindestens einer Klasse die Methode public static void main(string[] args) { existieren! Festlegen der Main -Klasse Rechtklick Projektname Properties Categories Run MainClass Browse Auwahl Select Main Class Run:
34 34 Netbeans (Ausgabe) Die Ausgabe eines Programmes (System.out.println( )) sieht man nach dem Ausführen im Konsolen-Fenstern:
35 35 Netbeans Explizites Compilieren vor dem Ausführen entfällt Netbeans compiliert im Hintergrund mit Syntaxfehlerwerden direkt im Editor angemahnt (rot): Tooltip erscheint, wenn man den Mauszeiger über den Fehler hält
36 36 Netbeans (V) Wenn möglich werden auch Semantikfehler angemahnt (gelb) Andere Auffälligkeiten werden grau unterschlengelt.
37 37 Netbeans (V) Code-Completion bei.-operator Vorschläge basierend auf aktueller Eingabe Falls vorhanden: Dokumentation zur aktuellen Auswahl
38 38 Aufgaben Aufgabe 1 Legen Sie in Netbeans ein neues Projekt Vorlesung3 an Füge Sie dem Projekt eine neue Klassen namens Main hinzu Fügen Sie der Klasse folgende Methode hinzu: public static void main(string[] args){ Legen Sie diese Klasse als Main-Klasse fest Fügen Sie der Main-Methode eine beliebige Ausgabe hinzu und testen diese Aufgabe 2 Erweitern Sie die Main-Methode aus Aufgabe 1, so dass die ersten 10 negativen geraden Zahlen ausgegeben werden Optional: Setzen Sie die Aufgabe mit allen drei Schleifen um
Programmieren in Java
Einführung in die (imperative) Programmierung (Teil 3) 2 Wiederholung (Datentyp) Ein Datentyp beschreibt eine Menge von Werten der gleichen Art Der Datentyp legt zudem fest, welche Operationen auf seinen
MehrProgrammieren in Java
Einführung in die (imperative) Programmierung (Teil 3) 2 Wiederholung (Datentyp) Ein Datentyp beschreibt eine Menge von Werten der gleichen Art Der Datentyp legt zudem fest, welche Operationen auf seinen
MehrProgrammieren in Java
Einführung in die (imperative) Programmierung 2 Wiederholung: Allgemein Hohe Programmiersprache Compiler Interpreter Maschinensprache Zielsystem 3 Wiederholung: Java Java Compiler Bytecode JRE Just-In-Time
MehrProgrammieren in Java
Einführung in die (imperative) Programmierung 2 Wiederholung: Allgemein Hohe Programmiersprache Compiler Interpreter Maschinensprache Zielsystem 3 Wiederholung: Java Java Compiler Bytecode JRE Just-In-Time
MehrProgrammieren in Java
Einführung in die (imperative) Programmierung 2 Wiederholung: Allgemein Hohe Programmiersprache Compiler Interpreter Maschinensprache Zielsystem 3 Wiederholung: Java Java Compiler Bytecode JRE Just-In-Time
MehrProgrammieren in Java
Einführung in die (imperative) Programmierung: Methoden 2 Wiederholung: if-else Anweisung int number =?; if ( BEDINGUNG ) { if (number > 0) { SATZ; BLOCK System.out.println("Größer 0"); else { SATZ; BLOCK
MehrIntensivübung zu Algorithmen und Datenstrukturen
Intensivübung zu Algorithmen und Datenstrukturen Silvia Schreier Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Übersicht Programmierung Fallunterscheidung Flussdiagramm Bedingungen Boolesche
Mehr3. Anweisungen und Kontrollstrukturen
3. Kontrollstrukturen Anweisungen und Blöcke 3. Anweisungen und Kontrollstrukturen Mit Kontrollstrukturen können wir den Ablauf eines Programmes beeinflussen, z.b. ob oder in welcher Reihenfolge Anweisungen
MehrInstitut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke
Java 2 Markus Reschke 07.10.2014 Datentypen Was wird gespeichert? Wie wird es gespeichert? Was kann man mit Werten eines Datentyps machen (Operationen, Methoden)? Welche Werte gehören zum Datentyp? Wie
MehrVorkurs Informatik WiSe 16/17
Java Ausdrücke und Variablen Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 05.10.2016 Technische Universität Braunschweig, IPS Überblick Ausdrücke, Datentypen und Variablen Kontrollstrukturen 05.10.2016
MehrJava 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8
Java 8 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Oktober 2014 JAV8 5 Java 8 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen
MehrGedächtnis. Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet. Zugriff.
Gedächtnis Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet Hauptspeicher 38265 Telefon CPU Gedächtnis Vorlesender Zugriff Verarbeitungseinheit
MehrVorkurs Informatik WiSe 17/18
Java Ausdrücke und Variablen Dr. Werner Struckmann / Stephan Mielke, Nicole Naczk, 05.10.2017 Technische Universität Braunschweig, IPS Überblick Ausdrücke, Datentypen und Variablen Kontrollstrukturen 05.10.2017
MehrJava I Vorlesung Imperatives Programmieren
Java I Vorlesung 2 Imperatives Programmieren 3.5.2004 Variablen -- Datentypen -- Werte Operatoren und Ausdrücke Kontrollstrukturen: if Imperatives Programmieren Im Kern ist Java eine imperative Programmiersprache.
Mehr1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays)
1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) II.1.3. Anweisungen und Kontrollstrukturen - 1 - Anweisung Anweisung Zuweisung Methodenaufruf
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 06: Einführung in Kontrollstrukturen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Einführung in Kontrollstrukturen 3 Grundstrukturen von
MehrGrundlagen der Programmierung Teil1 Einheit III Okt. 2010
Grundlagen der Programmierung Teil1 Einheit III - 22. Okt. 2010 GDP DDr. Karl D. Fritscher basierend auf der Vorlesung Grundlagen der Programmierung von DI Dr. Bernhard Pfeifer Einschub Bevor wir mit den
MehrJava Anweisungen und Ablaufsteuerung
Informatik 1 für Nebenfachstudierende Grundmodul Java Anweisungen und Ablaufsteuerung Kai-Steffen Hielscher Folienversion: 24. Januar 2017 Informatik 7 Rechnernetze und Kommunikationssysteme Inhaltsübersicht
MehrEinstieg in die Informatik mit Java
Vorlesung vom 6.11.07, Weitere Anweisungen Übersicht 1 Verbundanweisung 2 Bedingte Anweisung 3 Auswahlanweisung 4 for Schleife 5 while Schleife 6 do Schleife 7 break Anweisung 8 continue Anweisung 9 Leere
MehrMartin Unold INFORMATIK. Geoinformatik und Vermessung
Wiederholung So sieht ein leeres Java-Programm aus public class Programmname { public static void main (String[] args) { // Hier stehen die Anweisungen Anweisungen mit Variablen Wiederholung Deklaration
MehrVorsichtige Programmierer verwenden Inkrement- Operatoren nicht in komplizierteren Ausdrücken
Vorsichtige Programmierer verwenden Inkrement- Operatoren nicht in komplizierteren Ausdrücken Aufgabe 1.60 a) Welchen Wert erhält die boolesche Variable z in folgendem Beispiel? int i = 2, j = 5; boolean
MehrJavakurs FSS Lehrstuhl Stuckenschmidt. Tag 1 - Variablen und Kontrollstrukturen
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt Tag 1 - Variablen und Kontrollstrukturen main Methode Startpunkt jeder Java Anwendung String[] args ist ein Array aus Parametern, die beim Aufruf über die Kommandozeile
MehrJava Ablaufsteuerung (Beispiele)
Informatik 1 für Nebenfachstudierende Grundmodul Java Ablaufsteuerung (Beispiele) Kai-Steffen Hielscher Folienversion: 16. Januar 2018 Informatik 7 Rechnernetze und Kommunikationssysteme Blöcke Anweisungen
MehrEinstieg in die Informatik mit Java
1 / 41 Einstieg in die Informatik mit Java Weitere Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 41 1 Überblick 2 Verbundanweisung 3 Bedingte Anweisung 4 Auswahlanweisung
MehrMartin Unold INFORMATIK. Geoinformatik und Vermessung
Wiederholung So sieht ein leeres Java-Programm aus public class Programmname { public static void main (String[] args) { // Hier stehen die Anweisungen Wiederholung Anweisungen durch Methodenaufrufe Ausgabe
MehrOperatoren für elementare Datentypen Bedingte Anweisungen Schleifen. Programmieren I. Martin Schultheiß. Hochschule Darmstadt Wintersemester 2010/2011
Programmieren I Martin Schultheiß Hochschule Darmstadt Wintersemester 2010/2011 1 Operatoren für elementare Datentypen 2 Bedingte Anweisungen 3 Schleifen Zuweisungsoperator Die Zuweisung von Werten an
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 04: Einführung in Kontrollstrukturen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Einführung in Kontrollstrukturen 3 Grundstrukturen von
MehrOperatoren für elementare Datentypen Bedingte Anweisungen Schleifen. Operatoren für elementare Datentypen Bedingte Anweisungen Schleifen
Programmieren I Martin Schultheiß Hochschule Darmstadt Wintersemester 2011/2012 1 / 25 Operatoren für elementare Datentypen Bedingte Schleifen 2 / 25 Zuweisungsoperator Die Zuweisung von Werten an Variablen
Mehr1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays)
1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) II.1.3. Anweisungen und Kontrollsttukturen - 1 - 3. Anweisungen und Kontrollstrukturen
MehrVorlesung Programmieren
Vorlesung Programmieren 3. Kontrollstrukturen 04.11.2015 Prof. Dr. Ralf H. Reussner Version 1.1 LEHRSTUHL FÜR SOFTWARE-DESIGN UND QUALITÄT (SDQ) INSTITUT FÜR PROGRAMMSTRUKTUREN UND DATENORGANISATION (IPD),
MehrEinstieg in die Informatik mit Java
Vorlesung vom 18.4.07, Grundlagen Übersicht 1 Kommentare 2 Bezeichner für Klassen, Methoden, Variablen 3 White Space Zeichen 4 Wortsymbole 5 Interpunktionszeichen 6 Operatoren 7 import Anweisungen 8 Form
MehrVorlesung Programmieren
Vorlesung Programmieren 3. Kontrollstrukturen 09.11.2016 Jun.-Prof. Dr.-Ing. Anne Koziolek Version 1.1 ARBEITSGRUPPE ARCHITECTURE-DRIVEN REQUIREMENTS ENGINEERING (ARE) INSTITUT FÜR PROGRAMMSTRUKTUREN UND
MehrObjektorientierte Programmierung
Objektorientierte Programmierung Eine Einführung mit anschaulichen Beispielen aus der Java-Welt apl. Prof. Dr. Achim Ebert Inhalt Kapitel 3: Kontrollstrukturen Einfache Anweisungen Anweisungsblöcke Steuerung
MehrEinstieg in die Informatik mit Java
1 / 34 Einstieg in die Informatik mit Java weitere Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 34 1 Verbundanweisung 2 Bedingte Anweisung 3 Auswahlanweisung
MehrFACHHOCHSCHULE AUGSBURG Hochschule für Technik, Wirtschaft und Gestaltung
C Sprachelemente für Übung 2 Typumwandlungen (type casts) Bei Ausdrücken, in denen Operanden mit unterschiedlichem Typ vorkommen, werden diese vom Compiler vor der Ausführung automatisch in einen gemeinsamen
Mehr3. Grundanweisungen in Java
3. Grundanweisungen in Java Die Grundanweisungen entsprechen den Prinzipien der strukturierten Programmierung 1. Zuweisung 2. Verzweigungen 3. Wiederholungen 4. Anweisungsfolge (Sequenz) Die Anweisungen
MehrProgrammieren in Java
Methoden & Arrays 2 Wiederholung (Switch) switch ( AUSDRUCK ) { char color =?; case LITERAL 1 : { SATZ; BLOCK break case : case LITERAL n : { SATZ; BLOCK switch (color) { case 'R': { System.out.println("bremsen");
Mehr4.4 Imperative Algorithmen Prozeduren
4.4.2 Prozeduren Der Wert eines Ausdrucks u in Zustand z Z lässt sich damit auch leicht definieren (jetzt W Z statt W σ ) Dazu erweitern wir die rekursive Definition von Folie 57 (Wert eines Ausdrucks):
MehrEinstieg in die Informatik mit Java
1 / 22 Einstieg in die Informatik mit Java Grundlagen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 22 1 Kommentare 2 Bezeichner für Klassen, Methoden, Variablen 3 White
MehrKompaktkurs Einführung in die Programmierung. 4. Kontrollstrukturen
Kompaktkurs Einführung in die Programmierung 4. Kontrollstrukturen Stefan Zimmer 28.2.2008-1- Anweisungen: was bisher geschah Bisher kennen wir zwei Formen von Anweisungen Ein Ausdruck mit Semikolon ist
MehrEinstieg in die Informatik mit Java
Vorlesung vom 25.4.07, Anweisungen Übersicht 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung, Vorbereitungen 4 Verbundanweisung 5 Bedingte Anweisung 6 Auswahlanweisung 7 for
MehrEINI LW/WiMa. Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 14/15
EINI LW/ Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 14/15 Dr. Lars Hildebrand Fakultät für Informatik Technische Universität Dortmund lars.hildebrand@tu-dortmund.de
Mehr2 Programmieren in Java I noch ohne Nachbearbeitung
1 2 Programmieren in Java I noch ohne Nachbearbeitung 2.1 Was sind Programme? Eingabe = Verarbeitung = Ausgabe Die Eingabe kann sein Konstanten im Quelltext; Kommandozeilenparameter oder interaktive Eingabe
MehrUnterlagen. CPP-Uebungen-08/
Unterlagen http://projects.eml.org/bcb/people/ralph/ CPP-Uebungen-08/ http://www.katjawegner.de/lectures.html Kommentare in C++ #include /* Dies ist ein langer Kommentar, der über zwei Zeilen
MehrEinführung in die Programmierung II. 3. Kontrollstrukturen
Einführung in die Programmierung II 3. Kontrollstrukturen Thomas Huckle, Stefan Zimmer 2.5.2007-1- Anweisungen: was bisher geschah Bisher kennen wir zwei Formen von Anweisungen Ein Ausdruck mit Semikolon
Mehr4.2 Gleitkommazahlen. Der Speicherbedarf (in Bits) ist üblicherweise. In vielen Anwendungen benötigt man gebrochene Werte. Physikalische Größen
. Gleitkommazahlen In vielen Anwendungen benötigt man gebrochene Werte. Physikalische Größen Umrechnen von Einheiten und Währungen Jede Zahl x Q mit x 0 lässt sich folgendermaßen schreiben: x = s m e mit
MehrC# - Einführung in die Programmiersprache Bedingte Anweisungen und Schleifen
C# - Einführung in die Programmiersprache Bedingte Anweisungen und Schleifen Gehe nach links oder rechts Gehe solange geradeaus... Leibniz Universität IT Services Anja Aue Programmabläufe grafisch abbilden
MehrKapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Wiederholung Kapitel 4. Birgit Engels, Anna Schulze WS 07/08
Kapitel 4 Programmierkurs Birgit Engels, Anna Schulze Wiederholung Kapitel 4 ZAIK Universität zu Köln WS 07/08 1 / 23 2 Datentypen Arten von Datentypen Bei der Deklaration einer Variablen(=Behälter für
MehrEinstieg in die Informatik mit Java
1 / 47 Einstieg in die Informatik mit Java Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 47 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung,
MehrJavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.
JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung
MehrProgrammieren I. Kapitel 5. Kontrollfluss
Programmieren I Kapitel 5. Kontrollfluss Kapitel 5: Kontrollfluss Ziel: Komplexere Berechnungen im Methodenrumpf Ausdrücke und Anweisungen Fallunterscheidungen (if, switch) Wiederholte Ausführung (for,
MehrGrundlagen der Programmierung Teil1 Einheit III Okt. 2009
Grundlagen der Programmierung Teil1 Einheit III - 23. Okt. 2009 GDP DDr. Karl D. Fritscher basierend auf der Vorlesung Grundlagen der Programmierung von DI Dr. Bernhard Pfeifer Ausdrücke & Anweisungen
MehrModProg 15-16, Vorl. 5
ModProg 15-16, Vorl. 5 Richard Grzibovski Nov. 18, 2015 1 / 29 Übersicht Übersicht 1 Logische Operationen 2 Priorität 3 Verzweigungen 4 Schleifen 2 / 29 Logische Werte Hauptkonzept: Besitzt ein C-Ausdruck
Mehr7. Einführung in C++ Programmieren / Algorithmen und Datenstrukturen 1 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt
7. Einführung in C++ Programmieren / Algorithmen und Datenstrukturen 1 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt 1 Kontrollfragen Rekursion Was bedeutet Rekursion? Geben Sie Beispiele
MehrArbeitsblätter für die Lehrveranstaltung OOP JAVA 1
Fachhochschule Stralsund Fachbereich Maschinenbau Lehrgebiet Informatik Prof. Dr.-Ing. Ch.Wahmkow Arbeitsblätter für die Lehrveranstaltung OOP I. Aufbau eines Java-Programmes JAVA 1 Escape-Sequenzen zur
Mehr3. Java - Sprachkonstrukte I
Lernziele 3. Java - Sprachkonstrukte I Namen und Bezeichner, Variablen, Zuweisungen, Konstanten, Datentypen, Operationen, Auswerten von Ausdrücken, Typkonversionen Sie kennen die grundlegensten Bausteine
MehrProgrammieren in Java
Zusammenfassung: Imperative Programmierung 2 Wichtige Begriffe Syntax: Regeln nach denen ein beliebiger Satz Teil einer Sprache ist Compiler/Interpreter versteht nur syntaktisch korrekte Sätze Semantik:
MehrEinführung in C. EDV1-04C-Einführung 1
Einführung in C 1 Helmut Erlenkötter C Programmieren von Anfang an Rowohlt Taschenbuch Verlag ISBN 3-4993 499-60074-9 19,90 DM http://www.erlenkoetter.de Walter Herglotz Das Einsteigerseminar C++ bhv Verlags
Mehr3. Java - Sprachkonstrukte I
Namen und Bezeichner Ein Programm (also Klasse) braucht einen Namen 3. Java - Sprachkonstrukte I Namen und Bezeichner, Variablen, Zuweisungen, Konstanten, Datentypen, Operationen, Auswerten von Ausdrücken,
Mehr3. Java - Sprachkonstrukte I
84 3. Java - Sprachkonstrukte I Namen und Bezeichner, Variablen, Zuweisungen, Konstanten, Datentypen, Operationen, Auswerten von Ausdrücken, Typkonversionen Namen und Bezeichner 85 Ein Programm (also Klasse)
MehrProgrammiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny
Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny 5. Kontrollstrukturen Allgemein Kontrollstrukturen dienen zur Steuerung des Programmablaufs. (Bemerkung: C und C++ besitzen die selben Kontrollstrukturen.)
MehrProgrammiertechnik Kontrollstrukturen
Programmiertechnik Kontrollstrukturen Prof. Dr. Oliver Haase Oliver Haase Hochschule Konstanz 1 Was sind Kontrollstrukturen? Kontrollstrukturen erlauben es, ein Programm nicht nur Zeile für Zeile auszuführen,
MehrAnweisungen zur Ablaufsteuerung
Anweisungen zur Ablaufsteuerung if-else switch while do-while for Ausdrücke Ein Ausdruck ist eine Folge von Variablen, Operatoren und Methodenaufrufen, der zu einem einzelnen Wert ausgewertet wird. Operanden
MehrErste Java-Programme (Scopes und Rekursion)
Lehrstuhl Bioinformatik Konstantin Pelz Erste Java-Programme (Scopes und Rekursion) Tutorium Bioinformatik (WS 18/19) Konstantin: Konstantin.pelz@campus.lmu.de Homepage: https://bioinformatik-muenchen.com/studium/propaedeutikumprogrammierung-in-der-bioinformatik/
MehrProgrammieren in Java
Einführung in die (imperative) Programmierung 2 Wiederholung Wozu Programmiersprachen? Maschinencode Assembler Compiler Höhere Programmiersprachen Syntax: Programmiersprachen gehorchen einer Grammatik
MehrEINI LogWing/WiMa. Einführung in die Informatik für Naturwissenschaftler und Ingenieure. Vorlesung 2 SWS WS 17/18
EINI LogWing/ Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 17/18 Dr. Lars Hildebrand Fakultät für Informatik Technische Universität Dortmund lars.hildebrand@tu-dortmund.de
MehrEINI WiMa. Einführung in die Informatik für Naturwissenschaftler und Ingenieure. Vorlesung 2 SWS WS 11/12
EINI WiMa Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 11/12 Fakultät für Informatik Technische Universität Dortmund lars.hildebrand@udo.edu http://ls1-www.cs.uni-dortmund.de
Mehr1 Bedingte Anweisungen. 2 Vergleiche und logische Operatoren. 3 Fallunterscheidungen. 4 Zeichen und Zeichenketten. 5 Schleifen.
Themen der Übung Kontrollstrukturen, Pseudocode und Modulo-Rechnung CoMa-Übung III TU Berlin 9.10.01 1 Bedingte Anweisungen Vergleiche und logische Operatoren 3 Fallunterscheidungen 4 Zeichen und Zeichenketten
MehrTag 3 Repetitorium Informatik (Java)
Tag 3 Repetitorium Informatik (Java) Dozent: Marius Kamp Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2016/2017 Willkommen zum Informatik-Repetitorium!
MehrSprachkonstrukte. Einführung in Java. Folie 1 von Mai Ivo Kronenberg
Sprachkonstrukte Einführung in Java Folie 1 von 20 12. Mai 2011 Ivo Kronenberg Inhalt Kommentare Identifier (Bezeichner) Variablen Numerische Ausdrücke und Typen Kontrollstrukturen Verzweigungen Bedingungen
MehrEinführung in die Programmierung Wintersemester 2011/12
Einführung in die Programmierung Wintersemester 2011/12 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund : Kontrollstrukturen Inhalt Wiederholungen - while
MehrJava: Eine kurze Einführung an Beispielen
Java: Eine kurze Einführung an Beispielen Quellcode, javac und die JVM Der Quellcode eines einfachen Java-Programms besteht aus einer Datei mit dem Suffix.java. In einer solchen Datei wird eine Klasse
MehrDas diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen
Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen 16OH21005 gefördert. Die Verantwortung für den Inhalt dieser
MehrWenn... dann... if (condition) statement. if (kontostand < 0) System.out.println("Oops..."); false. condition. true. statement
Wenn... dann... if (condition) statement condition false true statement if (kontostand < 0) System.out.println("Oops..."); 31 ... sonst... if (condition) statement1 else statement2 condition false true
MehrObjektorientierte Programmierung OOP Programmieren mit Java
Objektorientierte Programmierung OOP Programmieren mit Java 5.1 Elementare Anweisungen 5.1.1 Ausdrucksanweisung 5.1.2 Leere Anweisung 5.1.3 Blockanweisung 5.1.4 Variablendeklaration 5.2 Bedingungen 5.2.1
MehrRO-Tutorien 3 / 6 / 12
RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 2 AM 06./07.05.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
MehrMartin Unold INFORMATIK. Geoinformatik und Vermessung
Zusammenfassung Was ist eine Programmiersprache? Eine Sprache, die Formal eindeutig in Maschinenbefehle übersetzbar ist Für Menschen einfacher verständlich ist als Bytecode Zur Formulierung von Datenstrukturen
MehrSystem.out.println("TEXT");
Inhaltsübersicht - Erstes Beispiel - Datentypen - Ausdrücke und Operatoren - Schleifen / Bedinungen - Struktogramme - Grundgerüst eines Programms in JAVA - Einlesen von Daten Erstes Beispiel public class
MehrInstitut für Programmierung und Reaktive Systeme 2. Februar Programmieren I. Übungsklausur
Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme 2. Februar 2017 Hinweise: Klausurtermine: Programmieren I Übungsklausur Programmieren I: 13. März
MehrProf. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Kontrollstrukturen
Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer Programmiertechnik Kontrollstrukturen Was sind Kontrollstrukturen Kontrollstrukturen erlauben es, ein Programm nicht nur Zeile für Zeile auszuführen,
MehrS. d. I.: Programieren in C Folie 4-1. im Gegensatz zu Pascal gibt es in C kein Schlüsselwort "then"
S. d. I.: Programieren in C Folie 4-1 4 Anweisungen 4.1 if-anweisung 1) if (Ausdruck) 2) if (Ausdruck) } else im Gegensatz zu Pascal gibt es in C kein Schlüsselwort "then" es wird nur der numerische Wert
MehrJAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)
JAVA BASICS 2. Primitive Datentypen 1. Warum Java? weit verbreitet einfach und (relativ) sicher keine Pointer (?) keine gotos kein Präprozessor keine globalen Variablen garbage collection objekt-orientiert
MehrEinstieg in die Informatik mit Java
Vorlesung vom 18.4.07, Vordefinierte Datentypen Übersicht 1 Ganzzahlige Typen 2 Boolscher Typ 3 Gleitkommatypen 4 Referenztypen 5 void Typ 6 Implizite und explizite Typumwandlungen Ganzzahlige Typen Die
MehrJAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)
JAVA BASICS 2. Primitive Datentypen 1. Warum Java? zunehmend weit verbreitet einfach und (relativ) sicher keine Adressrechnung, aber Pointer keine gotos kein Präprozessor keine globalen Variablen garbage
MehrObjektorientiertes Programmieren (Java)
Grundlagen Objektorientiertes Programmieren (Java) Java folgt gewissen Rechtschreibregeln die Syntax. Diese besagt, dass hinter jeden Befehl ein Semikolon( ; ) stehen muss, damit der Computer weiß, dass
MehrGrundlagen der Modellierung und Programmierung, Übung
Grundlagen der Modellierung und Programmierung Übung Prof. Wolfram Amme LS Softwaretechnik Prof. Klaus Küspert LS Datenbanksysteme Prof. Birgitta König-Ries LS Verteilte Systeme Prof. Dr. Wilhelm Rossak
MehrKapitel 5. Programmierkurs. Kontrollstrukturen. Arten von Kontrollstrukturen. Kontrollstrukturen Die if-anweisung Die switch-anweisung
Kapitel 5 Programmierkurs Birgit Engels, Anna Schulze ZAIK Universität zu Köln Kontrollstrukturen Die if-anweisung Die switch-anweisung Die for-schleife Die while-schleife Die do-schleife WS 7/8 /55 Kontrollstrukturen
MehrTeil 5 - Java. Programmstruktur Operatoren Schlüsselwörter Datentypen
Teil 5 - Java Programmstruktur Operatoren Schlüsselwörter Datentypen 1 Kommentare in Java In Java gibt es drei Möglichkeiten zur Kommentierung: // Kommentar Alle Zeichen nach dem // werden ignoriert. für
MehrEinfache Rechenstrukturen und Kontrollfluss
Einfache Rechenstrukturen und Kontrollfluss Christian Böhm WS 07/08 in Zusammenarbeit mit Gefei Zhang http://www.dbs.informatik.uni-muenchen.de/lehre/nfinfosw 2 Ziele Verstehen der Grunddatentypen von
Mehr3. Algorithmenentwurf und JAVA. Informatik II für Verkehrsingenieure
3. Algorithmenentwurf und JAVA Informatik II für Verkehrsingenieure Schwerpunkt 1 ALGORITHMEN UND UMSETZUNG Aufgabe Algorithmus Programm Eigentliche Entwicklung der Verfahrensidee Codierung Algorithmenentwurf
MehrWintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 29
Kapitel 2 Einführung in C++ Seite 1 von 29 C++ Zeichensatz - Buchstaben: a bis z und A bis Z. - Ziffern: 0 bis 9 - Sonderzeichen: ; :,. # + - * / % _ \! < > & ^ ~ ( ) { } [ ]? Seite 2 von 29 Höhere Elemente
Mehr