Einführung in C++ Philipp Lamby. RWTH Aachen Institut für Geometrie und Praktische Mathematik. (Karsten Urban, Markus Jürgens, Jürgen Vorloeper)
|
|
- Heinz Scholz
- vor 6 Jahren
- Abrufe
Transkript
1 1 Einführung in C++ Philipp Lamby (Karsten Urban, Markus Jürgens, Jürgen Vorloeper) RWTH Aachen Institut für Geometrie und Praktische Mathematik
2 2 Organisatorisches Vorlesung: 9:30-11:00, Hörsaal IV Diskussion: im Anschluß an die Vorlesung Übung: nachmittags im CIP-Pool des IGPM, Hauptgebäude (Meßdach) Anmeldung und Einteilung heute Freiwillige Übungsaufgaben Können auch zu Hause bearbeitet werden. Teilnahmebescheinigungen am Ende des Kurses
3 3 Literatur kursbegleitend: Karsten Urban: Eine Einführung in C++, Shaker Verlag, Aachen 1998 Im Buchhandel erhältlich. Standardwerke : Bjarne Stroustrup: Die C++ Programmiersprache, 4. Aufl., Addison-Wesley, Bjarne Stroustrup: Design und Entwicklung von C++, Addison-Wesley, Kernighan/Ritchie: Programmieren in C 2.Ausgabe, ANSI-C
4 4 Themen der ersten Woche Einstieg in Linux Programmierwerkzeuge: Editoren, Compiler, Linker, Debugger Grundlagen der Programmierung in C und C++ Datentypen Kontrollstrukturen Funktionen Ein- und Ausgabe
5 5 Warum Linux? Betriebssystem ist Shareware Open Source Voll kompatibel mit Unix Immer weiter verbreitet Für den Einstieg in Linux: Matt Welsh, Kalle Dallheimer, Lar Kaufmann: Running Linux, 2. Aufl., Addison-Wesley, 1999
6 6 Das UNIX Dateisystem Dateinamen haben üblicherweise die Form <name>.<ext>. Gebräuchliche Endungen sind: Endung Bedeutung.C,.cpp,.cc,.c++ C++-Quelldateien.h,.hpp Header-Files.c C-Quelldateien.f Fortran-Quelldateien.p,.pas Pascal-Quelldateien.txt Textdateien (meist ASCII).tex TEX-Dateien.tar tar-files.gz,.zip,.z komprimierte Dateien.tgz komprimierte tar-files ohne Endung Ausführbare Dateien (Programme)
7 7 Das UNIX-Dateisystem / (root) bin/ usr/ etc/... lib/ tmp/ software/ bin/ include/ people/ cppkurs/ / /
8 8 Die vollständige Liste aller Vorgänger eines Verzeichnisses wird als Pfad bezeichnet: /usr/people/ Vorsicht! Anders als unter DOS wird unter UNIX der Slash ( / ) zur Separation der Verzeichnisse verwendet. Zwischen Groß- und Kleinschreibung wird unterschieden! Spezielle Verzeichnisse / root-verzeichnis ~/ Home-Verzeichnis./ aktuelles Verzeichnis../ Vorgängerverzeichnis
9 9 Wichtige Befehle in der Shell clear pwd cd <Verzeichnis> mkdir <Verzeichnis> rmdir <Verzeichnis> ls [-la] cat, more, less <Datei> Bildschirminhalt löschen Aktuellen Pfad zeigen ( Print Working Directory ) Wechsle in ein Verzeichnis ( Change Directory ) Erstelle neues Verzeichnis ( Make Directory ) Lösche Verzeichnis ( Remove Directory ) Zeige Inhalt des aktuellen Verzeichnisses ( List ) Anzeigen von Textdateien
10 10 Wichtige Befehle in der Shell -2- cp <Datei1> <Datei2> cp <Datei1> <Verzeichnis> mv <Datei1> <Datei2> mv <Datei1> <Verzeichnis> rm <Datei> tar zip, gzip, (un)compress Kopiere <Datei1> nach <Datei2> bzw. in <Verzeichnis> Benenne <Datei1> um bzw. verschiebe nach <Verzeichnis> Lösche Datei Archivieren von Dateien (De)komprimierung von Dateien
11 11 Hilfe zu UNIX-Befehlen man <Befehl> bzw. <Befehl> --help Verwendung von Wildcards cp *.cpp.. rm diss.* cp../aufgaben/*.*. ls [A-Z]m*.* Kopiere alle Dateien mit Endung.cpp in das Vorgängerverzeichnis Lösche alle Dateien mit Namen diss und beliebiger Endung Kopiere alle Dateien mit Endung aus dem angegebenen Verzeichnis in das aktuelle Verzeichnis Liste alle Dateien auf, deren Name mit einem Großbuchstaben beginnt, auf den dann ein m folgt
12 12 Editoren und Hintergrundprozesse vi Starte vi vi Bearbeite <dateiname> mit vi nedit & Starte nedit im Hintergrund emacs & Starte emacs im Hintergrund emacs <dateiname> & Bearbeite <dateiname> mit emacs nedit <dateiname> & Bearbeite <dateiname> mit nedit jobs -l Liste alle Hintergrundprozesse auf. kill -9 %1 Beendet den Hintergrundprozeß mit der Nummer 1 sofort.
13 13 Ein- und Ausgabeumlenkung in der bash UNIX-Befehle lesen Daten von vom Eingabekanal, normalerweise die Tastatur, und schreiben ihre Daten in den Ausgabekanal, der normalerweise mit dem Bildschirm verbunden ist. Mit den folgenden Befehlen, kann man Eingabe- und Ausgabe umlenken: ls /usr/bin > programme ls /bin >> programme ls /usr/bin more wc *.tex sort -rn sort < programme Schreibe eine Liste der Programme im Verzeichnis /usr/bin in die Datei programme. Füge die Programme in /bin der Datei programme hinzu. Liste das Verzeichnis /usr/bin und zeige die Ausgabe seitenweise an. Zähle die Zeilen aller Dateien mit der Endung.tex und sortiere die Ergebnisse der Größe nach. Schickt den Inhalt der Datei programme auf die Standardeingabe von sort.
14 14 Der Standardfehlerkanal Programme haben die Möglichkeit, Fehlermeldungen über einen separaten Ausgabekanal auf den Bildschirm zu bringen. Dieser Standardfehlerkanal muß bzw. kann separat umgelenkt werden. gcc source.c &>messages Schickt sowohl die Standard- als auch die Fehlerausgabe in die Datei messages. gcc source.c 2>error-msg Schickt die Fehlerausgabe in die Datei error-msg. Die Standardausgabe erscheint auf dem Bildschirm. gcc source.c 2>error-msg >/dev/null Wie zuvor. Die Standardausgabe wird allerdings unterdrückt.
15 15 Vom Problem zum Programm Problem Implementierung Algorithmus (unabh.) Programm entwurf (C++) Editieren (z.b. emacs) Compilen Linken (g++) Programm Nein Korrekt? Ja Test Fertig!
16 16 Was ist C/C++ eigentlich? C wurde ursprünglich zur Systemprogrammierung entwickelt. maschinennah effizient C ist standardisiert und portabel. C ist die Grundlage von UNIX-Betriebssystemen. C++ ist eine objektorientierte Weiterentwicklung von C. C++ ist geeignet für große Projekte.
17 17 Hello World! #include <iostream> using namespace std; int main() { // This is the world s most famous program! cout << "Hello World!" << endl; } return 0; Compilierung: mit dem Befehl g++ -o hello hello w.cpp
18 18 Test: z.b. mit dem Befehl hello./hello (Wenn der Pfad nicht erkannt wird) Pfad lesen und setzen in der bash: Gebe den aktuellen Pfad aus: echo $PATH Füge das aktuelle Verzeichnis zum Pfad hinzu: export PATH=.:$PATH Ausgabe des Programmes: Hello World!
19 19 Erläuterungen Jeder Befehl wird mit ; abgeschlossen. Blöcke von Befehlen werden durch { } eingeschlossen. Jedes C oder C++ Programm beginnt in der Funktion main. // leitet eine Kommentarzeile ein.
20 20 Erläuterungen #include "<dateiname>" lädt Header-Dateien. iostream ist eine C++-Systembibliothek zur Ein- und Ausgabe. cout bezeichnet die Standardausgabe. Die Bedeutung der using-direktive: siehe übernächstes Beispiel
21 21 Beispiel: Kommentare #include <iostream> using namespace std; int main() { // einzeiliger Kommentar // und noch eine Zeile Kommentar cout << "Hello world" << endl; //Programmzeile /* */ dieser Kommentar geht ueber mehrere Zeilen
22 22 // ERROR /* Schachtelungen /* mit Stern-Schraegstrich */ gehen nicht */ }
23 23 Variablendefinition 1 #include <iostream> double global = ; // globale Variable int main() { int i; std::cout << "vor der Initialisierung : i = " << i << std::endl; i = 15; std::cout << "nach der Zuweisung : i = " << i << std::endl; { int local, i = 8; std::cout << "lokales i = " << i << ", und global = " << global << std::endl; } // local = E ; // Fehler! }
24 24 Ausgabe i = vor der Initialisierung i = 15 nach der Zuweisung lokales i = 8, und global = Merke Jede Variable muß mit Typ Name; angelegt werden. Typ Name = Wert; initialisiert die Variable gleichzeitig.
25 25 Variablendefinitionen 2 #include <iostream> using namespace std; int main() { double d1; d1=10.1; cout << "d1 = " << d1 << endl; double d2=20.2; double d3=d1+d2; // d3=30.3!!! cout << "d2 = " << d2 << ", d3 = " << d3 << endl; } double d4,d5,d6=d4+d5; d4=1.1; d5=2.2; cout << "d6 = " << d6 << endl; // d6=3.3???
26 26 Ausgabe d1 = 10.1 d2 = 20.2, d3 = 30.3 d6 = e-270 Konstante Variablen int main() { const double pi = 3.16; const int l; // error: uninitialized const pi = ; // error: assignment of read-only variable }
27 27 Gültige Variablenamen hello this_is_a_most_unusually_long_name DEFINED foo bar u_name LastMatrix var0 var1ab CLASS _class Ungültige Variablenamen 012 a fool $sys class 3var zahle.bis foo~bar.name if new
28 28 Ein- und Ausgabe Die Ein- und Ausgabekanäle von UNIX werden auch als Streams bezeichnet. In C++ spricht man sie wie folgt an: cout cerr cin Standardausgabe (Bildschirm/Shell) Ausgabe für Fehlermeldungen Standardeingabe (Tastatur) Achtung: Die Streams sind gepuffert. cout << "Fange an zu rechnen! "; // keine Ausgabe! // tue irgendwas aufwendiges cout << "\nrechnung beendet!\n" << flush; // erzwingt Ausgabe
29 29 Beispiel zur Ein- und Ausgabe #include <iostream> using namespace std; int main() { double alpha; int a, b; cout << "Bitte geben Sie zwei ganze Zahlen ein: " << endl; cin >> a >> b; cout << "Bitte geben Sie eine reelle Zahl ein: "; cin >> alpha; cout << "a + b = " << (a + b) << endl; cout << "alpha = " << alpha << endl; } return 0;
30 30 Programmausführung Bitte geben Sie zwei ganze Zahlen ein: 2 3 Bitte geben Sie eine reelle Zahl ein: 2.56 a + b = 5 alpha = 2.56
31 31 Verzweigungen #include <iostream> using namespace std; int main() { int a = 1, b = 3; } if( a > b ) { cout << "a ist groesser als b" << endl; } else { cout << "b ist groesser oder gleich a" << endl; }
32 32 Verzweigungen -2- #include <iostream> using namespace std; int main() { int x = 1, a = -2, b = 3; } if( x >= a ) { if( x <= b ) { cout << "x liegt in [a,b]" << endl; } else { cout << "x ist groesser als b" << endl; } } else cout << "x ist kleiner als a" << endl;
33 33 Allgemein if( Bedingung ) Anw A else Anw B Der else-zweig ist optional. If-Schleifen können geschachtelt werden. Anw ist entweder genau ein Befehl oder ein Block {... }. Vorsicht! if( a > b ) { max = a; min = b; } // OK if( a > b ) max = a; min = b; // setzt min // *immer* auf b
34 34 Ausdrücke int x = 15; y = 4; cout << x / y << endl; x / y ist ein Ausdruck, bestehend aus den Operanden x, y und dem Operator /. Der Wert des Operators ist in diesem Fall x / y = 3; double x = 12.4, y = 44.3; cout << -x << endl; // unaerer Operator cout << x * y << endl; // binaerer Operator
35 35 Für arithmetische Operatoren gilt Punkt- vor Strichrechnung. Die Auswertung erfolgt von links nach rechts. int main() { int m = * 4; // m = = 15 int n = 1 + (2+3) * 4; // n = 1 + 5*4 = = 21 int o = ; // o = -1-3 = -4 int p = 1 - (2-3); // p = 1 - (-1) = 2 }
36 36 Ein Ausdruck ist eine C-Anweisung, die einen Wert besitzt. Ausdrücke bestehen wiederum aus Unterausdrücken, die durch Operatoren verbunden sind. int main() { int x = 100; int y = 2; y = x = * y; /* fraglicher Ausdruck */ // x = 9, y = 9 } Der Unterausdruck 2*y besitzt den Wert 4 vom Typ int, der zusammengesetzte Ausdruck * y hat den Wert 9, der Zuweisungsoperator liefert den resultierenden Wert der linken Seite zurück. Der Zuweisungsoperator ist rechtsassoziativ und hat niedrigere Priorität als die arithmetischen Operatoren.
37 37 Operatoren Arithmetische Operatoren + - * / Vergleichsoperatoren gleich == ungleich!= <=, <, >, >= Logische Operatoren und && oder Verneinung! Zuweisung = += -= *= /=
38 38 Beispiel: Berechnung des Anhalteweges #include <iostream> using namespace std; int main() { double Verzoegerung, // Verzoegerung [m/(s*s)] ReaktionsZeit, // Reaktionszeit [s] v0; // Geschwindigkeit [m/s] cout << "Verzoegerung [m/s^2] (>0): "; cin >> Verzoegerung; if (Verzoegerung <= 0) { cerr << "Die Verzoegerung muss positiv sein!"
39 39 } << endl; return 1; //!= 0 => Fehlercode cout << "Reaktionszeit [s] : "; cin >> ReaktionsZeit; cout << "Geschwindigkeit [m/s] : "; cin >> v0; cout << "... ergibt einen Anhalteweg von " << v0*reaktionszeit + 0.5*v0*v0/Verzoegerung << " m" << endl; } return 0; // optional
Funktionales C++ zum Ersten
Funktionales C++ zum Ersten WiMa-Praktikum 1, Teil C++, Tag 1 Christoph Ott, Büro: Helmholtzstr.18, E22 Tel.: 50-23575, Mail: christoph.ott@uni-ulm.de Institut für Angewandte Informationsverarbeitung 26.08.08
MehrC++ Einführung. und Datenanalyse mit ROOT. Jörg Marks, Physikalisches Institut, INF 226
Sommer Semester 2016 C++ Einführung 10.4-14.4.2016 14:00 17:00 CIP Pool INF 226 und Datenanalyse mit ROOT Jörg Marks, Physikalisches Institut, INF 226 marks@physi.uni-heidelberg.de Inhalt Programmierwerkzeuge
MehrUnterlagen. CPP-Uebungen-08/
Unterlagen http://projects.eml.org/bcb/people/ralph/ CPP-Uebungen-08/ http://www.katjawegner.de/lectures.html Kommentare in C++ #include /* Dies ist ein langer Kommentar, der über zwei Zeilen
MehrC++ Teil 1. Sven Groß. 9. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil 1 9. Apr / 19
C++ Teil 1 Sven Groß IGPM, RWTH Aachen 9. Apr 2015 Sven Groß (IGPM, RWTH Aachen) C++ Teil 1 9. Apr 2015 1 / 19 Organisatorisches Anmeldung zu Vorlesung und Praktikum über CampusOffice heute! Zugang zu
MehrEinführung in den Einsatz von Objekt-Orientierung mit C++ I
Einführung in den Einsatz von Objekt-Orientierung mit C++ I ADV-Seminar Leiter: Mag. Michael Hahsler Syntax von C++ Grundlagen Übersetzung Formale Syntaxüberprüfung Ausgabe/Eingabe Funktion main() Variablen
MehrGrundlagen der Programmierung
Übung 1: Unix Werkzeuge Robert Sombrutzki sombrutz@informatik.hu-berlin.de Unix Werkzeuge Warum? Diese Frage sollten Sie sich immer mal wieder stellen! Denkbare Antworten Weil Sie diese Werkzeuge immer
MehrEinführung in die Programmierung Wintersemester 2016/17
Einführung in die Programmierung Wintersemester 2016/17 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund : Gültigkeitsbereiche Inhalt Lokale und globale
MehrComputer & GNU/Linux Einführung Teil 4
Inst. für Informatik [IFI] Computer & GNU/Linux EinführungTeil 4 Simon Haller, Sebastian Stab 1/20 Computer & GNU/Linux Einführung Teil 4 Simon Haller, Sebastian Stabinger, Benjamin Winder Inst. für Informatik
MehrTeil 1: Einführung in die Shell. Was ist die Shell? Wichtige Kommandos (1) Einführung in die Shell. Grundlagen der Shell-Programmierung
Einführung in die Shell Grundlagen der Shell-Programmierung Daniel Lutz 22.10.2003 Teil 1: Einführung in die Shell 1 2 Was ist die Shell? Schnittstelle zwischen Benutzer und Computer
Mehr2 2. Tag. 2.1 Das Dateisystem. das Dateisystem organisiert die Speicherung von Daten. viele Betriebssysteme haben verschiedene Dateisysteme
2 2. Tag 2.1 Das Dateisystem das Dateisystem organisiert die Speicherung von Daten viele Betriebssysteme haben verschiedene Dateisysteme ein gutes Dateisystem ist wichtig um Daten sicher zu lagern Das
MehrEinführung in die Programmierung
: Inhalt Einführung in die Programmierung Wintersemester 2010/11 Lokale und globale Variablen Namensräume Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund
MehrKlausur: Grundlagen der Informatik I, am 05. Februar 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte:
Seite 1 von 8 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 10 Pkt.) a) Geben
MehrInformatik I. Übung 2 : Programmieren in Eclipse. 5. März Daniel Hentzen
Informatik I Übung 2 : Programmieren in Eclipse 5. März 2014 Daniel Hentzen dhentzen@student.ethz.ch Downloads : http://n.ethz.ch/~dhentzen/download/ Heute 1. Nachbesprechung Übung 1 2. Theorie 3. Vorbesprechung
MehrEinführung in die Kommandozeile
Einführung in die Kommandozeile...oder auch: Hier hat alles angefangen. Tom Priebe Freitagsrunde Technische Universität Berlin 28. Oktober 2011 Inhalt 1 Einführung Über die Kommandozeile Grundbefehle Parameter
MehrVorsemesterkurs Informatik
Vorsemesterkurs Informatik Einführung in die Bedienung von Unix-Systemen SoSe 2013 Stand der Folien: 3. April 2013 Übersicht 1 Unix, Linux, Shells 2 Shell-Kommandos 3 Dateien und Verzeichnisse Vorkurs
MehrMaterial zum Grundlagenpraktikum ITS. eine kleine Linux-Befehlsreferenz. Stand: Oktober 2007 zusammengestellt von: Cornelia Menzel Version 1.
Material zum Grundlagenpraktikum ITS eine kleine Linux-Befehlsreferenz Stand: Oktober 2007 zusammengestellt von: Cornelia Menzel Version 1.0 Lehrstuhl für Netz- und Datensicherheit Ruhr-Universität Bochum
MehrArbeiten in der Unix-Kommandozeile. PeP et al. Toolbox Workshop
Arbeiten in der Unix-Kommandozeile PeP et al. Toolbox Workshop 2015 [ismo@it ~]$ _ Was ist das? Muss das sein? Ist das nicht völlig veraltet? Das sieht nicht so schick aus PeP et al. Toolbox Workshop 2015
MehrComputer Algebra Plan der Vorlesung. erstes Drittel: linux, emacs, L A TEX zweites Drittel: Sage als Taschenrechner letztes Drittel: Python für Sage
Computer Algebra Nutzung des Computers im Studium: einen Editor (emacs) verwenden Texte (mit L A TEX) setzen ein Computeralgebrasystem (Sage) nutzen etwas programmieren (mit Python) Computer Algebra Plan
MehrKapitel 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
MehrUNIX Grundlagen. Sascha Frank SS 2006 www.namsu.de. 14. August 2006 UNIX I. Sascha Frank. Einführung. Basic Befehle. Quellen
UNIX Grundlagen SS 2006 www.namsu.de 14. August 2006 14. August 2006 1 / 15 Übersicht 1 2 3 und Referenzen 14. August 2006 2 / 15 Entstehung 1969 das erste System 1973 Großteil in C geschrieben 20000 von
Mehr3D Programmierpraktikum: Einführung in C++ - Teil 1
3D Programmierpraktikum: Einführung in C++ - Teil 1 Praktikum 3D Programmierung Sebastian Boring, Otmar Hilliges Donnerstag, 27. April 2006 LMU München Medieninformatik Boring/Hilliges 3D Programmierpraktikum
MehrDateien und Verzeichnisse
Arbeiten mit und LPI Essentials Hochschule Kaiserlautern 28. Oktober 2015 und Arbeiten mit Table of Contents 1 Einleitung 2 Dateinamen 3 Allgemeines Kommandos für Auflisten von Verzeichnisinhalten Erstellen
MehrDie Shell. [prompt]> <command> <flags> <args>
Die Shell Die Shell ist ein einfaches Interface, um dem Betriebssystem Kommandos zu übermitteln Andere Interfaces verwenden Grafische Elemente (z.b. Windows Explorer) Kommados werden beim sogenannten Prompt
MehrInformatik I - Einstiegskurs
Informatik I - Einstiegskurs Dr. Henrik Brosenne Georg-August-Universität Göttingen Institut für Informatik Basiert auf dem Einstiegskurs im Wintersemester 2009/10 von Markus Osterhoff Wintersemester 2012/13
MehrEinführung in die Programmierung Wintersemester 2011/12
Einführung in die Programmierung Wintersemester 2011/12 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund : Kontrollstrukturen Inhalt Wiederholungen - while
MehrArbeiten mit der Shell Teil 1
Arbeiten mit der Shell Teil 1 Linux-Kurs der Unix-AG Benjamin Eberle 4. Mai 2016 Die Komandozeile unter Linux Wird als Shell bezeichnet Die Shell ist eines der vielen Programme einer Linux-Distribution
MehrArbeiten mit der Shell Teil 2
Arbeiten mit der Shell Teil 2 Linux-Kurs der Unix-AG Zinching Dang 22. November 2016 Übersicht Ausgaben umleiten Wiederholung & Vertiefung Shellbefehle Befehle & Optionen Beispielanwendung zu Pipes Zusammenfassung
MehrOperatoren und Ausdrücke
Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling benedict.reuschling@h-da.de Hochschule Darmstadt Fachbereich Informatik WS 2013/14 Überblick 1 2 / 11 Motivation Es gibt eine Reihe
MehrBetriebssysteme Ein Überblick
Betriebssysteme Ein Überblick Johann Blieberger Institut für Rechnergestützte Automation Betriebssysteme Ein Überblick p.1/19 ENIAC - Ein Röhrenrechner Betriebssysteme Ein Überblick p.2/19 Mailüfterl Der
MehrGrundlagen. 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
MehrEinführung in C ++ und die Objektorientierte Programierung
1/38 Einführung in C ++ und die Objektorientierte Programierung Florian Adamsky, B. Sc. (PhD cand.) florian.adamsky@iem.thm.de http://florian.adamsky.it/ cbd Softwareentwicklung im WS 2014/15 2/38 Outline
MehrÜbungen zur Vorlesung EidP (WS 2015/16) Blatt 6
Andre Droschinsky Ingo Schulz Dortmund, den 0. Dezember 2015 Übungen zur Vorlesung EidP (WS 2015/16) Blatt 6 Block rot Es können 4 + 1 Punkte erreicht werden. Abgabedatum: 10. Dezember 2015 2:59 Uhr Hinweise
MehrComputernutzung für Experimentalphysiker Frei progammierbare Rechner als Werkzeuge in der Experimentalphysik Teil 2
Computernutzung für Experimentalphysiker Frei progammierbare Rechner als Werkzeuge in der Experimentalphysik Teil 2 Was bisher geschah: Die freie Programmierbarkeit macht Rechner zum echten Multitool Computer
MehrSelfLinux Dateien unter Linux
Dateien unter Linux Autor: Frank Boerner (frank@frank-boerner.de) Formatierung: Matthias Hagedorn (matthias.hagedorn@selflinux.org) Lizenz: GFDL Im Unterschied zu Windows wird bei Linux zwischen Groß-
MehrATB Ausbildung Technische Berufe Ausbildungszentrum Klybeck
Das Linux-Dateisystem bin usr sbin lib mail / var spool boot lpd Rc0.d etc Rc.d Rc1.d Verzeichnisstruktur / Root- oder Wurzelverzeichnis, das oberste Verzeichnis im kompletten Dateisystem. /bin Programme
MehrSHELL WE BEGIN? EINE EINFÜHRUNG IN DIE SHELL. Max Rosin - ANKÜNDIGUNGEN
SHELL WE BEGIN? EINE EINFÜHRUNG IN DIE SHELL Max Rosin - mrosin@freitagsrunde.org ANKÜNDIGUNGEN lists.freitagsrunde.org/mailman/listinfo/fopen freitagsrunde.org/techtalks 1 WAS MACHEN WIR HEUTE? Was ist
MehrWiederholung und Vertiefung. Programmieren in C. Pointer und so... thoto. /dev/tal e.v. 6. April 2013 (Version vom 11. April 2013) Programmieren in C
Pointer und so... 6. April 2013 (Version vom 11. April 2013) Agenda für Heute 1 Wiederholung und Vertiefung Wiederholung 2 Was sind? Felder und Vektoren? Zeichenketten Wiederholung Wiederholung Funktion
MehrC++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22
C++ Teil 2 Sven Groß IGPM, RWTH Aachen 16. Apr 2015 Sven Groß (IGPM, RWTH Aachen) C++ Teil 2 16. Apr 2015 1 / 22 Themen der letzten Vorlesung Hallo Welt Elementare Datentypen Ein-/Ausgabe Operatoren Sven
MehrEinführung Unix Shell
Einführung Unix Shell Prof. Dr. Rüdiger Weis Beuth Hochschule Berlin Wintersemester 2012/2013 Prof. Dr. Rüdiger Weis Einführung Unix Shell Beuth Hochschule Berlin 1 Datei Komandos 2 Wildcards 3 Variablen
MehrArbeiten mit der Shell Teil 1
Arbeiten mit der Shell Teil 1 Linux-Kurs der Unix-AG Zinching Dang 09. November 2015 Die Unix-Philosophie Es gibt viele kleine Programme Können die jeweiligen Aufgaben gut lösen Komplexe Aufgaben werden
MehrEinführung in die Programmierung WS 2014/15. Übungsblatt 0: Einführung
Ludwig-Maximilians-Universität München München, 7.10.2014 Department,,Institut für Informatik PD. Dr. Peer Kröger Dr. Andreas Züfle, Daniel Kaltenthaler, Klaus Schmid Einführung in die Programmierung WS
MehrLINUX Gesamtmitschrift
LINUX Gesamtmitschrift Martin Rabensteiner, 22.11.2015 Filesystem unter Linux - Keine Laufwerksbuchstaben - ~ Home-Verzeichnis User - Versteckte Dateien.filename Pfade 1. Absoluter Pfad eindeutiger Weg
MehrSelfLinux Dateien unter Linux
Dateien unter Linux Autor: Frank Boerner (frank@frank-boerner.de) Formatierung: Matthias Hagedorn (matthias.hagedorn@selflinux.org) Lizenz: GFDL Im Unterschied zu Windows wird bei Linux zwischen Groß-
MehrEinführung in die C++ Programmierung für Ingenieure
Einführung in die C++ Programmierung für Ingenieure MATTHIAS WALTER / JENS KLUNKER Universität Rostock, Lehrstuhl für Modellierung und Simulation 14. November 2012 c 2012 UNIVERSITÄT ROSTOCK FACULTY OF
MehrGrundlagen der Programmentwicklung
Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling benedict.reuschling@h-da.de Hochschule Darmstadt Fachbereich Informatik WS 2013/14 Über C++ Über C++ C++ ist eine in der Industrie
MehrX Anmelden am System. X System herunterfahren. X Grundlegendes zur Shell. X Das Hilfesystem. X Dateioperationen. X Bewegen im Verzeichnisbaum
/LQX[*UXQGODJHQ, (LQI KUXQJLQGLH6KHOO 'DWHLHQXQG 9HU]HLFKQLVVH :DVLVW]XWXQ" X Anmelden am System X System herunterfahren X Grundlegendes zur Shell X Das Hilfesystem X Dateioperationen X Bewegen im Verzeichnisbaum
MehrBash-Scripting Linux-Kurs der Unix-AG
Bash-Scripting Linux-Kurs der Unix-AG Zinching Dang 02. Juli 2013 Was ist ein Bash-Script? Aneinanderreihung von Befehlen, die ausgeführt werden Bedingte und wiederholende Ausführung möglich Nützlich bei
MehrKlausur: Grundlagen der Informatik I, am 05. Februar 2008 Dirk Seeber, h_da, Fb Informatik
Seite 1 von 8 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 15 Pkt.) Für eine
MehrL A TEX, Linux, Python
L A TEX, Linux, Python Daniel Borchmann, Tom Hanika, Maximilian Marx 17. Dezember 2014 cba Grundlagen von GNU/Linux Grundlagen von GNU/Linux Eine kurze Geschichte von GNU / Linux Eine kurze Geschichte
MehrLiteratur. Einführung in Unix. Login. Passwort. Mag. Thomas Griesmayer. Benutzererkennung und Passwort Case-Sensitiv Prompt
Literatur Einführung in Unix Introduction to Unix Martin Weissenböck: Linux, 2000, 2. Auflage, Adim Bodo Bauer: SuSE Linux 6.2, Installation, Konfiguration und erste Schritte, 1999, 15. Auflage, SuSE Verlag.
MehrLinux Grundlagen. Wolfgang Scheicher 20. Mai 2006. 1 Allgemeines 2 1.1 Bootvorgang... 2 1.2 Verzeichnisstruktur... 2
Linux Grundlagen Wolfgang Scheicher 20. Mai 2006 Inhaltsverzeichnis 1 Allgemeines 2 1.1 Bootvorgang........................................... 2 1.2 Verzeichnisstruktur........................................
MehrAnhang III: Arbeiten am CIP Pool in C++
Anhang III: Arbeiten am CIP Pool in C++ A3 1 Der CIP Pool Im Rahmen der Übungen zur Vorlesung Algorithmen und Programmiertechniken bieten wir Ihnen die Möglichkeit, Übungsaufgaben, bei denen programmiert
MehrUnix/Linux Grundlagen für Einsteiger
Unix/Linux Grundlagen für Einsteiger Seminarunterlage Version: 6.08 Version 6.08 vom 25. Juli 2016 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen
MehrKurze Einführung in die Programmiersprache C++ und in Root
Kurze Einführung in die Programmiersprache C++ und in Root Statistik, Datenanalyse und Simulation; 31.10.2006 Inhalt 1 Einführung in die Programmiersprache C++ Allgemeines Variablen Funktionen 2 1 Einführung
MehrLinux-Befehlsreferenz
Grundpraktikum Netz- und Datensicherheit Linux-Befehlsreferenz Lehrstuhl für Netz- und Datensicherheit Ruhr-Universität Bochum Zusammengestellt von: Cornelia Menzel, Endres Puschner Stand: 15. September
MehrÜbung zur Vorlesung Strukturiertes Programmieren WS 2014/15. Übungsblatt 1: JAVA - Erste Schritte Abgabe: 26.10.2015 Besprechung: 27.10.
Friedrich-Schiller-Universität Jena Fakultät für Mathematik und Informatik Institut für Informatik Prof. Dr. E.-G. Schukat-Talamazzini http://www.minet.uni-jena.de/fakultaet/schukat/ Prof. Dr. P. Dittrich
MehrObjektorientiertes Programmieren mit Suse Linux
Objektorientiertes Programmieren mit Suse Linux Zum Programmieren werden 2 Komponenten benötigt: 1. einen Editor zur Eingabe des Quellcodes 2. einen Compiler, der den Quellcode in die Maschinensprache
Mehr4 Schleifen und Dateien
4 Schleifen und Dateien 4.1 Übungsaufgabe 4.1.1 Aufgabe 1 Schreiben Sie drei C++ Programme: pword_for.cxx, pword_while.cxx, pword_do.cxx. Die Programme sollen den Benutzer höchstens 5 Mal nach einem Passwort
MehrVorbereitungskurs Informatik - Tag 1
Vorbereitungskurs Informatik - Tag 1 FSI Informatik Uni Erlangen-Nürnberg 10. Oktober 2006 FSI Informatik (Uni Erlangen-Nürnberg) Vorbereitungskurs Informatik - Tag 1 10. Oktober 2006 1 / 22 Wer sind wir?
MehrShell-Scripting Linux-Kurs der Unix-AG
Shell-Scripting Linux-Kurs der Unix-AG Andreas Teuchert 8. Juli 2014 Was ist ein Shell-Script? Aneinanderreihung von Befehlen, die ausgeführt werden Bedingte und wiederholende Ausführung möglich Nützlich
MehrInformatik für Elektrotechnik und Informationstechnik
Informatik für Elektrotechnik und Informationstechnik Praktikum 1 Wintersemester 2013/14 1 Kennenlernen der Entwicklungsumgebung Netbeans Netbeans ist eine moderne Entwicklungsumgebung für mehrere Programmiersprachen,
MehrProgrammieren in C/C++ und MATLAB
Programmieren in C/C++ und MATLAB Sven Willert Sabine Schmidt Christian-Albrechts-Universität zu Kiel CAU 5-1 Übung Schreiben Sie ein Programm, das die Zahl π durch π = 4 4 4 4 4 4 + + +... 3 5 7 9 11
MehrC++ Teil 6. Sven Groß. 27. Mai Sven Groß (IGPM, RWTH Aachen) C++ Teil Mai / 14
C++ Teil 6 Sven Groß 27. Mai 2016 Sven Groß (IGPM, RWTH Aachen) C++ Teil 6 27. Mai 2016 1 / 14 Themen der letzten Vorlesung Musterlösung A2 Wdh.: Zeiger und Felder Kopieren von Feldern Dynamische Speicherverwaltung
MehrGestrige Themen. Benutzung des Compilers und Editors. Variablen. Ein- und Ausgabe mit cin, cout (C++) Verzweigungen. Schleifen
1 Gestrige Themen Benutzung des Compilers und Editors Variablen Ein- und Ausgabe mit cin, cout (C++) Verzweigungen Schleifen Ausdrücke 2 Themen heute Elementare Datentypen Zusatz zu Kontrollstrukturen
MehrC++ Das Übungsbuch. Testfragen und Aufgaben mit Lösungen. von Ulla Kirch, Peter Prinz. überarbeitet
C++ Das Übungsbuch Testfragen und Aufgaben mit Lösungen von Ulla Kirch, Peter Prinz überarbeitet C++ Das Übungsbuch Kirch / Prinz schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG
MehrAlgorithmen zur Datenanalyse in C++
Algorithmen zur Datenanalyse in C++ Hartmut Stadie 16.04.2012 Algorithmen zur Datenanalyse in C++ Hartmut Stadie 1/ 39 Einführung Datentypen Operatoren Anweisungssyntax Algorithmen zur Datenanalyse in
MehrLinux I II III Res/Pro WN/TT Theorie Terminal Ein- und Ausgabe. Linux I. 1 Linux I. Theorie Terminal Ein- und Ausgabe. Ressourcen-Vorkurs
Linux I 1 Linux I Theorie Terminal Ein- und Ausgabe Theorie Linux und Unix Unix bezeichnet eine Familie von Betriebssystemen: HP-UX, AIX, Solaris, Mac OS X, GNU/Linux. Linux ist eine freie und quelloffene
MehrKommandos im Unix-Grundkurs Digicomp-UXE. Inhalt
Kommandos im Unix-Grundkurs Digicomp-UXE Die hier aufgeführten Kommandos sind eine Zusammenfassung aller gezeigten Kommandos im Unix-Grundkurs UXE der Digicomp mit den wichtigsten Optionen.Zu jedem Kommando
MehrDie Architektur von UNIX/Linux- Betriebssystemen. Mag. Lukas Feiler, SSCP lukas.feiler@lukasfeiler.com http://www.lukasfeiler.
Die Architektur von UNIX/Linux- Betriebssystemen Mag. Lukas Feiler, SSCP lukas.feiler@lukasfeiler.com http://www.lukasfeiler.com/lectures_brg9 1977: Berkeley Software Distribution/BSD (U.C. Berkeley) 1986:
MehrInformatik I - Einstiegskurs
Informatik I - Einstiegskurs Dr. Henrik Brosenne Georg-August-Universität Göttingen Institut für Informatik Basiert auf dem Einstiegskurs im Wintersemester 2009/10 von Markus Osterhoff Wintersemester 2012/13
MehrProgrammierkurs C++ Grundlagen. Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.
Programmierkurs C++ Grundlagen Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Algorithmen, Maschinen- und Programmiersprachen Algorithmen
MehrGrundbefehle. LPI Zertifizierung. Auf dem Weg: Certified Linux
LPI Zertifizierung 1.103.3 Grundbefehle Copyright ( ) 2006-2009 by Dr. Walter Kicherer. This work is licensed under the Creative Commons Attribution-Noncommercial-Share Alike 2.0 Germany License. To view
MehrInformatik 1 ( ) D-MAVT F2011. Einführung C++ Yves Brise Übungsstunde 1
Informatik 1 (251-0832-00) D-MAVT F2011 Einführung C++ Organisatorisches Yves Brise, ybrise@inf.ethz.ch, CAB G19.3 Homepages: http://www.inf.ethz.ch/personal/ybrise/data/teaching/ifmv/f11/ http://www.info1-mavt.inf.ethz.ch
MehrWintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 23
Kapitel 16 Datei Aus- und Eingabe Seite 1 von 23 Datei Aus- und Eingabe - Für die Ausgabe auf Dateien und die Eingabe von Dateien werden die Streams ofstream und ifstream verwendet. - Sie sind in der Bibliothek
MehrHydroinformatik I: Hello World
Hydroinformatik I: Hello World Prof. Dr.-Ing. habil. Olaf Kolditz 1 Helmholtz Centre for Environmental Research UFZ, Leipzig 2 Technische Universität Dresden TUD, Dresden Dresden, 28. Oktober 2016 1/15
Mehr1 Vorbemerkungen. 1.1 Vorraussetzungen und Ziele. 1.3 Homepage. 1.2 Übungsaufgaben. 1.4 Arbeiten am Computer. Es sind keine Vorkenntnisse nötig
1 Vorbemerkungen 1.1 Vorraussetzungen und Ziele Es sind keine Vorkenntnisse nötig Es gibt keine Scheine Vermittelt werden: Grundkenntnisse der Programmierung in C++ Konzept der objektorientierten Programmierung
MehrEinführung in die Angewandte Bioinformatik
Einführung in die Angewandte Bioinformatik Kurzeinführung in Unix und verwandte Betriebssysteme Webseite zur Vorlesung http://bioinfo.wikidot.com/ Sprechstunde Mo 16-17 in OH14, R214 Sven.Rahmann -at-
MehrEinleitung Entwicklung in C Hello-World! Konstrukte in C Zusammenfassung Literatur. Grundlagen von C. Jonas Gresens
Grundlagen von C Jonas Gresens Proseminar C Grundlagen und Konzepte Arbeitsbereich Wissenschaftliches Rechnen Fachbereich Informatik Fakultät für Mathematik, Informatik und Naturwissenschaften Universität
MehrObjektorientiertes Programmieren für Ingenieure
Uwe Probst Objektorientiertes Programmieren für Ingenieure Anwendungen und Beispiele in C++ 18 2 Von C zu C++ 2.2.2 Referenzen und Funktionen Referenzen als Funktionsparameter Liefert eine Funktion einen
MehrHDNUM. Peter Bastian (IWR) Numerik November / 158
HDNUM C++ kennt keine Matrizen und Vektoren,... Wir haben C++ erweitert um die Heidelberg Educational Numerics Library, kurz HDNum. Alle in der Vorlesung behandelten Beispiele sind dort enthalten. Peter
MehrÜbungsblatt 1: Zur Benutzung von Computern im CIP-Pool der Informatik
Ludwig-Maximilians-Universität München München, 14.04.2015 Institut für Informatik Prof. Dr. Christian Böhm Sebastian Goebl, Dr. Bianca Wackersreuther Einführung in die Informatik: Systeme und Anwendungen
MehrC++ - Einführung in die Programmiersprache Ein- und Ausgabe in die Konsole. Leibniz Universität IT Services Anja Aue
C++ - Einführung in die Programmiersprache Ein- und Ausgabe in die Konsole Leibniz Universität IT Services Anja Aue Eingabe (input) und Ausgabe (output) In diesem Kapitel wird nur das Lesen von und das
MehrEinleitung. Informationsquellen: - Webseite zur Vorlesung, Abschnitt Informationen zu C und C++ Kurzeinführung in C/C++
Informationsquellen: - Webseite zur Vorlesung, Abschnitt Informationen zu C und C++ 1 Einleitung Vorteile von Java: gut strukturiert mit hohem Funktionsumfang (mächtige Standardbibliothek) weitestgehend
MehrC++ Kurs Teil 1. Architektur, Anwendungsspektrum, primitive Datentypen, Funktionsaufrufe, Referenzen, Klassen
C++ Kurs Teil 1 "hello world" Vergleich von C++ und Java Architektur, Anwendungsspektrum, primitive Datentypen, Funktionsaufrufe, Referenzen, Klassen C++ Spezialitäten Schlüsselwort 'const', Copy Constructor,
MehrLinux Prinzipien und Programmierung
Linux Prinzipien und Programmierung Dr. Klaus Höppner Hochschule Darmstadt Sommersemester 2014 1 / 25 2 / 25 Pipes Die Bash kennt drei Standard-Dateideskriptoren: Standard In (stdin) Standard-Eingabe,
Mehr1 Linux-Befehlsübersicht
1 Linux-Befehlsübersicht 1.1 Dateiverwaltung ls Verzeichnisinhalt anzeigen (list) ls -l ausführliche Darstellung ls -a auch versteckte Dateien auisten ls -h verwende besser lesbare Einheiten (humanreadable,
MehrLinux-Einführung Übung
Linux-Einführung Übung Mark Heisterkamp 24. 25. Februar 2010 1 Einführung und Grundlagen 1.1 Erste Schritte... 1.1.1 Xterminalfenster Öffnen Sie ein weiteres Xterminalfenster mit der Maus. mittels Kommando.
MehrDebian GNU/Linux. Unix Grundlagen und Betrieb. Christian T. Steigies
: Betrieb Unix Grundlagen und Betrieb Institut für Experimentelle und Angewandte Physik Christian-Albrechts-Universität zu Kiel Debian crash course 20.02.2007 : Betrieb Unix Grundlagen Konfigurationsdateien
MehrArbeiten mit Linux und an der Kommandozeile
Arbeiten mit Linux und an der Kommandozeile AST, Wintersemester 2013/2014 1 Einleitung Es wird hier ein kleiner Einblick zum Arbeiten mit der grafischen Oberfläche KDE und an der Kommandozeile unter Unix
MehrBioinformatik für Lebenswissenschaftler
BIOINF 1910 Bioinformatik für Lebenswissenschaftler Oliver Kohlbacher, Steffen Schmidt SS 2010 2. UNIX Abt. Simulation biologischer Systeme WSI/ZBIT, Eberhard Karls Universität Tübingen Übersicht history!
MehrAnleitung zur Einrichtung von OpenCV
Anleitung zur Einrichtung von Dieses Dokument beschreibt die Einrichtung und Funktionsüberprüfung von im Kontext der Lehrveranstaltung. Einrichtung Dieser Abschnitt beschreibt die Einrichtung von unter
MehrArbeiten mit der Shell Teil 1
Arbeiten mit der Shell Teil 1 Linux-Kurs der Unix-AG Benjamin Eberle 5. Mai 2015 Shell: Standard-Features Prompt (häufig: benutzer@rechner:~$) zeigt an, dass die Shell auf Befehle wartet Befehl eingeben,
MehrZum Abschluss wird gezeigt, wie aus einem C++ Quell-Programm ein ausführbares Programm erzeugt wird. 1. Installation von NetBeans...
Erste Schritte Dieser Teil der Veranstaltung gibt einen ersten Eindruck der Programmierung mit C++. Es wird ein erstes Gefühl von Programmiersprachen vermittelt, ohne auf die gezeigten Bestandteile genau
MehrProgrammieren in C/C++ und MATLAB
Programmieren in C/C++ und MATLAB Sven Willert Sabine Schmidt Christian-Albrechts-Universität zu Kiel CAU 4-1 Übung 1) Schreiben Sie ein Programm, das die Fläche unter einer Parabel, also das Integral
MehrDie elementare Ausgabe von Daten auf externe Medien, wie Dateien und das Einlesen davon wird demonstriert.
Ein- und Ausgabe Die elementare Ausgabe von Daten auf externe Medien, wie Dateien und das Einlesen davon wird demonstriert. Komplexe E/A-Operationen werden erst diskutiert, nachdem das Klassenkonzept erarbeitet
MehrEin- und Ausgabe (I/O)
Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling benedict.reuschling@h-da.de Hochschule Darmstadt Fachbereich Informatik WS 2013/14 Überblick 1 2 / 14 Motivation Computer arbeiten
MehrDAP2-Programmierpraktikum Einführung in C++ (Teil 1)
DAP2-Programmierpraktikum Einführung in C++ (Teil 1) Carsten Gutwenger 11. April 2008 Lehrstuhl 11 Algorithm Engineering Fakultät für Informatik, TU Dortmund Überblick Mein erstes C++-Programm Namensräume
MehrProgrammieren in C/C++ und MATLAB
Programmieren in C/C++ und MATLAB Sven Willert Christian-Albrechts-Universität zu Kiel CAU 2-1 Datentypen und Formate Mit der Festlegung des Datentyps wird die Art bestimmt, mit der der Computer die Informationen
MehrDie Programmiersprache C Eine Einführung
Die Programmiersprache C Eine Einführung Christian Gentsch Fakutltät IV Technische Universität Berlin Projektlabor 2. Mai 2014 Inhaltsverzeichnis 1 Einführung Entstehungsgeschichte Verwendung 2 Objektorientiert
MehrEinführung in das Arbeiten an Unix-Rechnern
[Unix] Einführung Einführung in das Arbeiten an Unix-Rechnern 23. 03.2007 Franz Schenk 1 [Unix] Einführung Ursprünge, Hintergründe Grundlagen, Konzepte Arbeiten mit Unix 2 [Unix] Was ist Unix Ein MehrbenutzerBetriebssystem
Mehr