Programmierung. in Python. richard rascher-friesenhausen. 14. März Inhalt

Größe: px
Ab Seite anzeigen:

Download "Programmierung. in Python. richard rascher-friesenhausen. richard.rascher-friesenhausen@hs-bremerhaven.de. 14. März 2012. Inhalt"

Transkript

1 Programmierung in Python richard rascher-friesenhausen 14. März 2012 Inhalt Organisatorisches Allgemeines Python PRG, SS 12 March 14,

2 Organisatorisches Termin: Vorlesung: Do. 08:00 09:30, K02 Übung: Mi. 13:45 17:00, Rechnerraum MT (2 Gruppen) Kontakt: am besten über Sprechstunde im Raum M5050 nach Vereinbarung oder nach der Veranstaltung. Leistungsnachweis: über wöchentliche Hausaufgaben (in dreier Gruppen!) Lasse eine Liste rundgehen. Bitte eintragen mit -Adresse für Mailverteiler. Aktuelle Informationen zur Veranstaltung findet man unter richard/bremerhaven/ss12/ Allgemeines Was ist Programmieren? Software-Engineering Problemformulierung Algorithmen Programmiersprachen Fehler & Testen Dokumentieren Inhalte der Vorlesung und der Übung Ein schneller Überblick auf was Programmieren ist, was dafür gebraucht wird und was wir machen werden. PRG, SS 12 March 14,

3 Was ist Programmieren? Was ist Programmieren? Programmieren, oder besser Computer Programmieren, ist der Prozeß, Instruktionen für einen Computer zu schreiben, die den Computer veranlassen, eine vorbestimmte Aufgabe zu erledigen. Bausteine der Programmierung sind Problemformulierungen Algorithmen Implementierungen Testen Dokumentieren Ergebnis ist Software : lauffähige Programme oder verwendbare Bibliotheken. Software-Engineering Software-Engineering Software Engineering beschreibt eine systematische Vorgehensweise für die Entwicklung von Software Betrieb von Software Pflege von Software Sterben von Software Begleitet also die gesamte Lebenszeit einer Software ( software life-cycle ). Verschiedene Systematiken für einzelne Bausteine. Betrachten hier nur Entwicklung von Software (Programmieren). Systematiken notwendig/sinnvoll für Arbeiten im Team: Jeder weiß, wer was wie macht. Einhalten von Systematiken gehört zum Qualitätsmanagment oder kurz QM. Beispiele für Systematiken sind Extreme Programming oder Scrum. PRG, SS 12 March 14,

4 Problemformulierung Problemformulierung Bevor man an die Lösung des Problems geht, sollte genau geklärt sein, was das Problem wirklich ist! Algorithmen Algorithmen Ganz grob ist ein Algorithmus ein Lösungsverfahren für eine Klasse von Problemen. Vergleichbar einem Rezept, Prozeß, Methode, Technik, Prozedur, Routine. Beispiele für Problemklassen und ihre Algorithmusidee Bestimmen des Größten Gemeinsamen Teilers: Euklidischer Algorithmus Lösung einer quadratischen Gleichung: p-q-formel Lösung eines linearen Gleichungssytems: Sortieren von Patientendaten: Gauss-Algorithmus Sortieren durch Auswahl öffnen einer Tür: trainierter Reflex?... (Wirklich wichtige Algorithmen findet man unter Dongarra, Sullivan (2000): Top ten algorithms of the century, IEEE, Comput. Sci. Eng.) PRG, SS 12 March 14,

5 Algorithmen Formale Definition (nach Knuth 1): Ein Algorithmus ist ein endlicher Satz von Anweisungen zur Lösung einer gegebenen Klasse von Aufgaben. Zusätzlich muß ein Algorithmus die folgenden fünf Kriterien erfüllen: 1. Endlichkeit (finiteness): Ein Algorithmus terminiert in allen Fällen nach einer endlichen Anzahl von Schritten. 2. Bestimmtheit (definitness): Jede Anweisung eines Algorithmus ist klar, unzweideutig und durchführbar. 3. Eingabe (input): Ein Algorithmus hat Null oder mehr Eingaben: Objekte, die zu Beginn oder zur Laufzeit extern eingegeben werden. 4. Ausgabe (output): Ein Algorithmus hat eine oder mehr Ausgaben: Objekte, die in einer spezifischen Relation zur Eingabe stehen. 5. Effizienz (effectiveness): Jede Anweisung eines Algorithmus muss so grundlegend sein, dass sie im Prinzip von jedermann mit Papier und Bleistift in endlicher Zeit ausgeführt werden kann. 1 The Art of Computer Programming I, pp. 4 Algorithmen Zwischen Algorithmus und Programm wird in der Informatik unterschieden. Ein Programm muss beispielsweise nicht endlich sein. Etwa wartet eine vergessene grafische Oberfläche endlos auf Benutzereingaben, wenn das Betriebssystem des Computers nicht abstürzt. Darüber hinaus muss das Programm so formuliert sein, dass es auf einem Rechner lauffähig ist. Einen Algorithmus kann auf verschiedene Weisen formuliert werden: in natürlicher Sprache, in Pseudo Code, in grafischer Darstellung (Struktogramm, Flußdiagramm),... PRG, SS 12 March 14,

6 Algorithmen Problem: Finde alle Lösungen x R der quadratischen Gleichung x2 + p x + q = 0, p, q R Lösungsidee: x1,2 p = ± 2 r p 2 q 2 Algorithmus: Input: Koeffizienten p und q. 2 1 Bestimme Radikanden r = p2 q. 2 if r < 0 then 3 Belege x1 = x2 =None 4 Setze Fehlercode auf keine reelle Nullstelle. 5 elseif r = 0 then 6 Bestimme x1 = x2 = p2. 7 Setze Fehlercode auf doppelte reelle Nullstelle. 8 else 9 Bestimme x1 = p2 r,x2 = p2 + r. 10 Setze Fehlercode auf zwei reelle Nullstellen. 11 end.if Output: Nullstellen x1, x2 und Fehlercode Algorithmen Problem: Sortiere einen Satz von n 1 ganzen Zahlen entsprechend ihrer Größe beginnend mit der kleinsten. Lösungsidee: Finde von den momentan unsortierten Zahlen die kleinste und plaziere sie als nächste in die sortierte Liste. Algorithmus: Input: n ganze Zahlen 1 Lese n Zahlen in das Feld a0,..., an 1 ein. 2 for i = 0, 1,..., n 2 do 3 Suche das kleinste Element aus ai,..., an 1. 4 Nehme an, es steht in amin. 5 Vertausche ai mit amin. 6 end.for Output: Sortiertes Feld a0,..., an 1 ganzer Zahlen Falls Zahlen gleich sind, wählen wir die erste Position. PRG, SS 12 March 14,

7 Algorithmen Woher kommt der Name? Woher kommt der Name? Algorithmus ist lateinische Fassung eines arabischen Namens: Mohammad ibn-mus al-khwarizmi ( ) Gelehrter am Hofe des Kalifen Al-Ma mun in Bagdad. Mathematisches Werk Hisab al-gabr wal-muqdala Rechenverfahren durch Ergänzen und Ausgleichen. Drei Jahrhunderte später lateinische übersetzung in Spanien. Beginnt mit Dixit Algoritmi... Es sprach Algoritmi... Programmiersprachen Programmiersprachen Wie rede ich mit meinem Computer? Wie bringe ich ihm bei, das zu tuen, was ich von ihm will? Wie setze ich konkret einen Lösungsalgorithmus auf dem Rechner um? Brauchen eine Programmiersprache. Diese fallen in drei Kategorien: 1. Maschinensprache, 2. Assembler und 3. Höher Programmiersprache. PRG, SS 12 March 14,

