Brückenkurs Informatik Algorithmik und Programmieren. Justus Piater

Größe: px
Ab Seite anzeigen:

Download "Brückenkurs Informatik Algorithmik und Programmieren. Justus Piater"

Transkript

1 Brückenkurs Informatik Algorithmik und Programmieren Justus Piater

2 Organisation Zielgruppe Einsteiger in die Informatik Studierende ohne Programmierkenntnisse Brückenkurs Informatik: Algorithmik und Programmieren 1

3 Organisation Teilnahme Die Teilnahme am Kurs ist freiwillig. Gruppenarbeit ist ausdrücklich erwünscht. Helfen Sie anderen Studierenden; das hilft auch Ihnen. Erst wenn Sie die Lösungen erklären können, haben Sie das Problem wirklich verstanden. Stellen Sie Fragen! Melden Sie sich, wenn es zu schnell oder zu langsam geht. Brückenkurs Informatik: Algorithmik und Programmieren 2

4 Organisation Ablauf Theorieblöcke Praktische Übungen Sie lernen am meisten, wenn Sie selbst programmieren. Auch in Gruppen sollte jeder selbst programmieren! Brückenkurs Informatik: Algorithmik und Programmieren 3

5 Organisation Ziele Python kennenlernen Grundlagen der Programmierung Probleme abstrahieren und lösen Brückenkurs Informatik: Algorithmik und Programmieren 4

6 Organisation Termine und Ressourcen Termine: LFU:online Kursunterlagen: Kurs-Homepage Dank an Benedikt Hupfauf, auf dessen Vorarbeit dieses Material basiert. Feedback und Fragen bitte an Brückenkurs Informatik: Algorithmik und Programmieren 5

7 Theorie 0: Was ist Python?

8 Theorie 0 Was ist Python? Python ist eine Skriptsprache. Python-Programme werden von einem Interpreter ausgeführt. Zwei Versionen sind verbreitet: Python 2: zunehmend obsolet Python 3: neue Features, sauberer durchdacht Wir verwenden Python 3 in diesem Kurs. Brückenkurs Informatik: Algorithmik und Programmieren 6

9 Theorie 0 Eigenschaften von Python Open Source plattformunabhängige Skriptsprache einfach, verständlich und schnell zu erlernen unterstützt verschiedene Programmier-Paradigmen umfassende Standardbibliothek viele weitere nützliche Bibliotheken Nachfrage nach Python-Programmierern steigt :) Brückenkurs Informatik: Algorithmik und Programmieren 7

10 Theorie 0 Verbreitung von Python Source: kdnuggets.com Brückenkurs Informatik: Algorithmik und Programmieren 8

11 Theorie 0 Hilfreiche Ressourcen Die Python Dokumentation docs.python.org Online-Kurse: LearnPython Python for you and me The Python Tutorial Bei konkreten Fragen: stackoverflow.com Brückenkurs Informatik: Algorithmik und Programmieren 9

12 Theorie I: Datentypen & Variablen

13 Theorie I Datentypen Python stellt Datentypen für die gängigsten Anwendungen (Built-in Types) zur Verfügung: String (Zeichenkette, Text): "This is text!" Integer (Ganzzahlen): 1, 0xFF, 0b100 Float (Gleitkommazahlen): 1.35, 1.56e-5 = Complex (Komplexe Zahlen): 2+3j Bool (Wahr/Falsch): True, False Brückenkurs Informatik: Algorithmik und Programmieren 10

14 Theorie I Hello World Python bietet zwei Möglichkeiten, ein Programm auszuführen: Interaktiv (Command Prompt / Shell) Python-Skript Schreiben Sie ihr erstes Hello World Programm! Brückenkurs Informatik: Algorithmik und Programmieren 11

15 Theorie I Variablen Literale (wie eben benutzt) repräsentieren sich selbst. Variablen können jederzeit beliebige Werte zugewiesen werden. In Python muss der Typ nicht explizit benannt werden, und kann sich zur Laufzeit ändern. Vom (dynamischen) Typ hängt ab, welche Operationen für diese Variable zulässig sind. Brückenkurs Informatik: Algorithmik und Programmieren 12

16 Theorie I Variablennamen Gültige Variablennamen sind eine beliebige Kombination aus folgenden Zeichen: a-z, A-Z, 0-9, _ Beachten Sie folgende Sonderfälle: Variablennamen dürfen nicht mit einer Ziffer beginnen. Reservierte Schlüsselwörter: False, None, True, and, as, assert, async, await, break, class, continue, def, del, elif, else, except, finally, for, from, global, if, import, in, is, lambda, nonlocal, not, or, pass, raise, return, try, while, with, yield Variablen sollten selbsterklärende Namen tragen! Brückenkurs Informatik: Algorithmik und Programmieren 13

17 Theorie I Ausdrücke und Anweisungen Ein Ausdruck (expression) hat einen Wert; eine Anweisung (statement) hat einen Effekt. Ausdrücke lassen sich z.b. aus Variablen und mathematischen Operatoren erstellen, beispielsweise +, *, <, ==, uvm. Eine Wertzuweisung eines Ausdrucks an eine Variable mittels des Zuweisungsoperators = stellt eine Anweisung dar. Beachten Sie, dass = einer Variable einen Wert zuweist, während == zwei Werte vergleicht, ohne sie zu verändern. 1 >>> x = >>> x = 2 * x 3 >>> print ( x) >>> x == 5 6 False 7 >>> print ( x) 8 6 Brückenkurs Informatik: Algorithmik und Programmieren 14

18 Theorie I Präzedenz von Operatoren Die Operatoren-Präzedenz bestimmt, in welcher Reihenfolge die Operatoren eines Ausdrucks angewendet werden. Siehe die Python-Dokumentation für eine vollständige Liste der Operatoren und ihrer Präzedenzen. Brückenkurs Informatik: Algorithmik und Programmieren 15

19 Einschub Programmieren in einem Editor Bisher haben wir interaktiv direkt im Interpreter gearbeitet, gestartet mit python bzw. python3. In der Praxis werden Sie Programme in einem Editor erstellen. Geben Sie Ihrer Python-Skript-Datei einen Namen, der auf.py endet. Tipp Ein einfacher Terminal-Editor ist nano. Starten Sie ihn mit dem Namen Ihres Skripts als Argument: nano myscript.py Ein einfacher, graphischer Editor mit Python-Syntax-Hervorhebung ist gedit. Emacs kann alles, will aber gelernt sein. Brückenkurs Informatik: Algorithmik und Programmieren 16

