Informatik I Tutorium WS 07/08
|
|
- Andrea Schreiber
- vor 6 Jahren
- Abrufe
Transkript
1 Informatik I Tutorium WS 07/08 Vorlesung: Prof. Dr. F. Bellosa Übungsleitung: Dipl.-Inform. A. Merkel Tutorium: 12 Tutor: Jens Kehne Tutorium 6: Dienstag, 04. Dezember 2007
2 Agenda des heutigen Tutoriums Übersicht heute Rückblick Theorie Schleifeninvariante Halbgruppen und Monoide Praxis String-Manipulation 2
3 Rückblick Begründen sie ihre Antwort meint die ganze Antwort...außerdem muss natürlich eine Antwort dastehen... Schon wieder geschenkte Punkte 3
4 Theorie Schleifeninvariante 4
5 Definition Eine Schleifeninvariante ist eine Zusicherung, die in jedem Schleifendurchlauf gilt. Beispiel: int i = 1; for (i = 2;i<=100;i++) n = n + i; Eine Invariante dafür wäre n k i 1 k ii ( 1) 2 5
6 Aufgabe 1: Schleifeninvariante Gegeben sei folgendes Programmstück: int a = In.readInt(); int b = In.readInt(); if (a > b) { int h = a; a = b; b = h; int z = b; int i = 1; while ((z % a)!= 0){ /*1*/ z += b; /*2*/ i++; /*3*/ Beweisen oder widerlegen Sie die Korrektheit der folgenden Aussagen: a) z == b * i ist eine Schleifeninvariante für die while-schleife. b) kgv(a,b) == kgv(a,z) ist eine Schleifeninvariante für die while-schleife. c) Die while-schleife terminiert. Hinweis: Nutzen Sie geeignete Zusicherungen an den Stellen position 1, position 2 und position 3, um die Beweise zu führen. 6
7 Aufgabe 1.3a: Schleifeninvariante (15T) Lösung a): Beweis über vollständige Induktion. Induktionsanfang: Beim ersten Schleifendurchlauf gilt z == b * i denn (z == b) && (i == 1) Induktionsschluss: Annahme: Beim n-ten Durchlauf gilt bei Schleifenbeginn (position 1) z == b * i int a = In.readInt(); int b = In.readInt(); if (a > b) { int h = a; a = b; b = h; int z = b; int i = 1; while ((z % a)!= 0){ /*1*/ z += b; /*2*/ i++; /*3*/ Zu zeigen: Beim (n+1)-ten Durchlauf gilt bei Schleifenbeginn (position 1) z == b * i Damit muss gelten: Beim n-ten Durchlauf gilt bei Schleifenende (position 3) z == b * i 7
8 Aufgabe 1.3a: Schleifeninvariante (15T) Lösung a) (Fortsetzung): Beweis über vollständige Induktion. Es gelten folgende Zusicherungen: position 1: z alt == b * i alt position 2: z neu == z alt + b position 3: i neu == i alt + 1 int a = In.readInt(); int b = In.readInt(); if (a > b) { int h = a; a = b; b = h; int z = b; int i = 1; while ((z % a)!= 0){ /*1*/ z += b; /*2*/ i++; /*3*/ Somit gilt am Ende der Schleife (position 3): z neu == z alt + b == b * i alt + b == b * (i alt + 1) == b * i neu Durch vollständige Induktion ist damit bewiesen, dass z = b * i am Anfang und am Ende jedes Schleifendurchlaufs gilt. Da der Ausdruck z = b * i am Anfang und am Ende jedes Schleifendurchlaufs gilt, ist nachgewiesen, 8 dass es sich bei diesem Ausdruck um eine Schleifeninvariante handelt.
9 Aufgabe 1.3b: Schleifeninvariante (15T) Lösung b): Beweis durch Gegenbeispiel: Sei beispielsweise a == 3 b == 5 Zu Beginn des ersten Schleifendurchlaufs (position 1) gilt z == b == 5 Somit gilt kgv(a,b) == kgv(3,5) == 15 == kgv(3,5) == kgv(a,z) int a = In.readInt(); int b = In.readInt(); if (a > b) { int h = a; a = b; b = h; int z = b; int i = 1; while ((z % a)!= 0){ /*1*/ z += b; /*2*/ i++; /*3*/ Am Ende des ersten Schleifendurchlaufs (position 3) gilt z neu == b * i neu (siehe Teilaufgabe a)) => i neu == i alt + 1 == == 2 => z neu == b * 2 == 5 * 2 == 10 aber kgv(a, b)!= kgv(a, z neu ) kgv(a, b) == 15 aber kgv(a, z neu ) == 30 9
10 Aufgabe 1.3b: Schleifeninvariante (15T) Lösung c): I) zu Beginn gilt z ==b II) z wächst mit jedem Schleifendurchlauf streng monoton um b. III) a * b ist ein gemeinsames Vielfaches von a und b. int a = In.readInt(); int b = In.readInt(); if (a > b) { int h = a; a = b; b = h; int z = b; int i = 1; while ((z % a)!= 0){ z += b; i++; IV) Aus I), II) und III) => a * b ist obere Schranke für z. V) aus I), II) und IV) => die Schleife terminiert. 10
11 Aufgabe 2: Schleifeninvariante Gegeben sei folgendes Programmstück: public static double exp(byte b, byte e) { // assertion: 0 <= e <= 127 double r = 1; int i = 0; while (i < e) { // assertion when entering loop: (i < e) // position 1 r = r * b; // position 2 i++; // position 3 return r; // return b^e Beweisen oder widerlegen Sie die Korrektheit der folgenden Aussagen: a) r == b i ist eine Schleifeninvariante für die while-schleife. Hinweis: Nutzen Sie geeignete Zusicherungen an den Stellen position 1, position 2 und position 3, um die Beweise zu führen. 11
12 Aufgabe 1.3a: Schleifeninvariante (15T) Lösung a): Beweis über vollständige Induktion. Induktionsanfang: An position 1 gilt im ersten Schleifendurchlauf: r == 1 == b 0 == b i. Induktionsschluss: Annahme: An Position 1 gelte für beliebiges i: r == b i. Zu zeigen: Beim (n+1)-ten Durchlauf gilt bei Schleifenbeginn (position 1):r == b i public static double exp(byte b, byte e) { // assertion: 0 <= e <= 127 double r = 1; int i = 0; while (i < e) { // assertion when entering loop: (i < e) // position 1 r = r * b; // position 2 i++; // position 3 return r; // return b^e Damit muss gelten: Beim n-ten Durchlauf gilt bei Schleifenende (position 3) r == b i 12
13 Aufgabe 1.3a: Schleifeninvariante (15T) Lösung a) (Fortsetzung): Beweis über vollständige Induktion. Es gelten folgende Zusicherungen: Position 1: r alt == b i alt (laut Induktionsvoraussetzung) Position 2: r neu == r alt * b Position 3: i neu == i alt + 1 Somit gilt am Ende der Schleife (position 3): r neu == r alt * b == b i alt * b == b i alt +1 == b i neu public static double exp(byte b, byte e) { // assertion: 0 <= e <= 127 double r = 1; int i = 0; while (i < e) { // assertion when entering loop: (i < e) // position 1 r = r * b; // position 2 i++; // position 3 return r; // return b^e Durch vollständige Induktion ist damit bewiesen, dass r == b i am Anfang und am Ende jedes Schleifendurchlaufs gilt. Da der Ausdruck z == b i am Anfang und am Ende jedes Schleifendurchlaufs gilt, ist nachgewiesen, dass es sich bei diesem Ausdruck um eine Schleifeninvariante handelt. 13
14 Theorie Halbgruppen und Monoide 14
15 Aus der Vorlesung Halbgruppe Die in der Zeichenverarbeitung auftretende Beziehung des Nebeneinanderschreibens von Zeichen lässt sich als eine Halbgruppe auffassen Mathematische Formulierung als Algebra Menge Zeichenreihen über der Grundmenge Operationen. Gesetze HG1: (a. b). c = a. (b. c) Konkatenation Assoziativgesetz Die Eigenschaft der algebraischen Abgeschlossenheit ist erfüllt Die beschriebene Algebra (. HG1, kurz auch als bezeichnet, bildet eine Halbgruppe 15
16 Monoid Ein Monoid ist eine Halbgruppe mit Einselement Eigenschaft eines Einselements (1) a = a (2) a = a das Einselement ist eindeutig Beweis: Seien, Einselemente = = (Im ersten Schritt wurde die Einselement- Eigenschaft von ausgenutzt, im Zweiten die von ) Beispiel eines Monoids: ist das leere Wort, d.h. die Länge ist 0 falls w n die n-fache Wiederholung des Wortes w bezeichnet, so gilt w 0 = 16
17 Monoid U* über Monoid * In der Informatik werden Monoide U * häufig über anderen Grundmengen als Zeichen gebildet Grundmenge U kann aus Zeichenreihen bestehen, die aus einem anderen Monoid stammen Elemente von U* heißen Listen oder alternativ: Sequenzen, Folgen Notation: Liste: [x 1,x 2,...,x n ], wobei x i U [] ist die leere Liste [U] als alternative Schreibweise für U * Beispiel: U = {Apfel,Birne,Pflaume,Kirsche,Traube [Apfel,Birne], [Pflaume,Kirsche,Traube] sind Listen append([apfel,birne], [Pflaume,Kirsche,Traube]) ist eine alternative Funktionsschreibweise für [Apfel,Birne] [Pflaume,Kirsche,Traube] (Infix-Operator) 17
18 Beispielvorgehen: Nachweis: Halbgruppe Monoid Die gegebene Struktur ist ein Monoid. Die Relation R auf der Menge M ist abgeschlossen, erfüllt das Assoziativgesetz und besitzt das Einselement E. Beweis: Abgeschlossenheit: für alle x, y M gilt, x R y M Assoziativität: für alle x, y, z M gilt, (x R y) R z = x R (y R z) Einselement: für alle x M gilt, E R x = x und x R E = x Die gegebene Struktur ist eine Halbgruppe, aber kein Monoid. Die Relation R auf der Menge M ist abgeschlossen, erfüllt das Assoziativgesetz, sie besitzt aber kein Einselement. Beweis: Abgeschlossenheit: für alle x, y M gilt, x R y M Assoziativität: für alle x, y, z M gilt, (x R y) R z = x R (y R z) Einselement: es gibt kein Einselement (Wieso? Begründung!) 18
19 Aufgabe 1: Nachweis: Halbgruppe Monoid Überprüfen Sie, ob es sich bei folgenden Strukturen um Halbgruppen oder Monoide oder keines von beidem handelt. Beweisen Sie Ihre Aussage. Sie dürfen zum Beweisen auf schon bekannte Eigenschaften aus der Vorlesung zurückgreifen. Zum Widerlegen genügen begründete Gegenbeispiele. a) Die Addition auf der Menge N 0, der natürlichen Zahlen mit der Zahl Null. Lösung a): Die Struktur ist ein Monoid. Die Addition auf N 0 ist abgeschlossen, erfüllt das Assoziativgesetz und besitzt das Einselement Null. Beweis: Abgeschlossenheit: für alle x, y N 0 gilt, x + y N 0 Assoziativität: für alle x, y, z N 0 gilt, (x + y) + z = x + (y + z) Einselement: für alle x N 0 gilt, 0 + x = x und x + 0 = x 19
20 Aufgabe 1: Nachweis: Halbgruppe Monoid Überprüfen Sie, ob es sich bei folgenden Strukturen um Halbgruppen oder Monoide oder keines von beidem handelt. Beweisen Sie Ihre Aussage. Sie dürfen zum Beweisen auf schon bekannte Eigenschaften aus der Vorlesung zurückgreifen. Zum Widerlegen genügen begründete Gegenbeispiele. b) Die Multiplikation auf der Menge M={r R r > 1, wobei R die Menge der reellen Zahlen ist. Lösung b): Die Struktur ist eine Halbgruppe, aber kein Monoid. Die Multiplikation auf R ist abgeschlossen, erfüllt das Assoziativgesetz, sie besitzt aber kein Einselement. Beweis: Abgeschlossenheit: für alle x, y M gilt, x y M Assoziativität: für alle x, y, z M gilt, (x y) z = x (y z) Einselement: es gibt kein Einselement (Die Vermutung das dies die 1 ist, ist falsch, denn 1 liegt nicht M) 20
21 Aufgabe 1: Nachweis: Halbgruppe Monoid Überprüfen Sie, ob es sich bei folgenden Strukturen um Halbgruppen oder Monoide oder keines von beidem handelt. Beweisen Sie Ihre Aussage. Sie dürfen zum Beweisen auf schon bekannte Eigenschaften aus der Vorlesung zurückgreifen. Zum Widerlegen genügen begründete Gegenbeispiele. c) Die Vektoraddition mit der Verknüpfung + : (a, b) + (c, d) = (a + c, b + d) auf der Menge N 0, der natürlichen Zahlen mit der Zahl Null. Lösung c): Die Struktur ist ein Monoid. Beweis: In beiden Stellen des Vektors findet unabhängig voneinander eine normale Addition wie bei der Struktur in Aufgabenteil a) statt. Von dieser ist bekannt, dass sie abgeschlossen und assoziativ ist und mit der Null ein Einselement, besitzt. 21
22 Aufgabe 1: Nachweis: Halbgruppe Monoid Überprüfen Sie, ob es sich bei folgenden Strukturen um Halbgruppen oder Monoide oder keines von beidem handelt. Beweisen Sie Ihre Aussage. Sie dürfen zum Beweisen auf schon bekannte Eigenschaften aus der Vorlesung zurückgreifen. Zum Widerlegen genügen begründete Gegenbeispiele. d) Die Linksidentität mit der Verknüpfung # : a # b = a auf der Menge N 0 der natürlichen Zahlen mit der Zahl Null. Lösung d): Die Struktur ist eine Halbgruppe, aber kein Monoid. Die Linksidentität mit der Verknüpfung # auf N 0 ist abgeschlossen, erfüllt das Assoziativgesetz, sie besitzt aber kein Einselement. Beweis: Abgeschlossenheit: für alle a, b N 0 gilt, a # b = a N 0 Assoziativität: für alle a, b, c N 0 gilt, a # (b # c) = a # b = a = a # c = (a # b) # c Einselement: es gibt kein Einselement (z.b. a # e = a jedes e N 0 ist Rechtseins, aber e # a = e kein e N 0 ist Linkseins ) 22
23 Aufgabe 1: Nachweis: Halbgruppe Monoid Überprüfen Sie, ob es sich bei folgenden Strukturen um Halbgruppen oder Monoide oder keines von beidem handelt. Beweisen Sie Ihre Aussage. Sie dürfen zum Beweisen auf schon bekannte Eigenschaften aus der Vorlesung zurückgreifen. Zum Widerlegen genügen begründete Gegenbeispiele. e) Die Konkatenation von Zeichenketten (Strings) in Java. Lösung e): Die Struktur ist ein Monoid. Die Konkatenation von Zeichenketten (Strings) in Java ist abgeschlossen, erfüllt das Assoziativgesetz und besitzt als Einselement die leere Zeichenkette. Beweis: Abgeschlossenheit: für alle a, b String gilt, a b = a String Assoziativität: für alle a, b, c String gilt, a (b c) = a (bc) = abc = (ab) c = (a b) c Einselement: Der String e= leere Zeichenkette ist das Einselement. Es gilt a = a e und a = e a. 23
24 Praxis String-Manipulation 24
25 Java (String-Manipulation) Es gibt viele verschiedene Wege mit Strings zu arbeiten Viele Dinge lassen sich direkt mit den Methoden des String- Objekts bewerkstelligen (String.length(), String.charAt(int), String.equals(String), String.startsWith(String), ) Für komplexere Anwendungen empfiehlt sich die Umwandlung in andere Datenstrukturen. Hier sind die Folgenden besonders wichtig: char-array StringBuffer Beim char-array handelt es sich um ein normales Array, das jedes Zeichen im String enthält (v.l.n.r.). Für einen String der Länge 10 wird also ein Array der Größe 10 mit den Indizes 0 bis 9 erstellt. Umwandlung erfolgt mit der Methode String.toCharArray() 25
26 Java (StringBuffer) Häufig ist es jedoch angebracht, mit dem komplexen Datentyp StringBuffer zu arbeiten, da dieser viele nützliche (und schnelle) Funktionen bietet (u.a. zur Zeichenersetzung, Vertauschung, Suche, ) Erzeugen eines neuen StringBuffers mittels Konstruktor: StringBuffer sb = new StringBuffer(String); Nützliche Methoden: StringBuffer.length(), StringBuffer.charAt(int), StringBuffer.toString(), StringBuffer.append(Sting), StringBuffer.delete(int, int), StringBuffer.substring(int, int), StringBuffer.replace(int, int, String) Beispielsweise lässt sich im String "Java ist doof!" das letzte Wort folgendermaßen ersetzen: StringBuffer sb = new StringBuffer("Java ist doof!"); sb.replace(9, 13, "klasse"); 26
27 Fragen? Questions? Fragen? Fragen? Questions? Fragen? Ques Fragen? Questions? Fragen? Questions? Fragen? Questions? Fragen? Questions? Fragen? Questions? Fragen? Questions? Questions? Fragen? Questions? estions? Fragen? Questions? Fragen? Questions? 27
28 Bis bald 28
29 Credits Erstellung und Zusammenstellung des Materials: Christian Maier (Zusammenstellung) Stephan Kessler (Überarbeitung und Erweiterung) Till Fischer (Folien zur String-Manipulation) 29
Informatik I Tutorium WS 07/08
Informatik I Tutorium WS 07/08 Vorlesung: Prof. Dr. F. Bellosa Übungsleitung: Dipl.-Inform. A. Merkel Tutorium: 12 Tutor: Jens Kehne Tutorium 3: Dienstag 13. November 2007 Übersicht Tutorium Übersicht
MehrÜbersicht. Schleifen. Schleifeninvarianten. Referenztypen, Wrapperklassen und API. 9. November 2009 CoMa I WS 08/09 1/15
Übersicht Schleifen Schleifeninvarianten Referenztypen, Wrapperklassen und API CoMa I WS 08/09 1/15 CoMa I Programmierziele Linux bedienen Code umschreiben strukturierte Datentypen Anweisungen und Kontrollstrukturen
MehrJava Einführung VARIABLEN und DATENTYPEN Kapitel 2
Java Einführung VARIABLEN und DATENTYPEN Kapitel 2 Inhalt dieser Einheit Variablen (Sinn und Aufgabe) Bezeichner Datentypen, Deklaration und Operationen Typenumwandlung (implizit/explizit) 2 Variablen
MehrEinführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein (kmk@informatik.uni-kiel.
Java Crashkurs Kim-Manuel Klein (kmk@informatik.uni-kiel.de) May 7, 2015 Quellen und Editoren Internet Tutorial: z.b. http://www.java-tutorial.org Editoren Normaler Texteditor (Gedit, Scite oder ähnliche)
MehrII. 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
MehrEine 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,
Mehr5. 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
MehrLösungen zu Kapitel 7
Lösungen zu Kapitel 7 Lösung zu Aufgabe 1: Nach Definition 7.1 ist eine Verknüpfung auf der Menge H durch eine Abbildung : H H H definiert. Gilt H = {a 1,..., a m }, so wird eine Verknüpfung auch vollständig
MehrPrimitive 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.
MehrEinfü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
MehrInformatik I WS 07/08 Tutorium 24
Info I Tutorium 24 Informatik I WS 07/08 Tutorium 24 20.12.07 Bastian Molkenthin E-Mail: infotut@sunshine2k.de Web: http://infotut.sunshine2k.de Rückblick Semi-Thue-Systeme Ein Semi-Thue-System besteht
MehrModul 122 VBA Scribt.docx
Modul 122 VBA-Scribt 1/5 1 Entwicklungsumgebung - ALT + F11 VBA-Entwicklungsumgebung öffnen 2 Prozeduren (Sub-Prozeduren) Eine Prozedur besteht aus folgenden Bestandteilen: [Private Public] Sub subname([byval
MehrKontrollstrukturen, 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
MehrBinärbäume. Prof. Dr. E. Ehses, 2014 1
Binärbäume Grundbegriffe der Graphentheorie Bäume und Ihre Anwendungen Unterschiedliche Darstellungen von Bäumen und Binärbäumen Binärbäume in Java Rekursive Traversierung von Binärbäumen Ebenenweise Traversierung
MehrJava-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
Mehr620.900 Propädeutikum zur Programmierung
620.900 Propädeutikum zur Programmierung Andreas Bollin Institute für Informatik Systeme Universität Klagenfurt Andreas.Bollin@uni-klu.ac.at Tel: 0463 / 2700-3516 Arrays Wiederholung (1/5) Array = GEORDNETE
MehrGliederung. Tutorium zur Vorlesung. Gliederung. Gliederung. 1. Gliederung der Informatik. 1. Gliederung der Informatik. 1. Gliederung der Informatik
Informatik I WS 2012/13 Tutorium zur Vorlesung 1. Alexander Zietlow zietlow@informatik.uni-tuebingen.de Wilhelm-Schickard-Institut für Informatik Eberhard Karls Universität Tübingen 11.02.2013 1. 2. 1.
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Tafelübung 04 Referenzen, Overloading, Klassen(hierarchien) Clemens Lang T2 18. Mai 2010 14:00 16:00, 00.152 Tafelübung zu AuD 1/13 Organisatorisches Nächster Übungstermin
MehrHEUTE. Effizienzbeispiel: bekannte Version (Übung 04.11.04) Mathematik: Was ist Effizienz? vollständige Induktion
17.11.04 1 HEUTE 17.11.04 3 Effizienzbeispiel: bekannte Version (Übung 04.11.04) Mathematik: was ist Effizienz? vollständige Induktion JAVA: Arrays die for -Schleife die Sprunganweisungen break und continue
MehrComputeranwendung 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
MehrArrays von Objekten. 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 Action required now 1. Smartphone: installiere die App "socrative student"
Mehr620.900 Propädeutikum zur Programmierung
620.900 Propädeutikum zur Programmierung Andreas Bollin Institute für Informatik Systeme Universität Klagenfurt Andreas.Bollin@uni-klu.ac.at Tel: 0463 / 2700-3516 Lösung der Aufgaben (1/2) Lösung Aufgabe
MehrTheoretische Informatik
Theoretische Informatik Einheit 1 Mathematische Methodik 1. Problemlösen 2. Beweistechniken 3. Wichtige Grundbegriffe Methodik des Problemlösens Klärung der Voraussetzungen Welche Begriffe sind zum Verständnis
MehrProgrammierkurs Java
Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen
MehrSEP 114. Design by Contract
Design by Contract SEP 114 Design by Contract Teile das zu entwickelnde Programm in kleine Einheiten (Klassen, Methoden), die unabhängig voneinander entwickelt und überprüft werden können. Einheiten mit
MehrUniversität Augsburg, Institut für Informatik Sommersemester 2005 Prof. Dr. Werner Kießling 15. Oktober 2005 Dr. Alfons Huhn, Timotheus Preisinger
Universität Augsburg, Institut für Informatik Sommersemester 2005 Prof. Dr. Werner Kießling 15. Oktober 2005 Dr. Alfons Huhn, Timotheus Preisinger Informatik II Hinweise: Die Bearbeitungszeit beträgt 90
MehrGroß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,
MehrProgrammieren 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
MehrGrundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny
Grundlagen der Informatik Prof. Dr. Stefan Enderle NTA Isny 2 Datenstrukturen 2.1 Einführung Syntax: Definition einer formalen Grammatik, um Regeln einer formalen Sprache (Programmiersprache) festzulegen.
MehrAlso kann nur A ist roter Südler und B ist grüner Nordler gelten.
Aufgabe 1.1: (4 Punkte) Der Planet Og wird von zwei verschiedenen Rassen bewohnt - dem grünen und dem roten Volk. Desweiteren sind die Leute, die auf der nördlichen Halbkugel geboren wurden von denen auf
MehrGrundlagen der Programmierung Prof. H. Mössenböck. 14. Schrittweise Verfeinerung
Grundlagen der Programmierung Prof. H. Mössenböck 14. Schrittweise Verfeinerung Entwurfsmethode für Algorithmen Wie kommt man von der Aufgabenstellung zum Programm? Beispiel geg.: Text aus Wörtern ges.:
MehrEinführung in die Java- Programmierung
Einführung in die Java- Programmierung Dr. Volker Riediger Der hat die früher handschriftlichen Folien lesbar gemacht. Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Heutige Themen Hello World!
MehrSEP 325. Notwendigkeit. häufige Situation: Programm funktioniert im Prinzip fehlerfrei, aber nicht mit gewünschter Performanz
Optimierungen SEP 325 Notwendigkeit häufige Situation: Programm funktioniert im Prinzip fehlerfrei, aber nicht mit gewünschter Performanz Symptome des Mangels an Performanz: OutOfMemoryError wird geworfen
MehrAlgorithmen & Datenstrukturen 1. Klausur
Algorithmen & Datenstrukturen 1. Klausur 7. Juli 2010 Name Matrikelnummer Aufgabe mögliche Punkte erreichte Punkte 1 35 2 30 3 30 4 15 5 40 6 30 Gesamt 180 1 Seite 2 von 14 Aufgabe 1) Programm Analyse
MehrModellierung und Programmierung 1
Modellierung und Programmierung 1 Prof. Dr. Sonja Prohaska Computational EvoDevo Group Institut für Informatik Universität Leipzig 19. November 2015 Gültigkeitsbereich (Scope) von Variablen { int m; {
MehrC# 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
MehrTutorium 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
MehrSie müssen den Test bis 20:00 Uhr am Abgabetag dieses Übungszettels absolviert haben.
Informatik I Wintersemester 2013/14 Prof. Dr. Carsten Damm Georg-August-Universität Göttingen Dr. Henrik Brosenne Institut für Informatik Übung 6 Abgabe bis Dienstag, 10.12., 18:00 Uhr. Werfen Sie Ihre
MehrProgrammieren. 10. Tutorium 4./ 5. Übungsblatt Referenzen
Programmieren 10. Tutorium 4./ 5. Übungsblatt Inhalt I. Übungsblatt 4 II. III. - Rückgabe und Besprechung - Vorbereitung auf Wiederholung/ Nachtrag - Operatorpräzedenzen IV. Übungsblatt 5 - Vorstellung
MehrEin erstes Java-Programm
Ein erstes Java-Programm public class Rechnung { public static void main (String [] arguments) { int x, y; x = 10; y = -1 + 23 * 33 + 3 * 7 * (5 + 6); System.out.print ("Das Resultat ist "); System.out.println
MehrProbeklausur: 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,
MehrObjektorientierte 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
MehrArrays Fortgeschrittene Verwendung
Arrays Fortgeschrittene Verwendung Gilbert Beyer und Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik http://www.pst.ifi.lmu.de/lehre/wise-11-12/infoeinf WS11/12 Arrays: Wiederholung
MehrC++-Zusammenfassung. H. Schaudt. August 18, 2005
C++-Zusammenfassung H. Schaudt August 18, 2005 1 Datentypen 1.1 Grunddatentypen int (-32xxx bis +32xxx, implementerungs-abhängig) char -128 bis +128 float double bool (C++) int und char sind austauschbar:
MehrDiplomvorprüfung in Datenverarbeitung EBS Sommersemester 2002
Diplomvorprüfung in Datenverarbeitung EBS Sommersemester 2002 Prüfungsaufgaben zu den Vorlesungen Datenverarbeitung im ersten und im zweiten Semester Aufgabensteller: Gleißner Die Lösungen sind auf das
MehrArrays von Objekten. 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-12-13/infoeinf WS12/13 Arrays: Wiederholung Ein Array ist ein Tupel von Elementen gleichen
MehrJava-Vorkurs 2015. Wintersemester 15/16
Java-Vorkurs 2015 Wintersemester 15/16 Herzlich Willkommen! package de.unistuttgart.47.01.javavorkurs; public class WelcomeErstis { public static void main(string[] args){ System.out.println( Herzlich
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 02: Klassen & Objekte Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Klassen Grundstruktur einer Java-Klasse Eigenschaften (Attribute) Variablen
MehrHello World. Javakurs 2014, 1. Vorlesung. Sebastian Schuck. basierend auf der Vorlage von Arne Kappen. wiki.freitagsrunde.org. 3.
Hello World Javakurs 2014, 1. Vorlesung Sebastian Schuck basierend auf der Vorlage von Arne Kappen wiki.freitagsrunde.org 3. März 2014 This work is licensed under the Creative Commons Attribution-ShareAlike
MehrObjektorientierte Programmierung
Universität der Bundeswehr Fakultät für Informatik Institut 2 Priv.-Doz. Dr. Lothar Schmitz FT 2006 Übungsblatt 5 Lösungsvorschlag Objektorientierte Programmierung 22. 05. 2006 Lösung 9 (SMS-Eingabe am
MehrDatenbankanwendungsprogrammierung Crashkurs Java
Datenbankanwendungsprogrammierung Crashkurs Java Denny Priebe Datenbankanwendungsprogrammierung p. Unterschiede zu C, C++ typedefs, Präprozessor Strukturen, Unions globale Funktionen Mehrfachvererbung
MehrKlausur C++ #1 Jahr: 2001; Dozent: Dipl.Ing. Sorber
Klausur C++ #1 Jahr: 2001; Dozent: Dipl.Ing. Sorber 1) Welche Antworten zur Operatorüberladung sind richtig? (1) a) C++ - Operatoren können zusammen mit Objekten funktionieren b) C++ - Operatoren wird
MehrEinführung in die Java- Programmierung
Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Rückblick Datentypen (int, long, double, boolean, String) Variablen und Variablendeklarationen
Mehr5.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
MehrJava 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
MehrProgrammieren in C. C Syntax Datentypen, Operatoren und Kontrollstrukturen. Prof. Dr. Nikolaus Wulff
Programmieren in C C Syntax Datentypen, Operatoren und Kontrollstrukturen Prof. Dr. Nikolaus Wulff Elementare Typen Imperative und objektorientierte Programmiersprachen bieten i.d.r. einen Satz elementarer
Mehr1. Grundzüge der Objektorientierung 2. Methoden, Unterprogramme und Parameter 3. Datenabstraktion 4. Konstruktoren 5. Vordefinierte Klassen
1. Grundzüge der Objektorientierung 2. Methoden, Unterprogramme und Parameter 3. Datenabstraktion 4. Konstruktoren 5. Vordefinierte Klassen II.2.3 Datenabstraktion - 1 - public class Rechteck { Selektoren
MehrÜbungsblatt 3: Algorithmen in Java & Grammatiken
Humboldt-Universität zu Berlin Grundlagen der Programmierung (Vorlesung von Prof. Bothe) Institut für Informatik WS 15/16 Übungsblatt 3: Algorithmen in Java & Grammatiken Abgabe: bis 9:00 Uhr am 30.11.2015
MehrTestklausur 1 zur Vorlesung. Modellierung und Programmierung I. Dr. Monika Meiler Zeit: 60 Minuten
Matrikelnummer: Punkte: Testklausur 1 zur Vorlesung Modellierung und Programmierung I Dr. Monika Meiler Zeit: 60 Minuten Bemerkungen: Jedes Blatt ist mit der Matrikelnummer zu versehen. Jede Aufgabe ist
MehrPraktikum Informatik II Prof. Dr. Martin Trauth, Dr. Michael Männel
Praktikum Informatik II Prof. Dr. Martin Trauth, Dr. Michael Männel FB Physikalische Technik Musterlösungen Teil 4 Aufgabe 1 package teil4; import javax.swing.*; public class Ei { int haltung, ident; String
MehrEINI WiMa/LW. Einführung in die Informatik für Naturwissenschaftler und Ingenieure. Vorlesung 2 SWS WS 11/12
EINI WiMa/LW Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 11/12 Fakultät für Informatik Technische Universität Dortmund lars.hildebrand@udo.edu http://ls1-www.cs.uni-dortmund.de
MehrRekursion. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung
Rekursion Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-12-13/infoeinf WS12/13 Aufgabe 1: Potenzfunktion Schreiben Sie eine Methode, die
Mehr620.900 Propädeutikum zur Programmierung
620.900 Propädeutikum zur Programmierung Andreas Bollin Institute für Informatik Systeme Universität Klagenfurt Andreas.Bollin@uni-klu.ac.at Tel: 0463 / 2700-3516 Lösung der Aufgabe (1/1) Lösung Aufgabe
Mehr1. Der Einstieg in Java. Was heißt Programmieren?
1. Der Einstieg in Java Lernziele: Am Ende dieses Kapitels sollen Sie wissen, aus welchen Bestandteilen ein Java-Programm besteht, Java-Programme übersetzen und ausführen können, Möglichkeiten der Kommentierung
Mehr1 Polymorphie (Vielgestaltigkeit)
1 Polymorphie (Vielgestaltigkeit) Problem: Unsere Datenstrukturen List, Stack und Queue können einzig und allein int-werte aufnehmen. Wollen wir String-Objekte, andere Arten von Zahlen oder andere Objekttypen
Mehr1. Teilklausur. Modul "OOPM Vorlesung/Übung" 16.12.2008. Gruppe A
Objektorientierte Programmierung und Modellierung WS 2008/2009 Institut für Informatik Prof. Dr. Ralf Lämmel Dr. Manfred Jackel 1. Teilklausur Modul "OOPM Vorlesung/Übung" 16.12.2008 Gruppe A Name Vorname
MehrTest zu Grundlagen der Programmierung Leitung: Michael Hahsler. 21. November 2003
Test zu Grundlagen der Programmierung Leitung: Michael Hahsler 1. November 00 Name Martrikelnummer Unterschrift Bitte kreuzen Sie das Studium an, für das Sie diese Prüfung ablegen: O Bakkalaureat Wirtschaftsinformatik
MehrStudentische 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
MehrIn vergleichsbasierten Suchbäumen wird nicht in Schlüssel hineingeschaut.
Binäre Suchbäume Tries (Folie 182, Seite 58 im Skript) In vergleichsbasierten Suchbäumen wird nicht in Schlüssel hineingeschaut. In Tries entspricht die ite Verzweigung dem iten Zeichen des Schlüssels.
MehrIT-Basics 2. DI Gerhard Fließ
IT-Basics 2 DI Gerhard Fließ Wer bin ich? DI Gerhard Fließ Telematik Studium an der TU Graz Softwareentwickler XiTrust www.xitrust.com www.tugraz.at Worum geht es? Objektorientierte Programmierung Konzepte
MehrÜ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
MehrMathematik für Informatiker II. Beispiellösungen zur Probeklausur. Aufgabe 1. Aufgabe 2 (5+5 Punkte) Christoph Eisinger Sommersemester 2011
Mathematik für Informatiker II Christoph Eisinger Sommersemester 211 Beispiellösungen zur Probeklausur Aufgabe 1 Gegeben sind die Polynome f, g, h K[x]. Zu zeigen: Es gibt genau dann Polynome h 1 und h
MehrThemen. Web Service - Clients. Kommunikation zw. Web Services
Themen Web Service - Clients Kommunikation zw. Web Services Bisher: Implementierung einer Java Anwendung und Bereitstellung durch Apache Axis unter Apache Tomcat Java2WSDL Erzeugen einer WSDL-Datei zur
MehrEinführung in die C++ Programmierung für Ingenieure
Einführung in die C++ Programmierung für Ingenieure MATTHIAS WALTER / JENS KLUNKER Universität Rostock, Lehrstuhl für Modellierung und Simulation 14. November 2012 c 2012 UNIVERSITÄT ROSTOCK FACULTY OF
Mehr4. Datentypen. Einleitung Eingebaute Datentypen. Konversion / Type-Cast. Operatoren. Übersicht Die Datentypen char, float und double Standardwerte
4. Datentypen Einleitung Eingebaute Datentypen Übersicht Die Datentypen char, float und double Standardwerte Konversion / Type-Cast Datentyp von Literalen Operatoren Ausdrücke Allgemeine Informatik 2 SS09
Mehr4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.
Binäre Bäume Definition: Ein binärer Baum T besteht aus einer Menge von Knoten, die durch eine Vater-Kind-Beziehung wie folgt strukturiert ist: 1. Es gibt genau einen hervorgehobenen Knoten r T, die Wurzel
MehrDiana Lange. Generative Gestaltung Operatoren
Diana Lange Generative Gestaltung Operatoren Begriffserklärung Verknüpfungsvorschrift im Rahmen logischer Kalküle. Quelle: google Operatoren sind Zeichen, die mit einer bestimmten Bedeutung versehen sind.
MehrEinfache Arrays. 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 Action required now 1. Smartphone: installiere die App "socrative student"
Mehr13 Java 4 - Entwurfsmuster am Beispiel des Rucksackproblems
13 Java 4 - Entwurfsmuster am Beispiel des Rucksackproblems 13.1 Modellierung des Rucksackproblems 13.2 Lösung mit Greedy-Algorithmus 13.3 Lösung mit Backtracking 13.4 Lösung mit Dynamischer Programmierung
MehrTechnische Universität München SS 2006 Fakultät für Informatik 12. Oktober 2006 Prof. Dr. A. Knoll. Aufgabe 1 Transferfragen (Lösungsvorschlag)
Technische Universität München SS 2006 Fakultät für Informatik 12. Oktober 2006 Prof. Dr. A. Knoll Lösungsvorschläge der Klausur zu Einführung in die Informatik II Aufgabe 1 Transferfragen (Lösungsvorschlag)
Mehr5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c)
5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c) mit V = {1,...,n} und E {(v, w) 1 apple v, w apple n, v 6= w}. c : E!
MehrKlausur 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-
MehrObjektorientierte Programmierung. Objektorientierte Programmierung. Klasse. Objekt. Beispiel: Sportfest1. Methode. Eine Einführung mit BlueJ
Objektorientierte Programmierung Objektorientierte Programmierung Eine Einführung mit BlueJ stellt die Daten, ihre Struktur und ihre Beziehungen zueinander in den Vordergrund. Weniger im Blickpunkt: die
MehrWirtschaftsinformatik I
Wirtschaftsinformatik I - Tutorium 6/ 7 (April 2010) Zusatzinformationen - Lösungsvorschläge Wirtschaftsinformatik I Tutorium Jochen Daum (4.Semester BWL) Universität Mannheim Rechtshinweis: Diese Präsentation
MehrBäume. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 10: Collections 4. Inhalt. Bäume. Einführung. Bäume.
Universität Osnabrück 1 Bäume 3 - Objektorientierte Programmierung in Java Vorlesung 10: Collections 4 Einführung Bäume sind verallgemeinerte Listenstrukturen Lineare Liste Jedes Element hat höchstens
MehrLiebe Leserin, lieber Leser, in der ersten Auflage von Programmieren lernen mit Java von Hans- Peter Habelitz sind einige Fehler zu korrigieren.
Liebe Leserin, lieber Leser, in der ersten Auflage von Programmieren lernen mit Java von Hans- Peter Habelitz sind einige Fehler zu korrigieren. Niemand bedauert diese Fehler mehr als der Autor selbst.
MehrDr. Monika Meiler. Inhalt
Inhalt 5 Referenzdatentypen - Felder... 5-2 5.1 Eindimensionale Felder - Vektoren... 5-3 5.1.1 Vereinbarung... 5-3 5.1.2 Referenzen sind keine Felder... 5-4 5.1.3 Kopieren eindimensionaler Felder... 5-6
MehrKlausur 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-
Mehr188.154 Einführung in die Programmierung für Wirtschaftsinformatik
Beispiel 1 Vererbung (Liste) Gegeben sind die beiden Klassen ListNode und PersonNode. 188.154 Einführung in die Programmierung für Wirtschaftsinformatik Wiederholung, Prüfungsvorbereitung Monika Lanzenberger
MehrEinfü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
MehrRepetitorium Informatik (Java)
Repetitorium Informatik (Java) Tag 8 Lehrstuhl für Informatik 2 (Programmiersysteme) Übersicht 1 Vererbung Vererbung Statischer Typ Dynamischer Typ 2 Polymorphie Overloading: Methoden überladen Overriding:
MehrDas erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden.
Einfache Ein- und Ausgabe mit Java 1. Hallo-Welt! Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden. /** Die Klasse hello sendet einen
MehrBreiten- und Tiefensuche in Graphen
Breiten- und Tiefensuche in Graphen Inhalt Theorie. Graphen. Die Breitensuche in der Theorie am Beispiel eines ungerichteten Graphen. Die Tiefensuche in der Theorie am Beispiel eines gerichteten Graphen
MehrDistributed 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
MehrAndroid will doch nur spielen. Java Eine kurze Einführung
Android will doch nur spielen Java Eine kurze Einführung Agenda Einführung in Java Syntax und Semantik Komplexe Datenstrukturen OOP Weitere Java-Elemente 2 Einführung in Java Was ist Java? lt. Sun: einfach
MehrBrainfuck. 1 Brainfuck. 1.1 Brainfuck Geschichte und Umfeld. 1.2 Esoterische Programmiersprachen
Brainfuck 1 Brainfuck 1.1 Brainfuck Geschichte und Umfeld Brainfuck ist eine sogenannte esoterische Programmiersprache. Sie wurde 1993 vom Schweizer Urban Müller entworfen mit dem Ziel, eine Sprache mit
Mehr1. Der Einstieg in Java
1. Der Einstieg in Java Was heißt Programmieren? 1. Der Einstieg in Java Lernziele: Am Ende dieses Kapitels sollen Sie wissen, aus welchen Bestandteilen ein Java-Programm besteht, Java-Programme übersetzen
MehrErster Kontakt mit Java und Pseudocode
Erster Kontakt mit Java und Pseudocode CoMa-Übung II TU Berlin 23.10.2013 CoMa-Übung II (TU Berlin) Erster Kontakt mit Java und Pseudocode 23.10.2013 1 / 27 Themen der Übung 1 Java auf meinem Rechner 2
MehrProgrammieren 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
Mehreinkonto.zahle(+100); //Transaktion Einzahlung einkonto.zahle(-20); //Transaktion Auszahlung einkonto.zahle(+30); //Transaktion Einzahlung
PIWIN I Kap. 7 Objektorientierte Programmierung - Einführung 28 Testklasse public class TestGirokonto { public static void main(string[] args) { // erzeuge neues Konto Girokonto einkonto = new Girokonto();
Mehr