TAG 3: FUNKTIONEN, EVENTS, ARRAYS, EXKURS: SPEICHERVERWALTUNG Brückenkurs Programmierung SoSe 16

Größe: px
Ab Seite anzeigen:

Download "TAG 3: FUNKTIONEN, EVENTS, ARRAYS, EXKURS: SPEICHERVERWALTUNG Brückenkurs Programmierung SoSe 16"

Transkript

1 TAG 3: FUNKTIONEN, EVENTS, ARRAYS, EXKURS: SPEICHERVERWALTUNG Brückenkurs Programmierung SoSe 16 Toni Barthel

2 Organisatorisches I Themen: Tag 1: Variablen Operatoren, Verzweigungen Tag 2: Animationen, Schleifen Tag 3: Funktionen, Events, Arrays, Exkurs: Speicherverwaltung Tag 4: Objektorientierung, Ausblick auf Java und C Heute: Wiederholung Tag 2 Nicht so viel Mathe wie gestern! Wir Blicken hinter die Kulissen. Heute schon Funktionen!

3 Organisatorisches II Tagesablauf: Zwei Vorlesungsblöcke (ca. 90min), 15min Kaffeepause Neuankömmlinge melden sich bitte in der Pause bei mir Kursunterlagen Uns ist positiv aufgefallen: Lerngruppen Anwesend in den Tutorien Aufmerksamkeit Brückenkurs Programmierung WiSe 15/16 - Toni Barthel

4 TAG3.0: WIEDERHOLUNG Brückenkurs Programmierung SoSe 16 Toni Barthel