20 Einschub Starten eines Python-Skripts Zwei Varianten, ein Python-Script zu starten: Das Script abspeichern und mit python3 myscript.py starten Das Script mit einem Shebang (Magic Line) beginnen, ausführbar machen und starten Es kann auch eine IDE verwendet werden, aber das wird für Einsteiger nicht empfohlen, da sie Nutzer von für das Verständnis Wichtigem abschirmen. Brückenkurs Informatik: Algorithmik und Programmieren 17

21 Einschub Starten eines Python Skripts mit Shebang 1 Das Skript mit einem Shebang beginnen: 1 #!/ usr / bin / env python3 2 print (" Hello World!") 2 ausführbar machen: 1 chmod + x myscript. py 3 und starten: 1./ myscript.py Brückenkurs Informatik: Algorithmik und Programmieren 18

22 Theorie I Übung: Variablen Brückenkurs Informatik: Algorithmik und Programmieren 19

23 Theorie II: Kontrollfluss

24 Theorie II if-anweisung Anweisungen werden sequentiell ausgeführt. Ist das nicht genug, kann der Kontrollfluss gesteuert werden Das if-statement führt einen Code Block nur aus, wenn die Bedingung condition erfüllt ist; kann optimal mit einem else-block ergänzt werden,der ausgeführt wird, wenn die Bedingung nicht erfüllt ist. 1 if condition : 2 # executed if condition true 3 else : 4 # executed if condition false Brückenkurs Informatik: Algorithmik und Programmieren 20

25 Theorie II if-anweisung: Beispiel I 1 >>> if a < 0: 2... print ( ' a is negative ' ) 3... print ( ' this line belongs to the same code block ' ) 4 >>> print ( ' this is a new block and is always executed ' ) Im Gegensatz zu den meisten Programmiersprachen ist die Einrückung in Python nicht optional, sondern definiert Codeblöcke. Sie können Code mit <tab> oder mit 2 4 Leerzeichen einrücken, sollten aber bei einer dieser Optionen bleiben. Brückenkurs Informatik: Algorithmik und Programmieren 21

26 Theorie II if-anweisung: Beispiel II 1 >>> if a < 0: 2... print ( ' a is negative ' ) 3 >>> elif a > 0: 4... print ( ' a is positive ' ) 5 >>> else : 6... print ( ' a must be zero then ' ) Mit dem Schlüsselwort elif lassen sich vielfache Alternativen kompakter und ohne Verschachtelung angeben. Quiz Wie sähe das obige Programmstück ohne Verwendung von elif aus? Brückenkurs Informatik: Algorithmik und Programmieren 22

27 Theorie II while-statement Mit dem while-statement wird ein Programmblock wiederholt, solange die Bedingung condition erfüllt ist. Optional kann ein else-block angegeben werden, der einmal ausgeführt wird, sobald die Bedingung nicht mehr erfüllt ist. 1 while condition : 2 # executed as long as condition is true 3 else : 4 # executed once after the condition is false Quiz Wozu dient das else-statement hier dann überhaupt? Brückenkurs Informatik: Algorithmik und Programmieren 23

28 Theorie II while-statement: Beispiel 1 >>> i = 0 2 >>> while i < 3: 3... print ( ' i is: ', i) 4... i = i >>> else : 6... print ( ' end ' ) i is: 0 9 i is: 1 10 i is: 2 11 end Achten Sie darauf, dass die Bedingung nicht für immer True ist, da die Schleife sonst endlos ist. Der Codeblock der else-anweisung wird immer genau einmal ausgeführt. Was passiert, wenn die while-anweisung print('i is: ' + str(i)) aufruft? Brückenkurs Informatik: Algorithmik und Programmieren 24

29 Theorie II Break and Continue Eine Schleife muss nicht immer bis zum Ende ausgeführt werden. Mit dem Schlüsselwort continue wird der aktuelle Schleifendurchlauf abgebrochen und ggf. der folgende angetreten. Mit dem Schlüsselwort break wird die Schleife sofort beendet; auch das else-statement (falls vorhanden) wird übersprungen. 1 >>> i = 0 2 >>> while i < 1000: 3... i = i if i == 4: break 5... if i == 1: continue 6... print ( ' i is: ', str (i)) 7... else : 8... print ( ' end ' ) i is: 2 11 i is: 3 Brückenkurs Informatik: Algorithmik und Programmieren 25

30 Theorie II Übung: Kontrollfluss Brückenkurs Informatik: Algorithmik und Programmieren 26

31 Theorie III: Funktionen & Module

32 Theorie III Funktionen Mehrfach verwendete Codeteile können in Funktionen ausgelagert werden. Eine Funktion sollte immer genau einen Zweck erfüllen! Funktionen können, müssen aber keinen Rückgabewert haben (übergeben mittels return-anweisung). Die Parameterliste parameters kann beliebig lang sein, also auch leer. 1 def functionname ( parameters ): 2 # function body Brückenkurs Informatik: Algorithmik und Programmieren 27

33 Theorie III Funktionen: Beispiele Die folgenden Minimalbeispiele sollen nur zeigen, wie Funktionen definiert werden können. Eine Funktion umfasst typischerweise mehr als nur eine Zeile Code. 1 >>> def mul (x, y): 2... return x * y >>> mul (2, 3) >>> def printabc (): 2... print ( ' abcdefghijklmnopqrstuvxyz ' ) >>> printabc () 5 abcdefghijklmnopqrstuvxyz Brückenkurs Informatik: Algorithmik und Programmieren 28

34 Theorie III Funktionen in Modulen Python bietet eine große Auswahl an Funktionen, die bereits vorimplementiert sind. Funktionen, die zusammen gehören, werden in Module ausgelagert, etwa das Modul math, in dem Sie zahlreiche Funktionen aus der Mathematik finden. Werden Funktionen aus einem Modul benötigt, muss dieses explizit importiert werden. 1 >>> import math 2 >>> math. sin (45) >>> from math import sin 5 >>> sin ( 45) Brückenkurs Informatik: Algorithmik und Programmieren 29

35 Theorie III Optionale Argumente Sie können Argumente optional machen, indem Sie den zugehörigen Parameter mit einem Default-Wert versehen: 1 >>> def show ( text = " Coole Show "): 2... print ( text ) >>> show () 5 Coole Show 6 >>> show (" Langweilig!") 7 Langweilig! Brückenkurs Informatik: Algorithmik und Programmieren 30

36 Theorie III Übung: Funktionen Brückenkurs Informatik: Algorithmik und Programmieren 31

37 Theorie IV: Datenstrukturen

38 Theorie IV Datenstrukturen Bisher: Einzelne Variablen und Konstanten Datenstrukturen erlauben es, große Datenmengen zusammenzufassen und zu verarbeiten. Brückenkurs Informatik: Algorithmik und Programmieren 32