8 Programmiersprachen Maschinensprache Maschinensprache Einzige Sprache, die direkt vom Computer verstanden wird Definiert durch das Hardware Design des Rechners: maschinenabhängig. Unverständlich für den Menschen: Strom von 0en und 1en (wie alle Info im Rechner). Kaum bis garnicht für den Menschen programmierbar. Führte zu den Assemblern. Anfang von hello.exe hexadezimal: a0 0b0 0c0 0d0 0e0 0f0 457f a2c f b c c b d c2f c0 00f b1 01a d c2f d f c e Programmiersprachen Assembler Assembler Englisch ähnliche Abkürzungen, die elementare Operationen des Rechners darstellen. Ebenfalls maschinenabhängig Spricht Prozessor, Register und RAM direkt an. Werden in die Maschinensprache übersetzt. Übersetzung geht schnell. Deutlich lesbarer als Maschinencode. Aber immer noch viele Instruktionen für einfache Aufgaben. total = LDA STA LDA ADD STA 5 num1 4 num1 total Einsatz für System-Software und Speziallösungen: Signalprozessoren, Grafikchips. Führt zu höheren Programmiersprachen. PRG, SS 12 March 14,

9 Programmiersprachen Höhere Programmiersprachen Höhere Programmiersprachen Einzelne Anweisungen führen komplexe Augaben aus. Maschinenunabhängig. Compiler Sprachen: Werden nach Maschinensprache übersetzt: Compiler. Übersetzung benötigt relativ viel Zeit. Schnelle Laufzeit der Programme. Interpreter Sprachen: Lassen Programme ohne Compilierung laufen. Rapid Development. Deutlich langsamere Laufzeiten der Programme. Für beide gilt: Anweisungen sind lesbar für den Menschen. Klingen nach alltäglichen Englisch. Enthalten übliche mathematische Notationen. Programmiersprachen Höhere Programmiersprachen Es gibt viele Hundert verschiedene höhere Programmiersprachen: Ada, Algol, APL, awk, Basic, C, C++, Cobol, Delphi, Eiffel, Euphoria, Forth, Fortran, (HTML), Icon, Java, Javascript, Lisp, Logo, Mathematica, Matlab, Miranda, Modula-2, Oberon, Pascal, Perl, PL/1, Prolog, Python, Rexx, SAS, Scheme, sed, Simula, Smalltalk, Snobol, SQL, Visual Basic, Visual C++, (XML) Siehe zu diesen The Language Guide: /course.des/cis400/ Und Computer Languages History: C Dennis Ritchie (Bell Laboratories), C++ Bjarne Stroustrup (Bell Laboratories), Fortran John Backus (IBM), Java James Gosling (Sun Labs), 1971 Juli 1983 November Mai 1995 Mathematica Stephen Wolfram (Wolfram Research), 1988 Pascal Nikolaus Wirth (ETH), 1970 Python Guido Van Rossum (Stichting Mathematisch Centrum), 1991 Ruby Yukihiro Matsumoto (?), 24. Februar 1993 Beispiele kommen später. Aber nicht zu allen Sprachen... PRG, SS 12 March 14,

10 Programmiersprachen Höhere Programmiersprachen Was jede höhere Programmiersprache unterstüzt sind Input: Lesen von Werten in das Programm Output: Schreiben von Werten aus dem Programm Mathematik: Rechenoperationen auf Zahlen Bedingungen: Bedingte Ausführung von Anweisungen Wiederholungen: Wiederholte Ausführung von Anweisungen Und das genügt auch, um all das zu programmieren, was gebraucht wird. Was meist noch dazukommt sind Funktionen oder Unterprogramme, Bibliotheken für das modulare Programmieren. Fehler & Testen Fehler & Testen Syntaktische Fehler Laufzeit Fehler Semantische Fehler Testen Programmieren ist die eine Sache. Prüfen, ob das Programm das gestellte Problem wirklich löst, eine andere Sache. Fehler kommen vor! Unterscheidbar in 1. Syntaktische Fehler 2. Laufzeit Fehler 3. Semantische Fehler PRG, SS 12 March 14,

11 Fehler & Testen Syntaktische Fehler Syntaktische Fehler Verstoß gegen die Syntax Regeln der Programmiersprache. Etwa: Falsch geschriebene Namen für Befehle, vergessene Satzzeichen,... Meckert ein Compiler/Interpreter an! Mit Angaben wo und was. Nicht so wild... Müssen korrigiert werden, damit Programm überhaupt läuft. Wohl zu Beginn die häufigsten Fehler. Fehler & Testen Laufzeit Fehler Laufzeit Fehler Machen sich erst zur Laufzeit des Programmes bemerkbar. Etwa: Division durch Null, überschreiben von Speicherbereichen,... Exceptions Brechen das Programm vorzeitig ab. Nicht ganz leicht! Kommen immer wieder vor. Sollten korrigiert oder abgefangen werden. PRG, SS 12 March 14,

12 Fehler & Testen Semantische Fehler Semantische Fehler Etwas ist verkehrt mit den Resultaten. Programm läuft durch. Aber es löst nicht das gestellte Problem. Zumeist Fehler in dem Lösungsalgorithmus oder der Lösungsidee. Auch nicht ganz leicht! Müssen korrigiert werden! Fehler & Testen Testen Testen In jeder Phase der Programmentwicklung sollte getestet werden. Dazu werden gebraucht: Gültige Programmeingaben Zugehörige korrekte Programmausgaben Mit kleinen Beispielproblemen einzelne Funktionen oder Programmzeilen austesten. Im Extremfall zuerst die Tests schreiben, dann erst das Lösungsprogramm (Extreme Programming). Tests automatisieren. Beispiele dazu später. Zumeist wird sich darum gedrückt... Aber: Gehört zum QM. PRG, SS 12 March 14,

13 Dokumentieren Dokumentieren Dokumentation für einen selber und für andere. Dokumentation des Programms 1. was tut es: für Anwender Handbuch 2. wie tut es es: für Entwickler Kommentare im Quellcode Vor dem Dokumentieren wird sich zumeist gedrückt! Zu unrecht. Gehört zum QM. Inhalte der Vorlesung und der Übung Inhalte der Vorlesung und der Übung Natürlich können wir nicht alles machen, was oben angedeutet wurde. Dazu sind eine Menge Spezialvorlesungen erforderlich und auch jahrelanges anwenden und probieren. Wir werden Python lernen (das ist einfach). Wir werden mit Python Programmieren lernen. Abstrakte Datentypen Suchen und Sortieren Rekursion OOP GUI... Wir werden viel progammieren (learning by doing). Wir werden einige Software Engineering Techniken praktisch kennenlernen. Entwerfen Dokumentieren Testen Wir werden vielleicht noch einen Blick auf Java oder C++ werfen. PRG, SS 12 March 14,

14 Python Hello world Geschichte Anwendungsgebiete Resourcen Python verwenden (in der Übung) Ein bischen was zu Python. Wie es aussieht, woher es kommt, welche Hilfen es gibt und wie man dran kommt. Hello world Hello world Traditionell beginnt jedes Lernen einer Programmiersprache mit einem Programm, dass Hello World! auf dem Monitor ausgibt. Wir schauen uns das an in Python, Java und C++. Wer noch mehr Beispiele sehen möchte: Hello, World Page!: acm/helloworld.shtml PRG, SS 12 March 14,

