Termin 6: Medienprogrammierung in Python Bildverarbeitung (3)

Größe: px
Ab Seite anzeigen:

Download "Termin 6: Medienprogrammierung in Python Bildverarbeitung (3)"

Transkript

1 Termin 6: Medienprogrammierung in Python Bildverarbeitung (3) Grundlagen der Informatik Wintersemester 2006/07 Prof. Bernhard Jung Übersicht Definition von Funktionen in Python Globale und lokale Namensräume von Variablen Parameterübergabe Rekursive Funktionen Medienprogrammierung mit Python / JES verschiedene einfachere Algorithmen (Rotieren, Spiegeln von Bildern) Kombinieren von Bildern, z.b. Bluescreening Vektorgrafikelemente zu Bitmaps hinzufügen 1

2 Beispiel für bildgebende Verfahren im Bereich Geo / Engineering: Georadar Alle Bilder: Nachweis von Benzintanks im Boden Aufruf von Funktionen Format des Ausrufs: funktion(arg1, arg2, ) Funktionen akzeptieren i.d.r. nur eine bestimmte Anzahl von Argumenten Die übergebenen Argumente müssen von einem bestimmten Typ sein Beispiel: Standardfunktion len() Länge von Strings, Listen, Tupeln, Dictionaries Fehlerhafte Aufrufe len(1) 1 ist eine Zahl und besitzt keine Länge len("eins", "zwei") Die Funkionlen() akzeptiert nur ein Argument Korrekte Aufrufe len("wort") 4 len([1,2,3,4]) 4 len("sha" + 4 * "la") 11 (Auswertung des Ausdrucks ergibt String) len( (1, 2, (3,4) ) ) 3 (Tupel mit 3 Elementen) Manche Funktionen akzeptieren eine variable Anzahl von Parametern z.b. min(1,2,3,4,5) 1 2

3 Definition von Funktionen Funktionskopf Schlüsselwort def, Funktionsname, Parameterliste in Klammern, Doppelpunkt Funktionskörper Anweisungsblock, d.h. Folge von Anweisungen def funktionsname(arg1, arg2, ): anweisungsblock eingerückt! mit Schlüsselwert return kann ein Rückgabewert festgelegt werden Rückgabewert kann auch Tupel, Liste oder anderes Objekt sein def summierebis(n): sum = 0 for i in range(1,n+1): sum = sum + i return sum def sumandmultiplyto(n): sum = 0 prod = 1 for i in range(1,n+1): sum = sum + i prod = prod * i return (sum,prod) Ausführung von Funktionen - Globale und lokale Namensräume Definition einer lokalen Variable x Definition globaler Variablen x, y lokale Variablen sind nur innerhalb der Funktionsdefinition sichtbar, d.h. können außerhalb nicht verwendet werden innerhalb von Funktionen sind lokale und globale Variablen sichtbar bei Namensgleichheit einer lokalen mit einer globalen Variable wird die lokale Variable ausgewertet def f(): x = 2 print "x in Funktion f(): ", x print "y in Funktion f(): ", y # Hauptprogramm x = 1 y = 1 f() print "x in Hauptprogramm: ", x print "y in Hauptprogramm: ", y x in Funktion f(): 2 y in Funktion f(): 1 x in Hauptprogramm: 1 y in Hauptprogramm: 1 3

4 Ausführung von Funktionen - Globale und lokale Namensräume def f(): x = 2 print "Globaler Namensraum von f(): ", globals() print "Lokaler Namensraum von f(): ", locals() Standardfunktionen # Hauptprogramm x = y = 1 f() Globaler Namensraum von f(): {'f': <function f at 0x00B45830>, ' builtins ': <module ' builtin ' (built-in)>, 'x': 1, 'y': 1, ' name ': ' main ', ' doc ': None} Lokaler Namensraum von f(): {'x': 2} In JES enthält globaler Namensraum eine Vielzahl weiterer Funktionen! Ausführung von Funktionen - Globale und lokale Namensräume Innerhalb von Funktionen können globale Variablen gelesen, aber nicht ohne Weiteres verändert werden Zur Veränderung einer globalen Variable innerhalb einer Funktion dient die global-anweisung (teilt Python mit, dass Zuweisung an eine globale Variable erfolgen soll) def verdopple(): global x x = x * 2 # Hauptprogramm x = 10 verdopple() print x 20 4

5 Ausführung von Funktionen - Parameterübergabe (1) Auf formale Parameter, d.h. Namen der Parameter im Funktionskopf, kann im Funktionskörper wie auf lokale Variablen zugegriffen werden Bei Aufruf der Funktion halbiere() wird der Parameter innerhalb der Funktion an eine andere Variable gebunden Sind die als Parameter übergebene Objekte unveränderbar z.b. Zahlen, Strings, Tupel dann haben Veränderungen innerhalb der Funktion keine Auswirkungen auf Objekte außerhalb def halbiere(zahl): zahl = float(zahl) zahl = zahl / 2 return zahl n = 5 halbiere(n) 2.5 n # n bleibt unverändert 5 n = halbiere(n) print n 2.5 Ausführung von Funktionen - Parameterübergabe (2) Veränderbare Objekte, z.b. Listen, können, wenn sie als Argumente einer Funktion übergeben werden, in dieser Funktion modifiziert werden (die Veränderungen sind auch außerhalb der Funktion wirksam)! z.b. auch Bilder in JES! def quadriere(l): for i in range( len(l) ): l[i] = l[i] * l[i] # Hauptprogramm liste = [1,2,3,4,5] print liste quadriere( liste ) print liste Programmlauf: [1, 2, 3, 4, 5] [1, 4, 9, 16, 25] 5