39 Theorie IV Listen Die einfachste Datenstruktur in Python ist die Liste. Eine Liste ist eine geordnete, endliche Sammlung von Elementen beliebiger Datentypen. Achtung: geordnet heißt nicht zwangsläufig sortiert! 1 >>> list = [2,3,1,2] 2 >>> list 3 [2, 3, 1, 2] Brückenkurs Informatik: Algorithmik und Programmieren 33

40 Theorie IV Kontrollfluss Mit einem for-statement kann ein Programmblock für jedes Element einer Sequenz sequence ausgeführt werden. Diese sequence kann eine Liste, ein Tupel, eine Map... sein. 1 for variable in sequence : 2 # executed once for each element in sequence 3 else : 4 # executed once at the end Brückenkurs Informatik: Algorithmik und Programmieren 34

41 Theorie IV Kontrollfluss: Beispiel Mit dieser Schleife wird jedes Element der Liste [1,2,3] einmal ausgegeben. Sie können statt der Variable i auch jeden anderen gültigen Bezeichner verwenden. 1 >>> for i in [1,2,3]: 2... print (i) 3... else : 4... print ( ' end ' ) end Brückenkurs Informatik: Algorithmik und Programmieren 35

42 Theorie IV range() Zum Iterieren über eine Folge ganzer Zahlen verwendet man typischerweise die Funktion range(), die einen sehr effizienten Iterator zur Verfügung stellt: 1 >>> for i in range (3) : 2... print (i) >>> for i in range (1, 3): 8... print (i) Hinweis Es ist i.d.r. besser, über Elemente zu iterieren, als über Indizes. Brückenkurs Informatik: Algorithmik und Programmieren 36

43 Theorie IV Zugriff auf Elemente in Listen Eine Liste kann Elemente verschiedener Datentypen beinhalten: 1 >>> for i in [ ' a ', 2.3, 5]: 2... print (i) a Einzelne Elemente oder Sublisten können auch referenziert werden: 1 >>> list = [1,2,3] 2 >>> list [2] >>> list [1] >>> list [0:2] 7 [1, 2] Brückenkurs Informatik: Algorithmik und Programmieren 37

44 Theorie IV Listenfunktionen I append() hängt ein neues Element an die Liste an. + verkettet Listen. 1 >>> list_a = [ ' a ', ' b ', ' c ' ] 2 >>> list_b = [ ' x ', ' y ', ' z ' ] 3 >>> list_a. append ( ' d ' ) 4 >>> list_ a 5 [ ' a ', ' b ', ' c ', ' d ' ] 6 >>> print ( list_a + list_b ) 7 [ ' a ', ' b ', ' c ', ' x ', ' y ', ' z ' ] Brückenkurs Informatik: Algorithmik und Programmieren 38

45 Theorie IV Listenfunktionen II *n wiederholt eine Liste n mal. in prüft, ob ein Element in einer Liste enthalten ist. len(list) gibt die Länge der Liste zurück. 1 >>> list_b * 3 2 [ ' x ', ' y ', ' z ', ' x ', ' y ', ' z ', ' x ', ' y ', ' z ' ] 3 >>> 2 in [1, 2, 3] 4 True 5 >>> len ( list_a ) 6 3 Brückenkurs Informatik: Algorithmik und Programmieren 39

46 Theorie IV Tupel Ein Tupel ähnelt einer Liste. Tupel sind jedoch konstant; einmal erstellt, können sie nicht mehr verändert werden. Bereits aus der Mathematik bekannt sind z.b. kartesische Koordinaten: (x,z) Die meisten Funktionen für Listen können auch auf Tupel angewendet werden. 1 >>> tuple = (3,7) 2 >>> x, y = tuple 3 >>> x >>> tuple [1] >>> tuple * 3 8 (3, 7, 3, 7, 3, 7) 9 >>> tuple + (17, 6, 90) 10 (3, 7, 17, 6, 90) 11 >>> 3 in tuple 12 True Brückenkurs Informatik: Algorithmik und Programmieren 40

47 Theorie IV Map Eine Map (auch Dictionary) ist eine Sammlung von Schlüssel/Wert-Paaren. Einem eindeutigen Schlüssel wird dabei ein Wert zugewiesen (der nicht eindeutig sein muss). Maps haben keine Ordnung. 1 >>> price = { ' car ' :30000, ' computer ' :2000, ' shoes ' :70, ' cheap_mobile ' :70} 2 >>> price [ ' shoes ' ] >>> price. values () 5 [30000, 2000, 70, 70] 6 >>> price. keys () 7 [ ' car ', ' computer ', ' shoes ', ' cheap_mobile ' ] 8 >>> len ( price ) >>> ' car ' not in price 11 False Brückenkurs Informatik: Algorithmik und Programmieren 41

48 Theorie IV Referenzkopie und tiefe Kopie Möchten Sie eine Datenstruktur kopieren, ist eine einfache Zuweisung nicht genug! Im unten angeführten Beispiel kopiert list_b nur eine Referenz, d.h. zwei Listen greifen auf denselben Speicherbereich zu. Änderungen in einer der beiden Listen sind in der anderen unmittelbar sichtbar. 1 >>> list_a = [1, 2, 3] 2 >>> list_b = list_a 3 >>> list_c = list ( list_a ) 4 >>> list_a [1] = 5 5 >>> list_b 6 [1, 5, 3] 7 >>> list_c 8 [1, 2, 3] Brückenkurs Informatik: Algorithmik und Programmieren 42

49 Theorie IV Kommandozeilen-Parameter Sie können einem Skript Kommandozeilen-Parameter übergeben. Diese finden sich dann im Skript in der Liste sys.argv wieder: 1 #!/ usr / bin / env python3 2 import sys 3 4 for arg in sys. argv : 5 print ( arg ) Tipp Zum Verwaltung nicht-trivialer Kommandozeilen-Parameter und -Optionen verwenden Sie argparse aus der Python-Standardbibliothek. Brückenkurs Informatik: Algorithmik und Programmieren 43

50 Theorie IV Übung: Datenstrukturen Brückenkurs Informatik: Algorithmik und Programmieren 44

51 Theorie IV Zeichenketten Strings (Zeichenketten) werden in Python zwischen einfachen oder doppelten Hochkommata eingeschlossen. Zwischen beiden Varianten gibt es keinen Unterschied. Bei einfachen Hochkommata darf das doppelte Hochkomma im String enthalten sein, und umgekehrt. Viele Funktionen, die bei Listen besprochen wurden, können auch auf Strings angewendet werden: for, +, *, n,... 1 >>> text = ' a ' + "b" + "c" 2 >>> for c in text : 3... print (c) a 6 b 7 c 8 >>> " abc " * 3 9 ' abcabcabc ' 10 >>> " test " in " this is a texttext!" 11 True Brückenkurs Informatik: Algorithmik und Programmieren 45

