Zustandsmodelle. M. Jakob. 10. Dezember Gymnasium Pegnitz

Größe: px
Ab Seite anzeigen:

Download "Zustandsmodelle. M. Jakob. 10. Dezember Gymnasium Pegnitz"

Transkript

1 Zustandsmodelle M. Jakob Gymnasium Pegnitz 10. Dezember 2014

2 Inhaltsverzeichnis 1 Einführung 2 Implementation von Zuständen und Verzweigungen 3 Schleifen

3 Gliederung Einführung 1 1 Einführung 1.1 Inselspiel 1.2 Zustandsdiagrame in der Unified-Modelling-Language UML-Diagramme 2 Implementation von Zuständen und Verzweigungen 2.1 Beispiel Speiseaufzug 2.2 Verzweigungen 2.3 switch-case 3 Schleifen 3.1 Begriffsbestimmung und Arten 3.2 Wiederholungen mit fester Anzahl 3.3 Bedingte Wiederholungen M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

4 In diesem Abschnitt 1 Einführung 1.1 Inselspiel 1.2 Zustandsdiagrame in der Unified-Modelling-Language UML-Diagramme

5 Einführung 1 1 Inselspiel Das Inselspiel Inselspiel M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

6 Einführung 1 1 Inselspiel Das Inselspiel Inselspiel Kristallfähre Totenkopffähre M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

7 Einführung 1 1 Inselspiel Das Inselspiel Zustandsdiagramm M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

8 Einführung 1 1 Inselspiel Mikrobetriebsysteme Elektronische Geräte (Handy, mp3-player,...) brauchen zur Funktion eine kleines Betriebssystem, das festlegt wie sich das Gerät sich verhalten soll. Zur Entwicklung solcher Betriebssysteme werden zuerst Zustandsdiagramme entworfen. M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

9 Einführung 1 1 Inselspiel Beispiel: Einfache Stoppuhr T1 und T2 T1 Stoppuhr läuft Uhrzeitanzeige 00:00:00 T1 T1 T1 und T2 T2 Stoppuhr steht M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

10 Einführung 1 1 Inselspiel Beispiel: Einfache Stoppuhr mit ausgelösten Aktionen T1 und T2 /Anz. auf 0 stellen T1 /Stoppuhr starten Stoppuhr läuft Uhrzeitanz. 00:00:00 T1 /St. starten T1 /St. anhalten T1 und T2 /Anz. auf UZ stellen T2 /Anz. auf 0 stellen Stoppuhr steht M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

11 Einführung 1 1 Inselspiel Übung Ü 1.1: Zustandsübergänge mit ausgelösten Aktionen, Vorlage: ZUEDUbg.graphml Nachfolgend sind Zustände, Ereignisse oder ausgelöste Aktionen angegeben. Ergänze die fehlenden Bausteine (a) Telefonhörer abheben. (b) Eine Waschmaschine hat die Waschtemperatur erreicht. (c) Eine Heizung soll aufhören zu heizen. (d) Bei einem Getränkeautomat soll ein Getränk im Ausgabefach liegen. (e) Eine Braut soll heiraten. (f) Peter Lustig soll eine von seinem Provider abrufen können. M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

12 In diesem Abschnitt 1 Einführung 1.1 Inselspiel 1.2 Zustandsdiagrame in der Unified-Modelling-Language UML-Diagramme

13 Einführung 1 2 UML-Diagramme Zustandsdiagrame in der UnifiedModelling Language UML (Unified Modelling Language) bei Zustandsdiagrammen Zustände werden durch abgerundete Rechtecke dargestellt. Ein Zustandsübergang wird durch ein (Übergangs-)Ereignis hervorgerufen und durch einen Pfeil dargestellt. Bei jedem Zustandsübergang kann eine Aktion ausgelöst werden. Jedes Zustandsdiagramm muss genau einen Anfangszustand haben (Symbol: ). Endzustände (Symbol: ) darf es beliebig viele geben. M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

14 Einführung 1 2 UML-Diagramme Übung Ü 1.2: Buch, Aufgabe 2.6 TA8(a) in yed-textfeld bearbeiten, yed-datei hochmoodeln Ü 1.3: Buch, Aufgabe 2.13 Mit ausgelösten Aktionen ausführen. yed-datei hochmoodeln Ü 1.4: Buch, Aufgabe 2.14 Texteditor eingemoodelt M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

15 Einführung 1 2 UML-Diagramme Übung Ü 1.5: Zahnbürste Eine elektrische Zahnbürste lässt sich als Automat mit genau zwei Zuständen (an und aus) darstellen. Das Ereignis für einen Zustandsübergang ist das Drücken den An-/Ausknopfes, die ausgelöste Aktion das Laufen bzw. Stoppen des Motors. (a) Zeichne das ZÜD. (b) Ergänze das ZÜD um einen dritten Zustand lädt, im dem sich die Bürste beim Laden befindet. Trage auch die dazugehörigen Ereignisse und ausgelösten Aktionen ein. M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

16 Einführung 1 2 UML-Diagramme Übung Ü 1.6: verliebt-verlobt-verheiratet-getrennt Bekanntlich können zwei Personen verliebt, verlobt, verheiratet oder getrennt sein. Erstelle ein dazu passendes ZÜD mit Übergangsereignissen und ausgelösten Aktionen. M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

17 Gliederung Implementation 2 1 Einführung 1.1 Inselspiel 1.2 Zustandsdiagrame in der Unified-Modelling-Language UML-Diagramme 2 Implementation von Zuständen und Verzweigungen 2.1 Beispiel Speiseaufzug 2.2 Verzweigungen 2.3 switch-case 3 Schleifen 3.1 Begriffsbestimmung und Arten 3.2 Wiederholungen mit fester Anzahl 3.3 Bedingte Wiederholungen M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

18 In diesem Abschnitt 2 Implementation von Zuständen und Verzweigungen 2.1 Beispiel Speiseaufzug 2.2 Verzweigungen 2.3 switch-case

19 Implementation 2 1 Beispiel Bespiel: Speiseaufzug M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

20 Implementation 2 1 Beispiel Bespiel: Speiseaufzug Die Zustände werden in der Variable zustand gespeichert, die Übergänge durch die Methode abschickenzu modelliert M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