6 (Wiederholung): Die wichtigsten Datentypen in Python Datentypen Zahlen Kollektionen bool True, False NoneType None Ganze Zahlen float complex j Sequenzen Mengen Abbildungen int Unveränderbaderbar Verän- set dict 123 set( [1,2]) ( A :65, B :66) long str unicode tuple list frozenset L Wort u Wort (1, a, [2]) [1, a, [2]] frozenset( [1,2]) Voreingestellte Parameter Manche Funktionen haben optionale Parameter, die bei Funktionsaufruf weggelassen werden können In der Funktionsdefinition werden für diese Default-Werte angegeben: def funktionsname(arg1=wert1, arg2=wert2, ): def wertetabelle(anzahl=3, schritt=0.5): x = 0.0 for i in range(anzahl): print x, ' ', x*x x = x + schritt wertetabelle() wertetabelle(3,1) wertetabelle(5)

7 Schlüsselwort-Argumente Bisher: Aufruf von Funktionen mit Positionsargumenten Reihenfolge der Argumente bei Aufruf entsprechend Funktionsdefinition In Python auch möglich: Aufruf mittels Schlüsselwort-Argumente der Form funktionsname(arg1=wert1, arg2=wert2, ) def wertetabelle(anzahl=3, schritt=0.5): x = 0.0 for i in range(anzahl): print x, ' ', x*x x = x + schritt wertetabelle(schritt=0.1) wertetabelle(schritt=0.1, anzahl=5) Rekursive Funktionen Rekursive Funktion: Funktion, die sich selbst aufruft z.b. Fakultät: n! = 1 * 2 * * n rekursive Formulierung der Fakultätsfunktion: 1! = 1 n! = n * (n-1)!, n > 1 def fak(n): if n == 1: return 1 else: return n * fak(n-1) # Hauptprogramm print fak(5) print fak(10) print fak(20) 7

8 Rekursive Funktionen Fibonacci-Folge: 1, 1, 2, 3, 5, 8, 13, Rekursive Formulierung Basisfall: fib(1) = 1 Basisfall: fib(2) = 1 Rekursionsfall (n>2): fib(n) = fib(n-1) + fib(n-2) def fib(n): if n == 1 or n==2: return 1 else: return fib(n-1) + fib(n-2) mit Rückgabe als Liste: def fib1(n): if n == 1: return [1] elif n== 2: return [1,1] else: bisher = fib1(n-1) i = bisher[n-2] + bisher[n-3] return bisher + [i] Dokumentation von Funktionen - Docstrings Unterhalb des Funktionskopfes sollte ein Kommentar in dreifachen Anführungszeichen angebracht werden Dieser Docstring der Funktion kann im interaktiven Modus mit der help()-funktion zum Vorschein gebracht werden def fak(n): """Berechnung der Fakultaet einer Zahl. Eingabe: eine Zahl n Ausgabe: Fakultaet n! der Zahl Autor: Bernhard Jung, """ if n == 1: return 1 else: return n * fak(n-1) help(fak) Help on function fak in module main : fak(n) Berechnung der Fakultaet einer Zahl. Eingabe: eine Zahl n Ausgabe: Fakultaet n! der Zahl Autor: Bernhard Jung,

9 Bildverarbeitung mit JES Einige Funktionen getwidth(pic), getheight(pic) liefern Breite, Höhe eines Bilds makepicture(filename) erzeugt Bild aus Dateinamen (.jpg) makeemptypicture(width, heigth) erzeugt leeres (schwarzes) Bild getpixel(pix,x,y) liefert Pixel an Position (x,y) getcolor(pixel) liefert Farbe des Pixels setcolor(pixel, color) setzt Farbe eines Pixels Transponieren von Bildern Idee: Pixel (x,y) wird an Position (y,x) im neuen Bild kopiert Rotation + Spiegelung def transposepicture(origpic): w = getwidth(origpic) h = getheight(origpic) newpic = makeemptypicture(h,w) for x in range(1, w+1): for y in range(1, h+1): pixel1 = getpixel(origpic, x, y) color = getcolor(pixel1) pixel2 = getpixel(newpic, y, x) setcolor(pixel2, color) return newpic 9

10 Vertikales "Spiegeln" Berechne Mitte des Bildes in x-richtung (mirrorpoint) Für jede Bildzeile: kopiere Pixel an (mirrorpoint + offset, y) nach (mirrorpoint offset, y) Vertikales "Spiegeln" def mirrorvertical(source): mirrorpoint = int(getwidth(source) / 2) for y in range(1, getheight(source)): for xoffset in range(1, mirrorpoint): pright = getpixel(source, xoffset + mirrorpoint, y) pleft = getpixel(source, mirrorpoint - xoffset, y) c = getcolor(pright) setcolor(pleft, c) return source 10