52 Theorie IV Escape-Sequenzen Bestimmten Zeichen kann mittels vorangestelltem \ eine besondere Bedeutung verliehen werden (\n bedeutet new line) eine vorhandene solche genommen werden (\' beendet nicht eine Zeichenkette, die mit ' beginnt): 1 >>> ' a hard day \ ' s work ' 2 "a hard day ' s work " 3 >>> print (" Zeile endet hier \ nneue Zeile ") 4 Zeile endet hier 5 Neue Zeile Mehr dazu in der Python-Dokumentation. Brückenkurs Informatik: Algorithmik und Programmieren 46

53 Theorie IV Funktionen für Zeichenketten Die Funktionen int() und float() wandeln ihr String-Argument in einen Wert des entsprechenden Typs um: 1 >>> int ("27") >>> float (" 2.7 ") Umfangreiche Funktionen für Strings sind im Modul string zusammengefasst. Mehr dazu in der Python-Dokumentation. Brückenkurs Informatik: Algorithmik und Programmieren 47

54 Theorie IV Übung: Strings Brückenkurs Informatik: Algorithmik und Programmieren 48

Algorithmik und Programmieren

Algorithmik und Programmieren Institut für Informatik Forschungsgruppe Datenbanken und Informationssysteme (DBIS) Universität Innsbruck Algorithmik und Programmieren Martin Pichl Datenbanken und Informationssysteme (DBIS) dbis.uibk.ac.at

Mehr

Algorithmik und Programmieren

Algorithmik und Programmieren Institut für Informatik Forschungsgruppe Datenbanken und Informationssysteme (DBIS) Universität Innsbruck Algorithmik und Programmieren Martin Pichl Datenbanken und Informationssysteme (DBIS) dbis.uibk.ac.at

Mehr

Algorithmik und Programmieren Brückenkurs Informatik Benedikt Hupfauf

Algorithmik und Programmieren Brückenkurs Informatik Benedikt Hupfauf Algorithmik und Programmieren Brückenkurs Informatik 2013 Benedikt Hupfauf (benedikt.hupfauf@uibk.ac.at) Inhaltsübersicht Organisation Grundlagen Datenstrukturen Strings Algorithmik Benedikt Hupfauf 2

Mehr

WS2018/ Oktober 2018

WS2018/ Oktober 2018 Einführung in die Programmierung Ronja Düffel WS2018/19 02. Oktober 2018 RBI-Account Account für das Rechnernetz der Informatik RBI-Account HRZ-Account zum Arbeiten an und auf den Rechnern des Instituts

Mehr

Informatik I: Einführung in die Programmierung 3. Werte, Typen, Variablen und Ausdrücke

Informatik I: Einführung in die Programmierung 3. Werte, Typen, Variablen und Ausdrücke Informatik I: Einführung in die Programmierung 3. Werte,, n und Albert-Ludwigs-Universität Freiburg Peter Thiemann 30. Oktober 2018 1 30. Oktober 2018 P. Thiemann Info I 3 / 39 Bits Der Computer repräsentiert

Mehr

WS2017/ Oktober 2017

WS2017/ Oktober 2017 Ronja Düffel WS2017/18 05. Oktober 2017 mit Python Programmieren (vereinfacht) 1 Problem beschreiben und analysieren 2 Enwicklung und Beschreibung einer Lösung 3 Übertragung/Umsetzung in eine Programmiersprache

Mehr

Programmierkurs Python I

Programmierkurs Python I Programmierkurs Python I Michaela Regneri 2009-11-05 (Folien basieren auf dem gemeinsamen Kurs mit Stefan Thater) Übersicht Variablen Datentypen Werte Operatoren und Ausdrücke Kontrollstrukturen: if, while

Mehr

Programming 101. Carl Herrmann IPMB & DKFZ

Programming 101. Carl Herrmann IPMB & DKFZ Programming 101 Carl Herrmann IPMB & DKFZ Programmieren Kommandozeile Einfache Befehle Shell Skript aneinanderketten von Befehlen Schleifen Programmiersprache Komplexere Aufgaben Gemeinsamkeiten Alle Programmiersprachen

Mehr

Grundlagen. Felix Döring, Felix Wittwer 24. April Python-Kurs

Grundlagen. Felix Döring, Felix Wittwer 24. April Python-Kurs Grundlagen Felix Döring, Felix Wittwer 24. April 2017 Python-Kurs Gliederung 1. Über diesen Kurs 2. Der Python Interpreter 3. Python Scripte 4. Grundlagen der Sprache 5. Das erste Programm 6. Operatoren

Mehr

Quick-Start Informatik Programmieren in Python Teil 1

Quick-Start Informatik Programmieren in Python Teil 1 Quick-Start Informatik 2011 Programmieren in Python Teil 1 Alles zum Praxisteil } Skript, Übungen, auf Folien... http://vorkurs.cs.uni-frankfurt.de Bücher: Gratis: http://learnpythonthehardway.org/ Fragen,

Mehr

Python Einführung. Monica Selva Soto. 24 März Mathematisches Institut

Python Einführung. Monica Selva Soto. 24 März Mathematisches Institut Mathematisches Institut mselva@math.uni-koeln.de 24 März 2009 Übungen zur Numerik 1 Vorlesung Übungen praktische Aufgaben Webseite: (Anmeldung, Übungsblätter) http://www.mi.uni-koeln.de/~mselva/numerik1.php

Mehr

WS2017/ Oktober 2017

WS2017/ Oktober 2017 Einführung in die Programmierung Ronja Düffel WS2017/18 09. Oktober 2017 Rückblick Datentypen bool Zahlen (int und float) string Variablen Kontrollstrukturen Verzweigungen (if...: und if...else:) Schleifen

Mehr

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML. JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung

Mehr

Python Intro. Vorsemesterkurs Informatik Praktischer Teil WS2012/13. 2.Oktober Vorkurs Informatik - WS 2012/13

Python Intro. Vorsemesterkurs Informatik Praktischer Teil WS2012/13. 2.Oktober Vorkurs Informatik - WS 2012/13 Python Intro Vorsemesterkurs Informatik Praktischer Teil WS2012/13 2.Oktober 2012 Let's get started } Skript, Übungen, Folien... Alles zum Praxisteil auf http://vorkurs.cs.unifrankfurt.de Bücher: Fragen!

Mehr

Python als praktischer Helfer

Python als praktischer Helfer Python als praktischer Helfer Ulrich Schumann 01.02.2016 IEEE Student Branch Magdeburg Geschichte Geschichte Entwicklung gestartet durch Guido van Rossum 3/45 Guido van Rossum 4/45 Geschichte Entwicklung

