MEC: Objektorient. Programmierung - Prüfung

Größe: px
Ab Seite anzeigen:

Download "MEC: Objektorient. Programmierung - Prüfung"

Transkript

1 Prof. Dr. Michael Helbig SS 2018 ######### MEC: Objektorient. Programmierung - Prüfung Name Vorname Geburtsdatum Matrikel-Nr. Hinweise Bitte Blätter nicht auseinanderreißen! Hilfsmittel: handbeschriebenes DINA4-Blatt, Taschenrechner Bearbeitungszeit: 60 min. VIEL ERFOLG! Diesen Bereich nicht ausfüllen! Aufgabe Summe Punkte Maximum Note: Erstprüfer: Zweitprüfer:

2 1. Gegeben die Klassen Test, DataElement, , Image, die alle in einem Package liegen und java.util.arraylist und java.util.list importiert haben. Ergänzen Sie den Code so wie in den Kommentaren beschrieben: public class Test { public static void main(string[] args) { e = new ( "Re : Anfrage", "ab@cd.com", "ef@gh.de", "Tach!" ); byte [] d = new byte [] { 1, 0, 0, 0, 0, 0 ; e.addattachment( new Image( "Bestellung",Image.ImageType.JPG, d)); e.addattachment( new ( "Anfrage", "ef@gh.de", "ab@cd.com", "Hi!" )); f = ( ) e.getattachment(1); byte [] d2 = new byte [] { 1, 0, 0, 0, 0, 0 ; f.addattachment( new Image( "Angebot", Image.ImageType.JPG, d2)); boolean r = e.removeattachment( "Test" ); // Rufen Sie die Methode namens getattachmentcount von e auf: (1P) int z = ; int c = e.getsizeinchars(); // Geben Sie r,z,c auf der Konsole aus: (1P) /* Geben Sie die Werte von r,z,c mit Begründung an: (6P) Wert von r: Begründung: Wert von z: Begründung: Wert von c: Begründung: */ String desc = e.getdescription(); // Was steht in desc: (2P)

3 abstract class DataElement { String titel ; public String gettitel() { return titel ; public DataElement(String titel) { this. titel = titel; // Ergänzen Sie, damit der Code kompiliert: (2P) public String getdescription(); public int getsizeinchars(); class extends DataElement { String sender ; String recipient ; String text ; // Initialisieren Sie mit einer java.util.arraylist: (1P) List<DataElement> attachments = ; public (String title, String sender, String recipient, String text){ super (title); // Prüfen Sie, ob sender und recipient -Zeichen enthalten. // Falls nein, soll eine IllegalArgumentException geworfen werden. // Benutzen Sie dazu: // boolean java.lang.string.contains(charsequence s): Returns true // if and only if this string contains the specified sequence of // char values. (3P) this. sender = sender; this. recipient = recipient; this. text = text;

4 public String getdescription() { String resultat = gettitel() + " mit " + attachments.size() + " Anhängen : " ; boolean istdererste = true ; for (DataElement item : attachments ) { if (!istdererste) { resultat = resultat + ", " ; istdererste = false ; resultat = resultat + item.getdescription(); return resultat; public int getsizeinchars() { int resultat = text.length(); for (DataElement item : attachments ) { resultat += item.getsizeinchars(); return resultat; public void addattachment(dataelement anhang) { attachments.add(anhang); public DataElement getattachment( int i) { return attachments.get(i); public boolean removeattachment(string title) { DataElement a = findanhangbytitel(title); // TODO s.u. if (a!= null ) { attachments.remove(a); return true ; else { return false ; // Implementieren Sie folgeden Methode: Sie gibt ein DataElement // anhand eines übergebenen title in attachements zurück: (4P) DataElement findanhangbytitel(string title) { // TODO public int getattachmentcount() { return attachments.size(); public String gettext() { return text ;

5 class Image extends DataElement { // Deklarieren Sie eine enum namens ImageType mit den Werten // JPG, PNG, GIF (1P) public ImageType ImageType typ; byte [] data ; public Image(String title, Image.ImageType typ, byte [] data) { super (title); this.typ = typ; this. data = data; public String getdescription() { return gettitel() + " (" + typ + ") " ; public int getsizeinchars() { return data. length ;

6 2. Schreiben Sie ein Interface Processor folgender Art: (4P) Dieses soll einen generischen Typparamter T besitzen und eine öffentliche Methode namens process, die einen Parameter vom Typ T aufnimmt und nichts zurückgibt. 3. Schreiben Sie eine Klasse Visitenkarte folgender Art: (6P) Sie erbt von DataElement. Sie besitzt einen parameterlosen Konstruktor, der als Titel immer " Visitenkarte " benutzt. Sie liefert als Beschreibung " Visitenkarte " zurück. Sie liefert als Größe (SizeInChars) 42 zurück. Implementieren das Interface Processor für den Typ-Parameter Visitenkarte. In der Methode process soll die Beschreibung auf die Konsole ausgegeben werden.

7 4. Gegeben eine CSV-Datei C:/Downloads/Countries.csv: DE,Germany US,United States MY,Malaysia Diese Datei soll in einem Java-Programm auf die Konsole ausgegeben werden. Ergänzen Sie den Code: import java.io.bufferedreader; import java.io.filereader; import java.io.ioexception; public class CSVParser { public static void main(string[] args) { String csvfile = "C:/Downloads/Countries.csv" ; BufferedReader br = null ; String line = "" ; // (1P) String csvsplitby = ; try { br = new BufferedReader( new FileReader(csvFile)); while ((line = br.readline())!= null ) { String[] country = line.split(csvsplitby); // Geben Sie auf der Konsole im folgenden Format aus: // z.b. Country [code=de, name=germany] (3P) catch (Exception e) {e.printstacktrace(); finally { if (br!= null ) { try { br.close(); catch (IOException e) {e.printstacktrace();

8 5. Liste. Gegeben folgende Implementierung einer Liste von ganzen Zahlen. Ergänzen Sie die TODOs: public class NumberList { // Innere Klasse für ein ListenELement: private class NumberCell { int data ; // Nutzinhalt: NumberCell next ; // Verweis aufs nächste ListenElement: // Konstruktor: NumberCell( int data, NumberCell next) { this. data = data; this. next = next; // Erstes ListenElement: private NumberCell head = null ; // TODO Implementieren Sie eine Methode, die eine Zahl data an den Anfang // der Liste anhängt (denken Sie auch an den Fall einer leeren Liste) (4P): public void addfirst( int data) { Diese Klasse gilt zum Anwenden der obigen Klasse. Ergänzen Sie das TODO: class Test { public static void main(string[] args) { // TODO Erzeugen Sie eine Liste NumberList mit den Werten 5, 7, 10 (3P):

9 6. JavaFX. Gegeben ist folgende JavaFX-GUI, die mittels FXML und einem Controller erzeugt worden ist. Implementieren Sie den Controller. <? xml version = "1.0" encoding = "UTF-8"?> <? import... > < StackPane xmlns = " xmlns:fx = " fx:controller = "application.samplecontroller" > < children > < HBox alignment = "CENTER" spacing = "5.0" > < children > < TextField fx:id = "input" text = "input" /> < Button mnemonicparsing = "false" text = "write input to output" onaction = "#write" /> < Text fx:id = "output" stroketype = "OUTSIDE" strokewidth = "0.0" text = "output" /> </ children > < StackPane.margin > < Insets bottom = "10.0" left = "10.0" right = "10.0" top = "10.0" /> </ StackPane.margin > </ HBox > </ children > </ StackPane > Controller: package application; import javafx.fxml.fxml; import javafx.scene.control.textfield; import javafx.scene.text.text; public class SampleController { // TODO Geben Sie zwei Attribute an, mit der Sie auf das TextField // (Text-Eingabefeld) und den Text (Textanzeige) aus der FXML-Datei Zugriff // haben // TODO Implementieren Sie folgende Methode: Beim Drücken des Buttons, soll // der Inhalt des Text-Eingabefeldes in der rechten Textanzeige anzeigen // Hinweis: benutzen Sie die Methoden gettext() und settext(string text). public void write() { // TODO

10 LÖSUNG: 1. Gegeben die Klassen Test, DataElement, , Image, die alle in einem Package liegen und java.util.arraylist und java.util.list importiert haben. Ergänzen Sie den Code so wie in den Kommentaren beschrieben: public class Test { public static void main(string[] args) { e = new ( "Re : Anfrage", "ab@cd.com", "ef@gh.de", "Tach!" ); byte [] d = new byte [] { 1, 0, 0, 0, 0, 0 ; e.addattachment( new Image( "Bestellung",Image.ImageType.JPG, d)); e.addattachment( new ( "Anfrage", "ef@gh.de", "ab@cd.com", "Hi!" )); f = ( ) e.getattachment(1); byte [] d2 = new byte [] { 1, 0, 0, 0, 0, 0 ; f.addattachment( new Image( "Angebot", Image.ImageType.JPG, d2)); /* Datenstruktur: (Re : Anfrage) -- Image (Bestellung) -- (Anfrage) -- Image (Angebot) */ boolean r = e.removeattachment( "Test" ); // Rufen Sie die Methode namens getattachmentcount von e auf: (1P) int z = e.getattachmentcount() ; int c = e.getsizeinchars(); // Geben Sie r,z,c auf der Konsole aus: (1P) System.out.println("r=" + r); System.out.println("z=" + z); System.out.println("c=" + c); /* Geben Sie die Werte von r,z,c mit Begründung an: (6P) Wert von r: false

11 Begründung: Attachement mit title Test befindet sich nicht in der Liste attachements Wert von z: 2 Begründung: e.getattachmentcount() liefert attachements.size(), also 2, da ein Image Bestellung und Anfrage in der Liste sind. Wert von c: 22 Begründung: text von e: "Tach!" 6 + Anhang Image Anzahl Bytes in { 1, 0, 0, 0, 0, 0 : 6 + Anhang text "Hi!": 4 + Anhang von letzter { 1, 0, 0, 0, 0, 0 : 6 = 22 */ String desc = e.getdescription(); // Was steht in desc: (2P) // "Re : Anfrage mit 2 Anhängen : Bestellung (JPG), Anfrage mit 1 Anhängen : Angebot (JPG)" abstract class DataElement { String titel ; public String gettitel() { return titel ; public DataElement(String titel) { this. titel = titel; // Ergänzen Sie, damit der Code kompiliert: (2P) public abstract String getdescription(); public abstract int getsizeinchars(); class extends DataElement { String sender ; String recipient ; String text ; // Initialisieren Sie mit einer java.util.arraylist: (1P) List<DataElement> attachments = new ArrayList<DataElement>() ; public (String title, String sender, String recipient, String text){ super (title); // Prüfen Sie, ob sender und recipient -Zeichen enthalten.

12 // Falls nein, soll eine IllegalArgumentException geworfen werden. // Benutzen Sie dazu: // boolean java.lang.string.contains(charsequence s): Returns true // if and only if this string contains the specified sequence of // char values. (3P) ) { throw new IllegalArgumentException(); this. sender = sender; this. recipient = recipient; this. text = text; public String getdescription() { String resultat = gettitel() + " mit " + attachments.size() + " Anhängen : " ; boolean istdererste = true ; for (DataElement item : attachments ) { if (!istdererste) { resultat = resultat + ", " ; istdererste = false ; resultat = resultat + item.getdescription(); return resultat; public int getsizeinchars() { int resultat = text.length(); for (DataElement item : attachments ) { resultat += item.getsizeinchars(); return resultat; public void addattachment(dataelement anhang) { attachments.add(anhang); public DataElement getattachment( int i) { return attachments.get(i); public boolean removeattachment(string title) { DataElement a = findanhangbytitel(title); // TODO s.u. if (a!= null ) { attachments.remove(a); return true ; else {

13 return false ; // Implementieren Sie folgeden Methode: Sie gibt ein DataElement // anhand eines übergebenen title in attachements zurück: (4P) DataElement findanhangbytitel(string title) { // TODO for(dataelement item : attachments){ if( item.gettitel().equals(title) ) { // Treffer: return item; // kein Treffer: return null; public int getattachmentcount() { return attachments.size(); public String gettext() { return text ; class Image extends DataElement { // Deklarieren Sie eine enum namens ImageType mit den Werten // JPG, PNG, GIF (1P) public enum ImageType {JPG, PNG, GIF ImageType typ; byte [] data ; public Image(String title, Image.ImageType typ, byte [] data) { super (title); this.typ = typ; this. data = data; public String getdescription() { return gettitel() + " (" + typ + ") " ; public int getsizeinchars() { return data. length ;

14 7. Schreiben Sie ein Interface Processor folgender Art: (4P) Dieses soll einen generischen Typparamter T besitzen und eine öffentliche Methode namens process, die einen Parameter vom Typ T aufnimmt und nichts zurückgibt. public interface Processor<T> { public void process(t t); 8. Schreiben Sie eine Klasse Visitenkarte folgender Art: (6P) Sie erbt von DataElement. Sie besitzt einen parameterlosen Konstruktor, der als Titel immer " Visitenkarte " benutzt. Sie liefert als Beschreibung " Visitenkarte " zurück. Sie liefert als Größe (SizeInChars) 42 zurück. Implementieren das Interface Processor für den Typ-Parameter Visitenkarte. In der Methode process soll die Beschreibung auf die Konsole ausgegeben werden. public class Visitenkarte extends DataElement implements Processor<Visitenkarte> { // Konstruktor: public Visitenkarte(){ super( Visitenkarte ); public String getdescription() { return Visitenkarte ; public int getsizeinchars() { return 42; public void process(visitenkarte t){ System.out.println( getdescription() ); // oder: System.out.println( t.getdescription() );

15 9. Gegeben eine CSV-Datei C:/Downloads/Countries.csv: DE,Germany US,United States MY,Malaysia Diese Datei soll in einem Java-Programm auf die Konsole ausgegeben werden. Ergänzen Sie den Code: import java.io.bufferedreader; import java.io.filereader; import java.io.ioexception; public class CSVParser { public static void main(string[] args) { String csvfile = "C:/Downloads/Countries.csv" ; BufferedReader br = null ; String line = "" ; // (1P) String csvsplitby = "," ; try { br = new BufferedReader( new FileReader(csvFile)); while ((line = br.readline())!= null ) { String[] country = line.split(csvsplitby); // Geben Sie auf der Konsole im folgenden Format aus: // z.b. Country [code=de, name=germany] (3P) System.out.println( Country [code= + country[0] +, name= + country[1] + ] ); catch (Exception e) {e.printstacktrace(); finally { if (br!= null ) { try { br.close(); catch (IOException e) {e.printstacktrace();

16 10. Liste. Gegeben folgende Implementierung einer Liste von ganzen Zahlen. Ergänzen Sie die TODOs: public class NumberList { // Innere Klasse für ein ListenELement: private class NumberCell { int data ; // Nutzinhalt: NumberCell next ; // Verweis aufs nächste ListenElement: // Konstruktor: NumberCell( int data, NumberCell next) { this. data = data; this. next = next; // Erstes ListenElement: private NumberCell head = null ; // TODO Implementieren Sie eine Methode, die eine Zahl data an den Anfang // der Liste anhängt (denken Sie auch an den Fall einer leeren Liste) (4P): public void addfirst( int data) { if( head == null ) { // Liste noch leer: head = new NumberCell(data, null); else { // Liste hat schon ein Element: NumberCell newhead = new NumberCell(data, head); head = newhead; Diese Klasse gilt zum Anwenden der obigen Klasse. Ergänzen Sie das TODO: class Test { public static void main(string[] args) { // TODO Erzeugen Sie eine Liste NumberList mit den Werten 5, 7, 10 (3P): NumberList list = new NumberList(); list.addfirst(10); list.addfirst(7);

17 list.addfirst(5); 11. JavaFX. Gegeben ist folgende JavaFX-GUI, die mittels FXML und einem Controller erzeugt worden ist. Implementieren Sie den Controller. <? xml version = "1.0" encoding = "UTF-8"?> <? import... > < StackPane xmlns = " xmlns:fx = " fx:controller = "application.samplecontroller" > < children > < HBox alignment = "CENTER" spacing = "5.0" > < children > < TextField fx:id = "input" text = "input" /> < Button mnemonicparsing = "false" text = "write input to output" onaction = "#write" /> < Text fx:id = "output" stroketype = "OUTSIDE" strokewidth = "0.0" text = "output" /> </ children > < StackPane.margin > < Insets bottom = "10.0" left = "10.0" right = "10.0" top = "10.0" /> </ StackPane.margin > </ HBox > </ children > </ StackPane > Controller: package application; import javafx.fxml.fxml; import javafx.scene.control.textfield; import javafx.scene.text.text; public class SampleController { // TODO Geben Sie zwei Attribute an, mit der Sie auf das TextField // (Text-Eingabefeld) und den Text (Textanzeige) aus der FXML-Datei Zugriff // TextField input;

18 @FXML Text output; // TODO Implementieren Sie folgende Methode: Beim Drücken des Buttons, soll // der Inhalt des Text-Eingabefeldes in der rechten Textanzeige angezeigt werden // Hinweis: benutzen Sie die Methoden gettext() und settext(string text). public void write() { output.settext(input.gettext());

Informatik 2 für Regenerative Energien

Informatik 2 für Regenerative Energien Informatik 2 für Regenerative Energien Klausur vom 5. Juli 2013 Jörn Loviscach Versionsstand: 13. Juli 2013, 18:12 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike

Mehr

Klausur: Java (Liste P)

Klausur: Java (Liste P) Klausur: Java (Liste P) SS05 Erlaubte Hilfsmittel: Gebundene! Unterlagen (Skript mit Anmerkungen, eigene Mitschrift) und maximal ein Buch. Bitte keine losen Blätter. Lösung ist auf den Klausurbögen anzufertigen.

Mehr

Einstieg in die Informatik mit Java

Einstieg 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

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

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

Prüfung Softwareentwicklung II (IB)

Prüfung Softwareentwicklung II (IB) Hochschule für angewandte Wissenschaften München Fakultät für Informatik und Mathematik Studiengruppe IB 2 B, IB 2 C Sommersemester 2013 Prüfung Softwareentwicklung II (IB) Datum : 11.07.2013, 08:30 Uhr

Mehr

Algorithmen und Programmierung III

Algorithmen und Programmierung III Musterlösung zum 4. Aufgabenblatt zur Vorlesung WS 2006 Algorithmen und Programmierung III von Christian Grümme Aufgabe 1 Amortisierte Analyse 10 Punkte Zu erst betrachte ich wie oft die letzte Ziffer

Mehr

boolean ispalindrome = word.equalsignorecase(reverse.tostring());

boolean ispalindrome = word.equalsignorecase(reverse.tostring()); Bereich: Input/Output (2) Palindrome speichern Package: de.dhbwka.java.exercise.io Musterlösung Klasse: PalindromeFile package de.dhbwka.java.exercise.io; import java.io.bufferedreader; import java.io.file;

Mehr

Teil 5 - Java. Programmstruktur Operatoren Schlüsselwörter Datentypen

Teil 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

Mehr

Institut für Programmierung und Reaktive Systeme 17. Juli Programmieren II. Übungsklausur

Institut für Programmierung und Reaktive Systeme 17. Juli Programmieren II. Übungsklausur Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme 17. Juli 2015 Hinweise: Klausurtermine: Programmieren II Übungsklausur Programmieren I: 7. September

Mehr

Institut für Programmierung und Reaktive Systeme 6. Juli Programmieren II. Übungsklausur

Institut für Programmierung und Reaktive Systeme 6. Juli Programmieren II. Übungsklausur Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme 6. Juli 2018 Hinweise: Klausurtermine: Programmieren II Übungsklausur Programmieren I: 27. August

Mehr

Einführung in die Programmierung mit Java

Einführung in die Programmierung mit Java Einführung in die Programmierung mit Java Teil 9: Ausnahmebehandlung Martin Hofmann Steffen Jost LFE Theoretische Informatik, Institut für Informatik, Ludwig-Maximilians Universität, München 8. Dezember

Mehr

Datum, Uhrzeit: , Uhr Semester: IN1 Note:... Prof. Dr. G. Meixner

Datum, Uhrzeit: , Uhr Semester: IN1 Note:... Prof. Dr. G. Meixner Prüfung "Programmieren 1", IN1, WS 16/17 Seite 1 von 6 Datum, Uhrzeit: 20. 01. 2017, 10.30 Uhr Semester: IN1 Note:... Prüfer: Prof. Dr. G. Meixner Dauer: 60 Min. Hilfsmittel: keine Punkte:... Diese Prüfung

Mehr

Aufgabenblatt 4. Aufgabe 3. Aufgabe 1. Aufgabe 2. Prof. Dr. Th. Letschert Algorithmen und Datenstrukturen

Aufgabenblatt 4. Aufgabe 3. Aufgabe 1. Aufgabe 2. Prof. Dr. Th. Letschert Algorithmen und Datenstrukturen Prof. Dr. Th. Letschert Algorithmen und Datenstrukturen Aufgabenblatt 4 Aufgabe 1 1. Erläutern Sie in eigenen Worten die Begriffe Datenstruktur, Datentyp und abstrakter Datentyp. Nutzen Sie das Beispiel

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

Musterlösung Stand: 5. Februar 2009

Musterlösung Stand: 5. Februar 2009 Fakultät IV Elektrotechnik/Informatik Probeklausur Einführung in die Informatik I Hinweis: Diese Probeklausur ist eine kleine Aufgabensammlung, die etwa dem Schwierigkeitsgrad der Teilleistung TL 2 (Programmiertest)

Mehr

II.4.4 Exceptions - 1 -

II.4.4 Exceptions - 1 - n 1. Unterklassen und Vererbung n 2. Abstrakte Klassen und Interfaces n 3. Modularität und Pakete n 4. Ausnahmen (Exceptions) n 5. Generische Datentypen n 6. Collections II.4.4 Exceptions - 1 - Ausnahmen

Mehr

Fakultät IV Elektrotechnik/Informatik

Fakultät IV Elektrotechnik/Informatik Fakultät IV Elektrotechnik/Informatik Probeklausur Einführung in die Informatik I Hinweis: Diese Probeklausur ist eine kleine Aufgabensammlung, die etwa dem Schwierigkeitsgrad der Teilleistung TL 2 (Programmiertest)

Mehr

Ausnahmebehandlung. Ausnahmen werfen (auslösen) Eigene Ausnahmen definieren. Ausnahmen abfangen. Ausnahmen definieren

Ausnahmebehandlung. Ausnahmen werfen (auslösen) Eigene Ausnahmen definieren. Ausnahmen abfangen. Ausnahmen definieren Ausnahmebehandlung Ausnahmen werfen (auslösen) Eigene Ausnahmen definieren Ausnahmen abfangen Ausnahmen definieren Sinnvolle Verwendung von Ausnahmen Informatik II: Objektorientierte SW-Entwicklung, Algorithmik,

Mehr

Lösungsvorschläge zur Nachklausur zum Kurs 1618 Sommersemester 2001 am

Lösungsvorschläge zur Nachklausur zum Kurs 1618 Sommersemester 2001 am Aufgabe 1 Lösungsvorschläge zur Nachklausur zum Kurs 1618 Sommersemester 2001 am 16.3.2002 Folgende Implementierung löst die gestellte Aufgabe : public interface Figur { public void anzeigen (); public

Mehr

Programmierung für Mathematik HS11

Programmierung für Mathematik HS11 software evolution & architecture lab Programmierung für Mathematik HS11 Übung 8 1 Aufgabe: Codeverständnis (Repetition) 1.1 Lernziele 1. Code verstehen können. 2. Fehler im Code finden und korrigieren

Mehr

System.out.println("TEXT");

System.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

Mehr

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 16/17. Kapitel 13. Listen. Listen 1

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 16/17. Kapitel 13. Listen. Listen 1 Kapitel 13 Listen Listen 1 Ziele Implementierungen für Listen kennenlernen Einfach verkettete und doppelt verkettete Listen verstehen Listen-Implementierungen in der Java-Bibliothek kennenlernen Durch

Mehr

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 15/16. Kapitel 12. Listen. Listen 1

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 15/16. Kapitel 12. Listen. Listen 1 Kapitel 12 Listen Listen 1 Ziele Implementierungen für Listen kennenlernen Einfach verkettete und doppelt verkettete Listen verstehen Listen-Implementierungen in der Java-Bibliothek kennenlernen Durch

Mehr

Programmierung für Mathematik HS10 Übung 8

Programmierung für Mathematik HS10 Übung 8 Department of Informatics software evolution & architecture lab Programmierung für Mathematik HS10 Übung 8 1 Aufgabe: Codeverständnis (Repetition) 1.1 Lernziele 1. Code verstehen können. 2. Fehler im Code

Mehr

Lösungshinweise/-vorschläge zum Übungsblatt 11: Software-Entwicklung 1 (WS 2017/18)

Lösungshinweise/-vorschläge zum Übungsblatt 11: Software-Entwicklung 1 (WS 2017/18) Dr. Annette Bieniusa Mathias Weber, M. Sc. Peter Zeller, M. Sc. TU Kaiserslautern Fachbereich Informatik AG Softwaretechnik Lösungshinweise/-vorschläge zum Übungsblatt 11: Software-Entwicklung 1 (WS 2017/18)

Mehr

Einführung in die Programmierung I. 2.0 Einfache Java Programme. Thomas R. Gross. Department Informatik ETH Zürich

Einführung in die Programmierung I. 2.0 Einfache Java Programme. Thomas R. Gross. Department Informatik ETH Zürich 252-0027 Einführung in die Programmierung I 2.0 Einfache Java Programme Thomas R. Gross Department Informatik ETH Zürich Uebersicht 2.0 Einfache Java Programme Struktur Namen Output 2 Graphische Darstellung

Mehr

Probeklausur Informatik 2 Sommersemester 2013

Probeklausur Informatik 2 Sommersemester 2013 Probeklausur Informatik 2 Sommersemester 2013 1 Probeklausur Informatik 2 Sommersemester 2013 Name: Matrikelnummer: Hilfsmittel: Es sind alle schriftlichen Unterlagen, aber keine elektronischen Hilfsmittel

Mehr

Probeklausur Java Einführung in die Informatik. Wintersemester 2016/2017

Probeklausur Java Einführung in die Informatik. Wintersemester 2016/2017 Fakultät IV NI & CV Java Einführung in die Informatik Wintersemester 2016/2017 Hinweis: Diese ist eine kleine Aufgabensammlung, die etwa dem Schwierigkeitsgrad der schriftlichen Prüfung des Moduls Einführung

Mehr

Probeklausur Java Einführung in die Informatik. Wintersemester 2014/2015

Probeklausur Java Einführung in die Informatik. Wintersemester 2014/2015 Fakultät IV NI & CV Probeklausur Java Einführung in die Informatik Wintersemester 2014/2015 Hinweis: Diese Probeklausur ist eine kleine Aufgabensammlung, die etwa dem Schwierigkeitsgrad der schriftlichen

Mehr

Programmieren in Java -Eingangstest-

Programmieren in Java -Eingangstest- Programmieren in Java -Eingangstest- Nummer: 1. Studiengang: Informatik B.Sc. Informatik M.Sc. ESE B.Sc. ESE M.Sc. Sonstiges: Fachsemester: Bitte Fragen, die Sie nicht beantworten können unbedingt mit

Mehr

Allgemeine Hinweise:

Allgemeine Hinweise: TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK Lehrstuhl für Sprachen und Beschreibungsstrukturen WS 12/13 Einführung in die Informatik I Wiederholungsklausur Prof. Dr. Helmut Seidl, A. Lehmann,

Mehr

Programmiermethodik 3. Klausur Lösung

Programmiermethodik 3. Klausur Lösung Programmiermethodik 3. Klausur Lösung 9. 1. 2014 Name Matrikelnummer Aufgabe mögliche Punkte erreichte Punkte 1 20 2 16 3 45 4 19 5 20 Gesamt 120 1 Seite 2 von 10 Aufgabe 1) Objekt-Orientierung und Vererbung

Mehr

Institut für Programmierung und Reaktive Systeme 7. Juli Programmieren II. Übungsklausur

Institut für Programmierung und Reaktive Systeme 7. Juli Programmieren II. Übungsklausur Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme 7. Juli 2017 Hinweise: Klausurtermine: Programmieren II Übungsklausur Programmieren I: 28. August

Mehr

Java - Programmierung - Prozedurale Programmierung 1

Java - Programmierung - Prozedurale Programmierung 1 Java - Programmierung - Prozedurale Programmierung 1 // elementare Datentypen public class el_dt public static void main(string args []) byte b = 127; short s = 32767; int i = 2147483647; long l = 9223372036854775807L,

Mehr

Probeklausur Java Einführung in die Informatik. Wintersemester 2014/2015. Musterlösung

Probeklausur Java Einführung in die Informatik. Wintersemester 2014/2015. Musterlösung Fakultät IV NI & CV Probeklausur Java Einführung in die Informatik Wintersemester 2014/2015 Hinweis: Diese Probeklausur ist eine kleine Aufgabensammlung, die etwa dem Schwierigkeitsgrad der schriftlichen

Mehr

9. Ausnahmebehandlung

9. Ausnahmebehandlung Schwerpunkte Ausnahmen und Laufzeitfehler 9. Ausnahmebehandlung Java-Beispiele: Ausnahme.java TryCatch.java TryCatchAll.java Finally.java TryInTry.java KeyboardTry.java Oeffnungszeit.java Stack-Trace Java-Ausnahmeklassen-Hierarchie

Mehr

Allgemeine Hinweise:

Allgemeine Hinweise: TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK Lehrstuhl für Sprachen und Beschreibungsstrukturen WS 12/13 Einführung in die Informatik I Wiederholungsklausur Prof. Dr. Helmut Seidl, A. Lehmann,

Mehr

Institut für Programmierung und Reaktive Systeme. Java 7. Markus Reschke

Institut für Programmierung und Reaktive Systeme. Java 7. Markus Reschke Institut für Programmierung und Reaktive Systeme Java 7 Markus Reschke 14.10.2014 Vererbung in Java Vererbung ermöglicht es, Klassen zu spezialisieren Wiederverwendung vorhandener Klassen Kindsklasse erhält

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

EINFÜHRUNG IN DIE PROGRAMMIERUNG

EINFÜHRUNG IN DIE PROGRAMMIERUNG EINFÜHRUNG IN DIE PROGRAMMIERUNG FORTGESCHRITTENE KONZEPTE Tobias Witt!! 26.03.2014 FEHLERBEHANDLUNG KLASSISCHER ANSATZ Fehlercode als Rückgabewert von Methoden! String Fehlercode als String! int Fehlercode

Mehr

! 1. Unterklassen und Vererbung! 2. Abstrakte Klassen und Interfaces! 3. Modularität und Pakete! 4. Ausnahmen (Exceptions) II.4.

! 1. Unterklassen und Vererbung! 2. Abstrakte Klassen und Interfaces! 3. Modularität und Pakete! 4. Ausnahmen (Exceptions) II.4. ! 1. Unterklassen und Vererbung! 2. Abstrakte Klassen und Interfaces! 3. Modularität und Pakete! 4. Ausnahmen (Exceptions) II.4.4 Exceptions - 1 - Ausnahmen (Exceptions( Exceptions) Treten auf, wenn zur

Mehr

Technische Universität Braunschweig

Technische Universität Braunschweig Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme Programmieren II Dr. Werner Struckmann 28. August 2015 Name: Vorname: Matrikelnummer: Kennnummer: Anrede: Frau Herr

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java Vorlesung 11: Generic Methods Prof. Dr. Peter Thiemann Albert-Ludwigs-Universität Freiburg, Germany SS 2017 Peter Thiemann (Univ. Freiburg) Programmieren in Java JAVA 1 / 15 Inhalt

Mehr

Objektorientierung II & die Java Klassenbibliothek. Kristian Bergmann und Arthur Lochstampfer

Objektorientierung II & die Java Klassenbibliothek. Kristian Bergmann und Arthur Lochstampfer Java Kurs Objektorientierung II & die Java Klassenbibliothek Kristian Bergmann und Arthur Lochstampfer Vergleich class Apfel { String farbe; int gewicht; String geerntetin; class Erdbeere { String farbe;

Mehr

II.4.4 Exceptions - 1 -

II.4.4 Exceptions - 1 - 1. Unterklassen und Vererbung 2. Abstrakte Klassen und Interfaces 3. Modularität und Pakete 4. Ausnahmen (Exceptions) 5. Generische Datentypen 6. Collections II.4.4 Exceptions - 1 - Ausnahmen (Exceptions)

Mehr

Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme

Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme Programmieren II Dr. Werner Struckmann 16. August 2013 Name: Vorname: Matrikelnummer: Kennnummer: Anrede: Frau Herr

Mehr

Polymorphie/Späte Bindung Abstrakte Klassen Interfaces. Polymorphie/Späte Bindung Abstrakte Klassen Interfaces

Polymorphie/Späte Bindung Abstrakte Klassen Interfaces. Polymorphie/Späte Bindung Abstrakte Klassen Interfaces Programmieren I Martin Schultheiß Hochschule Darmstadt Wintersemester 2010/2011 1 / 20 Polymorphie/Späte Bindung Abstrakte Klassen Interfaces 2 / 20 Definition: Polymorphie Der Begriff Polymorphie (manchmal

Mehr

Ausnahmen. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung

Ausnahmen. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-13-14/infoeinf WS13/14 Fehlerarten Bei der Programmierung können viele Arten von Fehlern auftreten:

Mehr

Probeklausur Java Einführung in die Informatik. Wintersemester 2017/2018

Probeklausur Java Einführung in die Informatik. Wintersemester 2017/2018 Fakultät IV NI & CV Java Einführung in die Informatik Wintersemester 2017/2018 Hinweis: Diese ist eine kleine Aufgabensammlung, die etwa dem Schwierigkeitsgrad der schriftlichen Prüfung des Moduls Einführung

Mehr

CoMa 04. Java II. Paul Boeck. 7. Mai Humboldt Universität zu Berlin Institut für Mathematik. Paul Boeck CoMa 04 7.

CoMa 04. Java II. Paul Boeck. 7. Mai Humboldt Universität zu Berlin Institut für Mathematik. Paul Boeck CoMa 04 7. CoMa 04 Java II Paul Boeck Humboldt Universität zu Berlin Institut für Mathematik 7. Mai 2013 Paul Boeck CoMa 04 7. Mai 2013 1 / 13 Verzweigungen Wenn-Dann Beziehungen if (BEDINGUNG) { else if (BEDINGUNG2)

Mehr

12 Abstrakte Klassen, finale Klassen und Interfaces

12 Abstrakte Klassen, finale Klassen und Interfaces 12 Abstrakte Klassen, finale Klassen und Interfaces Eine abstrakte Objekt-Methode ist eine Methode, für die keine Implementierung bereit gestellt wird. Eine Klasse, die abstrakte Objekt-Methoden enthält,

Mehr

Nachholklausur zur Vorlesung: Einführung in die objektorientierte Programmierung mit Java WS1415

Nachholklausur zur Vorlesung: Einführung in die objektorientierte Programmierung mit Java WS1415 Nachholklausur zur Vorlesung: Einführung in die objektorientierte Programmierung mit Java WS1415 Alexander Bazo 10. April 2015 Allgemeine Hinweise 1. Die Bearbeitungszeit beträgt 60 Minuten. Sie könne

Mehr

Programmieren I. Fehlerbehandlung Exceptions. Heusch 2. Bd, 3 Ratz 10. Institut für Angewandte Informatik

Programmieren I. Fehlerbehandlung Exceptions. Heusch 2. Bd, 3 Ratz 10.  Institut für Angewandte Informatik Programmieren I Fehlerbehandlung Exceptions Heusch 2. Bd, 3 Ratz 10 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Exceptions und ihre Behandlung Exception - Ausnahmebedingung

Mehr

Klausur Software-Entwicklung März 01

Klausur Software-Entwicklung März 01 Aufgabe 1: minimaler Punktabstand ( 2+5 Punkte ) Matrikelnr : In einem Array punkte sind Koordinaten von Punkten gespeichert. Ergänzen Sie in der Klasse Punkt eine Klassen-Methode (=static Funktion) punktabstand,

Mehr

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Ausnahmen

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Ausnahmen Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer Programmiertechnik Ausnahmen Motivation Anwendungsbeispiel 1: java Excep1 a: 15 b: 3 a / b = 5 Job done. Konsole Anwendungsbeispiel 2: Konsole java

Mehr

1 of :26:26

1 of :26:26 //import java.util.arraylist; //import java.util.iterator; public class Bank private String name; //private ArrayList kontolist; private MyLinkedList kontolist; public Bank() this("bank");

Mehr

Übungen zum Bioinformatik-Tutorium. Blatt 6

Übungen zum Bioinformatik-Tutorium. Blatt 6 Institut für Informatik Wintersemester 2018/19 Praktische Informatik und Bioinformatik Prof. Dr. Ralf Zimmer Übungen zum Bioinformatik-Tutorium Blatt 6 Termin: Dienstag, 27.11.2018, 11 Uhr 1. Klassen und

Mehr

Handbuch konsultieren!

Handbuch konsultieren! Zeichenketten Klasse String Enthält zahlreiche Methoden z.b.: int length(): Anzahl der Zeichen in Zeichenkette String substring(int start): Unterzeichenkette ab Position start boolean equalsignorecase(string

Mehr

Allgemeine Hinweise:

Allgemeine Hinweise: TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK Lehrstuhl für Sprachen und Beschreibungsstrukturen WS 11/12 Einführung in die Informatik I Probe-Klausur Prof. Dr. Helmut Seidl, M. Schwarz, A. Herz,

Mehr

1 of :17:14

1 of :17:14 7 public class Main 10 /** 11 * @param args the command line arguments 1 */ 13 public static void main(string[] args) 14 { 15 // Aufgabe 1 16 System.out.println("##### AUFGABE 1 #####"); 17 // Stack initialisieren

Mehr

Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme

Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme Programmieren II Dr. Werner Struckmann 29. August 2014 Name: Vorname: Matrikelnummer: Kennnummer: Anrede: Frau Herr

Mehr

DHBW Karlsruhe, Vorlesung Programmieren, Events Musterlösung

DHBW Karlsruhe, Vorlesung Programmieren, Events Musterlösung DHBW Karlsruhe, Vorlesung Programmieren, Events Musterlösung Aufgabe Editor package BA.GUI.Swing; import java.awt.*; import java.awt.event.*; import java.io.*; import java.util.logging.level; import java.util.logging.logger;

Mehr

Semestralklausur Informatik I - Programmierung

Semestralklausur Informatik I - Programmierung RHEINISCH- WESTFÄLISCHE TECHNISCHE HOCHSCHULE AACHEN LEHR- UND FORSCHUNGSGEBIET INFORMATIK II RWTH Aachen D-52056 Aachen GERMANY http://www-i2.informatik.rwth-aachen.de/lufgi2 Prof. Dr. Jürgen Giesl LuFG

Mehr

II.4.2 Abstrakte Klassen und Interfaces - 1 -

II.4.2 Abstrakte Klassen und Interfaces - 1 - 1. Unterklassen und Vererbung 2. Abstrakte Klassen und Interfaces 3. Modularität und Pakete 4. Ausnahmen (Exceptions) 5. Generische Datentypen 6. Collections II.4.2 Abstrakte Klassen und Interfaces - 1

Mehr

Ausnahmen. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung

Ausnahmen. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung Annabelle Klarl Zentralübung zur Vorlesung : http://www.pst.ifi.lmu.de/lehre/wise-12-13/infoeinf WS12/13 Fehlerarten Bei der Programmierung können viele Arten von Fehlern auftreten: Syntaktische Fehler

Mehr

Interface. So werden Interfaces gemacht

Interface. So werden Interfaces gemacht Design Ein Interface (=Schnittstelle / Definition) beschreibt, welche Funktionalität eine Implementation nach Aussen anzubieten hat. Die dahinter liegende Algorithmik wird aber der Implementation überlassen.

Mehr

Ausnahmen. Dr. Philipp Wendler. Zentralübung zur Vorlesung Einführung in die Informatik: Programmierung und Softwareentwicklung

Ausnahmen. Dr. Philipp Wendler. Zentralübung zur Vorlesung Einführung in die Informatik: Programmierung und Softwareentwicklung Dr. Philipp Wendler Zentralübung zur Vorlesung Einführung in die Informatik: Programmierung und Softwareentwicklung WS18/19 https://www.sosy-lab.org/teaching/2018-ws-infoeinf/ Fehlerarten Bei der Programmierung

Mehr

Algorithmen und Datenstrukturen 07

Algorithmen und Datenstrukturen 07 (7. Juni 2012) 1 Besprechung Blatt 6 Fragen 2 Referenzen Referenzsemantik 3 Vererbung Allgemein abstract Interfaces Vererbung in UML 4 Vorbereitung Blatt 7 Anmerkungen Fragen Fragen zu Blatt 6? Referenzsemantik

Mehr

EINFÜHRUNG IN DIE PROGRAMMIERUNG

EINFÜHRUNG IN DIE PROGRAMMIERUNG EINFÜHRUNG IN DIE PROGRAMMIERUNG FORTGESCHRITTENE KONZEPTE Tobias Witt 26.03.2014 tobias.witt@hhu.de 25.12.01.30 Bürozeiten: 09 Uhr - 12 Uhr FEHLERBEHANDLUNG KLASSISCHER ANSATZ Fehlercode als Rückgabewert

Mehr

hue13 January 30, 2017

hue13 January 30, 2017 hue13 January 30, 2017 1 Abgabehinweise Beachten Sie unbedingt diese Hinweise, sonst erhalten Sie keine Punkte aus dieser Abgabe! Für Details siehe z.b. Folien der nullten Zentralübung 1.1 Namen und Matrikelnummern

Mehr

Ausnahmen. Philipp Wendler. Zentralübung zur Vorlesung Einführung in die Informatik: Programmierung und Softwareentwicklung

Ausnahmen. Philipp Wendler. Zentralübung zur Vorlesung Einführung in die Informatik: Programmierung und Softwareentwicklung Philipp Wendler Zentralübung zur Vorlesung Einführung in die Informatik: Programmierung und Softwareentwicklung https://www.sosy-lab.org/teaching/2017-ws-infoeinf/ WS17/18 Fehlerarten Bei der Programmierung

Mehr

Aufgabe 1 (Programmanalyse, Punkte)

Aufgabe 1 (Programmanalyse, Punkte) 2 Aufgabe 1 (Programmanalyse, 8 + 6 Punkte) a) Geben Sie die Ausgabe des Programms für den Aufruf java M an. Schreiben Sie hierzu jeweils die ausgegebenen Zeichen hinter den Kommentar OUT:. public class

Mehr

Selbststudium OOP6 & ALG1 Auftrag

Selbststudium OOP6 & ALG1 Auftrag Selbststudium OOP6 & ALG1 Auftrag Kapitel 5.2 1. zu bearbeitende Aufgabe: 5.1 done 2. Auf den Seiten 157/158 wird in der Methode start()ein while-loop verwendet. Kreieren Sie ein Code-Fragment mit derselben

Mehr

Programmierung WS12/13 Lösung - Präsenzübung M. Brockschmidt, F. Emmes, C. Otto, T. Ströder

Programmierung WS12/13 Lösung - Präsenzübung M. Brockschmidt, F. Emmes, C. Otto, T. Ströder Prof. aa Dr. J. Giesl M. Brockschmidt, F. Emmes, C. Otto, T. Ströder Aufgabe 1 (Programmanalyse): (9 + 1 = 10 Punkte) a) Geben Sie die Ausgabe des Programms für den Aufruf java M an. Tragen Sie hierzu

Mehr

Prüfung Softwareentwicklung I (IB)

Prüfung Softwareentwicklung I (IB) Hochschule für angewandte Wissenschaften München Fakultät für Informatik und Mathematik Studiengruppe IB 3 B, IB 3 C Wintersemester 2013/14 Prüfung Softwareentwicklung I (IB) Datum : 03.02.2014, 08:30

Mehr

Grundlagen der Informatik / Algorithmen und Datenstrukturen. Aufgabe 139

Grundlagen der Informatik / Algorithmen und Datenstrukturen. Aufgabe 139 Aufgabe 139 Aufgabe 139 Aufgabenstellung Stellen Sie den folgenden in Feldbaum-Darstellung beschriebenen Binärbaum a) graphisch (welcher Knoten ist die Wurzel?), b) in halbsequentieller Darstellung, c)

Mehr

Neben der Verwendung von Klassen ist Vererbung ein wichtiges Merkmal objektorientierter

Neben der Verwendung von Klassen ist Vererbung ein wichtiges Merkmal objektorientierter Kapitel 1 Der vierte Tag 1.1 Vererbung Neben der Verwendung von Klassen ist Vererbung ein wichtiges Merkmal objektorientierter Sprachen. Unter Vererbung versteht man die Möglichkeit, Eigenschaften vorhandener

Mehr

Fragenkatalog ESOP WS 16/17

Fragenkatalog ESOP WS 16/17 Fragenkatalog ESOP WS 16/17 1. Einleitung 1.1 Was ist Programmieren? 1.2 Was ist ein Programm? 1.3 Welche Schritte werden bei der Programmerstellung benötigt? 1.4 Was ist ein Algorithmus? 1.5 Was sind

Mehr

Ordnung im Materiallager: Datenstrukturen II. Suchen und Sortieren im Array Verkettete Listen Rekursion

Ordnung im Materiallager: Datenstrukturen II. Suchen und Sortieren im Array Verkettete Listen Rekursion Ordnung im Materiallager: Datenstrukturen II Suchen und Sortieren im Array Verkettete Listen Rekursion Indizierter Datenbehälter Modell: Parkhaus, nummerierte Plätze interface FuhrparkIndex { // indiziert

Mehr

Objekt-Orientierte Programmierung. II/Wb17

Objekt-Orientierte Programmierung. II/Wb17 Probeklausur SS 2018 Hochschule Zittau/Görlitz, Prüfer: Prof. Dr. Georg Ringwelski Objekt-Orientierte Programmierung II/Wb17 Matrikelnummer: Punkte: 1 2 3 4 5 Gesamt /30 /25 /25 /20 /20 /120 Spielregeln:

Mehr

Fachhochschule Wedel 31. Januar 2004 Prof. Dr. Uwe Schmidt

Fachhochschule Wedel 31. Januar 2004 Prof. Dr. Uwe Schmidt Fachhochschule Wedel 31. Januar 2004 Prof. Dr. Uwe Schmidt Aufgaben zur Klausur C und Objektorientierte Programmierung im WS 2003/04 (WI h103, II h105, MI h353) Zeit: 150 Minuten erlaubte Hilfsmittel:

Mehr

Beispielprüfung CuP WS 2015/2016

Beispielprüfung CuP WS 2015/2016 Beispielprüfung CuP WS 2015/2016 Univ.-Prof. Dr. Peter Auer 23. Dezember 2015 Informationen zur Prüfung Die Prüfung wird als Multiple-Choice-Test mit 10 Fragen am Computer abgehalten. (Bei manchen Fragen

Mehr

Allgemeine Informatik II SS :30-11:30 Uhr

Allgemeine Informatik II SS :30-11:30 Uhr TU Darmstadt FB Informatik Prof. J. Fürnkranz Semestralklausur - Lösungsvorschlag Allgemeine Informatik II SS 2005 20.07.2005 09:30-11:30 Uhr Hinweise: Als Hilfsmittel ist nur ein schwarzer oder blauer

Mehr

Technische Universität Braunschweig

Technische Universität Braunschweig Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme Programmieren II Dr. Werner Struckmann 19. August 2016 Name: Vorname: Matrikelnummer: Kennnummer: Anrede: Frau Herr

Mehr

Physikalisch Technische Lehranstalt Wedel 31. Januar 2004 Prof. Dr. Uwe Schmidt

Physikalisch Technische Lehranstalt Wedel 31. Januar 2004 Prof. Dr. Uwe Schmidt Physikalisch Technische Lehranstalt Wedel 31. Januar 2004 Prof. Dr. Uwe Schmidt Aufgaben zur Klausur Objektorientierte Programmierung im WS 2003/04 (IA 252) Zeit: 90 Minuten erlaubte Hilfsmittel: keine

Mehr

1 Klassen anlegen und Objekte erzeugen

1 Klassen anlegen und Objekte erzeugen Werkzeugkiste Java 1 1 Klassen anlegen und Objekte erzeugen Klassengrundgerüst 1 /** 2 * Write a description of class Testklasse here. 3 * 4 * @author ( your name ) 5 * @version (a version number or a

Mehr

1 Klassen anlegen und Objekte erzeugen

1 Klassen anlegen und Objekte erzeugen Werkzeugkiste Java 1 1 Klassen anlegen und Objekte erzeugen Klassengrundgerüst 1 /** 2 * Write a description of class Testklasse here. 3 * 4 * @author ( your name ) 5 * @version (a version number or a

Mehr

Endklausur 25. September 2012

Endklausur 25. September 2012 Endklausur 25. September 2012 Institut für Informatik Einführung in die Programmierung Sommersemester 2012 Name: Matrikel: Raum: Audimax 2 Vorname: Studiengang: Sitzreihe: Sitzplatz: Für Ihre Lösungen

Mehr

14 Abstrakte Klassen, finale Klassen, Interfaces

14 Abstrakte Klassen, finale Klassen, Interfaces Eine abstrakte Objekt-Methode ist eine Methode, für die keine Implementierung bereit gestellt wird. Eine Klasse, die abstrakte Objekt-Methoden enthält, heißt ebenfalls abstrakt. Für eine abstrakte Klasse

Mehr

ihrer Klasse benötigt die Funktion einfuegenan:

ihrer Klasse benötigt die Funktion einfuegenan: Aufgabe 11 Verkettete Listen Entwickeln Sie einen Algorithmus, der Ihnen das Einfügen eines Elementes an einer beliebigen Position innerhalb der Liste erlaubt. Der Algorithmus soll beispielsweise erlauben,

Mehr

Einführung in die Programmierung I. 2.4 Felder. Thomas R. Gross. Department Informatik ETH Zürich

Einführung in die Programmierung I. 2.4 Felder. Thomas R. Gross. Department Informatik ETH Zürich 252-0027 Einführung in die Programmierung I 2.4 Felder Thomas R. Gross Department Informatik ETH Zürich Uebersicht 2.4 Felder (Vektoren, "array"s) 2.5 Verschachtelte Schleifen 2.6 "if" Anweisungen 2.7

Mehr

14 Abstrakte Klassen, finale Klassen, Interfaces. Auswertung von Ausdrücken. Beispiel. Abstrakte Methoden und Klassen

14 Abstrakte Klassen, finale Klassen, Interfaces. Auswertung von Ausdrücken. Beispiel. Abstrakte Methoden und Klassen Auswertung von Ausdrücken Eine abstrakte Objekt-Methode ist eine Methode, für die keine Implementierung bereit gestellt wird. Eine Klasse, die abstrakte Objekt-Methoden enthält, heißt ebenfalls abstrakt.

Mehr

Distributed Computing Group

Distributed Computing Group JAVA TUTORIAL Distributed Computing Group Vernetzte Systeme - SS 06 Übersicht Warum Java? Interoperabilität grosse und gut dokumentierte Library weit verbreitet Syntax sehr nahe an C Erfahrung: Java wird

Mehr