Algorithmen und Programmieren II Konzepte imperativer und objektorientierter Programmierung
|
|
- Harry Vogt
- vor 8 Jahren
- Abrufe
Transkript
1 Algorithmen und Programmieren II Konzepte imperativer und objektorientierter Programmierung SS 2012 Prof. Dr. Margarita Esponda 1
2 Inhalt Inhalt 1. Konzepte imperativer Programmierung (Python) 2. Formale Verfahren zur Spezifikation und Verifikation imperativer Programme 3. Konzepte objektorientierter Programmierung (Java) 4. Programmiermethodik 5. Analyse von Laufzeit und Speicherbedarf 6. Berechenbarkeit 2
3 Inhalt Inhalt (1. Teil) 1. Konzepte imperativer Programmierung Syntax und operationelle Semantik imperativer Programmiersprachen Python als Beispiel 2. Formale Verfahren zur Spezifikation und Verifikation imperativer Programme Bedingungen im Zustandsraum (assertions) Hoare-Kalkül und partielle Korrektheit von Programmen Termination von Programmen 3
4 Inhalt Inhalt (2. Teil) 3. Konzepte objektorientierter Programmierung (Java) Primitive und Zusammengesetzte Datentypen, Methoden (Prozeduren und Funktionen), Parameterübergabe, Überladung Module, Klassen, Objekte Klassenhierarchien, Vererbung, abstrakte Klassen, Schnittstellen, Polymorphie Ausnahmebehandlung (Exceptions) 4
5 Inhalt Inhalt ( Teil) 4. Programmiermethodik Umwandlung von Rekursion in Iteration Teile und herrsche Rücksetzverfahren (Backtracking) Dynamische Programmierung 5. Analyse von Laufzeit und Speicherbedarf O-Notation Analyse von Such- und Sortieralgorithmen Algorithmen und Datenstrukturen 6. Berechenbarkeitsbegriff Universelle Registermaschinen 5
6 Lernziele Unsere Lernziele sind: Programmieren im Kleinen Algorithmen entwerfen und implementieren Grundkonzepte von imperativen Programmiersprachen im allgemeinen beherrschen Datentypen, Anweisungen, Kontrollstrukturen Unterprogramme, Funktionen, Parameterübergabe und Zeigertypen Korrektheit von Programmen analysieren Tests entwerfen und ausführen Konzepte Objektorientierter Programmierung beherrschen Klassen, Objekte, Kapselung, Vererbung, Polymorphie und Datenabstraktion Theoretische Grundlagen kennen Registermaschinen als Berechenbarkeitsmodell Hoare-Kalkül zur Spezifikation / Verifikation 6
7 Literatur Algorithmen und Datenstrukturen Literatur "Algorithmen und Datenstrukturen - Eine Einführung mit Java". 3. Auflage Dpunkt.Verlag, Gunter Saake, Kai-Uwe Sattler. Algorithmen in Java. Robert Sedgewick. Teil Auflage. Introduction to Algorithms. Third Edition. Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein Java-Programmierung (online) The Java Language Specification. Java SE 7 Edition. Oracle America Inc., James Gosling et al. C. Ullenboom: Java ist auch eine Insel, Galileo Computing, 10. Auflage (Online-Version) Thinking in Java. B. Eckel. Prentice Hall 2006 (Online-Version). 7
8 Vorlesung & Übungen Vorlesungen & Übungen Grundlegende Regeln zum Erfolg sind: 1. Regelmäßige und aktive Teilnahme in der Vorlesung Fragen stellen! 2. Regelmäßige und aktive Teilnahme an den Übungen Selbständige Lösung der Übungsblätter! 8
9 Vorlesung & Übungen Tutoren Max Willert Oliver Wiese? Julian Fleischer Alexander Steen? Julius Auer Nicolas Lehmann 9
10 Vorlesung & Übungen Überfüllte Tutorien Tag Uhrzeit Montag Freitag
11 Kriterien des Leistungsnachweises Regelung aus (ALP III bei Prof. Helmut Alt) Regelung für die Notenvergabe: Die Prüfungsnote ergibt sich aus dem Wert max( (z+k)/2, k, (z+n)/2, n ) Zum Bestehen der Prüfung muss dieser Wert mindestens 50 betragen. Dabei sind: - z - die Anzahl der erreichten Punkte in einer Mitte des Semesters stattfindenden Zwischenklausur (Stoff der ersten Semesterhälfte) - k - die Anzahl der erreichten Punkte in einer Ende des Semesters stattfindenden Endklausur (Stoff des ganzen Semesters) - n - die Anzahl der erreichten Punkte in einer Ende der nächsten Semesterferien stattfindenden Nachklausur (Stoff des ganzen Semesters) - Jede Klausur hat dabei eine maximale Punktzahl von
12 Kriterien des Leistungsnachweises Verbesserungsmöglichkeiten Zusätzlich ist es den Teilnehmern möglich durch besonders aktive mündliche Teilnahme an den Tutorien die Gesamtnote um maximal 0,7 zu verbessern. Diese Bewertung wird von den Tutoren individuell vorgenommen. Durch diese Verbesserung kann ein Bestehen der Klausur nicht erreicht werden. Die beste zu erreichende Note ist 1,0. 12
13 Kriterien des Leistungsnachweises Kriterien für die Bestätigung der regelmäßigen und aktiven Teilnahmen: 1. Eine regelmäßige Teilnahme an den Laborterminen ist unerlässlich. 2. Die Abgabe der Übungsblätter erfolgt dienstags um 8:25 Uhr. Nach diesem Termin abgegebene Übungsblätter werden nicht berücksichtigt. 3. Jeder Student muss an mindestens n-2 Übungsterminen anwesend sein. 4. Jeder Student muss n-2 Übungsblätter bestehen. Ein Übungsblatt gilt als bestanden, wenn man mind. 40% der zu erreichenden Punkte erreicht hat. 5. Jeder Student muss 60% der maximal erreichbaren Punktzahl aus allen Übungsblättern erreichen. 6. Jeder Student muss mindestens zwei Mal seine Lösungen vorrechnen. Wer jeweils vorrechnen muss, wird per Zufall am Anfang des jeweiligen Tutoriums entschieden. 13
14 Einführung Kann ein Student von der aktiven Teilnahmen befreit werden? Filtertest Anmelden bestanden? nein passiert nichts! ja Befreiungstest bestanden? nein passiert nichts! ja Aktive Teilnahme 14
15 Einführung Kann ein Student mit guten ALP2-Vorkenntnissen von der aktiven Teilnahme befreit werden? 1. Filtertest am Samstag den um 10:00 Uhr Jeder Student kann daran teilnehmen Eine Anmeldung ist die einzige Voraussetzung (Siehe Veranstaltungsseite) 2. Befreiungstest am Samstag den um 10:00 Uhr nur die Studenten, die den 1.Filtertest bestanden haben, dürfen mitschreiben. Beide Tests müssen bestanden werden, um eine Bestätigung der aktiven Teilnahmen zu bekommen. Ein freiwilliges Sondertutorium wird für diese fortgeschrittenen Studenten eingerichtet Ziel ist es, trotz Vorkenntnisse Neues zu lernen und am Ball zu bleiben als Sicherheit für ein gutes Klausurergebnis. offen auch für andere interessierte Studenten 15
16 Fragen Fragen Inhaltliche Fragen sind immer willkommen während und nach jeder Vorlesung in der Sprechstunde (Freitags 10-12) Keine s mit organisatorischen Fragen! 16
17 Geschichtliche Einführung Wie viele Programmiersprachen? Es gibt mehr als 2000 Programmiersprachen, die im kommerziellen Bereich bekannt sind oder bekannt gewesen sind. mehr als 200 davon haben sich im Laufe der Geschichte stärker verbreitet (einige) Firmen entwickeln eigene private Sprachen es gibt viele akademische Programmiersprachen und es kommen immer mehr Programmiersprachen hinzu 17
18 Geschichtliche Einführung FORTRAN Cobol PROGRAM PRINT *, "WELCOME TO FU!" END PROGRAM IDENTIFICAL DIVISION PROGRAM-ID HELLO ENVIROMENT DIVISION CONFIGURATION SECTION SOURCE-COMPUTER IBM-PC OBJECT-COMPUTER IBM-PC INPUT-OUTPUT SECTION FILE-CONTROL SELECT AUSGABE ASSIGN TO SI DATA DIVISION FILE-SECTION FD AUSGABE LABEL RECORD OMITTED DATA RECORD ZEILE PICTURE X(80) WORKING STORAGE SECTION PROCEDURE DIVISION BEGIN OPEN OUTPUT AUSGABE MOVE "WELCOME TO FU!" TO ZEILE CLOSE AUSGABE STOP RUN. 18
19 Geschichtliche Einführung Konzepte imperativer Programmierung Die eigentliche Geschichte der Programmiersprachen begann mit: dem Konzept der von Neumann-Maschine, die 1945 die Notwendigkeit eines gespeicherten Programms postulierte. und mit dem Konzept des "conditional control transfer" If-then-Anweisung looped-anweisungen Subroutines (Funktionen) 19
20 Geschichtliche Einführung Imperatives Programmieren Ältestes und populärstes Programmierparadigma Fortran, Cobol, Algol, C, Basic, Pascal, Modula, Java, usw. Widerspiegelt die dahinter stehende Hardware- Architektur von Neumann Maschine gespeichertes Programm + Daten 20
21 30er Jahre Erste Programmiersprache Alonzo Church Stephen C. Kleene λ Kalkül Lisp 1958 Funktionale Programmiersprachen Lambda-Kalkül universelle abstrakte Programmiersprache FP Miranda Haskell nur die Hardware fehlte M. Esponda-Argüero 21
22 30er Jahre Alan Turing ( ) On computable numbers, with an application to the Entscheidungsproblem Turing-Maschine Ein Modell, um die Klasse der intuitiv berechenbaren Funktionen zu bilden. M. Esponda-Argüero 22
23 Geschichtliche Einführung Höhere Programmiersprachen Deklarative Sprachen Was? Imperative Sprachen Wie? Prozedurale Funktionale Sprachen Logische Sprachen Objektorientierte Programmiersprachen Aspektorientierte Programmiersprachen in ALP I in ALP II 23
24 Geschichtliche Einführung deklarativ vs. imperativ - Sprachen basieren auf einem mathematischen Formalismus - Wissen über ein Problem rein deklarativ darstellbar - Sprachen sind von der dahinterstehenden Hardware geprägt - Befehlssequenz (Zustände) - Intelligentes System, das Fragen an das Programm beantworten kann - zeitlicher Ablauf im Programm sichtbar kompakter robuster einfacher effizienter 24
25 Konzepte imperativer Programmierung Imperatives Programmieren Grundlegende Operation: die Zuweisung Operation mit Nebeneffekten Speicherinhalte werden verändert und damit der Zustand der gesamten Maschine. Kontrollfluss-Anweisungen unbedingte Sprünge: GOTO-, break-, return-anweisung usw. bedingte Sprünge: if-then-else-anweisung und Loop-Anweisungen (Schleifen). 25
26 Konzepte imperativer Programmierung Grundlegende Elemente von imperativen Programmen Definitionen von Datentypen Deklarationen von Variablen unter Verwendung vordefinierter Datentypen Zuweisungen Ausdrücke Anweisungen für den Kontrollfluss innerhalb des Programms Gültigkeitsbereich von Variablen (locality of reference) Definition von Prozeduren und Funktionen 26
27 Konzepte imperativer Programmierung Wir werden grundlegende Konzepte der Imperativen Programmierung mit Beispielen in Python behandeln und als Vergleich manchmal C-Beispiele diskutieren. Konzepte der Objektorientierten Programmierung werden wir anhand der Programmiersprache Java diskutieren. 27
28 Warum Python? Warum Python? Einfache Syntax und Semantik Einfache Programmierumgebung Hybride Programmiersprache (Multi-Paradigma) Ermöglicht zuerst nur das rein imperative Programmieren Höhere Datenstrukturen sind in der Sprache integriert Plattformunabhängig In der realen Welt verwendete Sprache Umfangreiche Standardbibliothek 28
29 Warum Python? Warum Python? Einfache Syntax und Semantik Python is an experiment in how much freedom programmers need. Erfinder: Guido van Rossum Too much freedom and nobody can read another's code; too little and expressiveness is endangered. - Guido van Rossum 29
30 Warum Python? M. Esponda-Argüero 30
31 Warum C nicht? Warum C nicht? Hochprogrammiersprachen C-Sprache C wurde ursprünglich für die Programmierung von Betriebssystemen entworfen. Assemblersprachen 31
32 Warum C nicht? Eigenschaften von C Gute Der Programmierer kann machen, was er will. Schlechte Der Programmierer kann machen, was er will. Der C-Compiler geht davon aus, dass der Programmierer genau weiß, was er will, und meldet fast keine Warnungen beim Übersetzen des Programms. Die meisten Fehler bei C-Programmen treten erst zur Laufzeit auf. 32
33 Warum C nicht? C ist eine formatfreie Sprache! m(f,a,s)char*s; {char c;return f&1?a!=*s++?m(f,a,s):s[11]:f&2?a!=*s++?1+m(f,a,s):1:f&4?a--? putchar(*s),m(f,a,s):a:f&8?*s?m(8,32,(c=m(1,*s++,"arjan Kenter. \no$../.\""), m(4,m(2,*s++,"pocnwauvbvxrsoqatkjurgxyydqbzhlwknjdmtgeischfmplizef"),&c),s)): 65:(m(8,34,"rgeQjPruaOnDaPeWrAaPnPrCnOrPaPnPjPrCaPrPnPrPaOrvaPndeOrAnOrPnOrP\ noapnpjpaorpnprpnprptpnpraapnbrnnsrnnbapeorcnproncapnoapnpjptpnaapnprpnprcapn\ BrAnxrAnVePrCnBjPrOnvrCnxrAnxrAnsrOnvjPrOnUrOnornnsrnnorOtCnCjPrCtPnCrnnirWtP\ ncjprcapnotprcneranojpronvtpnnrcnnrnnrepjprptnrunnrntpnbtpraapncrnnorpjprrtpn\ CaPrWtCnKtPnOtPrBnCjPronCaPrVtPnOtOnAtnrxaPnCjPrqnnaPrtaOrsaPnCtPjPratPnnaPrA\ apnaaptpnnaprvapnnjprktpnwaorwtonnapnwaprcapnntojprrtonwanrotpncapnbtcjpryton\ UaOrPnVjPrwtnnxjPrMnBjPrTnUjP"),0);} main(){return m(0,75,"miwltouqjgsbnikyvtxodafbucfzspmwnchegrdlapkyvrjxeqzh");} smile.c The International Obfuscated C Code Contest 33
34 Konzepte imperativer Programmierung Java public class HelloWorldProgram { public static void main ( String[] args ) { System.out.println( "Welcome to FU!" ); } } 34
35 Konzepte imperativer Programmierung C #include <stdio.h> int main(void){ printf( "'Welcome to FU!'\n" ); return 0; } 35
36 Konzepte imperativer Programmierung Python print ('Welcome to FU!') Python 3.x 36
37 In der realen Welt verwendete Sprachen Normalisierte Ergebnisse aus der Popularität in: - Open-Source-Projekte - Powell`s Books - Job-Angebot - Popularität in der Software-Industrie - Google Code Search - usw. Quelle: (DedaSys. Open Source Consulting) 2011
38 Popularität der Programmiersprachen - Android-Anwendungen - mehr als Quelle: TIOBE Programming Community Index for April 2011
39 Keine Laptops NO LAPTOPS M. Esponda-Argüero 39
40 Mitschriften Hörsaal der Zukunft? 40
41 Homepage Homepage Vorlesungsfolien Literaturliste Übungen Zusätzliches Material Wichtige Mittteilungen Sprechstunde: Fr. 10:00-12:00 Uhr Raum
42 Mitschriften Warum ist Mitschreiben wichtig? Das Mitschreiben hat folgende Vorteile: Es erhöht die Aufmerksamkeit und fördert die Konzentration Es regt dazu an, sich aktiv zu beteiligen Es individualisiert den Lernstoff und bildet eine gute Grundlage für die Klausurvorbereitung Fragen zuerst aufzuschreiben hat viele Vorteile. 42
43 Attack of the Note Sheep 43
44 Ich freue mich auf eine gute Zusammenarbeit und auf ein erfolgreiches Lernen! 44
Algorithmen und Programmieren II Konzepte imperativer und objektorientierter Programmierung
Algorithmen und Programmieren II Konzepte imperativer und objektorientierter Programmierung SS 2010 Prof. Dr. Margarita Esponda Prof. Dr. Margarita Esponda 1 Inhalt (Teil I) Konzepte imperativer Programmierung
MehrALP I Geschichtliche Einführung in die Programmiersprachen
ALP I Geschichtliche Einführung in die Programmiersprachen Sammet, J. Programming Languages. History and Fundamentals. Prentice Hall, 1969. SS 2011 1 Wie viele Programmiersprachen? Es gibt mehr als 2000
MehrPraktische Informatik 1
Praktische Informatik 1 Imperative Programmierung und Objektorientierung Karsten Hölscher und Jan Peleska Wintersemester 2011/2012 Session 1 Ziele der Veranstaltung Imperative Programmierung... Konzepte
MehrAlgorithmen 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
Mehr1. 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
MehrEinführung in die Informatik
Einführung in die Informatik Einleitung Organisatorisches, Motivation, Herangehensweise Wolfram Burgard 1.1 Vorlesung Zeit und Ort: Dienstags 10:00-12:00 Uhr Donnerstags 10:00-12:00 Uhr Gebäude 101 HS
MehrInformatikgrundlagen (WS 2015/2016)
Informatikgrundlagen (WS 2015/2016) Klaus Berberich (klaus.berberich@htwsaar.de) Wolfgang Braun (wolfgang.braun@htwsaar.de) 0. Organisatorisches Dozenten Klaus Berberich (klaus.berberich@htwsaar.de) Sprechstunde
MehrInstitut für Telematik Universität zu Lübeck. Programmieren. Kapitel 0: Organisatorisches. Wintersemester 2008/2009. Prof. Dr.
Institut für Telematik Universität zu Lübeck Programmieren Kapitel 0: Organisatorisches Wintersemester 2008/2009 Prof. Dr. Christian Werner 1-2 Überblick Ziele Inhaltsüberblick Ablauf der Veranstaltung
MehrListe Programmieren - Java
Liste Programmieren - Java Fachhochschule Wiesbaden, FB Informatik Studiengang Allgemeine Informatik Vorlesung im WS 2004/2005 Kapitel 1-9 1 Ziele Ausbau der bisherigen Fertigkeiten und Techniken des objektorientierten
MehrProgrammierung 2. Organisatorisches. Sebastian Hack. Klaas Boesche. Sommersemester 2012. hack@cs.uni-saarland.de. boesche@cs.uni-saarland.
1 Programmierung 2 Organisatorisches Sebastian Hack hack@cs.uni-saarland.de Klaas Boesche boesche@cs.uni-saarland.de Sommersemester 2012 2 Wer sind wir? Dozent Assistent Sebastian Hack Gebäude E1 3 Raum
MehrAlgorithmen und Berechnungskomplexität I
Institut für Informatik I Wintersemester 2010/11 Organisatorisches Vorlesung Montags 11:15-12:45 Uhr (AVZ III / HS 1) Mittwochs 11:15-12:45 Uhr (AVZ III / HS 1) Dozent Professor für theoretische Informatik
MehrEinführung in die Programmierung
Einführung in die Programmierung PD Dr. Peer Kröger, Dr. Andreas Züfle, Daniel Kaltenthaler, Klaus Schmid Ludwig-Maximilians-Universität München, Institut für Informatik, LFE Datenbanksysteme Wintersemester
MehrFunktionale Programmierung (in Clojure)
Funktionale Programmierung (in Clojure) Einführung Burkhardt Renz Fachbereich MNI Technische Hochschule Mittelhessen Wintersemester 2014/15 Übersicht Paradigmen von Programmiersprachen Paradigmen von Programmiersprachen
MehrObjektorientierte Programmierung OOP
Objektorientierte Programmierung OOP Objektorientierte Programmierung OOP Ronja Düffel WS2012/13 08. Oktober 2013 Objektorientierte Programmierung OOP Objektorientierte Programmierung Objektorientierte
MehrPrinzipien Objektorientierter Programmierung
Prinzipien Objektorientierter Programmierung Valerian Wintner Inhaltsverzeichnis 1 Vorwort 1 2 Kapselung 1 3 Polymorphie 2 3.1 Dynamische Polymorphie...................... 2 3.2 Statische Polymorphie........................
MehrEinführung in die Informatik
Einführung in die Informatik Einleitung Organisatorisches, Motivation, Herangehensweise Wolfram Burgard Cyrill Stachniss 0.1 Vorlesung Zeit und Ort: Mo 16.00 18.00 Uhr Gebäude 101, HS 00-026 Informationen
MehrKontakt. Programmierkurs. Webseite. Ziel des Kurses
Kontakt Programmierkurs Birgit Engels, Anna Schulze ZAIK Universität zu Köln WS 07/08 Vorlesung: Mittwochs 14:00-16:00 Uhr Hörsaal I der Physik Sprechstunde: nach Vereinbarung Weyertal 80 Dachgeschoss
MehrAlgorithmen und Programmierung I Funktionale Programmierung
Algorithmen und Programmierung I Funktionale Programmierung WS 2012/2013 Prof. Dr. Margarita Esponda 1 Inhalt Inhalt 1. Einführung in die Funktionale Programmierung (Haskell): 2. Grundlagen der Berechenbarkeit:
MehrEinführung und Motivation
Einführung und Motivation Programmiermethodik Eva Zangerle Universität Innsbruck Ziele der Vorlesung Grundlagen der Programmierung vertiefen Anknüpfen an Wissen aus Einführung in die Programmierung Grundkonzepte
MehrModulhandbuch für das BA Kombinationsfach Angewandte Informatik Multimedia
Modulhandbuch für das BA Kombinationsfach Angewandte Informatik Multimedia Kenntnisse im Programmieren für das World Wide Web mit der Programmiersprache JAVA werden vermittelt, ebenso das Erstellen von
MehrAlgorithmen mit Python
Algorithmen mit Python Vorbesprechung zum Proseminar im Sommersemester 2009 http://www.python.org 1 Sie lernen in DAP Java und C/C++: 80% Syntax, 20% Algorithmen-Design Idee Schon ein einfaches Hello World
MehrProgrammieren I. Überblick. www.kit.edu. Institut für Angewandte Informatik
Programmieren I Überblick KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Übersicht Programmieren Programmieren I (1. Semester)
MehrEinführung in die objektorientierte Programmierung mit Java. Klausur am 19. Oktober 2005
Einführung in die objektorientierte Programmierung mit Java Klausur am 19. Oktober 2005 Matrikelnummer: Nachname: Vorname: Semesteranzahl: Die Klausur besteht aus drei Frageblöcken zu den Inhalten der
MehrHistorischer Abriss. 1956 Fortran Backus (IBM) Formula Translator. 1960 Algol 60 Naur et al. Algorithmic Language
Vorbemerkungen Dozent Veranstaltung Inhalt Spann (Rechenzentrum des Mathematischen Instituts) Systemadministration der Linux-Netze der Mathematik wissenschaftl. Arbeitsgebiet: Numerische Mathematik 1.
MehrObjektorientierte Programmierung
Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum
MehrIT-Basics 2. DI Gerhard Fließ
IT-Basics 2 DI Gerhard Fließ Wer bin ich? DI Gerhard Fließ Telematik Studium an der TU Graz Softwareentwickler XiTrust www.xitrust.com www.tugraz.at Worum geht es? Objektorientierte Programmierung Konzepte
MehrKapitel 0: Organisatorisches
Einführung in die Praktische Informatik Wintersemester 2009 / 2010 Kapitel 0: Organisatorisches Prof. Dr. Manfred Reichert Andreas Lanz, Rüdiger Pryss Universität Ulm Institut für Datenbanken und Informationssysteme
MehrObjektorientierte Programmierung für Anfänger am Beispiel PHP
Objektorientierte Programmierung für Anfänger am Beispiel PHP Johannes Mittendorfer http://jmittendorfer.hostingsociety.com 19. August 2012 Abstract Dieses Dokument soll die Vorteile der objektorientierten
MehrProgrammieren 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
MehrInformatik 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?
MehrProgrammieren I. Administratives / Java Installation. Thomas Vetter, Brian Amberg, Andreas Forster. 21. September 2010 UNIVERSITÄT BASEL
Programmieren Administratives / Java nstallation Thomas Vetter, Brian Amberg, Andreas Forster UNVERSTÄT BASEL 21. September 2010 Teil Administratives Allgemein Personen Dozent: Prof. Thomas Vetter Assistenten:
MehrEinführung in die Informatik II
Einführung in die Informatik II Vorlesung Sommersemester 2013 Prof. Dr. Nikolaus Wulff Ziele der Vorlesung Sie vertiefen die Kenntnisse aus Informatik I und runden diese in weiteren Anwendungsgebieten
MehrPHP Kurs Online Kurs Analysten Programmierer Web PHP
PHP Kurs Online Kurs Analysten Programmierer Web PHP Akademie Domani info@akademiedomani.de Allgemeines Programm des Kurses PHP Modul 1 - Einführung und Installation PHP-Umgebung Erste Lerneinheit Introduzione
MehrInnere Klassen in Java
Innere Klassen in Java SS 2012 Prof. Dr. Margarita Esponda Innere Klassen Klassen- oder Interfacedefinitionen können zur besseren Strukturierung von Programmen verschachtelt werden Eine "Inner Class" wird
MehrProgrammieren Lernen mit BYOB. Gerald Futschek 5. November 2012
Programmieren Lernen mit BYOB Informatiktag 2012 Gerald Futschek 5. November 2012 Erste Programmier Schritte in der Schule Sehr viele verschiedene Dinge zu lernen: Syntax und Semantik der Befehle, Algorithmen,
MehrProgrammieren für Ingenieure Sommer 2015. Ein Rechner. Rechner sind überall. Gerät, das mittels programmierbarer Rechenvorschriften Daten verarbeitet.
Programmieren für Ingenieure Sommer 2015 Andreas Zeller, Universität des Saarlandes Ein Rechner Gerät, das mittels programmierbarer Rechenvorschriften Daten verarbeitet. Rechner sind überall Ihr Rechner
MehrKontrollstrukturen - Universität Köln
Kontrollstrukturen - Universität Köln Mario Manno Kontrollstrukturen - Universität Köln p. 1 Was sind Sprachen Auszeichnungssprachen HTML, XML Programmiersprachen ASM, Basic, C, C++, Haskell, Java, Pascal,
MehrVorkurs 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
MehrSWE1 / Übung 2 (19.10.2011)
SWE1 / Übung 2 (19.1.211) Simulation von Algorithmen Testen, Testplan Beispiel arithmetische Ausdrücke Handsimulation von Algorithmen Man versteht einen Algorithmus (insbesonders einen "Fremden"), wenn
MehrJava: Vererbung. Teil 3: super() www.informatikzentrale.de
Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und
MehrKlausur WS 2006/07 Programmiersprache Java Objektorientierte Programmierung II 15. März 2007
Fachhochschule Bonn-Rhein-Sieg University of Applied Sciences Fachbereich Informatik Prof. Dr. Peter Becker Klausur WS 2006/07 Programmiersprache Java Objektorientierte Programmierung II 15. März 2007
MehrEinfü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?!
MehrWintersemester 2010/2011 Rüdiger Westermann Institut für Informatik Technische Universität München
Informatik 1 Wintersemester 2010/2011 Rüdiger Westermann Institut für Informatik Technische Universität München 1 0 Allgemeines Zielgruppen Siehe Modulbeschreibung Studierende anderer (nicht Informatik)
MehrAllgemeines. Verschiedene Sprachkonzepte C-Sprachfamilie C-ähnliche Programmiersprachen Allgemeines zu C. #include <stdio.h>
Allgemeines Verschiedene Sprachkonzepte C-Sprachfamilie C-ähnliche Programmiersprachen Allgemeines zu C #include main() { printf( hello world\n ); } Peter Sobe 1 Die Großfamilie der C-Sprachen
MehrWirtschaftsinformatik I
Wirtschaftsinformatik I - Tutorium 6/ 7 (April 2010) Zusatzinformationen - Lösungsvorschläge Wirtschaftsinformatik I Tutorium Jochen Daum (4.Semester BWL) Universität Mannheim Rechtshinweis: Diese Präsentation
MehrKlausur zur Einführung in die objektorientierte Programmierung mit Java
Klausur zur Einführung in die objektorientierte Programmierung mit Java im Studiengang Informationswissenschaft Prof. Dr. Christian Wolff Professur für Medieninformatik Institut für Medien-, Informations-
MehrHello World. Javakurs 2014, 1. Vorlesung. Sebastian Schuck. basierend auf der Vorlage von Arne Kappen. wiki.freitagsrunde.org. 3.
Hello World Javakurs 2014, 1. Vorlesung Sebastian Schuck basierend auf der Vorlage von Arne Kappen wiki.freitagsrunde.org 3. März 2014 This work is licensed under the Creative Commons Attribution-ShareAlike
MehrComputeranwendung und Programmierung (CuP)
Computeranwendung und Programmierung (CuP) VO: Peter Auer (Informationstechnologie) UE: Norbert Seifter (Angewandet Mathematik) Organisatorisches (Vorlesung) Vorlesungszeiten Montag 11:15 12:45 Freitag
MehrProgrammieren in Haskell Einführung
Programmieren in Haskell Einführung Peter Steffen Universität Bielefeld Technische Fakultät 16.10.2009 1 Programmieren in Haskell Veranstalter Dr. Peter Steffen Raum: M3-124 Tel.: 0521/106-2906 Email:
Mehr2. Programmierung in C
2. Programmierung in C Inhalt: Überblick über Programmiersprachen, Allgemeines zur Sprache C C: Basisdatentypen, Variablen, Konstanten Operatoren, Ausdrücke und Anweisungen Kontrollstrukturen (Steuerfluss)
MehrProgrammieren I. Überblick. www.kit.edu. Institut für Angewandte Informatik
Programmieren I Überblick KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Übersicht Programmieren Programmieren I (1. Semester)
MehrProgrammiersprachen und Programmierkonzepte
Programmiersprachen und Programmierkonzepte Inhalt Programmiersprachen- Entwicklung Programmiersprachen und Programmierparadigmen Die Geschichte der Programmiersprachen Anfänge vor 200 Jahren Programmierbare
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Wintersemester 2012/13 Organisatorisches Vorlesung: Übungsbetreuung: Übungen: Programmierübungen: Alexander Wolff (E29) Jan Haunert (E27) Markus Ankenbrand Titus Dose Alexej
MehrEinführung in die Java- Programmierung
Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags keine Pommes... Praktikum A 230 C 207 (Madeleine + Esma) F 112 F 113
MehrÜbungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen
Übungen if / else / else if... 2... 2 Aufgabe 2:... 2 Aufgabe 3:... 2 Aufgabe 4:... 2 Aufgabe 5:... 2 Aufgabe 6:... 2 Aufgabe 7:... 3 Aufgabe 8:... 3 Aufgabe 9:... 3 Aufgabe 10:... 3 switch... 4... 4 Aufgabe
MehrSEP 114. Design by Contract
Design by Contract SEP 114 Design by Contract Teile das zu entwickelnde Programm in kleine Einheiten (Klassen, Methoden), die unabhängig voneinander entwickelt und überprüft werden können. Einheiten mit
MehrEinfü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).
MehrEinfü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
Mehr1. Übung zu "Numerik partieller Differentialgleichungen"
1. Übung zu "Numerik partieller Differentialgleichungen" Simon Gawlok, Eva Treiber Engineering Mathematics and Computing Lab 22. Oktober 2014 1 / 15 1 Organisatorisches 2 3 4 2 / 15 Organisatorisches Ort:
MehrWas ist Logische Programmierung?
Was ist Logische Programmierung? Die Bedeutung eines Computer-Programms kann durch Logik erklärt werden. Die Idee der logischen Programmierung besteht darin, die Logik eines Programms selber als Programm
MehrGrundbegriffe der Informatik
Grundbegriffe der Informatik Einheit 15: Reguläre Ausdrücke und rechtslineare Grammatiken Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009 1/25 Was kann man mit endlichen
MehrFachgebiet Informationssysteme Prof. Dr.-Ing. N. Fuhr. Programmierung Prof. Dr.-Ing. Nobert Fuhr. Übungsblatt Nr. 6
Gudrun Fischer Sascha Kriewel programmierung@is.informatik.uni-duisburg.de Anmeldung zur Klausur! Übungsblatt Nr. 6 Um an der Klausur teilzunehmen, müssen sich Studierende der angewandten Informatik in
MehrLehrstuhl Informatik VI Grundzüge der Informatik * WS 2008/2009 Prof. Dr. Joachim Biskup
Universität Dortmund Lehrstuhl Informatik VI Grundzüge der Informatik * WS 28/29 Prof. Dr. Joachim Biskup Leitung der Übungen: Arno Pasternak Lösungs-Ideen Übungsblatt 6 A: Grammatiken, Syntaxdiagramme
MehrEin 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++,
MehrProgrammierkurs Java
Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen
MehrDas Dilemma des Einbrechers Wer die Wahl hat, hat die Qual!
Das Dilemma des Einbrechers Wer die Wahl hat, hat die Qual! 0kg 4000 Euro Luster 5,5 kg, 430.- Laptop 2,0 kg, 000.- Schatulle 3,2 kg, 800.- Uhr 3,5 kg, 70.- Schwert,5 kg, 850.- Bild 3,4 kg, 680.- Besteck
MehrTeil II: Konzepte imperativer Sprachen
Teil II: Konzepte imperativer Sprachen Imperative Konzepte und Techniken Eine Einführung am Beispiel von Java K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16 Version: 2. Nov. 2015 II. Konzepte
MehrJAVA 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
MehrJava Kurs für Anfänger LMU SS09 Einheit 1 Javaumgebung
Java Kurs für Anfänger LMU SS09 Einheit 1 Javaumgebung Ludwig-Maximilians-Universität München Institut für Informatik Programmierung und Softwaretechnik (PST) Prof. Wirsing 6. Mai 2009 1 Der Name Java
MehrEinführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005
Einführung in Java PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005 Gliederung 1. Was ist Java / Geschichte von Java 2. Prinzip der Plattformunabhängigkeit 3. Wie kommt man vom Quellcode zum Programm
MehrKlassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java
Objektorientierte Programmierung mit Java Eine praxisnahe Einführung mit BlueJ Klassenentwurf Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? 1.0 Zentrale Konzepte
Mehrn 1. Der Begriff Informatik n 2. Syntax und Semantik von Programmiersprachen - 1 -
n 1. Der Begriff Informatik n 2. Syntax und Semantik von Programmiersprachen I.2. I.2. Grundlagen von von Programmiersprachen. - 1 - 1. Der Begriff Informatik n "Informatik" = Kunstwort aus Information
MehrGrundlagen von Python
Einführung in Python Grundlagen von Python Felix Döring, Felix Wittwer November 17, 2015 Scriptcharakter Programmierparadigmen Imperatives Programmieren Das Scoping Problem Objektorientiertes Programmieren
MehrGroße Übung Praktische Informatik 1
Große Übung Praktische Informatik 1 2005-12-08 fuessler@informatik.uni-mannheim.de http://www.informatik.uni-mannheim.de/pi4/people/fuessler 1: Announcements / Orga Weihnachtsklausur zählt als Übungsblatt,
Mehr2D22 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.
MehrJava Kurs für Anfänger Einheit 5 Methoden
Java Kurs für Anfänger Einheit 5 Methoden Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 22. Juni 2009 Inhaltsverzeichnis Methoden
MehrTutorium 5 - Programmieren
Tutorium 5 - Programmieren Grischa Liebel Uni Karlsruhe (TH) Tutorium 11 1 Einleitung 2 Abschlussaufgaben 3 Vorlesungsstoff 4 Ergänzungen zum Vorlesungsstoff Grischa Liebel (Uni Karlsruhe (TH)) c 2008
MehrFragebogen zur Evaluation der Vorlesung und Übungen Computer Grafik, CS231, SS05
Fragebogen zur Evaluation der Vorlesung und Übungen Computer Grafik, CS231, SS05 Dozent: Thomas Vetter Bitte Name des Tutors angeben: Liebe Studierende, Ihre Angaben in diesem Fragebogen helfen uns, die
MehrLernziele Ablauf Übungsaufgaben Formalitäten. Programmierpraktika. Einführung in das Programmieren und Weiterführendes Programmieren
Programmierpraktika Einführung in das Programmieren und Weiterführendes Programmieren Prof. H.G. Matthies, Dr. R. Niekamp, Dr. E. Zander 16.4.2014 Programmierpraktika 16.4.2014 1/15 Lernziele und Voraussetzungen
MehrSelbstbestimmtes Lernen. Proinformatik III Objektorientierte Programmierung. Format. Inhalt. Buzzwords
4.0 Proinformatik III Objektorientierte Programmierung Michael Kölling University of Kent Canterbury, UK Selbstbestimmtes Lernen Vorlesung Tutorium Übungen Buch Web-Seite Üben, üben, üben! Format Vorlesung:
MehrTutorium Rechnerorganisation
Woche 2 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu
MehrDatenstrukturen und Algorithmen
Datenstrukturen und Algorithmen Sommersemester 2013 1 1 O. Einführung 0.1 Organisatorisches 0.2 Überblick 2 0.1 Organisatorisches DSAL Team Veranstaltungen & Termine Kommunikation Materialien Übungsbetrieb
MehrProgrammieren Tutorium
Programmieren Tutorium Tom Schildhauer Tutorium 12 Universität Karlsruhe (TH) Institut für Programmstrukturen und Datenorganisation (IPD) Lehrstuhl Programmierparadigmen WS 2008/2009 c 2008 by Tom Schildhauer,
MehrThe B Method. B ist eine Methode zur Spezifikation zum Entwurf zur Implementierung von Software Systemen. Bücher zur B-Methode
The B Method B ist eine Methode zur Spezifikation zum Entwurf zur Implementierung von Software Systemen. Bücher zur B-Methode P. Schmitt: Formal Specification and Verification of Software p.1 The B Method
MehrDatenbanken und Informationssysteme II
Datenbanken und Informationssysteme II SS 2015 Dr. Christian Senger Einführung 1 mitarbeiter_fehltage abteilung_id mitarbeiter_id fehltage 3 2 2 1 1 1 2 4 5 4 5 3 2 6 10 4 3 3 1 8 1 2 7 5 3 9 1 Ausgabe:
MehrWillkommen 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
MehrUniversität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich. Softwaretechnik I
Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Softwaretechnik I Wintersemester 2015 / 2016 www.ias.uni-stuttgart.de/st1 st1@ias.uni-stuttgart.de
MehrM. Graefenhan 2000-12-07. Übungen zu C. Blatt 3. Musterlösung
M. Graefenhan 2000-12-07 Aufgabe Lösungsweg Übungen zu C Blatt 3 Musterlösung Schreiben Sie ein Programm, das die Häufigkeit von Zeichen in einem eingelesenen String feststellt. Benutzen Sie dazu ein zweidimensionales
MehrUnterprogramme. Funktionen. Bedeutung von Funktionen in C++ Definition einer Funktion. Definition einer Prozedur
Unterprogramme Unterprogramme sind abgekapselte Programmfragmente, welche es erlauben, bestimmte Aufgaben in wiederverwendbarer Art umzusetzen. Man unterscheidet zwischen Unterprogrammen mit Rückgabewert
MehrWorkshop 6. Einführung in die objektorientierte Programmierung. Teil: Java mit BlueJ
IBBB 2010 Workshop 6 Einführung in die objektorientierte Programmierung Dozenten: J. Penon, J. Frank, A. Schindler Teil: Java mit BlueJ Dozent: A. Schindler Einf. i. d. OOP - Java u. BlueJ / A. Schindler
Mehr1 Vom Problem zum Programm
Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren
MehrAlgorithmen & Datenstrukturen 1. Klausur
Algorithmen & Datenstrukturen 1. Klausur 7. Juli 2010 Name Matrikelnummer Aufgabe mögliche Punkte erreichte Punkte 1 35 2 30 3 30 4 15 5 40 6 30 Gesamt 180 1 Seite 2 von 14 Aufgabe 1) Programm Analyse
MehrE-Commerce Recht Organisatorisches
Mag. iur. Dr. techn. Michael Sonntag E-Commerce Recht Organisatorisches E-Mail: sonntag@fim.uni-linz.ac.at http://www.fim.uni-linz.ac.at/staff/sonntag.htm Institut für Informationsverarbeitung und Mikroprozessortechnik
MehrTesten mit JUnit. Motivation
Test First Design for Test in Eclipse (eigentlich: ) zu einer Klasse Beispiel zur Demonstration Ergänzungen Test First "Immer dann, wenn Du in Versuchung kommst, etwas wie eine print- Anweisung oder einen
MehrOrganisatorisches. Ökonometrie I Michael Hauser WS15/16
1 / 12 Organisatorisches Ökonometrie I Michael Hauser WS15/16 2 / 12 Web-Seite zum Kurs Web-Seite des Kurses: Auf der Web-Seite finden sie die organisatorischen Regelungen, den Terminplan und Regeln zum
MehrOrganisatorisches. Informatik II Informationen und Daten. Organisatorisches. Organisatorisches. Rainer Schrader. 13. Oktober 2008
Dozent: Prof. Dr. Rainer Schrader Informatik II Informationen und Daten Rainer Schrader Zentrum für Angewandte Informatik Köln 13. Oktober 2008 Tel.: 470-6030 email: schrader@zpr.uni-koeln.de Sprechstunde:
MehrGrundlagen der Programmierung Prof. H. Mössenböck. 3. Verzweigungen
Grundlagen der Programmierung Prof. H. Mössenböck 3. Verzweigungen If-Anweisung n > 0? j n if (n > 0) x = x / n; ohne else-zweig x x / n j max x x > y? n max y if (x > y) max = x; else max = y; mit else-zweig
Mehr5. Abstrakte Klassen. Beispiel (3) Abstrakte Klasse. Beispiel (2) Angenommen, wir wollen die folgende Klassenhierarchie implementieren:
5. Abstrakte Klassen Beispiel 5. Abstrakte Klassen 5. Abstrakte Klassen Beispiel Beispiel (3) Angenommen, wir wollen die folgende Klassenhierarchie implementieren: Probleme des Implementierungsvorschlags:
MehrII. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:
Technische Informatik für Ingenieure (TIfI) WS 2005/2006, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Datenstrukturen 9. Datenstrukturen Daten zusammenfassen
Mehr1. 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