21 Implementation 2 1 Beispiel Speiseaufzug Attributdeklaration 1 public class Speiseaufzug(){ 2 3 private int zustand; 4 5 // Konstruktor 6 // Methoden 7 } M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

22 Implementation 2 1 Beispiel Speiseaufzug Konstruktor 1 public Speiseaufzug(){ 2 zustand = 0; 3 } M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

23 Implementation 2 1 Beispiel Speiseaufzug Methode abschicken(stockwerk) 1 public void abschickenzu(int stockwerk){ 2 3 if ( zustand == 0 ){ 4 if ( stockwerk ==1 ){ zustand = 1; } 5 else { 6 if ( stockwerk ==2 ){ zustand = 2; } 7 } 8 } 9 if ( zustand == 1; ){ } 12 } M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

24 Implementation 2 1 Beispiel Zusammenfassung Implementation von Zustandsübergangsdiagrammen ZÜD werden wie folgt implementiert: ein Attribut zustand deklarieren, im Konstruktor dem Attribut zustand den Anfangszustand zuweisen, Methode(n) für die Zustandsübergänge implementieren. Dabei müssen in einer Fallunterscheidung für alle Zustände alle Übergänge implementiert werden. M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

25 In diesem Abschnitt 2 Implementation von Zuständen und Verzweigungen 2.1 Beispiel Speiseaufzug 2.2 Verzweigungen 2.3 switch-case

26 Implementation 2 2 Verzweigungen Verzweigungen Verzweigungen werden mit der if (Bedingung){...} else {...} -Kontrollstruktur umgesetzt. Der if-teil wird ausgeführt, falls die Bedingung wahr ist, der else-teil, falls die Bedingung falsch ist. else-teil kann auch entfallen. Beispiel: 1 if ( zustand == 0 ){ 2 System.out. println(" Zustand ist Null"); 3 } 4 else { 5 System.out. println(" Zustand ist nicht Null") 6 } M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

27 Implementation 2 2 Verzweigungen Verzweigungen - Datenflussdiagramm M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

28 Implementation 2 2 Verzweigungen Fallstrick Eine Wertzuweisung ist kein Vergleich Wertzuweisung A=B Speicherzelle A wird mit dem Wert von Speicherzelle B belegt. Speicherzelle A wird also verändert. logischer Vergleich A==B Es wird verglichen, ob die beiden Zelle A und B den gleichen Inhalt haben. Wenn ja ist das Ergebnis von A==B gleich true, sonst false. M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

29 Implementation 2 2 Verzweigungen Vergleichsoperatoren bei Zahlen und Einzelzeichen Name Term true wenn Gleichheit a A==B A und B den gleichen Wert haben Ungleichheit a A!=B A und B verschiedene Werte haben größer/kleiner A>B, A<B A größer/kleiner ist als B größer/kleiner gleich A>=B, A<=B A größer/kleiner oder gleich B ist. a Auch bei Strings M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

30 Implementation 2 2 Verzweigungen Übungen Ü 2.1: Speiseaufzug Material: Paket Speiseaufzug2Vorlage für TA c und d. (a) Deklariere die Klasse Speiseaufzug (Attribute und Konstruktor) wie oben beschrieben. (b) Ergänze die Methode positiongeben(), die dem Benutzer auf der Konsole angibt, in welchem Stockwerk sich der Aufzug befindet. Dabei soll folgender Text in der Konsole erscheinen: Der Aufzug befindet sich im UG bzw. ersten Stock bzw. zweiten Stock. (c) Implementiere die Methode abschickenzu(int stockwerk) nach obiger Vorgabe und zeichne das Datenflussdiagramm mit yed oder per Hand ins Heft. M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

31 Implementation 2 2 Verzweigungen Übungen Ü 2.2: Kühlschrank M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

32 In diesem Abschnitt 2 Implementation von Zuständen und Verzweigungen 2.1 Beispiel Speiseaufzug 2.2 Verzweigungen 2.3 switch-case

33 Implementation 2 switch-case Unübersichtliche und verschachtetelte if-anweisungen 1 public void abschickenzu(int stockwerk){ 2 3 if ( zustand == 0 ){ 4 if ( stockwerk ==1 ){ zustand = 1; } 5 else { 6 if ( stockwerk ==2 ){ zustand = 2; } 7 } 8 } 9 if ( zustand == 1; ){ } 12 } M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

34 Implementation 2 switch-case Unübersichtliche und verschachtetelte if-anweisungen M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

35 Implementation 2 switch-case Mehr übersicht durch switch-anweisung M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

36 Implementation 2 switch-case Implementation switch-anweisungen 1 switch ( note ) { 2 case 1: ntext = "sehr gut"; 3 break; 4 case 2: ntext = "gut"; 5 break; 6... // andere Fälle hier ausgelassen 7 case 6: ntext = " ungenügend"; 8 break; 9 default: ntext = " Fehler"; 10 break; 11 } M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

37 Implementation 2 switch-case Bemerkungen zur switch-anweisung Eine switch-anweisung kann beliebig viele case-klauseln enthalten. Die break-anweisung nach einer case-klausel sorgt dafür, dass nicht(!) die nächste case-klausel bearbeitet, sondern ans Ende der switch-anweisung gesprungen wird. Die default-klausel ist optional und sammelt alle Fälle, die vorher nicht aufgeführt sind. M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

38 Implementation 2 switch-case Fälle zusammenfassen 1 switch ( note ) { 2 case 1: 3 case 2: 4 case 3: 5 case 4: ntext = " bestanden"; 6 break; 7 case 5: 8 case 6: ntext = " nicht bestanden"; 9 break; 10 default: ntext = " Fehler"; 11 break; 12 } M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

39 Implementation 2 switch-case Fälle zusammenfassen M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

40 Implementation 2 switch-case Ü 2.3: switch-anweisungen (a) Implementiere die beiden oben aufgeführten Beispiele, die Noten in Prädikate bzw. Noten in (nicht) bestanden umsetzen. Erzeuge dazu in BlueJ eine Klasse Switchen und darin die beiden Methoden public String notetopraedikat(int note) und public String notetobestanden(int note), in die du die switch-anweisungen überträgst. (b) Erstelle mit Hilfe von switch-anweisungen die Methode public String monattomonatsname(int monat), die zur Nummer des Monats seine Bezeichnung ausgibt. monattomonatsname(9) soll also September zurückgeben. Implementiere auch die Umkehrmethode monatsnametomonat. (c) Erstelle mit Hilfe von switch-anweisungen die Methode public String anzahltagebestimmen(string monat), die für jeden Monat die Anzahl seiner Tage ausgibt (Schaltjahre nicht vergessen). M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

41 Schleifen Gliederung 1 Einführung 1.1 Inselspiel 1.2 Zustandsdiagrame in der Unified-Modelling-Language UML-Diagramme 2 Implementation von Zuständen und Verzweigungen 2.1 Beispiel Speiseaufzug 2.2 Verzweigungen 2.3 switch-case 3 Schleifen 3.1 Begriffsbestimmung und Arten 3.2 Wiederholungen mit fester Anzahl 3.3 Bedingte Wiederholungen M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

42 In diesem Abschnitt 3 Schleifen 3.1 Begriffsbestimmung und Arten 3.2 Wiederholungen mit fester Anzahl 3.3 Bedingte Wiederholungen

43 Schleifen Begriffsbestimmung und Arten Begriffsbestimmung Wiederholungen Prgogrammabschnitte können durch Wiederholungsbefehle mehrfach ausgeführt werden. Man nennt Programmbereiche, die wiederholt werder auch Schleifen. Dabei unterscheidet man: Bedingte Wiederholungen: Die Schleife wird nur ausgeführt, wenn eine bestimmte Bedingung erfüllt ist. Wiederholungen mit fester Anzahl: Ein vorgegebener Wert legt fest, wie oft eine Schleife ausgeführt wird. M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

44 In diesem Abschnitt 3 Schleifen 3.1 Begriffsbestimmung und Arten 3.2 Wiederholungen mit fester Anzahl 3.3 Bedingte Wiederholungen

45 Schleifen Wiederholung mit fester Anzahl Wiederholungen mit fester Anzahl Pseudocode 1 wiederhole n mal 2 Anweisungen 3 endewiederhole Java-Syntax 1 for (int i=0;i<n;i=i+1) { 2 Anweisungen 3 } M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

46 In diesem Abschnitt 3 Schleifen 3.1 Begriffsbestimmung und Arten 3.2 Wiederholungen mit fester Anzahl 3.3 Bedingte Wiederholungen

47 Bedingte Wiederholung Schleifen Bedingte Wiederholungen Pseudocode 1 wiederhole wenn ( Bedingung erfüllt) 2 Anweisungen 3 endewiederhole Java-Syntax 1 while ( logischer Ausdruck) { 2 Anweisungen 3 } M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

48 Schleifen Bedingte Wiederholungen Beispiel: Roboter im Dauerbetrieb 1 public void allekugelnaussortieren( String gewfarbe){ 2 while (true) { 3 kugelaussortieren( gewfarbe); 4 } 5 } M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

49 Schleifen Beispiel: Roboter sucht Kugel Bedingte Wiederholungen 1 public void kugelsuchen( String gewfarbe){ 2 String hatfarbe; 3 robbi. greifen(); 4 hatfarbe = robbi. kugelfarbegeben(); 5 // Schleife 6 while (!(hatfarbe.equals(gewfarbe))){ 7 kugeltransportierenzutopf( A ); 8 robbi.greifen(); 9 hatfarbe = robbi. kugelfarbegeben(); 10 } 11 } M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

50 Schleifen Beispiel: Benutzer wählt Anzahl Bedingte Wiederholungen 1 public void nkugelntransportieren(int anzahl, char topf){ 2 int zaehler; 3 zaehler =0; 4 while (zaehler < anzahl){ 5 kugeltransportierenzutopf(topf); 6 zaehler = zaehler +1; 7 } 8 } M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

51 Schleifen Bedingte Wiederholungen Übungen Ü 3.1: Roboter4Schleifen: Weitere Robotermethoden (a) Implementiere die oben genannten Beispiele der Robotersimulation. (b) Implementiere eine Methode, die so lange Kugeln in Topf A abgelegt, bis zweimal hintereinander die gleiche Farbe kommt. Lösung mit Variablentabelle erklären (c) Implementiere eine Methode, die den Topf wechselt, wenn zweimal hintereinander die gleiche Farbe kommt. M. Jakob (Gymnasium Pegnitz) Zustandsmodelle 10. Dezember / 49

52

Grundwissen Informatik JS 10 24. September 2015

Grundwissen Informatik JS 10 24. September 2015 Grundwissen Informatik JS 10 24. September 2015 Grundlagen der Objektorientierung 1. Erkläre die Begriffe Klasse, Attribut, Attributwert, Objekt, Methode und Dienst. Beispiel! Allgemein Eine Klasse ist

Mehr

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden.

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden. Grundwissen Informatik Objekt Attribut Methoden Als Objekte bezeichnet man alle Gegenstände, Dinge, Lebewesen, Begriffe oder Strukturen unserer Welt ( Autos, Räume, Bakterien, Lehrer, Schüler, Kunden,

Mehr

Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny

Programmiersprache 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.)

Mehr

Die Programmiersprache C Eine Einführung

Die Programmiersprache C Eine Einführung Die Programmiersprache C Eine Einführung Christian Gentsch Fakutltät IV Technische Universität Berlin Projektlabor 2. Mai 2014 Inhaltsverzeichnis 1 Einführung Entstehungsgeschichte Verwendung 2 Objektorientiert

Mehr

1. 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) 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

Mehr

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8

Java 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

Mehr

Kontrollstrukturen MySQL Funktionen. MySQL 4, 5. Kapitel 20a: PHP Teil 2. Marcel Noe

Kontrollstrukturen MySQL Funktionen. MySQL 4, 5. Kapitel 20a: PHP Teil 2. Marcel Noe MySQL 4, 5 Kapitel 20a: PHP Teil 2 Gliederung 1 2 Gliederung 1 2 Die ermöglicht ein Bedingtes Ausführen von Code-Abschnitten. Nur wenn die Bedingung erfüllt ist wird der Block hinter if ausgeführt. Ist

Mehr

1. Grundlegende Datentypen

1. Grundlegende Datentypen 1. Grundlegende Datentypen 16.08.2011 a) Wichtige Datentypen R double Rundungsfehler! 1.42 oder 2E+2 Z int maximal ± 2 Milliarden 2374 Wahrheitswerte boolean true oder false Zeichen char Unicodezeichen

Mehr

Kontrollstrukturen, Pseudocode und Modulo-Rechnung

Kontrollstrukturen, Pseudocode und Modulo-Rechnung Kontrollstrukturen, Pseudocode und Modulo-Rechnung CoMa-Übung III TU Berlin 29.10.2012 CoMa-Übung III (TU Berlin) Kontrollstrukturen, Pseudocode und Modulo-Rechnung 29.10.2012 1 / 1 Themen der Übung 1

Mehr

Theorie zu Übung 8 Implementierung in Java

Theorie zu Übung 8 Implementierung in Java Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Theorie zu Übung 8 Implementierung in Java Klasse in Java Die Klasse wird durch das class-konzept

Mehr

5. Tutorium zu Programmieren

5. Tutorium zu Programmieren 5. Tutorium zu Programmieren Dennis Ewert Gruppe 6 Universität Karlsruhe Institut für Programmstrukturen und Datenorganisation (IPD) Lehrstuhl Programmierparadigmen WS 2008/2009 c 2008 by IPD Snelting

Mehr

2.5 Programmstrukturen Entscheidung / Alternative

2.5 Programmstrukturen Entscheidung / Alternative Entscheidung, ob der folgende Anweisungsblock ausgeführt wird oder ein alternativer Block Entscheidung ob die Bedingung wahr oder falsch (True / False) ist Syntax: 2.5 Programmstrukturen 2.5.1 Entscheidung

Mehr

5.4 Klassen und Objekte

5.4 Klassen und Objekte 5.4 Klassen und Objekte Zusammenfassung: Projekt Figuren und Zeichner Figuren stellt Basisklassen für geometrische Figuren zur Verfügung Zeichner bietet eine übergeordnete Klasse Zeichner, welche die Dienstleistungen

Mehr

Kapitel 2: Programmfluss steuern

Kapitel 2: Programmfluss steuern Kapitel 2: Programmfluss steuern Thema: Programmieren Seite: 1 Kapitel 2: Programmfluss steuern Das Flussdiagramm Um schwierige Aufgaben beim Programmieren zu lösen, ist es oft hilfreich, den Programmablauf

Mehr

Einfache Rechenstrukturen und Kontrollfluss II

Einfache Rechenstrukturen und Kontrollfluss II Einfache Rechenstrukturen und Kontrollfluss II Martin Wirsing in Zusammenarbeit mit Moritz Hammer und Axel Rauschmayer http://www.pst.informatik.uni-muenchen.de/lehre/ss06/infoii/ SS 06 Ziele Lernen imperative

Mehr

Objektorientierte Programmierung

Objektorientierte 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

Mehr

Einstieg in die Informatik mit Java

Einstieg 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

Mehr

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 2

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 2 Fakultät Verkehrswissenschaften Friedrich List, Professur für Verkehrsbetriebslehre und Logistik Modul Entscheidungsunterstützung in der Logistik Einführung in die Programmierung mit C++ Übung 2 SS 2016

Mehr

Programmieren I. Kontrollstrukturen. Heusch 8 Ratz 4.5. www.kit.edu. Institut für Angewandte Informatik

Programmieren I. Kontrollstrukturen. Heusch 8 Ratz 4.5. www.kit.edu. Institut für Angewandte Informatik Programmieren I Kontrollstrukturen Heusch 8 Ratz 4.5 KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Arten von Kontrollstrukturen

Mehr

Grundlagen der Programmierung

Grundlagen der Programmierung Grundlagen der Programmierung 8. Vorlesung 25.05.2016 1 Ausdrücke "Befehle", die ein Ergebnis liefern 3 + 4 sin(x) x < 10 getchar() Ausdrücke können Teil eines anderen Ausdrucks sein x = sin( x + y ) Auswertung:

Mehr

1.2 Attribute und Methoden Aufbau einer Java-Klasse:

1.2 Attribute und Methoden Aufbau einer Java-Klasse: Aufbau einer Java-Klasse: public class Quadrat { int groesse; int xposition; String farbe; boolean istsichtbar; public void sichtbarmachen() { istsichtbar = true; public void horizontalbewegen(int distance){

Mehr

Kapitel 5 Zustand eines Objekts

Kapitel 5 Zustand eines Objekts Kapitel 5 Zustand eines Objekts Seite 1 / 6 Kapitel 5 Zustand eines Objekts Lernziel: Bedingte Anweisung in Java Objektzustand 5.1 Unverwundbar soll sichtbar sein Die Methode VerwundbarSetzen sorgt dafür,

Mehr

Programmiersprache 2 (C++) Prof. Dr. Stefan Enderle NTA Isny

Programmiersprache 2 (C++) Prof. Dr. Stefan Enderle NTA Isny Programmiersprache 2 (C++) Prof. Dr. Stefan Enderle NTA Isny 3. UML Klassendiagramm Nachtrag 3.1 Einführung UML UML ist eine standardisierte Sprache zur Modellierung von Systemen. In UML werden graphische

Mehr

Programmierstil. Objektsammlungen. Konzepte. Zwischenspiel: Einige beliebte Fehler... Variablennamen Kommentare Layout Einrückung

Programmierstil. Objektsammlungen. Konzepte. Zwischenspiel: Einige beliebte Fehler... Variablennamen Kommentare Layout Einrückung Programmierstil Objektsammlungen Einführung in Sammlungen Variablennamen Kommentare Layout Einrückung (siehe: Stilrichtlinien im Buchanhang) 4.0 Konzepte Sammlungen (besonders: ArrayList) Schleifen: die

Mehr

public class SternchenRechteckGefuellt {

public class SternchenRechteckGefuellt { Java programmieren: Musterlösungen Konsolen-Aufgaben Aufgabe 1: Gefüllte Rechtecke zeichnen Schreiben Sie ein Programm, das ein durch Sternchen gefülltes Rechteck zeichnet. Der Benutzer soll Breite und

Mehr

12 == 12 true 12 == 21 false 4 === 7 true 4 === "vier" false 4 === 4.0 false 12!= 13 true 12!== 12 false 12!== 12.0 true. 1 < 3 true 3 < 1 false

12 == 12 true 12 == 21 false 4 === 7 true 4 === vier false 4 === 4.0 false 12!= 13 true 12!== 12 false 12!== 12.0 true. 1 < 3 true 3 < 1 false Die if-anweisung if (Bedingung 1) { Code 1 else { Code 2 ; Anm.1: Das ; kann entfallen, da innerhalb { ein sog. Codeblock geschrieben wird. Anm.2: Es gibt noch andere Schreibweisen, aber wir wollen uns

Mehr

Objektorientierte Programmierung OOP Programmieren mit Java

Objektorientierte 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

Mehr

ModProg 15-16, Vorl. 5

ModProg 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

Mehr

Objektorientierte Programmierung OOP Programmieren mit Java

Objektorientierte Programmierung OOP Programmieren mit Java Übungen: 6 Schleifen Objektorientierte Programmierung OOP Programmieren mit Java 1. do-schleife 2. while-schleife 3. a) c) Verschiedene for-schleifen 6 Schleifen Übungen 4. for-schleife: halber Tannenbaum

Mehr

Wiederholung Wozu Methoden? Methoden Schreiben Methoden Benutzen Rekursion?! Methoden. Javakurs 2012, 3. Vorlesung

Wiederholung Wozu Methoden? Methoden Schreiben Methoden Benutzen Rekursion?! Methoden. Javakurs 2012, 3. Vorlesung Wiederholung Wozu? Schreiben Benutzen Rekursion?! Javakurs 2012, 3. Vorlesung maggyrz@freitagsrunde.org 5. März 2013 Wiederholung Wozu? Schreiben Benutzen Rekursion?! 1 Wiederholung 2 Wozu? 3 Schreiben

Mehr

Fallunterscheidung: if-statement

Fallunterscheidung: if-statement Fallunterscheidung: if-statement A E 1 E 2 V 1 V 2 Syntax: if ( ausdruck ) Semantik: else anweisungsfolge_1 anweisungsfolge_2 1. Der ausdruck wird bewertet 2. Ergibt die Bewertung einen Wert ungleich 0

Mehr

Primitive Datentypen

Primitive Datentypen Primitive Datentypen 2 Arten von Datentypen: primitive Datentypen (heute) Objekte (später) Java ist streng typisiert, d.h. für jede Variable muß angegeben werden was für eine Art von Wert sie aufnimmt.

Mehr

Flussdiagramm / Programmablaufplan (PAP)

Flussdiagramm / Programmablaufplan (PAP) Flussdiagramm / Programmablaufplan (PAP) Basissysmbole Grenzstelle (Anfang, Zwischenhalt oder Ende des Programms/Algorithmus) Verbindung Zur Verdeutlichung der Ablaufrichtung werden Linien mit einer Pfeilspitze

Mehr

Kapitel 7 Algorithmem Seite 1

Kapitel 7 Algorithmem Seite 1 Kapitel 7 Algorithmem Seite 1 7 Algorithmen In diesem Kapitel will ich einige einfache Algorithmen mit ihren Kontrollstrukturen in Java besprechen. Zum Nachschlagen steht am Ende dieses Kapitels eine Zusammenfassung

Mehr

Operatoren für elementare Datentypen Bedingte Anweisungen Schleifen. Programmieren I. Martin Schultheiß. Hochschule Darmstadt Wintersemester 2010/2011

Operatoren 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

Mehr

6. Zustandsorientierte Modellierung

6. Zustandsorientierte Modellierung bertram.hafner@t-online.de Informatik 11 Seite 25 6. Zustandsorientierte Modellierung Im Alltag benutzen wir vielfältige Automaten: denke an Getränkeautomat, Ampelanlage, Kaffeeautomat, Waschmaschine,

Mehr

Java Einführung ABLAUFSTEUERUNG Kapitel 3 und 4

Java Einführung ABLAUFSTEUERUNG Kapitel 3 und 4 Java Einführung ABLAUFSTEUERUNG Kapitel 3 und 4 Inhalt dieser Einheit Merkmale und Syntax der verschiedenen Kontrollstrukturen: if else switch while do while for break, continue EXKURS: Rekursion 2 Kontrollstrukturen

Mehr

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH Java Einleitung - Handout Kurzbeschreibung: Eine kleine Einführung in die Programmierung mit Java. Dokument: Autor: Michael Spahn Version 1.0 Status: Final Datum: 23.10.2012 Vertraulichkeit: öffentlich

Mehr

PHP 5.4 ISBN 978-3-86249-327-2. Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012. Grundlagen zur Erstellung dynamischer Webseiten GPHP54

PHP 5.4 ISBN 978-3-86249-327-2. Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012. Grundlagen zur Erstellung dynamischer Webseiten GPHP54 PHP 5.4 Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012 Grundlagen zur Erstellung dynamischer Webseiten ISBN 978-3-86249-327-2 GPHP54 5 PHP 5.4 - Grundlagen zur Erstellung dynamischer Webseiten

Mehr

Java-Schulung Grundlagen

Java-Schulung Grundlagen Java-Schulung Grundlagen Java 2 Standard Edition JDK 5 / 6 31.05.2008 Marcel Wieczorek 1 Themenübersicht Basiswissen Objektorientierung Datentypen Fehlerbehandlung Sonstiges Einführung Klassen, Strings

Mehr

Java 7. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Dezember 2011 JAV7

Java 7. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Dezember 2011 JAV7 Java 7 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Dezember 2011 JAV7 5 Java 7 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen

Mehr

Programmieren in C/C++ und MATLAB

Programmieren in C/C++ und MATLAB Programmieren in C/C++ und MATLAB Sven Willert Sabine Schmidt Christian-Albrechts-Universität zu Kiel CAU 4-1 Übung 1) Schreiben Sie ein Programm, das die Fläche unter einer Parabel, also das Integral

Mehr

Übersicht Programmablaufsteuerung

Übersicht Programmablaufsteuerung Übersicht Programmablaufsteuerung Konditionale Verzweigung: if - else switch-anweisung Schleifenkonstrukte: while, do - while for Schleife Sprung-Anweisungen: break, continue, goto, return Anweisungen

Mehr

Programmierkurs: Delphi: Einstieg

Programmierkurs: Delphi: Einstieg Seite 1 von 6 Programmierkurs: Delphi: Einstieg Aus Wikibooks Inhaltsverzeichnis 1 Einstieg Einstieg Was ist Delphi Borland Delphi ist eine RAD-Programmierumgebung von Borland. Sie basiert auf der Programmiersprache

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Universität der Bundeswehr Fakultät für Informatik Institut 2 Priv.-Doz. Dr. Lothar Schmitz FT 2006 Zusatzaufgaben Lösungsvorschlag Objektorientierte Programmierung Lösung 22 (Java und UML-Klassendiagramm)

Mehr

1 Bedingungen und der Typ bool. Informatik I: Einführung in die Programmierung 5. Bedingungen, bedingte Ausführung und Schleifen. Vergleichsoperatoren

1 Bedingungen und der Typ bool. Informatik I: Einführung in die Programmierung 5. Bedingungen, bedingte Ausführung und Schleifen. Vergleichsoperatoren 1 und der Informatik I: Einführung in die Programmierung 5., bedingte Ausführung und Albert-Ludwigs-Universität Freiburg Bernhard Nebel 27. Oktober 2015 27. Oktober 2015 B. Nebel Info I 3 / 21 Der Vergleichsoperatoren

Mehr

Informatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. michael.roth@h-da.de. Hochschule Darmstadt -Fachbereich Informatik-

Informatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. michael.roth@h-da.de. Hochschule Darmstadt -Fachbereich Informatik- Informatik Studiengang Chemische Technologie Michael Roth michael.roth@h-da.de Hochschule Darmstadt -Fachbereich Informatik- WS 2012/2013 Inhalt Teil VII Einstieg in Java I Michael Roth (h_da) Informatik

Mehr

Studentische Lösung zum Übungsblatt Nr. 7

Studentische Lösung zum Übungsblatt Nr. 7 Studentische Lösung zum Übungsblatt Nr. 7 Aufgabe 1) Dynamische Warteschlange public class UltimateOrderQueue private Order[] inhalt; private int hinten; // zeigt auf erstes freies Element private int

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum

Mehr

Programmieren für Wirtschaftswissenschaftler SS 2015

Programmieren für Wirtschaftswissenschaftler SS 2015 DEPARTMENT WIRTSCHAFTSINFORMATIK FACHBEREICH WIRTSCHAFTSWISSENSCHAFT Programmieren für Wirtschaftswissenschaftler SS 2015 Lucian Ionescu Blockveranstaltung 16.03 27.3.2015 3. Verzweigungen und Schleifen

Mehr

Klassendefinitionen verstehen

Klassendefinitionen verstehen Klassendefinitionen verstehen Java-Programme bestehen aus Klassendefinitionen und sonst nichts! 1 1.0 Konzepte Felder Konstruktoren Methoden Parameter Zuweisungen ( = ) Anweisungen bedingte Anweisungen

Mehr

1. Typen und Literale (6 Punkte) 2. Zuweisungen (6 = Punkte)

1. Typen und Literale (6 Punkte) 2. Zuweisungen (6 = Punkte) Praktische Informatik (Software) Vorlesung Softwareentwicklung 1 Prof. Dr. A. Ferscha Hauptklausur am 01. 02. 2001 Zuname Vorname Matr. Nr. Stud. Kennz. Sitzplatz HS / / / Punkte Note korr. Fügen Sie fehlende

Mehr

Vorlesung Informatik II

Vorlesung Informatik II Vorlesung Informatik II Universität Augsburg Wintersemester 2011/2012 Prof. Dr. Bernhard Bauer Folien von: Prof. Dr. Robert Lorenz Lehrprofessur für Informatik 02. JAVA: Erstes Programm 1 Das erste Java-Programm

Mehr

OOA-Dynamische Konzepte

OOA-Dynamische Konzepte Proseminar UML im SS 2005 OOA-Dynamische Konzepte Teil 2 von Benjamin Daeumlich 1 Übersicht Szenario Definition Interaktionsdiagramme Sequenzdiagramm Kommunikationsdiagramm Sequenz- vs. Kommunikationsdiagramm

Mehr

Inhaltsverzeichnis. Grundbegriffe der C-Programmierung Für den HI-TECH C-Compiler

Inhaltsverzeichnis. Grundbegriffe der C-Programmierung Für den HI-TECH C-Compiler Inhaltsverzeichnis Grundbegriffe der C-Programmierung 1. Grundsätzliches... 2 1.1 Darstellung von Werten... 2 1.1.1 Dezimale Zahlendarstellung... 2 1.1.2 Binäre Zahlendarstellung... 3 1.1.3 Hexadezimale

Mehr

Übungen zur Vorlesung Wissenschaftliches Rechnen I. Grundelemente von Java. Eine Anweisung. wird mit dem Wertzuweisungsoperator = geschrieben.

Übungen zur Vorlesung Wissenschaftliches Rechnen I. Grundelemente von Java. Eine Anweisung. wird mit dem Wertzuweisungsoperator = geschrieben. Eine Anweisung wird mit dem Wertzuweisungsoperator = geschrieben. Eine Anweisung wird mit dem Wertzuweisungsoperator = geschrieben. Daher ist y = x + 5.6; keine Gleichung, sondern die Anweisung den Wert

Mehr

Computeranwendung und Programmierung (CuP)

Computeranwendung und Programmierung (CuP) Computeranwendung und Programmierung (CuP) VO: Peter Auer (Informationstechnologie) UE: Norbert Seifter (Angewandet Mathematik) Organisatorisches (Vorlesung) Vorlesungszeiten Montag 11:15 12:45 Freitag

Mehr

Grundlagen der Programmierung

Grundlagen der Programmierung Grundlagen der Programmierung 7. Vorlesung 18.05.2016 1 Konstanten Ganzzahlkonstante Dezimal: 42, 23, -2 Oktal (0 vorangestellt): 052 Hexadezimal (0x vorangestellt): 0x2A Gleitkommazahlen: 3.1415, 2.71,

Mehr

Einführung in die Informatik für Hörer aller Fakultäten II. Andreas Podelski Stephan Diehl Uwe Waldmann

Einführung in die Informatik für Hörer aller Fakultäten II. Andreas Podelski Stephan Diehl Uwe Waldmann Einführung in die Informatik für Hörer aller Fakultäten II Andreas Podelski Stephan Diehl Uwe Waldmann 1 Einführung in die Informatik für Hörer aller Fakultäten II Andreas Podelski Stephan Diehl Uwe Waldmann

Mehr

Tutorium Rechnerorganisation

Tutorium Rechnerorganisation Woche 2 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Mehr

Datenbankanwendungsprogrammierung Crashkurs Java

Datenbankanwendungsprogrammierung Crashkurs Java Datenbankanwendungsprogrammierung Crashkurs Java Denny Priebe Datenbankanwendungsprogrammierung p. Unterschiede zu C, C++ typedefs, Präprozessor Strukturen, Unions globale Funktionen Mehrfachvererbung

Mehr

Algorithmische Kernsprache. Zuweisung, einfache und bedingte Anweisung, Blöcke, Schleifen, return, debugging.

Algorithmische Kernsprache. Zuweisung, einfache und bedingte Anweisung, Blöcke, Schleifen, return, debugging. Algorithmische Kernsprache Zuweisung, einfache und bedingte Anweisung, Blöcke, Schleifen, return, debugging. Ausdrücke Anweisungen Ausdrücke bezeichnen einen Wert Kontext stellt Werte von Variablen Werte

Mehr

Softwaretechnologie - Wintersemester 2012/2013 - Dr. Günter Kniesel

Softwaretechnologie - Wintersemester 2012/2013 - Dr. Günter Kniesel Übungen zur Vorlesung Softwaretechnologie - Wintersemester 2012/2013 - Dr. Günter Kniesel Übungsblatt 10 - Lösungshilfe Aufgabe 1. CRC-Karten (7 Punkte) Es geht um die Modellierung der folgenden Bibliotheks-Anwendung:

Mehr

Grundlegende Programmierkonzepte: Abläufe mit Wiederholungen (Schleifen)

Grundlegende Programmierkonzepte: Abläufe mit Wiederholungen (Schleifen) Grundlegende Programmierkonzepte: Abläufe mit Wiederholungen (Schleifen) Wiederholung mit Abbruchbedingung (while-schleife) Kara soll geradeaus laufen, bis er vor einem Baum steht: Situation vor dem Start

Mehr

Objektorientierte Modellierung (1)

Objektorientierte Modellierung (1) Objektorientierte Modellierung (1) Die objektorientierte Modellierung verwendet: Klassen und deren Objekte Beziehungen zwischen Objekten bzw. Klassen Klassen und Objekte Definition Klasse Eine Klasse ist

Mehr

JAVA - Methoden

JAVA - Methoden Übungen Informatik I JAVA - http://www.fbi-lkt.fh-karlsruhe.de/lab/info01/tutorial Übungen Informatik 1 Folie 1 sind eine Zusammenfassung von Deklarationen und Anweisungen haben einen Namen und können

Mehr

Einführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015

Einführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015 Java Crashkurs Kim-Manuel Klein (kmk@informatik.uni-kiel.de) May 4, 2015 Quellen und Editoren Internet Tutorial: z.b. http://www.java-tutorial.org Editoren Normaler Texteditor (Gedit, Scite oder ähnliche)

Mehr

Excel VBA. Teil 11.8. Zusammenfassung! Was wir können sollten! V0.5 5.4.2013

Excel VBA. Teil 11.8. Zusammenfassung! Was wir können sollten! V0.5 5.4.2013 Excel VBA Teil 11.8 Zusammenfassung! Was wir können sollten! V0.5 5.4.2013 1 von 17 Inhaltsverzeichnis Seite 3... Modul einfügen Seite 4... Prozeduren oder Funktionen Seite 5... Ein/Ausgaben Seite 6...

Mehr

C# 2000 Expression Beispielcodes für Konsolen- und Formularanwendung

C# 2000 Expression Beispielcodes für Konsolen- und Formularanwendung C# 2000 Expression Beispielcodes für Konsolen- und Formularanwendung 1. "Hai!" [Konsolenanwendung] Console.WriteLine("Hai, wie geht's?"); 2. Muktiplikation mit sich selbst [Konsolenanwendung] // Ausgabe

Mehr

Übersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung

Übersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung Übersicht 3.1 Modell Konto 3.2 Modell Konto - Erläuterungen 3.3 Benutzer Ein- und Ausgabe mit Dialogfenster I 3.4 Benutzer Ein- und Ausgabe mit Dialogfenster II 3.5 Klassen- und Objekteigenschaften des

Mehr

Herzlich Willkommen. Über mich Termine Literatur Über PHP

Herzlich Willkommen. Über mich Termine Literatur Über PHP Über mich Termine Literatur Über PHP Herzlich Willkommen Über mich Termine Literatur Über PHP Wer ist das da vorne? Mario Lipinski Über mich Termine Literatur Über PHP Wer ist das da vorne? Mario Lipinski

Mehr

Probeklausur: Programmierung WS04/05

Probeklausur: Programmierung WS04/05 Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,

Mehr

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java: Technische Informatik für Ingenieure (TIfI) WS 2005/2006, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Datenstrukturen 9. Datenstrukturen Daten zusammenfassen

Mehr

Arbeiten mit JavaKara

Arbeiten mit JavaKara Arbeiten mit JavaKara 1. Programmierumgebung Möchte man ein neues Programm erstellen, so wird einem ein Programmeditor zur Verfügung gestellt, der bereits eine vorgefertigte Schablone darstellt. In der

Mehr

Entwurf von Algorithmen - Kontrollstrukturen

Entwurf von Algorithmen - Kontrollstrukturen Entwurf von Algorithmen - Kontrollstrukturen Eine wichtige Phase in der Entwicklung von Computerprogrammen ist der Entwurf von Algorithmen. Dieser Arbeitsschritt vor dem Schreiben des Programmes in einer

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java Dateien lesen und schreiben 2 Übersicht der heutigen Inhalte File Streams try-with-resources Properties csv-dateien 3 Klasse File Die Klasse java.io.file bietet Unterstützung im Umgang

Mehr

Grundlagen der Programmierung Prof. H. Mössenböck. 10. Klassen

Grundlagen der Programmierung Prof. H. Mössenböck. 10. Klassen Grundlagen der Programmierung Prof. H. Mössenböck 10. Klassen Motivation Wie würde man ein Datum speichern (z.b. 13. November 2004)? 3 Variablen int da; String month; int ear; Unbequem, wenn man mehrere

Mehr

Übungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen

Übungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen Übungen if / else / else if... 2... 2 Aufgabe 2:... 2 Aufgabe 3:... 2 Aufgabe 4:... 2 Aufgabe 5:... 2 Aufgabe 6:... 2 Aufgabe 7:... 3 Aufgabe 8:... 3 Aufgabe 9:... 3 Aufgabe 10:... 3 switch... 4... 4 Aufgabe

Mehr

Schnellübersichten. Visual C# 2015 Grundlagen Programmierung

Schnellübersichten. Visual C# 2015 Grundlagen Programmierung Schnellübersichten Visual C# 2015 Grundlagen Programmierung Kap. 3 Projekte in Visual Studio 2 4 Anwendungen erstellen 3 5 Benutzeroberflächen gestalten 4 7 Kontrollstrukturen 5 3 Projekte in Visual Studio

Mehr

Einführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005

Einführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005 Einführung in Java PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005 Gliederung 1. Was ist Java / Geschichte von Java 2. Prinzip der Plattformunabhängigkeit 3. Wie kommt man vom Quellcode zum Programm

Mehr

Klausur zur Einführung in die objektorientierte Programmierung mit Java

Klausur zur Einführung in die objektorientierte Programmierung mit Java Klausur zur Einführung in die objektorientierte Programmierung mit Java im Studiengang Informationswissenschaft Prof. Dr. Christian Wolff Professur für Medieninformatik Institut für Medien-, Informations-

Mehr

3. Algorithmen und Programmierumgebung und Einführung in die Datenmodellierung Für die Implementierung von Algorithmen nutzen wir

3. Algorithmen und Programmierumgebung und Einführung in die Datenmodellierung Für die Implementierung von Algorithmen nutzen wir 1 3. Algorithmen und Programmierumgebung und Einführung in die Datenmodellierung Für die Implementierung von Algorithmen nutzen wir Die Programmiersprache Java http://www.java.com/ Die Programmierumgebung

Mehr

3 Objektorientierte Konzepte in Java

3 Objektorientierte Konzepte in Java 3 Objektorientierte Konzepte in Java Bisherige Beobachtungen zu Objekten: werden in Klassen zusammengefasst besitzen Eigenschaften und Verhalten verbergen private Informationen werden geboren, leben und

Mehr

Es ist für die Lösung der Programmieraufgabe nicht nötig, den mathematischen Hintergrund zu verstehen, es kann aber beim Verständnis helfen.

Es ist für die Lösung der Programmieraufgabe nicht nötig, den mathematischen Hintergrund zu verstehen, es kann aber beim Verständnis helfen. Ziele sind das Arbeiten mit Funktionen und dem Aufzählungstyp (enum), sowie - einfache Verzweigung (if else) - Alternativen switch case - einfache Schleifen (while oder do while) Aufgabe 3: Diese Aufgabe

Mehr

Webbasierte Programmierung

Webbasierte Programmierung Webbasierte Programmierung Eine Einführung mit anschaulichen Beispielen aus der HTML5-Welt apl. Prof. Dr. Achim Ebert Inhalt Kapitel 6: JavaScript Kontrollstrukturen Verzweigungen Einseitig, zweiseitig,

Mehr

Übung Grundlagen der Programmierung. Übung 03: Schleifen. Testplan Testergebnisse

Übung Grundlagen der Programmierung. Übung 03: Schleifen. Testplan Testergebnisse Übung 03: Schleifen Abgabetermin: xx.xx.xxxx Name: Matrikelnummer: Gruppe: G1 (Prähofer) G2 (Prähofer) G3 (Wolfinger) Aufgabe Punkte gelöst abzugeben schriftlich abzugeben elektronisch Aufgabe 03.1 12

Mehr

In dieser Aufgabe sollen Teile eines kleinen Pong-Spiels analysiert und implementiert werden. Gegeben sei dazu das folgende Szenario:

In dieser Aufgabe sollen Teile eines kleinen Pong-Spiels analysiert und implementiert werden. Gegeben sei dazu das folgende Szenario: IF1-Informatik Eph GK (GA) Bearbeitungszeit: 90 min. Seite 1 Aufgabe 1: Greenfoot mit Kara Ein Pong-Spiel In dieser Aufgabe sollen Teile eines kleinen Pong-Spiels analysiert und implementiert werden. Gegeben

Mehr

Repetitorium Informatik (Java)

Repetitorium Informatik (Java) Repetitorium Informatik (Java) Tag 6 Lehrstuhl für Informatik 2 (Programmiersysteme) Übersicht 1 Klassen und Objekte Objektorientierung Begrifflichkeiten Deklaration von Klassen Instanzmethoden/-variablen

Mehr

Vorkurs C++ Programmierung

Vorkurs C++ Programmierung Vorkurs C++ Programmierung Klassen Letzte Stunde Speicherverwaltung automatische Speicherverwaltung auf dem Stack dynamische Speicherverwaltung auf dem Heap new/new[] und delete/delete[] Speicherklassen:

Mehr

Jetzt sollt ihr von der Vorlage der Grundversion 1.0 ein eigenes Textadventure erstellen.

Jetzt sollt ihr von der Vorlage der Grundversion 1.0 ein eigenes Textadventure erstellen. Teil B: Erweiterungen Jetzt sollt ihr von der Vorlage der Grundversion 1.0 ein eigenes Textadventure erstellen. Die folgenden Aufgaben und Ausführungen geben einige Hilfestellungen, welche (mindestens

Mehr

Handbuch für die Erweiterbarkeit

Handbuch für die Erweiterbarkeit Handbuch für die Erweiterbarkeit Inhalt Pakete für die Erweiterbarkeit... 2 Actions... 2 Items... 2 Itemset... 2 Die UseCaseNewAction... 3 Eigene Shapes... 4 Der Shape Container... 5 User Objects... 6

Mehr

Große Übung Praktische Informatik 1

Große Übung Praktische Informatik 1 Große Übung Praktische Informatik 1 2005-12-08 fuessler@informatik.uni-mannheim.de http://www.informatik.uni-mannheim.de/pi4/people/fuessler 1: Announcements / Orga Weihnachtsklausur zählt als Übungsblatt,

Mehr

Einführung in die objektorientierte Programmierung mit Java. Klausur am 19. Oktober 2005

Einführung in die objektorientierte Programmierung mit Java. Klausur am 19. Oktober 2005 Einführung in die objektorientierte Programmierung mit Java Klausur am 19. Oktober 2005 Matrikelnummer: Nachname: Vorname: Semesteranzahl: Die Klausur besteht aus drei Frageblöcken zu den Inhalten der

Mehr

WhiteStarUML Tutorial

WhiteStarUML Tutorial WhiteStarUML Tutorial Autor: Simon Balázs, BME IIT, 2015. Übersetzung: Kovács Márton, 2015. Installation Herunterladen und installieren Sie das WhiteStarUML: http://sourceforge.net/projects/whitestaruml/

Mehr

Vgl. Oestereich Kap 2.6 Seiten 127-133

Vgl. Oestereich Kap 2.6 Seiten 127-133 Vgl. Oestereich Kap 2.6 Seiten 127-133 4. Zustände 1 Aktivitäts- und Zustands-Diagramm werden oft verwechselt. Es ist darum wichtig zu unterscheiden, dass im Aktivitätsdiagramm die Aktionen im Zentrum

Mehr

VBA-Programmierung: Zusammenfassung

VBA-Programmierung: Zusammenfassung VBA-Programmierung: Zusammenfassung Programmiersprachen (Definition, Einordnung VBA) Softwareentwicklung-Phasen: 1. Spezifikation 2. Entwurf 3. Implementierung Datentypen (einfach, zusammengesetzt) Programmablaufsteuerung

Mehr

Fakultät Angewandte Informatik Programmierung verteilter Systeme 28.11.2011. Übungen zur Vorlesung Informatik II, Blatt 6

Fakultät Angewandte Informatik Programmierung verteilter Systeme 28.11.2011. Übungen zur Vorlesung Informatik II, Blatt 6 WS 2011/12 Fakultät Angewandte Informatik Programmierung verteilter Systeme 28.11.2011 Prof. Dr. Bernhard Bauer Übungen zur Vorlesung Informatik II, Blatt 6 Abgabe: Montag, 05.12.2011, 12.00 Uhr, Informatik

Mehr

Test-Driven Design: Ein einfaches Beispiel

Test-Driven Design: Ein einfaches Beispiel Test-Driven Design: Ein einfaches Beispiel Martin Wirsing in Zusammenarbeit mit Moritz Hammer und Axel Rauschmayer SS 06 2 Ziele Veranschaulichung der Technik des Test-Driven Design am Beispiel eines Programms

Mehr

2. Programmierung in C

2. Programmierung in C 2. Programmierung in C Inhalt: Überblick über Programmiersprachen, Allgemeines zur Sprache C C: Basisdatentypen, Variablen, Konstanten Operatoren, Ausdrücke und Anweisungen Kontrollstrukturen (Steuerfluss)

Mehr