11 Horizontales "Spiegeln" def mirrorhorizontal(source): mirrorpoint = int(getheight(source) / 2) for yoffset in range(1, mirrorpoint): for x in range(1, getwidth(source)): pbottom = getpixel(source, x, yoffset + mirrorpoint) ptop = getpixel(source, x, mirrorpoint - yoffset) setcolor(pbottom, getcolor(ptop)) return source Kombinieren von Bildern z.b. alle bläulichen Pixel eines Bildes durch Hintergrund ersetzen def bluescreen(source,bg): for p in getpixels(source): if (getred(p)+getgreen(p) < getblue(p)): x = getx(p) y = gety(p) pixel = getpixel(bg,x,y) col = getcolor(pixel) setcolor(p,col) return source 11

12 Bitmaps und Vektorgrafik Bisher: Bitmap-Bilder (Rastergrafik) Bild ist Matrix von Pixeln.jpg,.bmp,.png,.gif, Digitalkamera, Scanner Vektorgrafik Anweisungen zum Zeichnen verschiedener einfacher Formen Linien, Rechtecke, Text, z.b. Freehand, Ilustrator, CorelDraw, Postscript, TrueType Fonts, Vorteil z.b. stufenlose Skalierung möglich Bitmaps können um Vektorgrafik-Elemente angereichert werden Grafikbibliotheken wandeln Vektorgrafik in Pixeldarstellung um JES: addtext(pic,x,y,string) addline(x1,y1,x2,y2) addrect(x,y,w,h) addrectfilled(x,y,w,h,color) Vektorgrafikelemente Pixel einzeln setzen: def verticallines(pic): for x in range(1,getwidth(pic),5): for y in range(1,getheight(pic)+1): setcolor(getpixel(pic,x,y),black) oder Linien (Vektorgrafik) zeichnen def verticallines(pic): for x in range(1,getwidth(pic),5): addline(pic, x, 1, x, getheight(pic)) def horizontallines(pic): for y in range(1,getheight(pic),5): addline(pic, 1, y, getwidth(pic), y) 12

13 Vektorgrafikelemente def title(pic,string): addtext(pic,40,15,string) pic = makepicture(file) title(pic, "Willkommen in Freiberg") show(pic) Vektorgrafikelemente def coolpic(): pic = makeemptypicture(250,250) for i in range(25,1,-1): color = makecolor(i*10,i*5,i) addrectfilled(pic,0,0,i*10,i*10,color) return pic 13

14 Vektorgrafikelemente def makewhitepicture(width=640, height=480): pic = makeemptypicture(width,height) for p in getpixels(pic): setcolor(p,white) return pic def coolpic2(): pic = makewhitepicture(640,480) for i in range(25,1,-1): addrect(pic, i, i, i*3, i*4) addrect(pic, 100+i*4, 100+i*3, i*8, i*10) return pic 14

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

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

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

Mehr

Programmierung in Python

Programmierung in Python Programmierung in Python imperativ, objekt-orientiert dynamische Typisierung rapid prototyping Script-Sprache Funktionales und rekursives Programmieren P raktische Informatik 1, W S 2004/05, F olien P

Mehr

Informatik I. 4. Funktionen: Aufrufe und Definitionen. 25. Oktober Albert-Ludwigs-Universität Freiburg. Informatik I.

Informatik I. 4. Funktionen: Aufrufe und Definitionen. 25. Oktober Albert-Ludwigs-Universität Freiburg. Informatik I. 4. Funktionen: Aufrufe und en Aufrufe Albert-Ludwigs-Universität Freiburg 25. Oktober 2013 1 / 23 Aufrufe Funktionsaufrufe 2 / 23 Funktionsaufrufe Innerhalb von Programmiersprachen ist eine Funktion ein

Mehr

Grundlagen der Programmierung in C Funktionen

Grundlagen der Programmierung in C Funktionen Der erste Mechanismus für Code-Reuse! Grundlagen der Programmierung in C Funktionen Wintersemester 2005/2006 G. Zachmann Clausthal University, Germany [email protected] Ältester Mechanismus für Code-Reuse:

Mehr

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

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

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

Java Kurs für Anfänger Einheit 5 Methoden

Java Kurs für Anfänger Einheit 5 Methoden Java Kurs für Anfänger Einheit 5 Methoden Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 22. Juni 2009 Inhaltsverzeichnis Methoden

Mehr

Inhalt. 4.7 Funktionen

Inhalt. 4.7 Funktionen Inhalt Inhalt: 4. Programmiersprache C 4.1 Programmaufbau in C 4.2 Basisdatentypen und einfache Anweisungen 4.3 Steuerfluss-Konstrukte 4.4 Arbeit mit indizierten Größen (Felder) 4.5 Arbeit mit Pointern

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 [email protected] 5. März 2013 Wiederholung Wozu? Schreiben Benutzen Rekursion?! 1 Wiederholung 2 Wozu? 3 Schreiben