5 WDH: Ablaufsteuerung I Formulieren Sie das abgebildete Flussdiagramm als Anweisungsabfolge. Antwort while(x>5){ x=x+2;

6 WDH: Ablaufsteuerung II Formulieren Sie das abgebildete Flussdiagramm als Anweisungsabfolge. Antwort for (i=0; i<5; i++) { //Anweisung

7 WDH: Processing Wie erzeugen Sie eine zufällige Zahl im Wertebereich von 15 bis 50 mit der Programmiersprache Processing? random(15,50); Welche zwei Standardfunktionen haben Sie bisher kennengelernt? void setup () { und void draw () { Definieren Sie eine beliebige Farbe und initialisieren sie diese als Variable. col meinefarbe = col(15,125,35);

8 WDH: Processing Zeichnen Sie eine einfache Linienabfolge mit maximal 10 Stück. Die erste Linie liegt bei: A(0,0)-A (400,0). Alle folgenden Linien sind um 10 Punkte versetzt. size(400, 650); background(255); strokeweight(2); // Einfache Linien for (int y = 0; y < 100; y = y + 10) { line(0, y, height, y);

9 WDH: Processing Zeichnen Sie eine nicht bestimmte Anzahl einer Linienabfolge. Die erste Linie liegt bei: A(0,0)-A (400,0). Alle folgenden Linien sind um 10 Punkte versetzt. size(400, 650); background(255); strokeweight(2); // Einfache Linien int y = 0; while(y<height) { line(0, y, height, y); y = y + 10;

10 TAG 3.1: FUNKTIONEN Brückenkurs Programmierung SoSe 16 Toni Barthel

11 Funktionen Mathematik Zuordnung Argumentwert(e) -> Ergebniswert Beispiel: f(x) = a + 2x Informatik / Programmierung Zusammenfassung von Anweisungen die von Argumentwerten abhängen (können) Einen Ergebniswert produzieren (können) Hilft QuellCode zu vereinfachen und zu strukturieren Hinweis: Dopplungen sind ein Hinweis zur Verwendung von Funktionen ;-) int getmax(int x, int y) { return x > y? x : y; int geuniversalnumber() { return 42;

12 Funktionsdefinition Funktionskopf Funktionsname Funktionsparameter auch formale Funktionsargumente Funktionskörper Code, Sammlung von Anweisungen Funktionsergebnis Rückgabewert return ;

13 Funktionsaufruf Funktionsname Funktionsargument auch aktuelle Funktionsargumente int mymin = 4; int myintvalue = max(17,mymin); Unterscheidung der Begrifflichkeit: Funktion / Methode Wenn static davor steht, handelt es sich um eine Funktionoder statische Methode, ansonsten ist es eine Methode. static int geuniversalnumber() { return 42; Funktion int geuniversalnumber() { return 42; Methode

14 Funktionen und Variablen Hinweise zur Verwendung von Funktionen Eine Methode (Funktion) kann beliebig viele Variablendefinitionen und Anweisungen enthalten. Sie endet mit return oder der letzten Anweisung float entfernungzummittelpunkt(float x, float y) { float d = dist(x, y, width/2, height/2); // gebe das ergbenis zurück return d;

15 Funktionen ohne Rückgabewert Funktionen ohne Rückgabewert einfachste Form, erledigen Aufgaben mit dem Schlüsselwort void (engl. leer) markiert geben kein Ergebnis zurück Parameter beliebig viele Parameter jede Variable kann (muss aber nicht!) ein Parameter sein void setup() { void setup() { void draw() { zeichneellipse(); void zeichneellipse() { ellipse(50, 50, 50, 50); void draw() { // Funktionsaufruf mit zwei Parametern zeichneellipse(25, 25); zeichneellipse(75, 75); // Funktion mit zwei float Parametern void zeichneellipse(float x, float y) { ellipse(x, y, 50, 50);

16 Funktionen MIT Rückgabewert Funktionen mit Rückgabewert erledigen Aufgaben und geben einen Wert zurück komplizierte Berechnungen, etc. Statt void also z.b. int, float, String das Ergebnis wird nach Abschluss aller nötigen Schritte mit dem Schlüsselwort return zurück void setup() { background(255); fill(0); void draw() { background(255); float d = entfernungzummittelpunkt(mousex, mousey); ellipse(50, 50, d, d); // berechnet die Entfernung // von einem Punkt (x, y Parameter) // zum Mittelpunkt der Anwendung float entfernungzummittelpunkt(float x, float y) { float d = dist(x, y, width/2, height/2); // gebe das Ergebnis zurück return d;

17 Anwendungsbeispiel void draw () { // draw thick, dark x stroke (80); strokeweight (20); line (50, 40, 110, 105); line (110, 40, 50, 105); // draw medium, light gray x stroke (210); strokeweight (10); line (150, 140, 210, 200); line (210, 140, 150, 200); void setup () { size (320, 240); background (0); smooth (); noloop (); // draw thin, white x stroke (255); strokeweight (2); line (50, 140, 110, 200); line (110, 140, 50, 200);

18 Anwendungsbeispiel I void setup () { size (320, 240); background (0); smooth (); noloop (); void draw () { drawcross (50, 40, 60, 80, 20); drawcross (150, 140, 60, 210, 10); drawcross (50, 140, 60, 255, 2); void drawcross (float thex, float they, float thesize, int thegrey, float theweight) { stroke (thegrey); strokeweight (theweight); line (thex, they, thex+thesize, they+thesize); line (thex+thesize, they, thex, they+thesize);

19 Anwendungsbeispiel II void setup () { size (320, 240); background (0); smooth (); noloop (); void draw () { for(int i=0; i < 70; i++) { drawcross (random (width), random (height), random (10, 100), int (random (40, 255)), random (1, 18)); void drawcross (float thex, float they, float thesize, int thegrey, float theweight) { stroke (thegrey); strokeweight (theweight); line (thex, they, thex+thesize, they+thesize); line (thex+thesize, they, thex, they+thesize);

20 Zusammenfassung Funktionen 1. Unser Code wird kürzer und übersichtlicher. 2. Wir brauchen Codeteile nicht immer und immer wieder zu schreiben, was die Fehlerquote senkt. Prinzip der Modularität Dieses Prinzip, komplexe Aufgaben in ihre Grundbestandteile zu gliedern, um diese später einfach wiederverwenden zu können, bezeichnet man als Modularität.

21 TAG 3.2: EVENTS (FUNKTIONEN IN PROCESSING) Brückenkurs Programmierung SoSe 16 Toni Barthel

22 Wie Entsteht ein Event?

23 Funktionen In PROCESSING II In Processing gibt es viele Funktionen. Einige davon haben wir bisher benutzt ohne uns genauer damit zu beschäftigen. setup() - wird einmal zu Beginn des Programms ausgeführtvoid draw() - wird, je nach framerate() pro Sekunde ausgeführt (default 60 Frames pro Sekunde) - Hauptteil unseres Processing Programms mousepressed() - wird einmal ausgeführt, wenn die Maus gedrückt wird (Vergleiche dazu mousepressed) keypressed() - wird einmal ausgeführt, wenn eine Taste auf der Tastatur gedrückt wird (Vergleiche dazu keypressed)

24 Funktionen In PROCESSING II void mouseclicked() { // Aktion wenn die Maus geklickt wurde void mousepressed() { // Aktion wenn die Maus geklickt ist void mousereleased() { // Aktion wenn eine Maustaste losgelassen wird. void mousemoved() { // Aktion wenn sich die Maus bewegt void mousedragged() { // Aktion wenn die Maus geklickt ist und bewegt wird

25 Funktionen In PROCESSING II void mousepressed() { background(100, 100, 0); text( Maus wurde gedrückt", width/2, height/2); if ( mousebutton == LEFT) { text("und es war ein links Klick", width/2, height/2 + 40); if (mousebutton == RIGHT) { text("und es war ein rechts Klick", width/2, height/2 + 40); void setup() { size(400, 400); background(0); textalign(center); textsize(24); fill(255); text( Nichts passiert!, width/2, height/2); void draw() { void mousereleased() { background(100, 0, 100); text("maus wurde los gelassen., width/2, height/2); void mousemoved() { background(150, 10, 70); text("maus wurde bewegt", width/2, height/2); void mousedragged() { background(10, 70, 100); text("maustaste ist gedrückt und wird bewegt., width/2, height/2);

26 TAG 3.3: ARRAYS Brückenkurs Programmierung SoSe 16 Toni Barthel

27 Wie Speichern wir viele Werte? Was macht man, wenn ein Programm viele Werte speichern muss? viele Werte speichern viele Variablen definieren genauso unpraktikabel wie Schleifen auszuschreiben Anzahl benötigter Variablen evtl. zu Beginn unbekannt Es werden am besten Variable von variabler Größe benötigt nur wie?

28 Arrays Definition: Ein Array ist eine Variable, die mehrere Werte vom gleichen Typ enthält. Syntax: <typ>[] name = new <typ>[<size>]; Beispiel: float[] a = new float[3]; int[] b = new int[]{1,2,4 Zugriff: b[0] = 1; a[1+1] = 3.4; Zugriff: int x = b[0]; println(a[x+1]); int n = a.length;

29 Arrays als Regale

30 Arrays im Einsatz & Ausgabe auf der Konsole String[] array = {"Alles", "aus", "der", "Liste"; for (int i=0; i < array.length; i = i + 1) { print (array[i] + " ");

31 Arrays im Einsatz der Theorie Fragestellung: Welche Ausgabe können Sie erwarten? Zeigen Sie ihre Lösung Schritt für Schritt! import java.util.*; int felda[] = {1, 2, 3, 4, 5, 6, 7, 8, 9; int a = 5; felda[2] = felda[a+felda[0]]-felda[a]; print(arrays.tostring(felda));

32 Arrays im Einsatz der Theorie int felda[] = {1,2,3,4,5,6,7,8,9; int a = 5; felda[2] = felda[a+felda[0]]-felda[a]; felda[a+ 1 ]-felda[a] felda[5+ 1 ]-felda[a] felda[2]= felda[ 6 ]-felda[a] felda[ 6 ]-felda[a] 7 -felda[a] 7 -felda[5] 7-6 {1,2,1,4,5,6,7,8,9 Ausgabe: [1,2,1,4,5,6,7,8,9]

33 TAG 3.4: EXKURS WERT- UND REFERENSEMANTIK Brückenkurs Programmierung SoSe 16 Toni Barthel

34 Unterschied Primitive - und Referenztypen Erinnerung: Processing (Java) unterscheidet zwischen primitiven Typen (z.b. int) und Referenztypen (Arrays und Klassen). primitiver Typ: Variable enthält Wert bei Zuweisung wird der Wert direkt kopiert Stack Referenztyp: Variable enthält Referenz bzw. Zeiger verweist auf Speicherstelle an der die Daten liegen bei Zuweisung wird nur die Referenz kopiert die Daten bleiben die selben Heap

35 Stack und Heap (Einführung) Stack (Stapel) Auf dem Stack werden Parameter und alle lokalen Variablen aller gerade aktiven Methoden verwaltet. (Parameter und Lokale Variablen leben nur für die Dauer der Aktivität der Methode) Heap (Haufen) Auf dem Heap werden Objekte verwaltet (unter anderem mit new angelegt). Der Inhalt der Referenzvariablen verweisen auf den Speicherort der Objekte im Heap. Ein Array ist ein Objekt. liste% check% str% c% a% args% Stack& false% 'm'% 5% "abc"... Heap&

36 Beispiel zu Stack und Heap mit einem Array public static void main(string[] args) { int[] a = {1, 2, 3, 4; int[] b = {10, 20, 30, 40; b" a" args" Stack& Heap&

37 Aufräumen des Heap Der Garbage Collector reinigt den Heap vom Müll Verfolgt systematisch alle Referenzen und markiert diese Nicht markierte Objekte können weggeräumt werden, da keine Referenzvariable auf diese Objekte zeigt Das Wegräumen nicht benötigter Objekte erfolgt automatischin regelmäßigen Abständen Wenn das Programm knapp an Speicher ist Kann Programmlauf jederzeit unterbrechen, weil er gerade mal Lust hat aufzuräumen! b" a" args" Gleich'fahre' ich'wieder'im' Heap'rund'und' sammle'allen' Abfall' Stack& Heap& Carbage&Collector&

38 Wert- vs Referenzsemantik: Zusammenfassung Der Inhalt von Variablen unterscheidet sich je nach dem, welchen Typ die Variable hat. primitiver Typ: Variable enthält Wert bei Zuweisung wird der Wert direkt kopiert Referenztyp: Variable enthält Referenz bzw. Zeiger verweist auf Speicherstelle an der die Daten liegen bei Zuweisung wird nur die Referenz kopiert die Daten bleiben die selben ist keine Referenz mehr auf ein Objekt vorhanden, wird dieses über die Carbage Collection aufgeräumt

39 Zusammenfassung I setup() draw() mousepressed() mousemoved() mousereleased() keypressed() Theorie: unterschied primitive und komplexe Datentypen Speicherverwaltung (Stack, Heap) Aufräumen des Speichers -> Carbage Collection Array-Syntax: <typ>[] name = new <typ>[<size>]; Beispiel: float[] a = new float[3]; int[] b = new int[]{1,2,4 Zugriff: b[0] = 1; a[1+1] = 3.4; Zugriff: int x = b[0]; println(a[x+1]); int n = a.length;

40 HERZLICHEN DANK FÜR IHRE AUFMERKSAMKEIT Toni Barthel

6 Speicherorganisation

6 Speicherorganisation Der Speicher des Programms ist in verschiedene Speicherbereiche untergliedert Speicherbereiche, die den eigentlichen Programmcode und den Code der Laufzeitbibliothek enthalten; einen Speicherbereich für

Mehr

Graphic Coding. Klausur. 9. Februar 2007. Kurs A

Graphic Coding. Klausur. 9. Februar 2007. Kurs A Graphic Coding Klausur 9. Februar 2007 Kurs A Name: Matrikelnummer: Hinweise - Es sind keine Hilfsmaterialien erlaubt. (Keine Bücher, Taschenrechner, Handys) - Sie haben zwei Stunden Zeit. - Insgesamt

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

1. 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 1. Grundzüge der Objektorientierung 2. Methoden, Unterprogramme und Parameter 3. Datenabstraktion 4. Konstruktoren 5. Vordefinierte Klassen II.2.2 Methoden, Unterprogramme und Parameter - 1 - 2. Methoden

Mehr

Eine schnelle Processing-Einführung. von Thomas Rau

Eine schnelle Processing-Einführung. von Thomas Rau Eine schnelle Processing-Einführung von Thomas Rau Inhaltsverzeichnis 1 Was Processing ist 3 2 Der Sketch 3 2.1 Die setup()-methode................................... 3 2.2 Die draw()-methode....................................

Mehr

Processing Info zu Variablen und Bedingungen

Processing Info zu Variablen und Bedingungen Processing Info zu Variablen und Bedingungen Dieses Dokument enthält - Variablen (Variablen, Datentypen, Deklaration, Geltungsbereich, Benennung) - Bedingungen (if, mousepressed, else) Variablen Eine Variable

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Unterlagen zur Veranstaltung Einführung in die Objektorientierte Programmierung Mit Processing Alexis Engelke Sommer 2012 Alexis Engelke Inhalt Level 1: Geometrie Hintergrundfarben Punkte, Linien und deren

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

FHZ. K20 Arrays. Lernziele. Hochschule Technik+Architektur Luzern Abteilung Informatik, Fach Programmieren. Inhalt

FHZ. K20 Arrays. Lernziele. Hochschule Technik+Architektur Luzern Abteilung Informatik, Fach Programmieren. Inhalt Inhalt 1. Einführung 2. Array-Komponenten von elementaren Datentypen 3. Array-Komponenten sind Objekte 4. Array als Parameter 5. Kopieren von Arrays 6. Beispiel 7. Vector versus Array Folie 1 Lernziele

Mehr

Welche Informatik-Kenntnisse bringen Sie mit?

Welche Informatik-Kenntnisse bringen Sie mit? Welche Informatik-Kenntnisse bringen Sie mit? So gehen Sie vor! Lösen Sie die Aufgaben der Reihe nach von 1 bis 20, ohne das Lösungsblatt zur Hilfe zu nehmen. Der Schwierigkeitsgrad der Aufgaben nimmt

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

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

Einführung in die Programmierung 1

Einführung in die Programmierung 1 Einführung in die Programmierung 1 Einführung (S.2) Einrichten von Eclipse (S.4) Mein Erstes Programm (S.5) Hallo Welt!? Programm Der Mensch (S.11) Klassen (S.12) Einführung Wie Funktioniert Code? Geschriebener

Mehr

AuD-Tafelübung T-B5b

AuD-Tafelübung T-B5b 6. Übung Sichtbarkeiten, Rekursion, Javadoc Di, 29.11.2011 1 Blatt 5 2 OOP Klassen Static vs. Instanzen Sichtbarkeit 3 Stack und Heap Stack Heap 4 Blatt 6 1 Blatt 5 2 OOP Klassen Static vs. Instanzen Sichtbarkeit

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

Programmierung mit C Zeiger

Programmierung mit C Zeiger Programmierung mit C Zeiger Zeiger (Pointer)... ist eine Variable, die die Adresse eines Speicherbereichs enthält. Der Speicherbereich kann... kann den Wert einer Variablen enthalten oder... dynamisch

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 34 Einstieg in die Informatik mit Java Klassen mit Instanzmethoden Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 34 1 Definition von Klassen 2 Methoden 3 Methoden

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

Speicher und Adressraum

Speicher und Adressraum Linearer Speicher (Adressraum) Technische Universität München Speicher und Adressraum Freie Speicherhalde (Heap) Freier Speicherstapel (Stack) Globale Variablen Bibliotheksfunktionen Laufzeitsystem Programmcode

Mehr

Programmieren Übung! Meine ersten Schritte als ProgrammiererIn! Prolog 2014 Stefan Podlipnig, TU Wien

Programmieren Übung! Meine ersten Schritte als ProgrammiererIn! Prolog 2014 Stefan Podlipnig, TU Wien Programmieren Übung! Meine ersten Schritte als ProgrammiererIn! Stefan Podlipnig, TU Wien Beispiel 1 Programmierung - Übung! 2 Geben Sie folgende Anweisungen ein size(300, 200); rect(100, 50, 100, 100);

Mehr

Programmierkurs. Manfred Jackel

Programmierkurs. Manfred Jackel Java für Anfänger Teil 7: Methoden Programmierkurs 06.-10.10.2008 Manfred Jackel 1 Methoden In der imperativen Programmierung sind Funktionen ein wichtiges Mittel zur Modularisierung. [Oft benötigter]

Mehr

Selbsteinstufungstest Vorkurs Programmieren

Selbsteinstufungstest Vorkurs Programmieren VPR Selbsteinstufungstest Vorkurs Programmieren Zeit 90 Minuten Aufgabe 1: Einzigartig (10 Punkte) Schreiben Sie eine Methode die angibt, ob ein String str1 in einem zweiten String str2 genau einmal vorkommt.

Mehr

JAVA - Methoden - Rekursion

JAVA - Methoden - Rekursion Übungen Informatik I JAVA - Methoden - Rekursion http://www.fbi-lkt.fh-karlsruhe.de/lab/info01/tutorial Übungen Informatik 1 1 Methoden Methoden sind eine Zusammenfassung von Deklarationen und Anweisungen

Mehr

Das Typsystem von Scala. L. Piepmeyer: Funktionale Programmierung - Das Typsystem von Scala

Das Typsystem von Scala. L. Piepmeyer: Funktionale Programmierung - Das Typsystem von Scala Das Typsystem von Scala 1 Eigenschaften Das Typsystem von Scala ist statisch, implizit und sicher 2 Nichts Primitives Alles ist ein Objekt, es gibt keine primitiven Datentypen scala> 42.hashCode() res0:

Mehr

JAVA-Datentypen und deren Wertebereich

JAVA-Datentypen und deren Wertebereich Folge 8 Variablen & Operatoren JAVA 8.1 Variablen JAVA nutzt zum Ablegen (Zwischenspeichern) von Daten Variablen. (Dies funktioniert wie beim Taschenrechner. Dort können Sie mit der Taste eine Zahl zwischenspeichern).

Mehr

RO-Tutorien 3 / 6 / 12

RO-Tutorien 3 / 6 / 12 RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 2 AM 06./07.05.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft

Mehr

C# Programmierung. Eine Einführung in das.net Framework. C# Programmierung - Tag 1: Grundlagen

C# Programmierung. Eine Einführung in das.net Framework. C# Programmierung - Tag 1: Grundlagen C# Programmierung Eine Einführung in das.net Framework C# Programmierung - Tag 1: Grundlagen 1/27/2012 1 Vorstellung Kursleiter Florian Rappl 9 Jahre Erfahrung mit C# Ausbildung zum Fachinformatiker bei

Mehr

Methoden (fortgeschritten) in C# - 1

Methoden (fortgeschritten) in C# - 1 Methoden (fortgeschritten) in C# - 1 Marc Satkowski 20. November 2016 C# Kurs Gliederung 1. Opertatoren Überladung 2. delegate 3. Anonyme Methoden delegate Lamda Ausdruck-Lamdas Anweisung-Lamdas Variablenbereich

Mehr

Grundlagen der Programmierung Prof. H. Mössenböck. 6. Methoden

Grundlagen der Programmierung Prof. H. Mössenböck. 6. Methoden Grundlagen der Programmierung Prof. H. Mössenböck 6. Methoden Parameterlose Methoden Beispiel: Ausgabe einer Überschrift class Sample { static void printheader() { // Methodenkopf Out.println("Artikelliste");

Mehr

Javakurs für Anfänger

Javakurs 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

Mehr

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

Einfache 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"

Mehr

Java Einführung Klassendefinitionen

Java Einführung Klassendefinitionen Java Einführung Klassendefinitionen Inhalt dieser Einheit Java-Syntax Klassen definieren Objekte instanziieren Instanzvariable deklarieren Klassenvariable deklarieren 2 Klassen definieren In der Problemanalyse

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Konstruktor, Statische Methoden Packages Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Initialisierung von Datenstrukturen

Mehr

Präzedenz von Operatoren

Präzedenz von Operatoren Präzedenz von Operatoren SWE-30 Die Präzedenz von Operatoren bestimmt die Struktur von Ausdrücken. Ein Operator höherer Präzedenz bindet die Operanden stärker als ein Operator geringerer Präzedenz. Mit

Mehr

Algorithmen und Programmierung II

Algorithmen und Programmierung II Algorithmen und Programmierung II Vererbung Prof. Dr. Margarita Esponda SS 2012 1 Imperative Grundbestandteile Parameterübergabe String-Klasse Array-Klasse Konzepte objektorientierter Programmierung Vererbung

Mehr

Algorithmen und Datenstrukturen

Algorithmen 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

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

FHZ. Man unterscheidet ein- und mehrdimensionale Arrays. Bei einem mehrdimensionalen Array sind die Komponenten wiederum Arrays.

FHZ. Man unterscheidet ein- und mehrdimensionale Arrays. Bei einem mehrdimensionalen Array sind die Komponenten wiederum Arrays. 1 Einführung Ein Array (Feld) enthält eine Anzahl von gleichartigen Komponenten (Elemente), die nicht via Namen, sondern über einen Index zugegriffen werden. Komponenten können von einem elementaren Datentyp

Mehr

Deklarationen in C. Prof. Dr. Margarita Esponda

Deklarationen in C. Prof. Dr. Margarita Esponda Deklarationen in C 1 Deklarationen Deklarationen spielen eine zentrale Rolle in der C-Programmiersprache. Deklarationen Variablen Funktionen Die Deklarationen von Variablen und Funktionen haben viele Gemeinsamkeiten.

Mehr

Klassen und Objekte. Einführung in Java. Folie 1 von Mai Ivo Kronenberg

Klassen und Objekte. Einführung in Java. Folie 1 von Mai Ivo Kronenberg Klassen und Objekte Einführung in Java Folie 1 von 28 12. Mai 2011 Ivo Kronenberg Inhalt Objekte Klassendefinitionen Datenelemente (Klassenattribute) Instanzieren von Objekten Konstruktoren Vergleich primitive

Mehr

Was passiert, wenn Button "Ok?" mit Maus angeklickt?

Was passiert, wenn Button Ok? mit Maus angeklickt? Ein Beispiel-Frame Was passiert, wenn Button "Ok?" mit Maus angeklickt? gar nichts!!! FH AACHEN UNIVERSITY OF APPLIED SCIENCES OOS Prof. Dr. H. Faßbender Ereignisverarbeitung 27. April 2016 1 Implementierung

Mehr

Grundkurs Software- Entwicklung mit C++

Grundkurs Software- Entwicklung mit C++ Dietrich May Grundkurs Software- Entwicklung mit C++ Praxisorientierte Einführung mit Beispielen und Aufgaben- Exzellente Didaktik und Übersicht Mit 30 Abbildungen 2., überarbeitete und erweiterte Auflage

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 26 Einstieg in die Informatik mit Java Felder, mehrdimensional Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 26 1 Überblick: mehrdimensionale Felder 2 Vereinbarung

Mehr

Java Virtual Machine (JVM) Bytecode

Java Virtual Machine (JVM) Bytecode Java Virtual Machine (JVM) durch Java-Interpreter (java) realisiert abstrakte Maschine = Softwareschicht zwischen Anwendung und Betriebssystem verantwortlich für Laden von Klassen, Ausführen des Bytecodes,

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

Javakurs FSS Lehrstuhl Stuckenschmidt. Tag 3 - Objektorientierung

Javakurs FSS Lehrstuhl Stuckenschmidt. Tag 3 - Objektorientierung Javakurs FSS 2012 Lehrstuhl Stuckenschmidt Tag 3 - Objektorientierung Warum Objektorientierung Daten und Funktionen möglichst eng koppeln und nach außen kapseln Komplexität der Software besser modellieren

Mehr

Kapitel 9. Komplexität von Algorithmen und Sortieralgorithmen

Kapitel 9. Komplexität von Algorithmen und Sortieralgorithmen Kapitel 9 Komplexität von Algorithmen und Sortieralgorithmen Arrays 1 Ziele Komplexität von Algorithmen bestimmen können (in Bezug auf Laufzeit und auf Speicherplatzbedarf) Sortieralgorithmen kennenlernen:

Mehr

620.900 Propädeutikum zur Programmierung

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

Mehr

Silke Trißl, Prof. Ulf Leser Wissensmanagement in der Bioinformatik. Jede Applikation braucht eine Klasse mit einer main-methode

Silke Trißl, Prof. Ulf Leser Wissensmanagement in der Bioinformatik. Jede Applikation braucht eine Klasse mit einer main-methode Methoden und Klassen Silke Trißl, Prof. Ulf Leser Wissensmanagement in der Bioinformatik Wiederholung Jede Applikation braucht eine Klasse mit einer main-methode Eintrittspunkt in das Programm Die main-methode

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

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 26 Einstieg in die Informatik mit Java Felder Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 26 1 Was sind Felder? 2 Vereinbarung von Feldern 3 Erzeugen von Feldern

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

Grafikprogrammierung mit Java Teil 1/2

Grafikprogrammierung mit Java Teil 1/2 Grafikprogrammierung mit Java Teil 1/2 Martin Tischmann 15. Juni 2009 Inhaltsverzeichnis Das Abstract Windowing Toolkit Anlegen eines Fensters Die Methode paint Das grafische Koordinatensystem Schließen

Mehr

Short Introduction to C# C# (C SHARP) Microsofts Antwort auf Java

Short Introduction to C# C# (C SHARP) Microsofts Antwort auf Java Short Introduction to C# C# (C SHARP) Microsofts Antwort auf Java Short Introduction to C# C# (C SHARP) Microsofts Antwort auf Java Standardisierung durch die ECMA und ISO Short Introduction to C# C# (C

Mehr

Java Einführung VARIABLEN und DATENTYPEN Kapitel 2

Java 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

Mehr

Letztes Mal. static int ggt(int a, int b) { if (a == b) return a; else if (a > b) return ggt(a-b,b); else if (a < b) return ggt(a,b-a);

Letztes Mal. static int ggt(int a, int b) { if (a == b) return a; else if (a > b) return ggt(a-b,b); else if (a < b) return ggt(a,b-a); Letztes Mal static int ggt(int a, int b) { if (a == b) return a; else if (a > b) } return ggt(a-b,b); else if (a < b) return ggt(a,b-a); Darf hier nicht stehen! Compiler sagt: Missing return statement

Mehr

Der Datentyp String. Stringvariable und -vergleiche

Der Datentyp String. Stringvariable und -vergleiche Informatik 12 mit Java: Gierhardt Zeichenketten bzw. Strings Der Datentyp String Zeichenketten bzw. Strings sind eine häufig benutzte Datenstruktur. Man könnte auch mit Arrays aus Zeichen arbeiten. Da

Mehr

Informatik. Studiengang Chemische Technologie. Michael Roth Hochschule Darmstadt -Fachbereich Informatik- WS 2012/2013.

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

Mehr

Klassen mit Instanzmethoden

Klassen mit Instanzmethoden Klassen mit Instanzmethoden Gerd Bohlender Institut für Angewandte und Numerische Mathematik Vorlesung: Einstieg in die Informatik mit Java 3.12.07 G. Bohlender (IANM UNI Karlsruhe) OOP und Klassen 3.12.07

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

Programmiertechnik Klassenmethoden

Programmiertechnik Klassenmethoden Programmiertechnik Klassenmethoden Prof. Dr. Oliver Haase Oliver Haase Hochschule Konstanz 1 Motivation Programm zur Berechung von public class Eval1 { public static void main(string[] args) { java.util.scanner

Mehr

C# im Vergleich zu Java

C# im Vergleich zu Java C# im Vergleich zu Java Serhad Ilgün Seminar Universität Dortmund SS 03 Gliederung Entstehung von C# und Java Überblick von C# und Java Unterschiede und Gemeinsamkeiten Zusammenfassung und Ausblick Entstehung

Mehr

Objekt-Orientierte Programmierung

Objekt-Orientierte Programmierung Objekt-Orientierte Programmierung Ein OO-Programm modelliert eine Anwendung als eine Welt von Objekten, die miteinander in Beziehung stehen ( später). Ein Objekt kann andere Objekte erzeugen. Ein Objekt

Mehr

Java Einführung Methoden in Klassen

Java Einführung Methoden in Klassen Java Einführung Methoden in Klassen Lehrziel der Einheit Methoden Signatur (=Deklaration) einer Methode Zugriff/Sichtbarkeit Rückgabewerte Parameter Aufruf von Methoden (Nachrichten) Information Hiding

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 7. Funktionen Einleitung Nach dem Prinzip Divide and Conquer bietet es sich an, größere Aufgaben in kleinere Teile zu unterteilen. Anweisungsblöcke,

Mehr

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

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Klassenmethoden Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer Programmiertechnik Klassenmethoden Motivation Programm zur Berechnung von public class Eval1 { public static void main(string[] args) { java.util.scanner

Mehr

Modellierung und Programmierung 1

Modellierung 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; {

Mehr

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen

Mehr

Programmieren I. Kapitel 5. Kontrollfluss

Programmieren I. Kapitel 5. Kontrollfluss Programmieren I Kapitel 5. Kontrollfluss Kapitel 5: Kontrollfluss Ziel: Komplexere Berechnungen im Methodenrumpf Ausdrücke und Anweisungen Fallunterscheidungen (if, switch) Wiederholte Ausführung (for,

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

Einführung in die Programmierung

Einführung in die Programmierung Technische Universität München WS 2003/2004 Institut für Informatik Prof. Dr. Christoph Zenger Testklausur Einführung in die Programmierung Probeklausur Java (Lösungsvorschlag) 1 Die Klasse ArrayList In

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

Vorlesung Programmieren

Vorlesung Programmieren Vorlesung Programmieren 3. Kontrollstrukturen 04.11.2015 Prof. Dr. Ralf H. Reussner Version 1.1 LEHRSTUHL FÜR SOFTWARE-DESIGN UND QUALITÄT (SDQ) INSTITUT FÜR PROGRAMMSTRUKTUREN UND DATENORGANISATION (IPD),

Mehr

Rekursive Funktionen

Rekursive Funktionen Um Rekursion zu verstehen, muss man vor allem Rekursion verstehen. http://www2.norwalk-city.k12.oh.us/wordpress/precalc/files/2009/05/mona-lisa-jmc.jpg Rekursive Funktionen OOPM, Ralf Lämmel Was ist Rekursion?

Mehr

Objektorientierte Programmierung OOP Programmieren mit Java

Objektorientierte Programmierung OOP Programmieren mit Java 4 Datenfelder, Parameterübergabe, Casting Objektorientierte Programmierung OOP Programmieren mit Java 4 Datenfelder, Parameterübergabe, Casting 4 Datenfelder, Parameterübergabe, Casting 4.1 Datenfelder

Mehr

Algorithmen zur Datenanalyse in C++

Algorithmen zur Datenanalyse in C++ Algorithmen zur Datenanalyse in C++ Hartmut Stadie 25.06.2012 Algorithmen zur Datenanalyse in C++ Hartmut Stadie 1/ 15 Einführung Zeiger, Felder und Strukturen Zufallszahlen für andere Verteilungen Algorithmen

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

Java - Schleifen. Bedingung. wiederhole. Anweisung Anweisung Anweisung. Leibniz Universität IT Services Anja Aue

Java - Schleifen. Bedingung. wiederhole. Anweisung Anweisung Anweisung. Leibniz Universität IT Services Anja Aue Java - Schleifen Bedingung wiederhole ja Anweisung Anweisung Anweisung Leibniz Universität Anja Aue Schleifen Iterationsanweisungen. Wiederholung von Anweisung in Abhängigkeit einer Bedingung. Eine Verschachtelung

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 9. Zeiger Arbeitsspeicher / Adressen Der Arbeitsspeicher des Computers (RAM) besteht aus einem Feld von Speicherzellen, beginnend bei Adresse

Mehr

Programmieren in Java

Programmieren in Java Einführung in die (imperative) Programmierung: Arrays & Strings 2 Wiederholung (Methoden) MODIFIKATOREN optional RÜCKGABETYP BEZEICHNER ( DATENTYP PARAM-, ) BEZEICHNER optional { SATZ; BLOCK return AUSDRUCK

Mehr

Kapitel 8. Programmierkurs. Methoden. 8.1 Methoden

Kapitel 8. Programmierkurs. Methoden. 8.1 Methoden Kapitel 8 Programmierkurs Birgit Engels Anna Schulze Zentrum für Angewandte Informatik Köln Objektorientierte Programmierung Methoden Überladen von Methoden Der this-zeiger Konstruktoren Vererbung WS 07/08

Mehr

PIWIN I. Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I. Vorlesung 3 SWS WS 2007/2008

PIWIN I. Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I. Vorlesung 3 SWS WS 2007/2008 PIWIN I Kap. 7 Objektorientierte Programmierung - Einführung 1 PIWIN I Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I Vorlesung 3 SWS WS 2007/2008 FB Informatik

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Stefan Brass: OOP (Java), 15. Überladene Methoden 1/22 Objektorientierte Programmierung Kapitel 15: Überladene Methoden Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2013/14 http://www.informatik.uni-halle.de/

Mehr

Einführung in die Programmierung für NF. Übung 08

Einführung in die Programmierung für NF. Übung 08 Einführung in die Programmierung für NF Übung 08 Inhalt Eventbehandlung in Java Swing Einführung in die Programmierung für NF Übung 08 2 Eventbehandlung in Java Swing Wir haben bereits einige grafische

Mehr

Software Engineering Klassendiagramme Einführung

Software Engineering Klassendiagramme Einführung Software Engineering Klassendiagramme Einführung Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Aufgabe Erstellen Sie eine Klasse Person in Java. Jede Person verfügt

Mehr

Programmierkurs Python I

Programmierkurs Python I Programmierkurs Python I Michaela Regneri & Stefan Thater Universität des Saarlandes FR 4.7 Allgemeine Linguistik (Computerlinguistik) Winter 2010/11 Übersicht Kurze Wiederholung: while Sammeltypen (kurz

Mehr

Objektorientierte Programmierung. Kapitel 12: Interfaces

Objektorientierte Programmierung. Kapitel 12: Interfaces 12. Interfaces 1/14 Objektorientierte Programmierung Kapitel 12: Interfaces Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2012/13 http://www.informatik.uni-halle.de/ brass/oop12/

Mehr

Test zu Grundlagen der Programmierung Leitung: Michael Hahsler. 21. November 2003

Test 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

Mehr

Javakurs zu Informatik I. Henning Heitkötter

Javakurs zu Informatik I. Henning Heitkötter Javakurs zu Informatik I Arrays vergleichen Implementieren Sie folgende Methode, die prüft, ob die Elemente der beiden Arrays an jeder Position übereinstimmen: public static boolean identisch(int[] a,

Mehr

Kapitel 9. Komplexität von Algorithmen und Sortieralgorithmen

Kapitel 9. Komplexität von Algorithmen und Sortieralgorithmen 1 Kapitel 9 Komplexität von Algorithmen und Sortieralgorithmen Ziele 2 Komplexität von Algorithmen bestimmen können (in Bezug auf Laufzeit und auf Speicherplatzbedarf) Sortieralgorithmen kennenlernen:

Mehr

EINI 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 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

Mehr

Erwin Grüner 15.12.2005

Erwin Grüner 15.12.2005 FB Psychologie Uni Marburg 15.12.2005 Themenübersicht Mit Hilfe der Funktionen runif(), rnorm() usw. kann man (Pseudo-) erzeugen. Darüber hinaus gibt es in R noch zwei weitere interessante Zufallsfunktionen:

Mehr

String s1, s2; Eine Zuweisung geschieht am einfachsten direkt durch Angabe des Strings eingeschlossen in doppelte Hochkommata:

String s1, s2; Eine Zuweisung geschieht am einfachsten direkt durch Angabe des Strings eingeschlossen in doppelte Hochkommata: Informatik mit Java: Gierhardt Zeichenketten bzw. Strings Der Datentyp String Zeichenketten bzw. Strings sind eine häufig benutzte Datenstruktur. Man könnte auch mit Arrays aus Zeichen arbeiten. Da aber

Mehr

einkonto.zahle(+100); //Transaktion Einzahlung einkonto.zahle(-20); //Transaktion Auszahlung einkonto.zahle(+30); //Transaktion Einzahlung

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

Grundlagen der Informatik Enums, Strings und Arrays

Grundlagen der Informatik Enums, Strings und Arrays Grundlagen der Informatik Enums, Strings und Arrays Prof. Dr. Bernhard Schiefer (basierend auf Unterlagen von Prof. Dr. Duque-Antón) bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer Inhalt Aufzählungen

Mehr

1. Übung zu "Numerik partieller Differentialgleichungen"

1. Übung zu Numerik partieller Differentialgleichungen 1. Übung zu "Numerik partieller Differentialgleichungen" Simon Gawlok, Eva Treiber Engineering Mathematics and Computing Lab 22. Oktober 2014 1 / 15 1 Organisatorisches 2 3 4 2 / 15 Organisatorisches Ort:

Mehr

JAVA - Zufallszahlen

JAVA - Zufallszahlen Übungen Informatik I JAVA - http://www.fbi-lkt.fh-karlsruhe.de/lab/info01/tutorial Übungen Informatik 1 1 5. JAVA werden beim Programmieren erstaunlich oft gebraucht: Simulationen Spiele Aufbau von Testszenarien...

Mehr

Prototyping Augmented Reality

Prototyping Augmented Reality Prototyping Augmented Reality Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Medien zwischen Technik und Gesellschaft WS 2012/13 Dozent: Prof. Dr. Thaller Referentin Maria

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