Mehr

Python Intro I. Vorsemesterkurs Informatik Praktischer Teil WS 2013/14. 1.Oktober Vorkurs Informatik - WS 2013/14

Python Intro I. Vorsemesterkurs Informatik Praktischer Teil WS 2013/14. 1.Oktober Vorkurs Informatik - WS 2013/14 Python Intro I Vorsemesterkurs Informatik Praktischer Teil WS 2013/14 1.Oktober 2013 Let's get started } Skript, Übungen, Folien... Alles zum Praxisteil auf http://vorkurs.cs.unifrankfurt.de Bücher: Fragen!

Mehr

WS2018/ Oktober 2018

WS2018/ Oktober 2018 Einführung in die Programmierung Ronja Düffel WS2018/19 05. Oktober 2018 Rückblick Datentypen bool Zahlen (int und float) string Variablen Kontrollstrukturen Verzweigungen (if...: und if...else:) Schleifen

Mehr

Python 2. Vorlesung Computerlinguistische Techniken Alexander Koller. 28. Oktober 2014

Python 2. Vorlesung Computerlinguistische Techniken Alexander Koller. 28. Oktober 2014 Python 2! Vorlesung Computerlinguistische Techniken Alexander Koller! 28. Oktober 2014 Listen Sequenz von beliebigen Werten. Literale: [], [1,2,3], [ hallo, True, -5.0] Hinten an Liste anhängen: L.append(27)

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 22 Einstieg in die Informatik mit Java Grundlagen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 22 1 Kommentare 2 Bezeichner für Klassen, Methoden, Variablen 3 White

Mehr

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 Variablen Datentypen Werte Ausdrücke Operatoren

Mehr

Einführung in die Computerlinguistik

Einführung in die Computerlinguistik Einführung in die Computerlinguistik Übung 2 Laura Kallmeyer Sommersemester 204, Heinrich-Heine-Universität Düsseldorf Offizielle Python Seite, auf der man jede Menge Dokumentation findet: http://www.python.org/

Mehr

Informatik I. Informatik I. 4.1 Funktionsaufrufe. 4.2 Mathematische Funktionen. 4.3 Funktionsdefinitionen. 4.4 Variablengültigkeitsbereich

Informatik I. Informatik I. 4.1 Funktionsaufrufe. 4.2 Mathematische Funktionen. 4.3 Funktionsdefinitionen. 4.4 Variablengültigkeitsbereich Informatik I 25. Oktober 2013 4. Funktionen: Aufrufe und Definitionen Informatik I 4. Funktionen: Aufrufe und Definitionen Bernhard Nebel Albert-Ludwigs-Universität Freiburg 25. Oktober 2013 4.1 Funktionsaufrufe

Mehr

Crashkurs Python und Sage U23 Krypto-Mission

Crashkurs Python und Sage U23 Krypto-Mission Crashkurs Python und Sage -Mission florob Simon e.v. http://koeln.ccc.de 4. Oktober 2015 Anfang Übersicht Sage Computer-Algebra-System, wie MatLab oder Mathematica sagemath.org Python interpretierte Programmiersprache

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

Vorlesung Skriptsprachen Duale Hochschule Stuttgart Sommersemester Dipl.-Ing. (FH) Volker Schepper

Vorlesung Skriptsprachen Duale Hochschule Stuttgart Sommersemester Dipl.-Ing. (FH) Volker Schepper Vorlesung Skriptsprachen Duale Hochschule Stuttgart Sommersemester 2017 Dipl.-Ing. (FH) Volker Schepper 1 Kommentar Kommentare sollen/müssen unbedingt verwendet werden. Sinnvolle Kommentare verwenden.

Mehr

1 Funktionsaufrufe. Informatik I: Einführung in die Programmierung 4. Funktionen: Aufrufe und Definitionen. Standardfunktionen: Typen-Konversion

1 Funktionsaufrufe. Informatik I: Einführung in die Programmierung 4. Funktionen: Aufrufe und Definitionen. Standardfunktionen: Typen-Konversion 1 Funktionsaufrufe Informatik I: Einführung in die Programmierung 4. : und en Albert-Ludwigs-Universität Freiburg Bernhard Nebel 24./28. Oktober 2014 24./28. Oktober 2014 B. Nebel Info I 3 / 31 Funktionsaufrufe

Mehr

2 Programmieren in Java I noch ohne Nachbearbeitung

2 Programmieren in Java I noch ohne Nachbearbeitung 1 2 Programmieren in Java I noch ohne Nachbearbeitung 2.1 Was sind Programme? Eingabe = Verarbeitung = Ausgabe Die Eingabe kann sein Konstanten im Quelltext; Kommandozeilenparameter oder interaktive Eingabe

Mehr

Quick-Start Informatik Programmieren in Python Teil 2

Quick-Start Informatik Programmieren in Python Teil 2 Quick-Start Informatik 2011 Programmieren in Python Teil 2 Organisatorisches Self-Assessment-Bögen Aufgabenblätter! Rückblick 1. Programmieren: Wie geht das? (IDLE, REPL,.py-Dateien) 2. Daten und Datentypen

Mehr

Einführung in die Programmiertechnik

Einführung in die Programmiertechnik Einführung in die Programmiertechnik Formale Beschreibung von Programmiersprachen Lexikalische Regeln Definition von Wörtern (Lexem, Token) Gruppierung von Zeichen Lexikalische Kategorien: Klassen ähnlicher

Mehr

Skriptsprachen: Python

Skriptsprachen: Python Skriptsprachen: Python Einführung Jan Krüger, Alexander Sczyrba Technische Fakultät Universität Bielefeld 30. September 2016 Python Einführung Eigenschaften, Erweiterungen, Erste Gehversuche 2 of 18 Python

Mehr

FACHHOCHSCHULE AUGSBURG Hochschule für Technik, Wirtschaft und Gestaltung

FACHHOCHSCHULE AUGSBURG Hochschule für Technik, Wirtschaft und Gestaltung C Sprachelemente für Übung 2 Typumwandlungen (type casts) Bei Ausdrücken, in denen Operanden mit unterschiedlichem Typ vorkommen, werden diese vom Compiler vor der Ausführung automatisch in einen gemeinsamen

Mehr

1 def Anweisung. 2 Argumentübergabe. 3 Lokale Variablen. 4 Default Argumente. 5 Aufruf mit Schlüsselwort. 6 Variable Argumente. Funktionen in Python