Mehr

Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung)

Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) Wintersemester 2007/08 Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fakultät für Informatik Lehrstuhl

Mehr

Java Einführung Methoden. Kapitel 6

Java Einführung Methoden. Kapitel 6 Java Einführung Methoden Kapitel 6 Inhalt Deklaration und Aufruf von Methoden Lokale und globale Namen (Bezeichner) Sichtbarkeit und Lebensdauer von Variablen in Methoden Überladen von Methoden 2 Methoden

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

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

Steht in der ersten Zeile #!/usr/bin/python und hat man die Ausführungsrechte gesetzt kann man es direkt ausführen.

Steht in der ersten Zeile #!/usr/bin/python und hat man die Ausführungsrechte gesetzt kann man es direkt ausführen. Python Unter Windows empfiehlt sich der Download von Python unter folgender URL, http:// www.python.org/download/. Linux Distributionen wie z.b. Ubuntu liefern Python direkt in Ihrer Paketverwaltung mit:

Mehr

Objektorientiertes Programmieren für Ingenieure

Objektorientiertes Programmieren für Ingenieure Uwe Probst Objektorientiertes Programmieren für Ingenieure Anwendungen und Beispiele in C++ 18 2 Von C zu C++ 2.2.2 Referenzen und Funktionen Referenzen als Funktionsparameter Liefert eine Funktion einen

Mehr

Einführung in die Programmierung

Einführung in die Programmierung : Inhalt Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund - mit / ohne Parameter - mit / ohne Rückgabewerte

Mehr

10 Objektorientierte Programmierung, Teil 1

10 Objektorientierte Programmierung, Teil 1 10 Objektorientierte Programmierung, Teil 1 Wir lernen nun eine andere Technik (vor allem: eine andere Sichtweise) kennen, um unsere Programm zu organisieren, nämlich mittels Klassen und Objekten 184 Objekte,

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

Termin 5: Medienprogrammierung in Python Bildverarbeitung (2) Medienprogrammierung mit Python / JES

Termin 5: Medienprogrammierung in Python Bildverarbeitung (2) Medienprogrammierung mit Python / JES Termin 5: Medienprogrammierung in Python Bildverarbeitung (2) Grundlagen der Informatik Wintersemester 2006/07 Prof. Bernhard Jung Übersicht Medienprogrammierung mit Python / JES z.b. Erzeugung von Negativen,

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

Benutzerfunktionen Was ist eine Funktion, was ist eine Prozedur?