15 Hello world Hello world in C++: hello.cpp // "Hello world!" in C++ #include <iostream> int main(void) { std::cout << "Hello world!" << std::endl; return 1; } Dann compilieren (erzeugt hello.o): C:\> g++ -c hello.cpp Dann linken (erzeugt hello.exe): C:\> g++ -o hello.exe hello.o Zuletzt starten mit C:\> hello Hello world Und nochmal Hello world in Java: hello.java // "Hello world!" in Java class hello { public hello() { } public static void main(string[] args) { System.out.println("Hello world!"); } } Dann compilieren (erzeugt hello.class): C:\> javac hello.java Zuletzt starten mit C:\> java hello PRG, SS 12 March 14,

16 Hello world Zuletzt Hello world in Python: hello.py # "Hello world!" in Python print "Hello world!" Starten mit C:\> python hello.py Und alle drei Programme erzeugen die Ausgabe Hello world! Geschichte Geschichte Entstand 1989, geschrieben von Guido van Rossum. Veröffentlicht 1991 (version 1.5, heute Versionen 2.7, 3.2). Ursprüngliche Idee: Scripting Sprache für Administrationszwecke. Basiert auf den Sprachen ABC (All Basic Code) und Modula3. Benannt nach Monty Python. Schnell wachsende Python Gemeinde. Gut unterstütze und lebende Programmiersprache: Web-Seite: Dokumentation: News-Group: news:comp.lang.python... PRG, SS 12 March 14,

17 Geschichte Python ist einfach (wirklich... ) aber dennoch eine echte und objektorientierte Programmiersprache eine very-high-level Programmiersprache: high-level Datentypen sind eingebaut modular und erlaubt Wiederverwendeung von Code ist mächtig durch eine Menge von Standardmodulen: io, system calls, sockets, gui,... interpretiert und spart so Zeit während der Entwicklungsphase interaktiv und erlaubt das Experimentieren mit den Sprachfeatures erweiterbar durch C und C++. Jython verwendet Java für Erweiterungen portabel, läuft auf Windows, Linux und MacOS ist kostenlos Anwendungsgebiete Anwendungsgebiete Anwendungsgebiete für Python sind (siehe auch python.org): Web-Programmierung Datenbankanbindungen Grafische Oberflächen Numerische Mathematik, Bioinformatik Netzwerke Softwareentwicklung Python auf dem Handy: Nokia S60. Python für Spiele: Civilization IV. Verknüpfen von Applikationen, Steuern von Applikationen. (Bsp.: MeVisLab) Und natürlich als Einstieg in das Programmieren... Mehr unter PRG, SS 12 March 14,

18 Resourcen Resourcen Distributionen Texte Bücher & Dokumentation Resourcen Distributionen Distributionen Python ist freie Software. Sie kann aus dem Internet für den Rechner zu Hause heruntergeladen werden (Windows, Linux, Unix, Mac OS). Adressen dazu sind: Python: das Original. ActiveState: eine Distribution mit mehr Windows Tools. Enthought: eine Distribution mit ganz, ganz viel. PythonXY: noch eine Distribution mit ganz, ganz viel. Die verwenden wir. Jython: Python in Java, Python für Java, (Java für Python). Die Distributionen Dritter hinken in der Version dem Original stets ein wenig hinterher... PRG, SS 12 March 14,

19 Resourcen Texte Texte Einfache einführende Texte zu Python sind im Netz frei verfügbar. Etwa: Python Tutorial : Python Tutorial (deutsch) : /tut/ (älter) Non-Programmers Tutorial For Python : jjc/easytut/easytut/ How to Think Like a Computer Scientist : Learning to program : Siehe auch für eine längere Liste. Resourcen Bücher & Dokumentation Bücher & Dokumentation Es ist kein Buch erforderlich. Wer aber dennoch mal was in einem Buch nachlesen will: How to Think Like a Computer Scientist und Learning to program gibt es auch als Bücher (eng.). Einführung in Python Learning Python, eng. Python in a Nutshell, eng. Oder suche bei unter python. Oder besuche die nächste grössere Buchhandlung und schmökerere herum. Siehe auch PRG, SS 12 March 14,