1 def Anweisung. 2 Argumentübergabe. 3 Lokale Variablen. 4 Default Argumente. 5 Aufruf mit Schlüsselwort. 6 Variable Argumente. Funktionen in Python 1 def Anweisung Sommersemester 2007 2 Argumentübergabe 3 Lokale Variablen 4 Default Argumente 5 Aufruf mit Schlüsselwort 6 Variable Argumente def Anweisung Beispiel: TuNix def def funktionsname([])

Mehr

Funktionen in Python

Funktionen in Python October 19, 2006 1 def Anweisung 2 Argumentübergabe 3 Lokale Variablen 4 Default Argumente 5 Aufruf mit Schlüsselwort 6 Variable Argumente def Anweisung def def funktionsname([]) : [ Dokumentationsstring

Mehr

Informatik I: Einführung in die Programmierung

Informatik I: Einführung in die Programmierung Informatik I: Einführung in die Programmierung 5., bedingte Ausführung und Albert-Ludwigs-Universität Freiburg Bernhard Nebel 27. Oktober 2017 1 und der Typ bool Typ bool Typ bool Vergleichsoperationen

Mehr

Angewandte Mathematik und Programmierung

Angewandte Mathematik und Programmierung Angewandte Mathematik und Programmierung Einführung in das Konzept der objektorientierten Anwendungen zu mathematischen Rechnens WS 2013/14 Operatoren Operatoren führen Aktionen mit Operanden aus. Der

Mehr

Python Zahlen, Strings Logik Kontrollstrukturen. Scriptsprachen. Python Basics. Sascha Winter

Python Zahlen, Strings Logik Kontrollstrukturen. Scriptsprachen. Python Basics. Sascha Winter Python Basics Sascha Winter Lehrstuhl fuer Bioinformatik Friedrich-Schiller-Universitaet Jena sascha.winter@uni-jena.de 11.08.2014 Python Erschien 1991, Guido van Rossum Nach Monty Python benannt Leicht

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

Funktionen in Python

Funktionen in Python Funktionen in Python Prof. Dr. Rüdiger Weis Beuth Hochschule für Technik Berlin 1 / 31 1 def Anweisung 2 Argumentübergabe 3 Lokale Variablen 4 Default Argumente 5 Aufruf mit Schlüsselwort 6 Variable Argumente

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

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Martin Unold INFORMATIK. Geoinformatik und Vermessung Zusammenfassung Was ist eine Programmiersprache? Eine Sprache, die Formal eindeutig in Maschinenbefehle übersetzbar ist Für Menschen einfacher verständlich ist als Bytecode Zur Formulierung von Datenstrukturen

Mehr

Informatik für Schüler, Foliensatz 2 Ausdrücke, Variablen, Datentypen, Ein- und Ausgabe

Informatik für Schüler, Foliensatz 2 Ausdrücke, Variablen, Datentypen, Ein- und Ausgabe Prof. G. Kemnitz Institut für Informatik, Technische Universität Clausthal 26. August 2009 1/17 Informatik für Schüler, Foliensatz 2 Ausdrücke, Variablen, Datentypen, Ein- und Ausgabe Prof. G. Kemnitz

Mehr

Methoden. Gerd Bohlender. Einstieg in die Informatik mit Java, Vorlesung vom

Methoden. Gerd Bohlender. Einstieg in die Informatik mit Java, Vorlesung vom Einstieg in die Informatik mit Java, Vorlesung vom 2.5.07 Übersicht 1 2 definition 3 Parameterübergabe, aufruf 4 Referenztypen bei 5 Überladen von 6 Hauptprogrammparameter 7 Rekursion bilden das Analogon

Mehr

Python Workshop i. Python Workshop

Python Workshop i. Python Workshop i Python Workshop ii REVISION HISTORY NUMBER DATE DESCRIPTION NAME iii Contents 1 Hinweis 1 2 Python interaktiv 1 2.1 python......................................................... 1 2.2 ipython........................................................

Mehr

Informatik I: Einführung in die Programmierung

Informatik I: Einführung in die Programmierung Informatik I: Einführung in die Programmierung 5., bedingte Ausführung Albert-Ludwigs-Universität Freiburg Peter Thiemann 30. Oktober 2018 1 und der Typ bool Typ bool Typ bool Vergleichsoperationen Logische

Mehr

Grundlegende Datentypen

Grundlegende Datentypen Grundlegende Datentypen Funktionale Programmierung Prof. Dr. Oliver Braun Letzte Änderung: 22.10.2018 10:53 Grundlegende Datentypen 1/21 Typen in Haskell ist alles streng typisiert Haskell verfügt über

Mehr

Informatik I (D-ITET)

Informatik I (D-ITET) Informatik I (D-ITET) Übungsstunde 2, 5.10.2009 ETH Zürich? Übungsgruppenwechsel? Abgabe der Übungen... Bis Mo, 24:00 Theorie: Programme: per mail oder auf Papier.cpp Datei per mail Bin euch noch Demos

Mehr

Algorithmik kontinuierlicher Systeme. Einführung in Python

Algorithmik kontinuierlicher Systeme. Einführung in Python Algorithmik kontinuierlicher Systeme Einführung in Python Organisatorisches Vorlesung um 8:15 oder um 8:30? Sommersemester 2017 Prof. U. Rüde Algorithmik kontinuierlicher Systeme 2 Kurzer Werbeblock Elementary

Mehr

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch) JAVA BASICS 2. Primitive Datentypen 1. Warum Java? weit verbreitet einfach und (relativ) sicher keine Pointer (?) keine gotos kein Präprozessor keine globalen Variablen garbage collection objekt-orientiert

Mehr

Gedächtnis. Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet. Zugriff.

Gedächtnis. Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet. Zugriff. Gedächtnis Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet Hauptspeicher 38265 Telefon CPU Gedächtnis Vorlesender Zugriff Verarbeitungseinheit

Mehr

Teil II. Datentypen. T. Neckel Einführung in die wissenschaftliche Programmierung IN8008 Wintersemester 2017/

Teil II. Datentypen. T. Neckel Einführung in die wissenschaftliche Programmierung IN8008 Wintersemester 2017/ Teil II Datentypen T. Neckel Einführung in die wissenschaftliche Programmierung IN8008 Wintersemester 2017/2018 25 Konzept von Teil II: Datentypen Hinweis: Die Erklärung des Konzepts im Sinne des Constructive

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 41 Einstieg in die Informatik mit Java Weitere Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 41 1 Überblick 2 Verbundanweisung 3 Bedingte Anweisung 4 Auswahlanweisung

Mehr

PYTHON. 04 Funktionen II, Module