Benutzerfunktionen Was ist eine Funktion, was ist eine Prozedur? Was ist eine Funktion, was ist eine Prozedur? Aufbau einer "Prozedur" (d.h. ohne Rückgabewerte) sub FktName (Parameter) {Anweisungsblock sub ausgabe {print "Hallo Welt!" Aufbau einer "Funktion" (d.h. mit

Mehr

C.3 Funktionen und Prozeduren

C.3 Funktionen und Prozeduren C3 - Funktionen und Prozeduren Funktionsdeklarationen in Pascal auch in Pascal kann man selbstdefinierte Funktionen einführen: Funktionen und Prozeduren THEN sign:= 0 Funktion zur Bestimmung des Vorzeichens

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

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

Python Programmieren. Variablen, Ausdrücke und Anweisungen

Python Programmieren. Variablen, Ausdrücke und Anweisungen Python Programmieren Funktionen Module und Namensräume Datentypen in Python Was noch zu sagen bleibt... richard rascher-friesenhausen Programmierung SS 12 Daten: Wert und Typ Variablen Variablennamen und

Mehr

Einstieg ins Programmieren mit Python

Einstieg ins Programmieren mit Python Einstieg ins Programmieren mit Python Merk-Steine auf dem Weg zu Python für Kids Autor: Gregor Lingl Email: [email protected] Folie 1 Gregor Lingl, Jan. 2003 http://python4kids.net Leicht zu lernen. Python-Code

Mehr

Informatik für Schüler, Foliensatz 3 Vorhandene Funktionen und Wiederholschleifen

Informatik für Schüler, Foliensatz 3 Vorhandene Funktionen und Wiederholschleifen Prof. G. Kemnitz Institut für Informatik, Technische Universität Clausthal 23. September 2009 1/17 Informatik für Schüler, Foliensatz 3 Vorhandene Funktionen und Wiederholschleifen Prof. G. Kemnitz Institut

Mehr

Signalverarbeitung mit Python: Bilder

Signalverarbeitung mit Python: Bilder Kapitel 16: Signalverarbeitung mit Python: Bilder Einführung in die Informatik Wintersemester 2007/08 Prof. Bernhard Jung Übersicht Farbräume Repräsentation digitaler Bilder Bildverarbeitung mit der Python

Mehr

Michael Weigend. Python GE-PACKT. 5. Auflage

Michael Weigend. Python GE-PACKT. 5. Auflage Michael Weigend Python GE-PACKT 5. Auflage E Einleitung 13 E.i Was ist Python? 13 E.2 Einige besondere Merkmale von Python 13 E.3 Python 2 und 3 14 E.4 Hinweise zum Lesen dieses Buches 15 1 Basiskonzepte

Mehr

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

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

Mehr

Excel Funktionen durch eigene Funktionen erweitern.

Excel Funktionen durch eigene Funktionen erweitern. Excel Funktionen durch eigene Funktionen erweitern. Excel bietet eine große Anzahl an Funktionen für viele Anwendungsbereiche an. Doch es kommt hin und wieder vor, dass man die eine oder andere Funktion

Mehr

Grundlagen der Informatik I (Studiengang Medieninformatik)

Grundlagen der Informatik I (Studiengang Medieninformatik) Grundlagen der Informatik I (Studiengang Medieninformatik) Thema: 3. Datentypen, Datenstrukturen und imperative Programme Prof. Dr. S. Kühn Fachbereich Informatik/Mathematik Email: [email protected]

Mehr

Übungspaket 19 Programmieren eigener Funktionen

Übungspaket 19 Programmieren eigener Funktionen Übungspaket 19 Programmieren eigener Funktionen Übungsziele: Skript: 1. Implementierung und Kodierung eigener Funktionen 2. Rekapitulation des Stack-Frames 3. Parameterübergabe mittels Stack und Stack-Frame

Mehr

Informatik I. Informatik I. 6.1 Programme. 6.2 Programme schreiben. 6.3 Programme starten. 6.4 Programme entwickeln. 6.1 Programme.

Informatik I. Informatik I. 6.1 Programme. 6.2 Programme schreiben. 6.3 Programme starten. 6.4 Programme entwickeln. 6.1 Programme. Informatik I 05. November 2013 6. Python-, kommentieren, starten und entwickeln Informatik I 6. Python-, kommentieren, starten und entwickeln Bernhard Nebel Albert-Ludwigs-Universität Freiburg 05. November

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

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

THE GO PROGRAMMING LANGUAGE. Michael Karnutsch & Marko Sulejic

THE GO PROGRAMMING LANGUAGE. Michael Karnutsch & Marko Sulejic THE GO PROGRAMMING LANGUAGE Part 1: Michael Karnutsch & Marko Sulejic Gliederung Geschichte / Motivation Compiler Formatierung, Semikolons Variablen, eigene Typen Kontrollstrukturen Funktionen, Methoden

Mehr

Funktionen Häufig müssen bestimmte Operationen in einem Programm mehrmals ausgeführt werden. Schlechte Lösung: Gute Lösung:

Funktionen Häufig müssen bestimmte Operationen in einem Programm mehrmals ausgeführt werden. Schlechte Lösung: Gute Lösung: Funktionen Häufig müssen bestimmte Operationen in einem Programm mehrmals ausgeführt werden. Schlechte Lösung: Der Sourcecode wird an den entsprechenden Stellen im Programm wiederholt Programm wird lang

Mehr

Funktionale Programmierung

Funktionale Programmierung Funktionale Programmierung Jörg Kreiker Uni Kassel und SMA Solar Technology AG Wintersemester 2011/2012 2 Teil II Typen mit Werten und Ausdruck, sogar listenweise 3 Haskell Programme Programm Module ein

Mehr

Grundlagen. Die Komponenten eines C Programms. Das erste Programm

Grundlagen. Die Komponenten eines C Programms. Das erste Programm Grundlagen 1. Die Komponenten eines C Programms 2. Ein Programm erzeugen und übersetzen 3. Variablen Deklarieren und Werte zuweisen 4. Zahlen eingeben mit der Tastatur 5. Arithmetische Ausdrücke und Berechnungen

Mehr

Einführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein ([email protected].

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

Mehr

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

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

Mehr

Einführung in Python (1)

Einführung in Python (1) Kapitel 7: Einführung in Python (1) Einführung in die Informatik Wintersemester 2007/08 Prof. Bernhard Jung Übersicht Die Programmiersprache Python Einfache Anweisungen Zuweisungen Eingabe Auswahl-Anweisung

Mehr

Einführung in Python Teil I Grundlagen

Einführung in Python Teil I Grundlagen Einführung in Python Teil I Grundlagen Valentin Flunkert Institut für Theoretische Physik Technische Universität Berlin Do. 27.5.2010 Nichtlineare Dynamik und Kontrolle SS2010 1 of 22 Diese Einführung

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

Skriptsprachen am Beispiel Python

Skriptsprachen am Beispiel Python Seminar Programmiersprachen Skriptsprachen am Beispiel Python Norman Thomas 8. Juni 2004 Überblick Was sind Skriptsprachen? Was ist Python? Python und Syntax Datentypen Kontrollstrukturen Module Ausführung

Mehr

Unterprogramme. Funktionen. Bedeutung von Funktionen in C++ Definition einer Funktion. Definition einer Prozedur

Unterprogramme. Funktionen. Bedeutung von Funktionen in C++ Definition einer Funktion. Definition einer Prozedur Unterprogramme Unterprogramme sind abgekapselte Programmfragmente, welche es erlauben, bestimmte Aufgaben in wiederverwendbarer Art umzusetzen. Man unterscheidet zwischen Unterprogrammen mit Rückgabewert

Mehr

Suchen in Listen und Hashtabellen

Suchen in Listen und Hashtabellen Kapitel 12: Suchen in Listen und Hashtabellen Einführung in die Informatik Wintersemester 2007/08 Prof. Bernhard Jung Übersicht Einleitung Lineare Suche Binäre Suche (in sortierten Listen) Hashverfahren

Mehr

12. Rekursion Grundlagen der Programmierung 1 (Java)

12. Rekursion Grundlagen der Programmierung 1 (Java) 12. Rekursion Grundlagen der Programmierung 1 (Java) Fachhochschule Darmstadt Haardtring 100 D-64295 Darmstadt Prof. Dr. Bernhard Humm FH Darmstadt, 24. Januar 2006 Einordnung im Kontext der Vorlesung

Mehr

Kapitel 5: Applikative Programmierung

Kapitel 5: Applikative Programmierung Kapitel 5: Applikative Programmierung In der applikativen Programmierung wird ein Programm als eine mathematische Funktion von Eingabe-in Ausgabewerte betrachtet. Das Ausführen eines Programms besteht

Mehr

28. April 2006. Python ist eine Interpreter Sprache. einfach durch eigene C Module erweiterbar. Daten werden dynamisch getypt

28. April 2006. Python ist eine Interpreter Sprache. einfach durch eigene C Module erweiterbar. Daten werden dynamisch getypt Python in der Schule 28. April 2006 1 Grundlagen Wir 1 beziehen uns in unserer Zusammenfassung auf die Python Version 2.3.5 vom 8. Februar 2005. 2 Die Haupteigenschaften von Python sind: Python ist eine

Mehr

Einführung in Python Übung 1

Einführung in Python Übung 1 Einführung in Python Übung 1 Rebecca Breu, Bastian Tweddell Oktober 2007 Login: XXXloginXXX Passwort: XXXpasswortXXX Bitte das Passwort ändern (passwd)! Datentypen I Aufgabe 1 (Erste Schritte, Zahlen)

Mehr

Funktionales Programmieren in Python

Funktionales Programmieren in Python Wintersemester 2008/2009 1 Funktionen sind Objekte 2 lambda Funktionen 3 apply 4 map 5 zip 6 filter 7 reduce 8 List Comprehension Funktionales Programmieren Wer nicht funktional programmiert, programmiert

Mehr

Einfache Ausdrücke Datentypen Rekursive funktionale Sprache Franz Wotawa Institut für Softwaretechnologie [email protected]

Einfache Ausdrücke Datentypen Rekursive funktionale Sprache Franz Wotawa Institut für Softwaretechnologie wotawa@ist.tugraz.at Inhalt SWP Funktionale Programme (2. Teil) Einfache Ausdrücke Datentypen Rekursive funktionale Sprache Franz Wotawa Institut für Softwaretechnologie [email protected] Interpreter für funktionale Sprache

Mehr

Objektorientierte Programmierung mit Python Polymorphismus und Vererbung. Eltern

Objektorientierte Programmierung mit Python Polymorphismus und Vererbung. Eltern Objektorientierte Programmierung mit Python Polymorphismus und Vererbung Eltern Kind Kind Kind Kind Prinzipien der objektorientierten Programmierung Vererbung Strukturierung von Klassen. Oberbegriffe beschreiben

Mehr

Grundlagen der Programmiersprache C++

Grundlagen der Programmiersprache C++ / TU Braunschweig Grundlagen der Programmiersprache C++ Um den Studierenden den Einstieg in die FE-Programmierung zu erleichtern werden die wesentlichen Elemente eines C-Programmes beschrieben, soweit

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

Arbeiten mit JavaKara

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

Mehr

Technische Informatik 1 Übung 2 Assembler (Rechenübung) Georgia Giannopoulou ([email protected]) 22./23. Oktober 2015

Technische Informatik 1 Übung 2 Assembler (Rechenübung) Georgia Giannopoulou (ggeorgia@tik.ee.ethz.ch) 22./23. Oktober 2015 Technische Informatik 1 Übung 2 Assembler (Rechenübung) Georgia Giannopoulou ([email protected]) 22./23. Oktober 2015 Ziele der Übung Aufgabe 1 Aufbau und Aufruf von Funktionen in Assembler Codeanalyse

Mehr

Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005. Modulare Programmierung

Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005. Modulare Programmierung Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005 Modulare Programmierung Test Driven Development Refactoring Modular programmierung der

Mehr

Grundlagen der Programmierung

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

Mehr

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

Übersicht. Datenstrukturen und Algorithmen Vorlesung 5: Rekursionsgleichungen (K4) Übersicht. Binäre Suche. Joost-Pieter Katoen. 20.

Übersicht. Datenstrukturen und Algorithmen Vorlesung 5: Rekursionsgleichungen (K4) Übersicht. Binäre Suche. Joost-Pieter Katoen. 20. Übersicht Datenstrukturen und Algorithmen Vorlesung 5: (K4) Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group http://www-i2.informatik.rwth-aachen.de/i2/dsal12/ 20.

Mehr

Javaprogrammierung mit NetBeans. Variablen, Datentypen, Methoden

Javaprogrammierung mit NetBeans. Variablen, Datentypen, Methoden Javaprogrammierung mit NetBeans Variablen, Datentypen, Methoden Programmieren 2 Java Bezeichner Bezeichner: Buchstabe _ $ Buchstabe _ $ Ziffer Groß- und Kleinbuchstaben werden strikt unterschieden. Schlüsselwörter

Mehr

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

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

Mehr

Pass by Value Pass by Reference Defaults, Overloading, variable Parameteranzahl

Pass by Value Pass by Reference Defaults, Overloading, variable Parameteranzahl Funktionen Zusammenfassung von Befehlssequenzen als aufrufbare/wiederverwendbare Funktionen in einem Programmblock mit festgelegter Schnittstelle (Signatur) Derartige prozedurale Programmierung erlaubt

Mehr

Erwin Grüner 09.02.2006

Erwin Grüner 09.02.2006 FB Psychologie Uni Marburg 09.02.2006 Themenübersicht Folgende Befehle stehen in R zur Verfügung: {}: Anweisungsblock if: Bedingte Anweisung switch: Fallunterscheidung repeat-schleife while-schleife for-schleife

Mehr

Listenverarbeitung in Python

Listenverarbeitung in Python Listenverarbeitung in Python Datentypen für Sequenzen von Objekten: Tupel, Listen und Strings Tupel und Listen sind analog zu Haskells Tupel und Listen: (1, 2, 3) 3-Tupel aus den Zahlen 1,2,3, [1, 2, 3]

Mehr

Informationsverarbeitung im Bauwesen

Informationsverarbeitung im Bauwesen 4 Informationsverarbeitung im Bauwesen Markus Uhlmann basierend auf Folien von A. Brugger 1 Zusammenfassung der 3. Vorlesung Einführung in Excel/VBA Einführung in die Tabellenkalkulation Erste Schritte

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

Objektorientierte Programmierung mit Python Objekt und Klassen

Objektorientierte Programmierung mit Python Objekt und Klassen Objektorientierte Programmierung mit Python Objekt und Klassen hat Kanten hat eine Farbe hat eine Kantenfarbe Rechteck zeichnen Rechteck einfärben Rechteck drehen Modulare Programmierung Eine Aufgabe wird

Mehr

Einführung in die C-Programmierung

Einführung in die C-Programmierung Einführung in die C-Programmierung Warum C? Sehr stark verbreitet (Praxisnähe) Höhere Programmiersprache Objektorientierte Erweiterung: C++ Aber auch hardwarenahe Programmierung möglich (z.b. Mikrokontroller).

Mehr

1 Einführung... 13. 2 Erste Schritte... 19. 3 Programmierkurs... 33. 4 Datentypen... 81. 5 Weiterführende Programmierung... 139

1 Einführung... 13. 2 Erste Schritte... 19. 3 Programmierkurs... 33. 4 Datentypen... 81. 5 Weiterführende Programmierung... 139 Auf einen Blick 1 Einführung... 13 2 Erste Schritte... 19 3 Programmierkurs... 33 4 Datentypen... 81 5 Weiterführende Programmierung... 139 6 Objektorientierte Programmierung... 191 7 Verschiedene Module...

Mehr

Access 2010 Programmierung Import und Export nach Excel

Access 2010 Programmierung Import und Export nach Excel Access 2010 Programmierung Import und Export nach Excel Excel... ist das Tabellenkalkulationsprogramm von Microsoft Office. wird genutzt, um numerische Daten in Tabellenform zu erfassen. kann Daten automatisch

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

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

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

Mehr

Methoden. von Objekten definiert werden, Methoden,, Zugriffsmethoden und Read-Only

Methoden. von Objekten definiert werden, Methoden,, Zugriffsmethoden und Read-Only Methoden Wie Konstruktoren und Destruktoren zum Auf- und Abbau von Objekten definiert werden, Wie inline-methoden Methoden,, Zugriffsmethoden und Read-Only Only- Methoden einzusetzen sind, Der this-pointer

Mehr

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

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

Mehr

Programmierkurs Python I

Programmierkurs Python I Programmierkurs Python I Stefan Thater & Michaela Regneri Universität des Saarlandes FR 4.7 Allgemeine Linguistik (Computerlinguistik) Übersicht Objektorientierte Programmierung (Grundlagen) - Klassen

Mehr

Gliederung. Tutorium zur Vorlesung. Gliederung. Gliederung. 1. Gliederung der Informatik. 1. Gliederung der Informatik. 1. Gliederung der Informatik

Gliederung. 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 [email protected] Wilhelm-Schickard-Institut für Informatik Eberhard Karls Universität Tübingen 11.02.2013 1. 2. 1.

Mehr

Es gibt zwei verschiedene Arten, wie Programme auf dem Rechner ausgeführt werden:

Es gibt zwei verschiedene Arten, wie Programme auf dem Rechner ausgeführt werden: 3 Grundlagen 3.1 Starten eines C++ Programms Es gibt zwei verschiedene Arten, wie Programme auf dem Rechner ausgeführt werden: 1. Programme, die vom Interpreter der Programmiersprache Zeile für Zeile interpretiert

Mehr

Programmierung I Einführung in Python, Beyond the Basics

Programmierung I Einführung in Python, Beyond the Basics Höhere Datenstrukturen Programmierung I Einführung in Python, Beyond the Basics G. Zachmann Clausthal University, Germany [email protected] Eines der Features, das Python so mächtig macht (VHLL)

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

C++ - Operatoren. Eigene Klassen mit neuen Funktionen

C++ - Operatoren. Eigene Klassen mit neuen Funktionen C++ - Operatoren Eigene Klassen mit neuen Funktionen Übersicht Klassen bisher Eigene Operatoren definieren 2 Bisher Durch Kapselung, Vererbung und Polymorphy können nun eigene Klassen definiert werden,

Mehr

Funktionale Programmierung mit Haskell

Funktionale Programmierung mit Haskell Funktionale Programmierung mit Haskell Dr. Michael Savorić Hohenstaufen-Gymnasium (HSG) Kaiserslautern Version 20120622 Überblick Wichtige Eigenschaften Einführungsbeispiele Listenerzeugung und Beispiel

Mehr

Kapitel 5: Abstrakte Algorithmen und Sprachkonzepte. Elementare Schritte

Kapitel 5: Abstrakte Algorithmen und Sprachkonzepte. Elementare Schritte Elementare Schritte Ein elementarer Berechnungsschritt eines Algorithmus ändert im Allgemeinen den Wert von Variablen Zuweisungsoperation von fundamentaler Bedeutung Zuweisungsoperator In Pascal := In

Mehr

Die Algorithmenbeschreibungssprache Jana

Die Algorithmenbeschreibungssprache Jana Jana 1 Die Algorithmenbeschreibungssprache Jana Günther Blaschek, Institut für Systemsoftware, JKU Linz Juni 2011 Jana (Java-based Abstract Notation for Algorithms) ist eine Beschreibungssprache zur Formulierung

Mehr

Python so macht Programmieren Spass

Python so macht Programmieren Spass 28 Python so macht Programmieren Spass CHRISTIAN HELBLING FRIENDLY CODER Heiland Holland, schon wieder ein Semikolon vergessen! Hier ein Durcheinander, welches end zu welchem if oder loop gehört, da ein

Mehr

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

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

Übung 9. Quellcode Strukturieren Rekursive Datenstrukturen Uebung 9

Übung 9. Quellcode Strukturieren Rekursive Datenstrukturen Uebung 9 Informatik I 2 Übung 9 Quellcode Strukturieren Rekursive Datenstrukturen Uebung 9 Quellcode Strukturieren Wenn alle Funktionen in einer Datei zusammengefasst sind wird es schnell unübersichtlich Mehrere

Mehr

Michael Weigend. Python GE-PACKT

Michael Weigend. Python GE-PACKT Michael Weigend Python GE-PACKT E Einleitung 11 E.i Was ist Python? ai E.2 Einige besondere Merkmale von Python n E.3 Hinweise zum Lesen dieses Buches 13 1 Basiskonzepte von Python 15 1.1 Python im interaktiven

Mehr

Python-Workshop. Python für C/C++ Programmierer. Carl Friedrich Bolz. [email protected]. Carl Friedrich Bolz

Python-Workshop. Python für C/C++ Programmierer. Carl Friedrich Bolz. cfbolz@gmx.de. Carl Friedrich Bolz Python-Workshop Python für C/C++ Programmierer [email protected] 1 Übersicht Einführung: Einfache Datentypen Kontrollstrukturen Komplexe Datentypen strings, lists, dicts, tuples slicing list comprehensions

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

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

Taylorentwicklung der k ten Dimension

Taylorentwicklung der k ten Dimension Taylorentwicklung der k ten Dimension 1.) Taylorentwicklung... 2 1.1.) Vorgehenesweise... 2 1.2.) Beispiel: f ((x, y)) = e x2 +y 2 8x 2 4y 4... 3 2.) Realisierung des Algorithmus im CAS Sage Math... 5

Mehr

5. Unterprogrammtechnik/Module

5. Unterprogrammtechnik/Module 5. Unterprogrammtechnik/Module Unterprogramm/Modul: separate Programmeinheit, mit Anweisungen, die eine bestimmte Aufgabe erfüllen bekommt i.a. Argumente (Werte, Informationen) vom aufrufenden Programm

Mehr

Hochschule Ravensburg-Weingarten Schriftliche Prüfung Programmieren Prof. Dr. M. Zeller

Hochschule Ravensburg-Weingarten Schriftliche Prüfung Programmieren Prof. Dr. M. Zeller Hochschule Ravensburg-Weingarten Schriftliche Prüfung Programmieren Prof. Dr. M. Zeller Datum, Zeit, 08:00 09:30 Uhr (90 min) Aufgabenblätter 14 Seiten (einschl. Deckblatt) erreichbare Punktzahl 54 zugelassene

Mehr