20 Python verwenden (in der Übung) Python verwenden (in der Übung) Command Line Mode Script Mode IDLE Python kann in zwei Modi verwendet werden: interaktiv auf der Kommandozeile oder als Skript. Darüberhinaus gibt es natürlich auch Entwicklungsumgebungen für Python. Python verwenden (in der Übung) Command Line Mode Command Line Mode Die Kommandozeilenversion von Python wird aufgerufen über C:\> python Danach erschein ein Willkommensgruss und ein neuer Prompt Enthought Edition build 1028 Python 2.3 (#46, Aug :34:05) [MSC v bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> Siehe auch das Tutorial unter Alternative: IPython PRG, SS 12 March 14,

21 Python verwenden (in der Übung) Script Mode Script Mode Sollte man schon in einer Datei myfile.py ein kleine Python Programm geschrieben haben, so kann man dieses auch direkt laufenlassen über C:\> python myfile.py Windows: Doppelklick auf das Datei-Icon. Zumeist geht das Fenster nach Abschluss des Skripts sofort wieder zu! Linux: Anfangszeile #!/usr/bin/env python und als Executable eintragen chmod a+x. Dann direkt als Befehl aufrufbar. Python verwenden (in der Übung) IDLE IDLE Zu der Python Distribution gehört auch eine Programmierumgebung oder eine Integrated Development Environment namens IDLE. Eine kurze Einführung gibt es unter dyoo/python /idle_intro/index_ger.html. Alternativen: Spyder, Eclipse. PRG, SS 12 March 14,

22 PRG, SS 12 March 14,

Programmierung. PRG, SS 08 March 19, 2008 1. Inhalt. in Python. richard rascher-friesenhausen. richard.rascher-friesenhausen@hs-bremerhaven.

Programmierung. PRG, SS 08 March 19, 2008 1. Inhalt. in Python. richard rascher-friesenhausen. richard.rascher-friesenhausen@hs-bremerhaven. Inhalt Programmierung in Python Organisatorisches Allgemeines Python richard rascher-friesenhausen richard.rascher-friesenhausen@hs-bremerhaven.de 19. März 2008 Organisatorisches Allgemeines Termin: Vorlesung

Mehr

Programmierung. HS Bhven, FB1, Studiengang Medizintechnik SS 14, MT-B 4. richard rascher-friesenhausen richard.rascher-friesenhausen@hs-bremerhaven.

Programmierung. HS Bhven, FB1, Studiengang Medizintechnik SS 14, MT-B 4. richard rascher-friesenhausen richard.rascher-friesenhausen@hs-bremerhaven. Programmierung HS Bhven, FB1, Studiengang Medizintechnik SS 14, MT-B 4 richard rascher-friesenhausen richard.rascher-friesenhausen@hs-bremerhaven.de 14. März 2014 Organisatorisches Allgemeines Python PRG,

Mehr

4.A Programmierung. Bausteine der Programmierung: Problemformulierungen Algorithmen Implementierungen Testen Dokumentieren

4.A Programmierung. Bausteine der Programmierung: Problemformulierungen Algorithmen Implementierungen Testen Dokumentieren ISS: EDV-Grundlagen 1. Einleitung und Geschichte der EDV 2. Daten und Codierung 3. Rechnerarchitektur 4. Programmierung und Softwareentwicklung 5. Betriebssyteme 6. Internet und Internet-Dienste 4.A Programmierung

Mehr

Python Programmierung. Dipl.-Ing.(FH) Volker Schepper

Python Programmierung. Dipl.-Ing.(FH) Volker Schepper Python Programmierung Kontaktdaten Homepage: http://wwwlehre.dhbw-stuttgart.de/~schepper/ Email: Volker. Schepper [A@T] yahoo.de Vorlesung Skriptsprachen Vorlesung: 06.03.2013 13.03.2013 20.03.2013 27.03.2013

Mehr

1. Einführung Einführung in die Programmierung (fbw) Sommersemester 2008 Prof. Dr. Bernhard Humm Hochschule Darmstadt, fbi

1. Einführung Einführung in die Programmierung (fbw) Sommersemester 2008 Prof. Dr. Bernhard Humm Hochschule Darmstadt, fbi 1. Einführung Einführung in die Programmierung (fbw) Sommersemester 2008 Prof. Dr. Bernhard Humm Hochschule Darmstadt, fbi 1 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Einführung in

Mehr

Kapitel 1: Einführung

Kapitel 1: Einführung 10 Kapitel 1: Einführung 1.1 Was ist eine Programmiersprache? 1.2 Details zu C++ 1.3 Phasen der Programmierung 1.4 Ein erstes Programm: Hello World! 1.5 Addition zweier Zahlen 1.6 Entscheidungen 1.1 Was

Mehr

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen. I.2. I.2. Grundlagen von von Programmiersprachen.

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen. I.2. I.2. Grundlagen von von Programmiersprachen. 1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen I.2. I.2. Grundlagen von von Programmiersprachen. - 1 - 1. Der Begriff Informatik "Informatik" = Kunstwort aus Information und Mathematik

Mehr

Programmiersprachen und Programmierkonzepte

Programmiersprachen und Programmierkonzepte Programmiersprachen und Programmierkonzepte Inhalt Programmiersprachen- Entwicklung Programmiersprachen und Programmierparadigmen Die Geschichte der Programmiersprachen Anfänge vor 200 Jahren Programmierbare

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 2012 Prof. Dr. Margarita Esponda 1 Was ist Python? eine Skript-Sprache Anfang der 90er Jahre entwickelt. Erfinder: Guido van Rossum an der Universität

Mehr

Programmiertechnik. Prof. Dr. Oliver Haase Raum G124 haase@htwg-konstanz.de Tel: 07531/206-150. Oliver Haase Hochschule Konstanz 1

Programmiertechnik. Prof. Dr. Oliver Haase Raum G124 haase@htwg-konstanz.de Tel: 07531/206-150. Oliver Haase Hochschule Konstanz 1 Programmiertechnik Prof. Dr. Oliver Haase Raum G124 haase@htwg-konstanz.de Tel: 07531/206-150 Oliver Haase Hochschule Konstanz 1 Organisatorisches Vorlesung: montags, 8:00 9:30h, Raum C-109 freitags, 8:00

Mehr

Java Schulung. Objektorientierte Programmierung in Java. Prof. Dr. Nikolaus Wulff

Java Schulung. Objektorientierte Programmierung in Java. Prof. Dr. Nikolaus Wulff Java Schulung Objektorientierte Programmierung in Java Prof. Dr. Nikolaus Wulff Was ist Java? Java ist eine einfache, objektorientierte, verteilte, interpretierte, robuste, sichere, architekturneutrale,

Mehr

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12. Kapitel 1. Einführung und Grundbegriffe

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12. Kapitel 1. Einführung und Grundbegriffe 1 Kapitel 1 2 Ziele Begriffsbildungen: Informatik, Algorithmus, Programm, Compiler, Einordnung von Java Ein einfaches Java-Programm erstellen, übersetzen und ausführen Java-Programme dokumentieren 3 Informatik

Mehr

Grundlagen der Programmierung UE

Grundlagen der Programmierung UE Grundlagen der Programmierung UE Research and teaching network GdP UE H. Prähofer, R. Wolfinger 1 Vortragende Dr. Herbert Praehofer (G1 u. G2) Mag. Reinhard Wolfinger (G3 u. G4) Institute for System Software

Mehr

Grundlagen der Programmierung UE

Grundlagen der Programmierung UE Grundlagen der Programmierung UE Research and teaching network GdP UE H. Prähofer, M Löberbauer 1 Vortragende Dipl.-Ing. Markus Löberbauer (G1) Dr. Herbert Praehofer (G2 u. G3) Institute for System Software

Mehr

JAVA als erste Programmiersprache Semesterkurs

JAVA als erste Programmiersprache Semesterkurs JAVA als erste Programmiersprache Semesterkurs 0 - Einstieg WS 2012 / 2013 Prof. Dr. Bodo Kraft Prof. Dr. Bodo Kraft FH Aachen University of Applied Sciences Fachbereich Medizintechnik und Technomathematik

Mehr

Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik

Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik Programmieren I Die Programmiersprache Java KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Eigenschaften von Java Java ist eine

Mehr

Programmieren was ist das genau?

Programmieren was ist das genau? Programmieren was ist das genau? Programmieren heisst Computerprogramme herstellen (von griechisch programma für Vorschrift). Ein Computerprogramm ist Teil der Software eines Computers. Als Software bezeichnet

Mehr

Fachhochschule Wiesbaden - Fachbereich DCSM. Skriptsprachen. Moderne, objekt-orientierte Skriptsprachen mit Betonung auf Ruby

Fachhochschule Wiesbaden - Fachbereich DCSM. Skriptsprachen. Moderne, objekt-orientierte Skriptsprachen mit Betonung auf Ruby Fachhochschule Wiesbaden - Fachbereich DCSM Skriptsprachen Moderne, objekt-orientierte Skriptsprachen mit Betonung auf Ruby 16.10.2008 2003, 2008 H. Werntges, FB Design Informatik Medien (DCSM), FH Wiesbaden

Mehr

Vorkurs Informatik WiSe 15/16

Vorkurs Informatik WiSe 15/16 Java 1 Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 12.10.2015 Technische Universität Braunschweig, IPS Überblick Organisatorisches Arbeitsablauf Hello! 12.10.2015 Dr. Werner Struckmann / Stephan

Mehr

Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff

Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff Programmieren in C Eine Einführung in die Programmiersprache C Prof. Dr. Nikolaus Wulff Der Anfänger sollte nicht entmutigt sein, wenn er nicht die Voraussetzungen besitzt, um die Voraussetzungen zu verstehen...

Mehr

Einführung in die Programmierung mit Java

Einführung in die Programmierung mit Java Einführung in die Programmierung mit Martin Wirsing 2 Ziele Begriffsbildungen: Informatik, Algorithmus, Programm... Warum als Programmiersprache verwenden? Ein einfaches -Programm erstellen, übersetzen

Mehr

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter Die Programmiersprache Java Dr. Wolfgang Süß Thorsten Schlachter Eigenschaften von Java Java ist eine von der Firma Sun Microsystems entwickelte objektorientierte Programmiersprache. Java ist......a simple,

Mehr

Programmierung. Programme, Compiler, virtuelle Maschinen, Java

Programmierung. Programme, Compiler, virtuelle Maschinen, Java Programmierung Programme, Compiler, virtuelle Maschinen, Java Programme Ein Programm ist eine Folge von Anweisungen, die einem Computer sagen, was er tun soll tuwas.c for(int i=0; i=0; i

Mehr

Einführung in die Programmiertechnik

Einführung in die Programmiertechnik Einführung in die Programmiertechnik Programmiersprachen Algorithmen und Programme Computer führt Berechnungen auf deterministische Weise aus bei gleicher Eingabe und gleichem inneren Zustand erzeugt er

Mehr

Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik

Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik Programmieren I Die Programmiersprache Java KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Eigenschaften von Java Java ist eine

Mehr

Kapitel 3. Mein erstes C-Programm

Kapitel 3. Mein erstes C-Programm Kapitel 3 Mein erstes C-Programm 1 Gliederung Kapitel 3 Mein erstes C-Programm 3.1 Einleitung 3.2 Mein erstes C-Programm 3.3 Zusammenfassung 2 Problem Algorithmus Mittelwert für Messwerte berechnen DGL

Mehr

VBA-Programmierung: Zusammenfassung

VBA-Programmierung: Zusammenfassung VBA-Programmierung: Zusammenfassung Programmiersprachen (Definition, Einordnung VBA) Softwareentwicklung-Phasen: 1. Spezifikation 2. Entwurf 3. Implementierung Datentypen (einfach, zusammengesetzt) Programmablaufsteuerung

Mehr

Vorlesung 2: Programmieren mit C

Vorlesung 2: Programmieren mit C Vorlesung 2: Programmieren mit C URL zur Lehrveranstaltung http://www.fbmnd.fh-frankfurt.de/~raimann Folien zur Vorlesung, Übungsaufgaben,... Dr. J. Raimann 1 Dev C++ Kostenlose C/C++-Entwicklungsumgebung

Mehr

2 Grundlagen der Programmierung

2 Grundlagen der Programmierung 2 Grundlagen der Programmierung In diesem Kapitel bereiten wir die Grundlagen für ein systematisches Programmieren. Wichtigstes Ziel ist dabei die Herausarbeitung der fundamentalen Konzepte von Programmiersprache.

Mehr

Ein Streifzug durch die Programmiersprachenlandschaft in der Schule. Gerald Futschek TU Wien Informatiktag 2013

Ein Streifzug durch die Programmiersprachenlandschaft in der Schule. Gerald Futschek TU Wien Informatiktag 2013 Ein Streifzug durch die Programmiersprachenlandschaft in der Schule Gerald Futschek TU Wien Informatiktag 2013 Urwald der Programmiersprachen COBOL Visual Basic Modula-2 Logo Pascal SQL APL BASIC LISP

Mehr

Modellierung und Programmierung 1

Modellierung und Programmierung 1 Modellierung und Programmierung 1 Prof. Dr. Sonja Prohaska Computational EvoDevo Group Institut für Informatik Universität Leipzig 21. Oktober 2015 Automat versus Computer Ein Automat ist eine Maschine,

Mehr

Organisatorisches. Einführung in die Programmierung in C Hochschule Regensburg 13.03.2012.-13.07.2012 Universitätsstraße 31, 93053 Regensburg

Organisatorisches. Einführung in die Programmierung in C Hochschule Regensburg 13.03.2012.-13.07.2012 Universitätsstraße 31, 93053 Regensburg Organisatorisches Einführung in die Programmierung in C Hochschule Regensburg 13.03.2012.-13.07.2012 Universitätsstraße 31, 93053 Regensburg Prof. Dr. Jan Dünnweber Wenn Sie kommen...... kommen Sie pünktlich

Mehr

Python ist leicht zu erlernen, unterstützt mehrere Programmierparadigmen und ist klar strukturiert.

Python ist leicht zu erlernen, unterstützt mehrere Programmierparadigmen und ist klar strukturiert. 1 Einführung In diesem Kapitel wird die moderne Programmiersprache Python vorgestellt. Nach einigen Bemerkungen zur Installation dieser Sprache wird gezeigt, wie Python interaktiv ausgeführt werden kann.

Mehr

In den weiterführenden Vorlesungen

In den weiterführenden Vorlesungen 1.1 Inhalte dieser und weiterer Vorlesungen Elemente der sog. Strukturierten Programmierung zur Darstellung der Algorithmen (Kontrollstrukturen, Methoden) Datentypen (Datenstrukturen) zusammen --> Objekte!

Mehr

Java Einführung Programmcode

Java Einführung Programmcode Java Einführung Programmcode Inhalt dieser Einheit Programmelemente Der erste Programmcode Die Entwicklungsumgebung: Sun's Java Software Development Kit (SDK) Vom Code zum Ausführen des Programms 2 Wiederholung:

Mehr

Einführung in die Programmierung mit Java

Einführung in die Programmierung mit Java Einführung in die Programmierung mit Java Martin Wirsing in Zusammenarbeit mit Moritz Hammer und Axel Rauschmayer SS 06 Ziele Begriffsbildungen: Informatik, Algorithmus, Programm... Warum Java als Programmiersprache

Mehr

Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik

Programmieren I. Die Programmiersprache Java. www.kit.edu. Institut für Angewandte Informatik Programmieren I Die Programmiersprache Java KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Eigenschaften von Java Java ist eine

Mehr

1 Allgemeines. Informatik I: Einführung in die Programmierung 2. Erste Schritte in Python. Die Programmiersprache Python... Programmiersprachen

1 Allgemeines. Informatik I: Einführung in die Programmierung 2. Erste Schritte in Python. Die Programmiersprache Python... Programmiersprachen 1 Informatik I: Einführung in die Programmierung 2. Erste Schritte in Python Albert-Ludwigs-Universität Freiburg Bernhard Nebel 20. & 23. Oktober 2015 20. & 23. Oktober 2015 B. Nebel Info I 3 / 39 Programmiersprachen

Mehr

Programmieren ++ Begleitende Übungen zu Veranstaltungen + Umsetzen des Algorithmus in ein lauffähiges Programm

Programmieren ++ Begleitende Übungen zu Veranstaltungen + Umsetzen des Algorithmus in ein lauffähiges Programm Studienanforderungen Studiengang Maschinenbau Programmieren Begleitende Übungen zu Veranstaltungen Umsetzen des Algorithmus in ein lauffähiges Programm Studiengang Bauingenieurwesen Programmieren Begleitende

Mehr

Einführung in die Programmierung mit Java

Einführung in die Programmierung mit Java Einführung in die Programmierung mit Java Martin Wirsing 2 Ziele Begriffsbildungen: Informatik, Algorithmus, Programm... Warum Java als Programmiersprache verwenden? Ein einfaches Java-Programm erstellen,

Mehr

Organisatorisches/Einstieg

Organisatorisches/Einstieg 1/31 Organisatorisches/Einstieg Florian Adamsky, B. Sc. (PhD cand.) florian.adamsky@iem.thm.de http://florian.adamsky.it/ cbd Softwareentwicklung im WS 2014/15 2/31 Outline 1 Motivation Theoretische Grundlagen

Mehr

Problemorientierte Programmiersprachen Nachteile von Programmen in Maschinensprache sehr aufwendig bei komplexeren Aufgabenstellungen fehleranfällig

Problemorientierte Programmiersprachen Nachteile von Programmen in Maschinensprache sehr aufwendig bei komplexeren Aufgabenstellungen fehleranfällig Problemorientierte Programmiersprachen Nachteile von Programmen in Maschinensprache sehr aufwendig bei komplexeren Aufgabenstellungen fehleranfällig schwer verständlich nicht portabel, d.h. nicht auf Rechner

Mehr

Einführung zu den Übungen aus Softwareentwicklung 1

Einführung zu den Übungen aus Softwareentwicklung 1 Einführung zu den Übungen aus Softwareentwicklung 1 Dipl.-Ing. Andreas Riener Universität Linz, Institut für Pervasive Computing Altenberger Straße 69, A-4040 Linz riener@pervasive.jku.at SWE 1 // Organisatorisches

Mehr

Brückenkurs Programmieren - Sommersemerster 2013

Brückenkurs Programmieren - Sommersemerster 2013 Brückenkurs Programmieren - Sommersemerster 2013 Tag 1 Ivo Senner Technische Hochschule Mittelhessen 30. September 2013 Ivo Senner (THM) Brückenkurs Programmieren 30. September 2013 1 / 41 Inhalt 1 Dieser

Mehr

Einführung in die Programmierung WS 2014/15. 2. Algorithmus, Berechenbarkeit und Programmiersprachen 2-1

Einführung in die Programmierung WS 2014/15. 2. Algorithmus, Berechenbarkeit und Programmiersprachen 2-1 Einführung in die Programmierung WS 2014/15 2. Algorithmus, Berechenbarkeit und Programmiersprachen 2-1 2. Alg., Ber. & PS Inhalt 1. Algorithmen 2. Programmiersprachen Algorithmus und Programm(iersprache)

Mehr

Java. Warum Programmierung? Programmierung Beispiel Taschenrechner

Java. Warum Programmierung? Programmierung Beispiel Taschenrechner Java Programmierung Höhere Programmiersprachen Java als Programmiersprache Aufbau der Java-Software Verwendung von JOE 201-1 Warum Programmierung? Prozessor versteht nur Folgen von 0 und 1 Wie erstellt

Mehr

09.10.2015. 02.10.2015 + 07.10.2015 Seite 1. 02.10.2015 + 07.10.2015 Seite 2

09.10.2015. 02.10.2015 + 07.10.2015 Seite 1. 02.10.2015 + 07.10.2015 Seite 2 02.10.2015 + 07.10.2015 Seite 1 02.10.2015 + 07.10.2015 Seite 2 1 Anzahl der Klassenarbeiten: Mindestens zwei Klassenarbeiten pro Halbjahr (= 4 KA pro Jahr) Im ersten Ausbildungsjahr gibt es jedoch kein

Mehr

2D22 Prinzipien der Softwareentwicklung. Prinzipien der Softwareentwicklung S. Strahringer 1

2D22 Prinzipien der Softwareentwicklung. Prinzipien der Softwareentwicklung S. Strahringer 1 2D22 1 Inhalte der Lehrveranstaltung Einführung in die Programmierung mit PHP Literatur: Theis, Thomas (2010): Einstieg in PHP 5.3 und MySQL 5.4. [für Programmieranfänger geeignet]. 6., aktualisierte Aufl.

Mehr

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH Java Einleitung - Handout Kurzbeschreibung: Eine kleine Einführung in die Programmierung mit Java. Dokument: Autor: Michael Spahn Version 1.0 Status: Final Datum: 23.10.2012 Vertraulichkeit: öffentlich

Mehr

1. Java Grundbegriffe

1. Java Grundbegriffe 1. Java Grundbegriffe Geschichte von Java Programmieren mit Java Interpretieren vs. Kompilieren Java Byte-Code Jave Virtual Machine Arbeitsmaterialien Allgemeine Informatik 2 SS09 Folie 1.1 Java, eine

Mehr

Softwaretechnik. Wesentliche Inhalte der Vorlesung

Softwaretechnik. Wesentliche Inhalte der Vorlesung Softwaretechnik Prof. Dr. Bernhard Schiefer schiefer@informatik.fh-kl.de http://www.informatik.fh-kl.de/~schiefer Prof. Dr. Bernhard Schiefer 1-1 Wesentliche Inhalte der Vorlesung Phasen der Software-Entwicklung

Mehr

Prof. Dr.-Ing. Dietrich Schröder GIS und Programmiersprachen: Wohin geht die Reise?

Prof. Dr.-Ing. Dietrich Schröder GIS und Programmiersprachen: Wohin geht die Reise? Prof. Dr.-Ing. Dietrich Schröder GIS und Programmiersprachen: Wohin geht die Reise? 1954 1960 1965 1970 1975 1980 1985 1990 1995 01 02 03 04 40 Jahre Programmierenausbildung im Studiengang VG Programmiersprachen

Mehr

Willkommen zur Vorlesung. Objektorientierte Programmierung Vertiefung - Java

Willkommen zur Vorlesung. Objektorientierte Programmierung Vertiefung - Java Willkommen zur Vorlesung Objektorientierte Programmierung Vertiefung - Java Zum Dozenten Mein Name: Andreas Berndt Diplom-Informatiker (TU Darmstadt) Derzeit Software-Entwickler für Web- Applikationen

Mehr

Coma I. Einleitung. Computer und Algorithmen. Programmiersprachen. Algorithmen versus Programmiersprachen. Literaturhinweise

Coma I. Einleitung. Computer und Algorithmen. Programmiersprachen. Algorithmen versus Programmiersprachen. Literaturhinweise Coma I Einleitung 1 Computer und Algorithmen Programmiersprachen Algorithmen versus Programmiersprachen Literaturhinweise 2 Computer und Algorithmen Programmiersprachen Algorithmen versus Programmiersprachen

Mehr

Einführung in die Programmiersprache Python

Einführung in die Programmiersprache Python Einführung in die Programmiersprache Python Dipl.-Inf. Frank Hofmann 10. April 2007 Zielsetzung Fragen, die sich jeder stellt Kann ich damit Programmieren lernen? Hilfe! Noch eine Programmiersprache?!

Mehr

Stichworte zur Ideengeschichte der Programmiersprachen

Stichworte zur Ideengeschichte der Programmiersprachen Stichworte zur Ideengeschichte der Programmiersprachen Faculty of Technology robert@techfak.uni-bielefeld.de Vorbemerkung Diese Notzien dienen zur Erläuterung des O Reilly Posters über die Entwicklung

Mehr

L4. Erster Schritt zum Programmieren

L4. Erster Schritt zum Programmieren L4. Erster Schritt zum Programmieren 1 Programmierung in Hoch Beispielprogramme in FORTRAN, PASCAL und C Die Programmiersprache C Erstellung und Übersetzung eines C-Programms Das Programm Hello World Eingabe

Mehr

Vorlesung Informatik II

Vorlesung Informatik II Vorlesung Informatik II Universität Augsburg Wintersemester 2011/2012 Prof. Dr. Bernhard Bauer Folien von: Prof. Dr. Robert Lorenz Lehrprofessur für Informatik 02. JAVA: Erstes Programm 1 Das erste Java-Programm

Mehr

Modellierung und Programmierung 1

Modellierung und Programmierung 1 Modellierung und Programmierung 1 Prof. Dr. Sonja Prohaska Computational EvoDevo Group Institut für Informatik Universität Leipzig 21. Oktober 2015 Entstehung von Java 1991 entwickeln Mike Sheridan, James

Mehr

DLLs (dynamic loaded libraries) mit MingW erstellen

DLLs (dynamic loaded libraries) mit MingW erstellen DLLs (dynamic loaded libraries) mit MingW erstellen Autor: Michel D. Schmid Datum: April 2, 2009 Contents 1 Einführung 1 1.1 Open-Source Tools.......................................... 1 2 Beispiel 1:

Mehr

Programmierkurs Python I

Programmierkurs Python I Programmierkurs Python I Michaela Regneri 2009-10-30 (Folien basieren auf dem gemeinsamen Kurs mit Stefan Thater, der für diese Vorlesung auf Alexander Kollers Java-Kurs basierte) Organisatorisches Wöchentliche

Mehr

Vorlesung Objektorientierte Softwareentwicklung. Kapitel 0. Java-Überblick

Vorlesung Objektorientierte Softwareentwicklung. Kapitel 0. Java-Überblick Vorlesung Objektorientierte Softwareentwicklung Sommersemester este 2008 Kapitel 0. Java-Überblick Was sind die Ziele? Warum Java? Komplexe Anwendungen e-business verteilt zuverlässig sicher mobil persistent

Mehr

4. Objektorientierte Programmierung mit C++

4. Objektorientierte Programmierung mit C++ 4. Objektorientierte Programmierung mit C++ Einführung C++ / Entwicklung/ Sprachfamilie Nicht objektorientierte Erweiterungen von C Grundlagen des Typkonzepts von C++ Ziele der Objektorientierung Objekt

Mehr

Programmierkurs Java. Grundlagen. Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.

Programmierkurs Java. Grundlagen. Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck. Programmierkurs Java Grundlagen Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer #2 Algorithmen, Maschinen- und Programmiersprachen Algorithmen

Mehr

Programmiervorkurs. Organisation: Steffen Gebert, Alexander Wolff. Tutoren: Jürgen Zöller, Jonathan Stoll. Wintersemester 2012/2013

Programmiervorkurs. Organisation: Steffen Gebert, Alexander Wolff. Tutoren: Jürgen Zöller, Jonathan Stoll. Wintersemester 2012/2013 Programmiervorkurs Wintersemester 2012/2013 Organisation: Steffen Gebert, Alexander Wolff Tutoren: Jürgen Zöller, Jonathan Stoll Kontakt (für Organisatorisches, Fehler auf Folien...): Steffen Gebert steffen.gebert@informatik.uni-wuerzburg.de

Mehr

Programmieren in Python

Programmieren in Python 1. Was ist Python? Albert-Ludwigs-Universität Freiburg KI-Praktikum, Sommersemester 2009 Was ist Python? Kurz: Python ist eine objektorientierte Skriptsprache. Ausführlicher: Python ist eine... objektorientierte,

Mehr

Ein Blick voraus. des Autors von C++: Bjarne Stroustrup. 04.06.2005 Conrad Kobsch

Ein Blick voraus. des Autors von C++: Bjarne Stroustrup. 04.06.2005 Conrad Kobsch Ein Blick voraus des Autors von C++: Bjarne Stroustrup 04.06.2005 Conrad Kobsch Inhalt Einleitung Rückblick Nur eine Übergangslösung? Was würde C++ effektiver machen? Quelle 2 Einleitung Wo steht C++,

Mehr

Ergebnisse der Untersuchung zur Eignung einer Programmiersprache für die schnelle Softwareentwicklung kann der Informatikunterricht davon profitieren?

Ergebnisse der Untersuchung zur Eignung einer Programmiersprache für die schnelle Softwareentwicklung kann der Informatikunterricht davon profitieren? Ergebnisse der Untersuchung zur Eignung einer Programmiersprache für die schnelle Softwareentwicklung kann der Informatikunterricht davon profitieren? Zur Diplomarbeit: Eignet sich die Skriptsprache Python

Mehr

1. Formulieren Sie den Algorithmus nach den oben genannten Kriterien.

1. Formulieren Sie den Algorithmus <Bedienung eines Getränkeautomaten> nach den oben genannten Kriterien. Java 1 Einführung Grundlegende Übungsaufgaben Arbeitsauftrag 1.1 1. Formulieren Sie den Algorithmus nach den oben genannten Kriterien. Beispiel: Bedienung eines Getränkeautomaten

Mehr

Java - Einführung in die Programmiersprache. Leibniz Universität IT Services Anja Aue

Java - Einführung in die Programmiersprache. Leibniz Universität IT Services Anja Aue Java - Einführung in die Programmiersprache Leibniz Universität Anja Aue Handbücher am RRZN Programmierung. Java: Grundlagen und Einführung Java: Fortgeschrittene Techniken und APIs Java und XML Java -

Mehr

Praktikum im Bereich Praktische Informatik Echtzeitgraphik in C++ und DirectX10. computer graphics & visualization

Praktikum im Bereich Praktische Informatik Echtzeitgraphik in C++ und DirectX10. computer graphics & visualization Praktikum im Bereich Praktische Informatik Echtzeitgraphik in C++ und DirectX10 Übersicht In den ersten Wochen: Einführung in objektorientierte Programmierung mit C++ Anschließend: Einführung in die programmierbare

Mehr

Einführung in die Informatik I

Einführung in die Informatik I Einführung in die Informatik I Algorithmen und deren Programmierung Prof. Dr. Nikolaus Wulff Definition Algorithmus Ein Algorithmus ist eine präzise formulierte Handlungsanweisung zur Lösung einer gleichartigen

Mehr

Informatik Java-Programmierkurs im Rahmen der Berufs- u. Studienorientierung für Schüler. Joliot-Curie-Gymnasium GR 2010 Nico Steinbach

Informatik Java-Programmierkurs im Rahmen der Berufs- u. Studienorientierung für Schüler. Joliot-Curie-Gymnasium GR 2010 Nico Steinbach Informatik Java-Programmierkurs im Rahmen der Berufs- u. Studienorientierung für Schüler Joliot-Curie-Gymnasium GR 2010 Nico Steinbach 0. Organisatorisches Warum habt Ihr euch für den Kurs eingeschrieben?

Mehr

Berner Fachhochschule Hochschule für Technik und Informatik HTI. Kapitel 1. Einstieg in Java. Dr. Elham Firouzi 06.09.10 1

Berner Fachhochschule Hochschule für Technik und Informatik HTI. Kapitel 1. Einstieg in Java. Dr. Elham Firouzi 06.09.10 1 Kapitel 1 Einstieg in Java Dr. Elham Firouzi 06.09.10 1 1 : Einstieg in Java Einleitung Ein erstes Beispiel Berner Fachhochschule Entwicklung von Java-Programmen Applikationen Applets Vor und Nachteile

Mehr

Informatik I: Einführung in die Programmierung

Informatik I: Einführung in die Programmierung Informatik I: Einführung in die Programmierung 2. Erste Schritte in Python Albert-Ludwigs-Universität Freiburg Bernhard Nebel 21. & 24. Oktober 2014 1 21. & 24. Oktober 2014 B. Nebel Info I 3 / 39 Programmiersprachen

Mehr

Selda Garip MatrikelNr.: 0200012 Kennzahl: 533 seldaaa83@hotmail.com

Selda Garip MatrikelNr.: 0200012 Kennzahl: 533 seldaaa83@hotmail.com Selda Garip MatrikelNr.: 0200012 Kennzahl: 533 seldaaa83@hotmail.com Agenda Geschichte der OOP Geschichte von Self Definition Syntax und Semantik Besonderheiten und Anwendungen Vorteile & Nachteile Motivation

Mehr

Java für Anfänger Teil 1: Intro. Programmierkurs 11.-15.10.2010 Manfred Jackel

Java für Anfänger Teil 1: Intro. Programmierkurs 11.-15.10.2010 Manfred Jackel Java für Anfänger Teil 1: Intro Programmierkurs 11.-15.10.2010 Manfred Jackel 1 1. Handwerkszeug Eclipse Workbench mit Java-Compiler Java Runtime Environment Notwendige Software Java Runtime Environment

Mehr

Erste Schritte in Java

Erste Schritte in Java Erste Schritte in Java Im einführenden Kapitel haben wir die Grundbegriffe der imperativen Programmierung an einem Beispiel (Algorithmus von Euklid) kennengelernt. In diesem Kapitel sehen wir uns an einem

Mehr

Programmieren Formulierung eines Algorithmus in einer Programmiersprache

Programmieren Formulierung eines Algorithmus in einer Programmiersprache Zum Titel der Vorlesung: Programmieren Formulierung eines in einer Programmiersprache Beschreibung einer Vorgehensweise, wie man zu jedem aus einer Klasse gleichartiger Probleme eine Lösung findet Beispiel:

Mehr

Einführung in die Computerlinguistik Einführung in Python (1)

Einführung in die Computerlinguistik Einführung in Python (1) Einführung in die Computerlinguistik Einführung in Python (1) Dozentin: Wiebke Petersen 10. Foliensatz Wiebke Petersen Einführung CL 1 Compiler Ein Compiler (auch Übersetzer oder Kompilierer genannt) ist

Mehr

Hello World. Javakurs 2014, 1. Vorlesung. Sebastian Schuck. basierend auf der Vorlage von Arne Kappen. wiki.freitagsrunde.org. 3.

Hello World. Javakurs 2014, 1. Vorlesung. Sebastian Schuck. basierend auf der Vorlage von Arne Kappen. wiki.freitagsrunde.org. 3. Hello World Javakurs 2014, 1. Vorlesung Sebastian Schuck basierend auf der Vorlage von Arne Kappen wiki.freitagsrunde.org 3. März 2014 This work is licensed under the Creative Commons Attribution-ShareAlike

Mehr

Grundlagen der Informatik Übungen 1.Termin

Grundlagen der Informatik Übungen 1.Termin Grundlagen der Informatik Übungen 1.Termin Dr. Ing Natalia Currle-Linde Institut für Höchstleistungsrechnen 1 Kurzvorstellung Dr.-Ing. Natalia Currle-Linde linde@hlrs.de Institut für Höchstleistungsrechnen

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

Java Programmierung auf der Konsole / unter Eclipse

Java Programmierung auf der Konsole / unter Eclipse Fakultät Informatik, HFU Brückenkurs Programmieren 1 Java Programmierung auf der Konsole / unter Eclipse Allgemeine Begriffe Programmiersprache: künstliche Sprache zur Notation von Programmen Programm:

Mehr

WS 2011/2012. Georg Sauthoff 1. November 10, 2011

WS 2011/2012. Georg Sauthoff 1. November 10, 2011 in in WS 2011/2012 Georg 1 AG Praktische Informatik November 10, 2011 1 gsauthof@techfak.uni-bielefeld.de Kontakt in Dr. Georg Email: gsauthof@techfak.uni-bielefeld.de M3-128 in Organisation der Übungen

Mehr

Grundlagen der Informatik II. Teil I: Formale Modelle der Informatik

Grundlagen der Informatik II. Teil I: Formale Modelle der Informatik Grundlagen der Informatik II Teil I: Formale Modelle der Informatik 1 Einführung GdInfoII 1-2 Ziele/Fragestellungen der Theoretischen Informatik 1. Einführung abstrakter Modelle für informationsverarbeitende

Mehr

AKTUEL ZU JAVA 8 PROGRAMMIEREN IN JAVA. 7. Auflage. Im Internet: Alle Beispielprogramme und Lösungen

AKTUEL ZU JAVA 8 PROGRAMMIEREN IN JAVA. 7. Auflage. Im Internet: Alle Beispielprogramme und Lösungen L AKTUEL ZU fritz JOBST JAVA 8 PROGRAMMIEREN IN JAVA 7. Auflage Im Internet: Alle Beispielprogramme und Lösungen 4 1 Der Einstieg in Java keinem Fall zulässig. Die Schreibweisen Hello.java für den Namen

Mehr

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

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

Mehr

Grundlagen der Informatik

Grundlagen der Informatik Grundlagen der Informatik Prof. Dr. Bernhard Schiefer bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer Wesentliche Inhalte Einführung Rechnergrundlagen Grundlagen der Programmierung Kern imperativer

Mehr

0. Einführung. C und C++ (CPP)

0. Einführung. C und C++ (CPP) C und C++ (CPP) 0. Einführung Prof. Dr. Marc Rennhard Institut für angewandte Informationstechnologie InIT ZHAW Zürcher Hochschule für Angewandte Wissenschaften marc.rennhard@zhaw.ch Marc Rennhard, 05.01.2010,

Mehr

Programmierkurs: Delphi: Einstieg

Programmierkurs: Delphi: Einstieg Seite 1 von 6 Programmierkurs: Delphi: Einstieg Aus Wikibooks Inhaltsverzeichnis 1 Einstieg Einstieg Was ist Delphi Borland Delphi ist eine RAD-Programmierumgebung von Borland. Sie basiert auf der Programmiersprache

Mehr

Informatik Programmiersprachen eine kurze Übersicht

Informatik Programmiersprachen eine kurze Übersicht Informatik eine kurze Übersicht Seite 1 natürliche Sprachen (nach Wikipedia) ca 6500 gesprochene Sprachen davon etwa die Hälfte im Aussterben etwa 500 Schriftsprachen mit gedruckten Texten P. Bueghel Turmbau

Mehr

Grundlagen. Kapitel 1

Grundlagen. Kapitel 1 Grundlagen Dieses Kapitel umfasst grundlegende Fragen und Aufgaben zur Erstellung von C++-Programmen. Hierzu zählen auch das Inkludieren von Header-Dateien Eine Header-Datei beinhaltet Informationen, die

Mehr

Einführung in Eclipse und Java

Einführung in Eclipse und Java Universität Bayreuth Lehrstuhl für Angewandte Informatik IV Datenbanken und Informationssysteme Prof. Dr.-Ing. Jablonski Einführung in Eclipse und Java Dipl.Inf. Manuel Götz Lehrstuhl für Angewandte Informatik

Mehr

Informatik I (D-MAVT)

Informatik I (D-MAVT) Informatik I (D-MAVT) Übungsstunde 1 simon.mayer@inf.ethz.ch Distributed Systems Group, ETH Zürich kurze Stunden mit Stoffueberblick -> mehr Zeit fuer Fragen This semester s menu... Imperative Programmierung

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum

Mehr

Hochschule Darmstadt Prof.Dr. H.P.Weber. Informatik 1. 2006 Pearson Education, Inc. All rights reserved.

Hochschule Darmstadt Prof.Dr. H.P.Weber. Informatik 1. 2006 Pearson Education, Inc. All rights reserved. 1 Inf 1 Hochschule Darmstadt Prof.Dr. H.P.Weber Informatik 1 2 Inhalt von Informatik 1 1 Einführung 2 Grundelemente der C Programmierung 3 Kontrollanweisungen: Teil 1 4 Kontrollanweisungen: Teil 2 5 Funktionen

Mehr

Technische Probleme lösen mit C/C++

Technische Probleme lösen mit C/C++ Technische Probleme lösen mit C/C++ Von der Analyse bis zur Dokumentation von Norbert Heiderich, Wolfgang Meyer 1. Auflage Hanser München 2010 Verlag C.H. Beck im Internet: www.beck.de ISBN 978 3 446 42382

Mehr

Einleitung und Begriffliches. Einleitung. Programmiersprachen. Software-Komplexität ist inhärent und hat vor allem folgende Ursachen

Einleitung und Begriffliches. Einleitung. Programmiersprachen. Software-Komplexität ist inhärent und hat vor allem folgende Ursachen Einleitung Einleitung und Begriffliches Software-Komplexität ist inhärent und hat vor allem folgende Ursachen Komplexität des gegebenen Problems Schwierigkeiten beim Management des Entwicklungsprozesses

Mehr

4 Ausklang. ALP 2, Hannes Federrath, Sommersemester 2001

4 Ausklang. ALP 2, Hannes Federrath, Sommersemester 2001 ALP 2, Hannes Federrath, Sommersemester 2001 4 Ausklang Inhalt des Kapitels im Überblick: In diesem Kapitel sollen zum Ausklang der Vorlesung folgende Schwerpunkte behandelt werden: Software-Entwicklungsprozess

Mehr