PYTHON. 04 Funktionen II, Module PYTHON 04 Funktionen II, Module Funktionen Funktionen enthalten Programm-Teile können später im Programm aufgerufen werden können beliebig oft aufgerufen werden (und man muss nur die Funktion aufrufen,

Mehr

Funktionen (fortgeschritten)

Funktionen (fortgeschritten) Funktionen (fortgeschritten) Felix Döring, Felix Wittwer 24. April 2017 Python-Kurs Gliederung 1. Nutzung von Funktionen Default Parameter Aufruf mit Namen 2. Aggregatoren Positionale Aggregatoren Benannte

Mehr

Übungszettel 2a - Python

Übungszettel 2a - Python Vorsemesterkurs Informatik Übungsaufgaben Übungszettel 2a - Python Aufgabe 1: Python starten Teilaufgaben (a)-(c) beziehen sich auf das Arbeiten unter den Systemen, die auf den RBI-Rechnern installiert

Mehr

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Martin Unold INFORMATIK. Geoinformatik und Vermessung Wiederholung So sieht ein leeres Java-Programm aus public class Programmname { public static void main (String[] args) { // Hier stehen die Anweisungen Anweisungen mit Variablen Wiederholung Deklaration

Mehr

2 Eine einfache Programmiersprache

2 Eine einfache Programmiersprache 2 Eine einfache Programmiersprache Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Als Beispiel betrachten wir

Mehr

2 Eine einfache Programmiersprache

2 Eine einfache Programmiersprache 2 Eine einfache Programmiersprache Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Als Beispiel betrachten wir

Mehr

Java I Vorlesung Imperatives Programmieren

Java I Vorlesung Imperatives Programmieren Java I Vorlesung 2 Imperatives Programmieren 3.5.2004 Variablen -- Datentypen -- Werte Operatoren und Ausdrücke Kontrollstrukturen: if Imperatives Programmieren Im Kern ist Java eine imperative Programmiersprache.

Mehr

Grundlagen von C# - 1

Grundlagen von C# - 1 Grundlagen von C# - 1 Marc Satkowski 20. November 2016 C# Kurs Gliederung 1. Über diesen Kurs 2. Benötigte Software 3. Exkurs: Architektur von.net und C# 4. Erstes Programm: Hello World Grundlegende Eigenschaften

Mehr

Vorbemerkung. Allgemeines zu Shell Scripts. Aufruf. Einfaches Beispiel

Vorbemerkung. Allgemeines zu Shell Scripts. Aufruf. Einfaches Beispiel Inhalt: Vorbemerkung...1 Allgemeines zu Shell Scripts...1 Aufruf...1 Einfaches Beispiel...1 Testen eines Shell-Scripts...2 Kommandozeilen-Parameter...2 Prozeßsteuerung...3 Bedingte Ausführung: if...3 Mehrfachentscheidung:

Mehr

Einführung in die Programmierung mit VBA

Einführung in die Programmierung mit VBA Einführung in die Programmierung mit VBA Vorlesung vom 07. November 2016 Birger Krägelin Inhalt Vom Algorithmus zum Programm Programmiersprachen Programmieren mit VBA in Excel Datentypen und Variablen

Mehr

Unterlagen. CPP-Uebungen-08/

Unterlagen.  CPP-Uebungen-08/ Unterlagen http://projects.eml.org/bcb/people/ralph/ CPP-Uebungen-08/ http://www.katjawegner.de/lectures.html Kommentare in C++ #include /* Dies ist ein langer Kommentar, der über zwei Zeilen

Mehr

2 Eine einfache Programmiersprache

2 Eine einfache Programmiersprache 2 Eine einfache Programmiersprache Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Als Beispiel betrachten wir

Mehr

2 Eine einfache Programmiersprache

2 Eine einfache Programmiersprache 2 Eine einfache Programmiersprache Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Als Beispiel betrachten wir

Mehr

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch) JAVA BASICS 2. Primitive Datentypen 1. Warum Java? zunehmend weit verbreitet einfach und (relativ) sicher keine Adressrechnung, aber Pointer keine gotos kein Präprozessor keine globalen Variablen garbage

Mehr

2 Eine einfache Programmiersprache. Variablen. Operationen Zuweisung. Variablen

2 Eine einfache Programmiersprache. Variablen. Operationen Zuweisung. Variablen Variablen Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Variablen dienen zur Speicherung von Daten. Um Variablen

Mehr

Wiederholung: Listen, Referenzen

Wiederholung: Listen, Referenzen Wiederholung: Listen, Referenzen Symbolische Programmiersprache Benjamin Roth and Annemarie Friedrich Wintersemester 2016/2017 Centrum für Informations- und Sprachverarbeitung LMU München 1 Wiederholung

Mehr

Programmieren in Python

Programmieren in Python Ausgaben und Zahlen Programmieren in Python 2. Ausgaben und Zahlen Malte Helmert Albert-Ludwigs-Universität Freiburg In dieser Lektion geht es darum, ein erstes Gefühl für Python zu bekommen. Wir beschränken

Mehr

5. Von Java nach Python

5. Von Java nach Python Erstes Java Programm 5. Von Java nach Python Erstes Python Programm, Transfer Java Python, Dynamische Datenstrukturen in Python public class Hello { public static void main (String[] args) { System.out.print("Hello

Mehr

Algorithmen & Programmierung. Steuerstrukturen im Detail Selektion und Iteration

Algorithmen & Programmierung. Steuerstrukturen im Detail Selektion und Iteration Algorithmen & Programmierung Steuerstrukturen im Detail Selektion und Iteration Selektion Selektion Vollständige einfache Selektion Wir kennen schon eine Möglichkeit, Selektionen in C zu formulieren: if

Mehr

Grundlegende Datentypen

Grundlegende Datentypen Funktionale Programmierung Grundlegende Datentypen Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 14.11.2017 15:37 Inhaltsverzeichnis Typen........................................

Mehr

Algorithmen und Programmieren II Einführung in Python

Algorithmen und Programmieren II Einführung in Python Algorithmen und Programmieren II Einführung in Python SS 2010 Prof. Dr. Margarita Esponda Prof. Dr. Margarita Esponda 1 Variablen Funktionale Programmiersprachen Imperative Programmiersprachen Eine Variable

Mehr

EINFÜHRUNG IN DIE PROGRAMMIERUNG

EINFÜHRUNG IN DIE PROGRAMMIERUNG EINFÜHRUNG IN DIE PROGRAMMIERUNG GRUNDLAGEN Tobias Witt!! 24.03.2014 ORGANISATORISCHES 09:00-10:30! Täglich Übungen zur Vertiefung! Laptop hier nicht erforderlich! Linux, OS X! Freitag: http://hhu-fscs.de/linux-install-party/

Mehr

Übersicht Shell-Scripten

Übersicht Shell-Scripten !!!! Wichtig: Bei Shell-Scripten enden die Zeilen nicht mit einem Strichpunkt!!!! Erste Zeile eines Shell-Scripts: #! /bin/bash Variablen in Shell-Scripts: Variablennamen müssen mit einem Buchstaben beginnen,

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 26 Einstieg in die Informatik mit Java Methoden Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 26 1 Methoden 2 Methodendefinition 3 Parameterübergabe, Methodenaufruf

Mehr

1 Bedingte Anweisungen. 2 Vergleiche und logische Operatoren. 3 Fallunterscheidungen. 4 Zeichen und Zeichenketten. 5 Schleifen.

1 Bedingte Anweisungen. 2 Vergleiche und logische Operatoren. 3 Fallunterscheidungen. 4 Zeichen und Zeichenketten. 5 Schleifen. Themen der Übung Kontrollstrukturen, Pseudocode und Modulo-Rechnung CoMa-Übung III TU Berlin 9.10.01 1 Bedingte Anweisungen Vergleiche und logische Operatoren 3 Fallunterscheidungen 4 Zeichen und Zeichenketten

Mehr

7. Einführung in C++ Programmieren / Algorithmen und Datenstrukturen 1 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt

7. Einführung in C++ Programmieren / Algorithmen und Datenstrukturen 1 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt 7. Einführung in C++ Programmieren / Algorithmen und Datenstrukturen 1 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt 1 Kontrollfragen Rekursion Was bedeutet Rekursion? Geben Sie Beispiele

Mehr

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 1

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 1 Fachhochschule Stralsund Fachbereich Maschinenbau Lehrgebiet Informatik Prof. Dr.-Ing. Ch.Wahmkow Arbeitsblätter für die Lehrveranstaltung OOP I. Aufbau eines Java-Programmes JAVA 1 Escape-Sequenzen zur

Mehr

Programmieren in Python

Programmieren in Python 3. Variablen, Funktionen und Bedingungen Albert-Ludwigs-Universität Freiburg KI-Praktikum, Sommersemester 2009 Variablen, Funktionen und Bedingungen Bisher sind wir über die Funktionen eines Taschenrechners

Mehr

Einführung in C. EDV1-04C-Einführung 1

Einführung in C. EDV1-04C-Einführung 1 Einführung in C 1 Helmut Erlenkötter C Programmieren von Anfang an Rowohlt Taschenbuch Verlag ISBN 3-4993 499-60074-9 19,90 DM http://www.erlenkoetter.de Walter Herglotz Das Einsteigerseminar C++ bhv Verlags

Mehr

Anweisungen in Python

Anweisungen in Python Sommersemester 2007 1 if 2 elif 3 while 4 for 5 Schleifenabbruch Blockbildung Blockbildung durch Einrücken Keine Klammerung Empfehlungen Leerzeichen verwenden 4 Leerzeichen einrücken Unterstützenden Editor

Mehr

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

Institut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke Java 2 Markus Reschke 07.10.2014 Datentypen Was wird gespeichert? Wie wird es gespeichert? Was kann man mit Werten eines Datentyps machen (Operationen, Methoden)? Welche Werte gehören zum Datentyp? Wie

Mehr

Grundlegende Datentypen

Grundlegende Datentypen Grundlegende Datentypen (Funktionale Programmierung) Prof. Dr. Oliver Braun Letzte Änderung: 18.03.2018 21:08 Grundlegende Datentypen 1/16 Typen in Haskell ist alles streng typisiert Haskell verfügt über

Mehr

Python für Linguisten

Python für Linguisten Python für Linguisten Dozentin: Wiebke Petersen & Co-Dozent: Valentin Heinz 4. Foliensatz bedingte Anweisungen Input, Output Petersen & Heinz Python 1 Vergleichsoperatoren und Boolsche Werte numerische

Mehr

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch) JAVA BASICS 2. Primitive Datentypen 1. Warum Java? zunehmend weit verbreitet einfach und (relativ) sicher keine Adressrechnung, aber Pointer keine gotos kein Präprozessor keine globalen Variablen garbage

Mehr

Tag 2 Repetitorium Informatik (Java)

Tag 2 Repetitorium Informatik (Java) Tag 2 Repetitorium Informatik (Java) Dozent: Daniela Novac Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2017/2018 Übersicht Zeichen und

Mehr

Kontrollfluss. man Verzweigungen und Sprünge. o bisher linear (von oben nach unten) o Für interessante Programme braucht

Kontrollfluss. man Verzweigungen und Sprünge. o bisher linear (von oben nach unten) o Für interessante Programme braucht Kontrollanweisungen Kontrollfluss o bisher linear (von oben nach unten) o Für interessante Programme braucht man Verzweigungen und Sprünge Kontrollfluss o bisher linear (von oben nach unten) o Für interessante

Mehr

Funktionale Programmierung Grundlegende Datentypen

Funktionale Programmierung Grundlegende Datentypen Grundlegende Datentypen Prof. Dr. Oliver Braun Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 06.11.2017 16:45 Inhaltsverzeichnis Typen........................................

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 47 Einstieg in die Informatik mit Java Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 47 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung,

Mehr

Programmieren Vorkurs

Programmieren Vorkurs Programmieren Vorkurs Input/Output, If, Bedingungen Thole Goesmann, 10.10.2018 Über mich Thole Goesmann Studiere Mathematik und Informatik HiWi am Institut für Anwendungssicherheit gewähltes Mitglied im

Mehr

Programmieren in Python

Programmieren in Python 10. Iteratoren und Generatoren Albert-Ludwigs-Universität Freiburg Handlungsplanungs-Praktikum Wintersemester 2010/2011 Iteratoren und Generatoren Überblick über diese Lektion: Iteratoren Generatoren Generator

Mehr

Vorkurs Informatik WiSe 17/18

Vorkurs Informatik WiSe 17/18 Java Ausdrücke und Variablen Dr. Werner Struckmann / Stephan Mielke, Nicole Naczk, 05.10.2017 Technische Universität Braunschweig, IPS Überblick Ausdrücke, Datentypen und Variablen Kontrollstrukturen 05.10.2017

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

Algorithmen und ihre Programmierung

Algorithmen und ihre Programmierung Veranstaltung Pr.-Nr.: 101023 Algorithmen und ihre Programmierung Veronika Waue WS 07/08 Einführung Definition: Algorithmus Ein Algorithmus ist eine genau definierte Folge von Anweisungen zur Lösung eines

Mehr

Bash-Skripting Linux-Kurs der Unix-AG

Bash-Skripting Linux-Kurs der Unix-AG Bash-Skripting Linux-Kurs der Unix-AG Sebastian Weber 07.01.2013 Was ist ein Bash-Skript? Skript muss mit chmod +x ausführbar gemacht sein Aneinanderreihung von Befehlen normale Befehle nutzbar Sebastian

Mehr