Ein- und Ausgabe in Dateien (File I/O)
|
|
- Timo Hummel
- vor 7 Jahren
- Abrufe
Transkript
1 Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling Hochschule Darmstadt Fachbereich Informatik WS 2013/14 Zuletzt aktualisiert: , 08:27 Uhr
2 Überblick 1 Dateien lesen und schreiben Flags zum Öffnen von Dateien Status des Dateistroms prüfen Streamposition bestimmen und verändern 2 Eingaben korrekt verarbeiten Wie kann ich in C / 27
3 Motivation Wir werden uns in diesem Kapitel mit dem Lesen und Schreiben von Dateien beschäftigen. Mit den uns bereits bekannten Operationen lassen sich Dateien bereits für die Eingabe lesen und auch schreiben, indem wir auf Betriebssystemebene die Ausgabe mit > in eine Datei umleiten: meinprogramm > dateiname.txt. Durch diese Befehl wird eine Datei dateiname.txt angelegt bzw. überschrieben, wenn diese Datei bereits existiert. Die ganze Ausgabe von meinprogramm wird nicht auf dem Bildschirm ausgegeben, sondern in dateiname.txt geschrieben. Mit >> wird an eine bestehende Datei angehängt, ohne deren Inhalt zu überschreiben. Durch Umleiten der Eingabe kann aus einer Datei die Eingaben für ein Programm gelesen werden: meinprogramm < eingaben.txt Diese Operationen sind jedoch ausserhalb des Einflusses unseres C++-Programms und wir möchten diese Funktionalität aus unserem Programm heraus selbst steuern. Dazu bedienen wir uns den Datei-Strömen (engl. file streams) zum lesen und schreiben von Dateien. wir betrachten dabei nur Textdateien. 3 / 27
4 Dateien lesen und schreiben Überblick 1 Dateien lesen und schreiben Flags zum Öffnen von Dateien Status des Dateistroms prüfen Streamposition bestimmen und verändern 2 Eingaben korrekt verarbeiten Wie kann ich in C / 27
5 Dateien lesen und schreiben Dateien zum Lesen und Schreiben öffnen Über die Headerdatei fstream wird die Funktionalität zum Lesen und Schreiben von Dateien zur Verfügung gestellt. Soll nur geschrieben werden, dann kann auch die Headerdatei ofstream genutzt werden. Ebenso kann, wenn nur gelesen werden soll, als Header ifstream zum Einsatz kommen. Der übliche Ablauf zum Lesen oder Schreiben von Dateien ist folgender: Objekt zum Lesen oder Schreiben im Programm anlegen Objekt mit dem Dateinamen zum öffnen verküpfen Text über das Objekt schreiben oder lesen Datei schliessen 5 / 27
6 Dateien lesen und schreiben Einfaches Beispiel zum Schreiben einer Datei 1 # include <fstream > 2 using namespace std; 3 4 int main () { 5 ofstream fileout ; 6 fileout. open (" beispiel. txt"); 7 fileout << " Das steht jetzt in der Datei."; 8 fileout. close (); 9 return 0; 10 } In Zeile 5 wird ein Objekt angelegt, dass ähnlich wie cout oder cin die Ausgabe in die Datei übernimmt. Der Name des Objekts kann beliebig vergeben werden, so lange dieser noch nicht verwendet wird. Die Datei beispiel.txt wird in Zeile 6 geöffnet und im aktuellen Verzeichnis angelegt, falls diese noch nicht existiert. Nun da die Datei geöffnet wurde, kann in Zeile 7 etwas in die Datei geschrieben werden. Zum Schluss muss noch die Datei geschlossen werden, damit alle gepufferten Schreibvorgänge abgeschlossen werden (Zeile 8). 6 / 27
7 Dateien lesen und schreiben Einfaches Beispiel zum Lesen einer Datei Nun wollen wir den gerade geschriebenen Inhalt der Datei wieder auslesen und auf dem Bildschirm anzeigen. 1 # include <iostream > 2 # include <fstream > 3 # include <string > 4 using namespace std; 5 6 int main () { 7 string dateizeile ; 8 ifstream fin; 9 fin. open (" beispiel. txt"); 10 getline (fin, dateizeile ); 11 fin.close (); 12 cout << " Zeile in der Datei : " << dateizeile << endl ; 13 return 0; 14 } Wir benötigen einen String dateizeile, in dem wir die gelesene Zeile aus der Datei aufbewahren können. Eine komplette Zeile lässt sich mittels der Funktion getline einlesen. Es wird das mit der Datei verknüpfte Objekt und der String, in den diese Zeile gespeichert werden, übergeben (Zeile 10). Nach dem Schliessen der Datei wird der gelesene String in Zeile 12 ausgegeben. 7 / 27
8 Dateien lesen und schreiben Variablen als Dateinamen Oft will man dem Benutzer die Möglichkeit geben, den Dateinamen selbst einzugeben. Dabei müssen zwei Dinge beachtet werden. Unter Windows müssen die Pfadangaben mit \ (Backslash) von denen der Programmiersprache unterschieden werden. Aus diesem Grund müssen alle Vorkommen von \ durch \\ in Strings ersetzt werden. string dateiname = "c:\\temp\\meinedatei.txt"; Bei der Verwendung von open() wird ein String im C-Stil erwartet. Aus diesem Grund kann keine Variable vom Typ string ohne weiteres dort eingesetzt werden. Jedoch lässt sich ein solcher String über die Funktion c_str() umwandeln. So kann beispielsweise der Dateiname vom Benutzer eingelesen werden: 1 string dateiname ; 2 ifstream eingabe ; 3 cout << " Bitte geben Sie den Namen der Eingabedatei an: "; 4 cin >> dateiname ; 5 eingabe. open ( dateiname. c_str ()); // umwandeln in C- String 8 / 27
9 Flags zum Öffnen von Dateien Überblick 1 Dateien lesen und schreiben Flags zum Öffnen von Dateien Status des Dateistroms prüfen Streamposition bestimmen und verändern 2 Eingaben korrekt verarbeiten Wie kann ich in C / 27
10 Flags zum Öffnen von Dateien Modi zum Öffnen von Dateien Der Funktion open lässt sich ein weiterer Parameter übergeben, der die Art (Modus) beschreibt, wie die Datei zu öffnen ist. Dies bestimmt massgeblich, was mit der Datei passieren wird, so lange diese geöffnet ist. Die folgenden Möglichkeiten stehen zur Verfügung: Modus ios::in ios::out ios::binary ios::ate ios::app ios::trunc Beschreibung Für Leseoperationen öffnen. Für Ausgabeoperationen öffnen. Datei im binären Modus öffnen. Die Startposition an das Ende (at end) der Datei setzen. Falls dieser Modus nicht gesetzt ist, wird am Anfang der Datei begonnen. Alle Ausgabeoperationen werden am Dateiende durchgeführt, der neue Inhalt wird angehängt (engl. append). Funktioniert nur bei reinen Ausgabeoperationen. Falls eine bereits existierende Datei bei Ausgabeoperationen geöffnet wird, wird der vorherige Inhalt gelöscht (engl. truncate = abschneiden, kürzen) und durch den neuen Inhalt ersetzt. 10 / 27
11 Flags zum Öffnen von Dateien Standardflags verknüpfen Die folgende Tabelle zeigt die Standardeinstellungen für die verschiedenen Dateiobjekte für den Fall, dass keine Flags bei open() angegeben werden: Header ofstream ifstream fstream Standardmodus ios::out ios::in ios::in ios::out Der letzte Eintrag in der Tabelle zeigt, dass sich die Flags über den bitweisen ODER-Operator ( ) auch miteinander kombinieren lassen. So wird beispielsweise über die folgende Anweisung ofstream ausgabe("beispiel.txt", ios::out ios::app); die Datei beispiel.txt zum Schreiben geöffnet, der Text an den bestehenden Inhalt angehängt und das alles in einer einzigen Anweisung. Auf diese Weise lassen sich beispielsweise Logdateien anlegen, welche die Ausgaben des Programms über mehrere Aufrufe hinweg protokollieren. 11 / 27
12 Status des Dateistroms prüfen Überblick 1 Dateien lesen und schreiben Flags zum Öffnen von Dateien Status des Dateistroms prüfen Streamposition bestimmen und verändern 2 Eingaben korrekt verarbeiten Wie kann ich in C / 27
13 Status des Dateistroms prüfen Motivation Beim Arbeiten mit Dateien kann eine ganze Menge schief gehen und wir als Programmierer sollten unsere Programme möglichst robust gegen solche Fehler machen. Nur so können wir uns darauf verlassen, die richtigen Informationen aus den Dateien zu bekommen bzw. in diese abzulegen. Die folgende Liste zeigt typische Probleme, auf die man in seinem Programm achten sollte: Datei kann nicht geöffnet werden ungültiger/nicht vorhandener Dateiname oder Pfad zur Datei Keine Berechtigung zum Lesen/Schreiben der Datei Schreiben unmöglich durch volles oder defektes Dateisystem/Speichermedium Der angegebene Modus wird vom Betriebssystem nicht akzeptiert Neue Daten können nicht in die Datei geschrieben werden Gelesene Datei ist im falschen Format (z.b. Buchstaben statt int) Für diese Fälle stehen uns eine Reihe von Möglichkeiten zur Verfügung, den Status des Dateistroms zu überprüfen und ggfs. darauf zu reagieren. 13 / 27
14 Status des Dateistroms prüfen Prüfen, ob Datei geöffnet werden konnte Die Funktion is_open() gibt true zurück, wenn die Datei mit dem Stream-Objekt erfolgreich verknüpft werden konnte (egal ob gelesen oder geschrieben wird). Andernfalls wird false zurückgegeben. Dies lässt sich im Programm nutzen, um die Verarbeitung sofort zu beenden, sollte die Datei nicht geöffnet werden können. 1 # include <fstream > 2 # include <iostream > 3 using namespace std; 4 5 int main () { 6 ofstream fout (" beispiel. txt"); // Datei zum schreiben oeffnen 7 if ( fout. is_open ()) { // hat es geklappt? 8 fout << " Das steht jetzt in der Datei."; 9 fout. close (); // Datei schliessen 10 } else cerr << " Konnte Datei nicht oeffnen!"; // Fehlerfall 11 return 0; 12 } In der 7. Zeile wird geprüft, ob die Datei korrekt geöffnet werden konnte. In diesem Fall wird etwas in die Datei geschrieben und diese danach wieder geschlossen. Im Fehlerfall wird in Zeile 10 eine Fehlermeldung auf die Standardfehlerausgabe (cerr) des Betriebssystems übergeben. 14 / 27
15 Status des Dateistroms prüfen Zustand des Dateistroms abfragen Der Dateistrom kann während des Lese- oder Schreibvorgangs unerwarteten Änderungen unterworfen sein. Aus diesem Grund sollte dessen Status ständig geprüft werden, um keine ungültigen Daten zu erzeugen. Die folgenden Funktionen stehen zur Prüfung des Streamzustandes zur Verfügung: bad(): gibt true zurück, falls eine Lese- oder Schreibaktion fehlschlägt. Dies kann auftreten, wenn eine Datei geschrieben wird, die nicht zum Schreiben geöffnet wurde oder das Dateisystem keinen freien Speicherplatz aufweist. fail(): ist true, wenn die Fälle von bad() eintreten. Zusätzlich wird auf Formatierungsfehler geprüft, wenn z.b. Buchstaben statt der erwarteten Integer-Zahlen gelesen werden. eof(): true, für den Fall, das beim Lesen das Dateiende (engl. end of file) erreicht wurde. good(): gibt false für alle Fällen zurück, in denen die obigen Funktionen true liefern. 15 / 27
16 Status des Dateistroms prüfen Beispiel zur Verwendung der Zustandsabfragen 1 # include <iostream > 2 # include <fstream > 3 # include <cstdlib > // wegen exit () 4 # include <string > 5 using namespace std ; 6 7 int main () { 8 string zeile ; 9 int zaehler = 0; 10 ifstream fin(" beispiel. txt "); 11 if (! fin.good ()) { 12 cerr << " Konnte Datei nicht oeffnen!"; 13 exit ( -1); 14 } 15 while ( getline (fin, zeile )) 16 cout << ++ zaehler << ". Zeile : " << zeile << endl ; 17 fin.close (); 18 return 0; 19 } In Zeile 11 wird der Zustand des Streams geprüft und im Falle eines erfolglosen Öffnens eine Fehlermeldung ausgegeben und danach das Programm beendet. Ebenso wäre eine verkürzte Form if (!fin) möglich, um den Fehler abzufangen. 16 / 27
17 Streamposition bestimmen und verändern Überblick 1 Dateien lesen und schreiben Flags zum Öffnen von Dateien Status des Dateistroms prüfen Streamposition bestimmen und verändern 2 Eingaben korrekt verarbeiten Wie kann ich in C / 27
18 Streamposition bestimmen und verändern Streamposition Sowohl ifstream als auch ofstream besitzen spezielle Zeiger innerhalb des Datenstroms. Bei ifstream ist dies das Element, das bei der nächsten Eingabeoperation gelesen wird, weshalb es auch der get Pointer genannt wird. Umgekehrt wird bei ofstream ein Zeiger auf die Positition, an der die nächste Schreiboperation durchgeführt wird, genutzt. Dieser wird als put-pointer bezeichnet. Infstream sind beide verfügbar. Diese beiden Zeiger lassen sich über die folgenden Funktionen verändern: tellg() und tellp(): Geben jeweils die Position im Lese- (tellg()) und Schreibstrom (tellp()) als Integer zurück und benötigen keine Argumente. seekg() und seekp(): Ändert die Position der get- und put-ströme. 18 / 27
19 Streamposition bestimmen und verändern Streamposition verändern Varianten von seekg() und seekp() sind seekg(position) und seekp(position). Mit position wird der Zeiger im Strom auf diese absolute Position innerhalb der Datei gesetzt, beginnend vom Dateianfang. Der Typ dieses Parameters ist der gleiche, wie er von tellg() und tellp() zurückgegeben wird: ein Integer. Weiterhin gibt es noch seekg(offset, direction) und seekp(offset, direction). Damit lässt sich die Position innerhalb des Streams ebenfalls verschieben und zwar beginnend von offset, der auch einen Integerwert darstellt. Dies kann in die Richtung geschehen, die von direction angegeben wird. Hier sind folgende Werte möglich: direction ios::beg ios::cur ios::end Beschreibung Offset, der vom Beginn des Datenstroms an gezählt wird. Offset, der von der aktuellen Position des Streampointers an gezählt wird. Offset, der vom Ende des Datenstroms an gezählt wird. 19 / 27
20 Streamposition bestimmen und verändern Beispiel zu Streampositionen Dieses Programm (mytellg) ermittelt die Dateigrösse, die bei nach der Erstellung durch fout mit der Zeichenkette Test als Inhalt entsteht. 1 # include <iostream > 2 # include <fstream > 3 using namespace std; 4 5 int main () { 6 long start, ende ; 7 ofstream fout (" beispiel. txt"); 8 fout << " Test "; 9 fout. close (); ifstream fin (" beispiel. txt"); 12 start = fin. tellg (); // hole die Position vom Dateianfang 13 fin. seekg (0, ios :: end); // ans Dateiende springen 14 ende = fin. tellg (); // hole die Position vom Dateiende 15 fin.close (); 16 cout << " Dateigroesse : " << (ende - start ) << " Bytes.\n"; 17 return 0; 18 } $./mytellg Dateigroesse: 4 Bytes $ ls -lh beispiel.txt -rw-r--r-- 1 bcr staff 4B Dec 1 22:43 beispiel.txt 20 / 27
21 Streamposition bestimmen und verändern Lesen und Schreiben in der gleichen Datei 1 # include <fstream > 2 # include <iostream > 3 # include <string > 4 using namespace std; 5 6 int main () { 7 int i = 0; 8 fstream FIO(" FIO. txt", ios :: out ios :: trunc ); 9 FIO. close (); // nun existiert FIO. txt als leere Datei 10 FIO. open (" FIO. txt", ios :: in ios :: out); 11 for ( ; i< 10; i++) // Zahlen in Datei schreiben 12 FIO << i << ; 13 FIO << endl ; 14 FIO. seekg (0); // zurueck zum Dateianfang 15 while (! FIO >> i) // einlesen 16 if (! FIO.eof ()) cout << i << ; // Kontrollausgabe 17 cout << endl ; 18 FIO. clear (); // EOF - Status loeschen 19 FIO. seekp (5); // Position 5 suchen 20 FIO << " Hallo "; // ueberschreiben 21 FIO. seekg (0); // zurueck zum Dateianfang 22 string puffer ; 23 getline (FIO, puffer ); // Zeile einlesen 24 cout << puffer << endl ; // und ausgeben 25 FIO.close (); 26 return 0; 27 } 21 / 27
22 Streamposition bestimmen und verändern Korrektes Einlesen bis zum Dateiende Falsch 1 int i = 0; 2 while (! cin.eof ()) { 3 cin >> x; 4 i++; 5 //... 6 } Der EOF-Zustand wird im obigen Beispiel nicht in jedem Fall gesetzt, sondern evtl. erst nachdem ein Lesevorgang nach dem Dateiende versucht wurde. Beispielsweise kann man beim Einlesen von Tastatur auch nicht erwarten, dass C++ in der Lage ist, vorherzusehen, ob noch Zeichen kommen werden. Besser ist die folgende Schreibweise: Richtig 1 int i = 0; 2 while (cin >> x) { 3 i++; 4 //... 5 } 22 / 27
23 Eingaben korrekt verarbeiten Überblick 1 Dateien lesen und schreiben Flags zum Öffnen von Dateien Status des Dateistroms prüfen Streamposition bestimmen und verändern 2 Eingaben korrekt verarbeiten Wie kann ich in C / 27
24 Eingaben korrekt verarbeiten Eingaben korrekt verarbeiten Beim Einlesen von Tastatur kann es vorkommen, dass der Benutzer ein falsches Zeichen (Buchstabe statt Zahl) eingibt. Hat man diese Eingabe in eine Schleife gebaut, um gewisse Werte abzufangen, führt diese Eingabe zu einer Endlosschleife, wie im folgenden Fall: 1 # include <iostream > 2 using namespace std; 3 int main () { 4 int i = 0; 5 cout << " Zahlen eingeben ( Trenner : Space ), Abbruch mit -1:"; 6 while (i!= -1) { 7 cin >> i; 8 cout << " Sie haben " << i << " eingegeben.\n"; 9 } 10 return 0; 11 } Zahlen eingeben (Trenner: Space), Abbruch mit -1: 2 3 a Zahlen eingeben (Trenner: Space), Abbruch mit -1: Sie haben 0 eingegeben. Zahlen eingeben (Trenner: Space), Abbruch mit -1: Sie haben 0 eingegeben / 27
25 Eingaben korrekt verarbeiten Die Lösung des Problems Eine Möglichkeit, diesen Fehler zu umgehen, ist, die cin-anweisung in die Abbruchbedingung der while-schleife zu verschieben. 1 # include <iostream > 2 using namespace std; 3 int main () { 4 int i = 0; 5 cout << " Zahlen eingeben ( Trenner : Space ), Abbruch mit -1:"; 6 while (cin >> i) { 7 if (i == -1) break ; 8 cout << " Sie haben " << i << " eingegeben.\n"; 9 } 10 return 0; 11 } Zahlen eingeben (Trenner: Space), Abbruch mit -1: 2 3 a Sie haben 2 eingegeben. Sie haben 3 eingegeben. In diesem Fall wird die while-schleife abbrechen, wenn ein falsches Zeichen oder -1 eingegeben wurde. Eine noch kürzere Schreibweise ergibt sich durch folgende Bedingung der while-schleife: while ((cin >> i) && (i!= -1)) 25 / 27
26 Eingaben korrekt verarbeiten Wie kann ich in C++... Überblick 1 Dateien lesen und schreiben Flags zum Öffnen von Dateien Status des Dateistroms prüfen Streamposition bestimmen und verändern 2 Eingaben korrekt verarbeiten Wie kann ich in C / 27
27 Eingaben korrekt verarbeiten Wie kann ich in C++... Wie kann ich in C++... Frage: Wie kann ich prüfen, ob eine bestimmte Taste vor dem ENTER bei der Eingabe gedrückt wurde? Wie kann ich erreichen, dass die eingegebenen Zeichen nicht auf dem Bildschirm ausgegeben werden (für Passworteingaben)? Wie kann ich den Cursor auf dem Bildschirm platzieren? Wie kann ich den Bildschirminhalt löschen? Wie kann ich die Farben auf dem Bildschirm ändern? Antwort: Dies ist keine Standard-Funktion von C++. C++ erwartet weder eine angeschlossene Tastatur noch einen Bildschirm (denken Sie an embedded-geräte, die das auch nicht benötigen). Jeder C++-Compilerhersteller implementiert diese Funktionen für die verschiedenen unterstützten Betriebssysteme anders. Lesen Sie die dazugehörige Dokumentation! 27 / 27
4 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
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
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
MehrHochschule Darmstadt Informatik-Praktikum (INF 1) WS 2014/2015 Wirtschaftsingenieur Bachelor 4. Aufgabe Datenstruktur, Dateieingabe und -ausgabe
Aufgabenstellung Für ein Baumkataster sollen für maximal 500 Bäume Informationen gespeichert werden, die alle nach der gleichen Weise wie folgt strukturiert sind: Nummer Bauminfo Baumart Hoehe Baum Umfang
MehrHochschule Darmstadt Informatik-Praktikum SS 2017 EIT Bachelor 5. Aufgabenblatt Datenstruktur, Dateieingabe und -ausgabe
Aufgabe 5: Bücher verwalten Für das Literaturverzeichnis einer Abschlussarbeit soll ein Programm zur Verwaltung von Bücherlisten geschrieben werden. Das Programm soll in der Lage sein, zu einem Buch die
MehrKontrollstrukturen -- Schleifen und Wiederholungen
Kontrollstrukturen -- Schleifen und Wiederholungen Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling benedict.reuschling@h-da.de Hochschule Darmstadt Fachbereich Informatik WS 2013/14
MehrHochschule Darmstadt Informatik-Praktikum WS 2017/2018 WIng Bachelor 6. Aufgabenblatt Zeiger, verkettete Liste, Dateieingabe und -ausgabe
Aufgabe 6: Häuser verwalten - dynamisch Für ein Schneeräumungsunternehmen soll ein Programm zur Verwaltung von Häuserlisten geschrieben werden. Das Programm soll in der Lage sein, zu einem Haus die wichtigsten
MehrProgrammierkurs Kapitel 4: Dateien Seite 1. Verwaltungfeld im Speicher. 4.1 Alternativen zur Programmierung der Eingabe und der Ausgabe
Programmierkurs Kapitel 4: Dateien Seite 1 4 Dateien Verwaltungfeld im Speicher Dateivariable im Programm Dateizeiger Schreib-/Lesefeld im Programm EOF 4.1 Alternativen zur Programmierung der Eingabe und
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
MehrHydroinformatik I: IO - Files
Hydroinformatik I: IO - Files Prof. Dr.-Ing. habil. Olaf Kolditz 1 Helmholtz Centre for Environmental Research UFZ, Leipzig 2 Technische Universität Dresden TUD, Dresden Dresden, 02. Dezember 2016 1/24
Mehrios fstream ifstream
4 Grundlagen der Dateiarbeit 4.1 File-Stream-Klassen Mit der Beendigung eines Programms gehen die im Hauptspeicher gehaltenen Daten des Programms verloren. Um Daten permanent zu speichern, müssen sie in
MehrHochschule Darmstadt Informatik-Praktikum (INF 1) WS 2015/2016 Wirtschaftsingenieur Bachelor 5. Aufgabe Datenstruktur, Dateieingabe und -ausgabe
Aufgabenstellung Für eine Hausverwaltung sollen für maximal 500 Wohnungen Informationen gespeichert werden, die alle nach der gleichen Weise wie folgt strukturiert sind: Art Baujahr Wohnung Whnginfo Nebenkosten
MehrProgrammieren in C/C++ und MATLAB
Programmieren in C/C++ und MATLAB Christof Beyer Sven Willert Sabine Schmidt Christian-Albrechts-Universität zu Kiel CAU 7-1 Bisher eingeführt war für Namen nur der Datentyp char. Dieser erlaubt das Speichern
MehrInhalt Streams Eingabe / Ausgbe in C Dateizugriff in C Eingabe / Ausgabe in C++ Dateizugriff in C++ Error Handling
Input / Output in C, C++ Inhalt Streams Eingabe / Ausgbe in C Dateizugriff in C Eingabe / Ausgabe in C++ Dateizugriff in C++ Error Handling Page 1 Ausgaben in C,C++ - generell Fuer C basierte Ausgaben:
MehrEinführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung)
Wintersemester 2005/06 Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl
MehrKapitel 8: Abstrakte Datentypen. Inhalt. Definition ADT Keller ADT Schlange
Wintersemester 005/06 Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl
Mehr7.1 Motivation. Tastatureingabe. Inhalt von input.txt. Bildschirmausgabe. Inhalt von output.txt. i =33 j = 44
7. Stream-Klassen #include #include using namespace std; void main() { //Teil 1 int i,j; fstream eingabe("input.txt,ios::in); fstream ausgabe("output.txt,ios::out); //Teil 2 if ( eingabe>>
Mehr9 Streams. 9.1 Einführung und Architektur
9.1 9 Streams 9.1 Einführung und Architektur Die C++ Standardbibliothek stellt eine Klassehierarchie zum Umgang mit Streams zur Verfügung, welche im wesentlichen folgende Gebiete abdeckt: Umgang mit Inhalten
MehrEin- und Ausgabe mit Dateien
Ein- und Ausgabe mit Dateien Edouard Lamboray Informatik I für D-ITET (2004) Ein- und Ausgabekonzepte in C und C++ fstream header Streamobjekt Files schreiben und lesen Argumente von main 2 Vorbemerkungen
MehrGrundlagen der Informatik 6. Arrays I
6. Arrays I Motivation Array (konstante Länge) Speicherbereich Eingabe von Arrays Grundlagen der Informatik (Alex Rempel) 1 Motivation Beispiel: Bildschirmpixel zeichnen Auflösung 800x600, d.h. insgesamt
MehrMapra: C++ Teil 7. Felix Gruber, Michael Rom. 14. Juni 2016 IGPM. Felix Gruber, Michael Rom (IGPM) Mapra: C++ Teil 7 14.
Mapra: C++ Teil 7 Felix Gruber, Michael Rom IGPM 14. Juni 2016 Felix Gruber, Michael Rom (IGPM) Mapra: C++ Teil 7 14. Juni 2016 1 / 20 Themen vom letzten Mal Klassen this-pointer Virtuelle Methoden Bildbearbeitung
MehrC++ Teil 7. Sven Groß. 3. Juni Sven Groß (IGPM, RWTH Aachen) C++ Teil 7 3. Juni / 16
C++ Teil 7 Sven Groß 3. Juni 2016 Sven Groß (IGPM, RWTH Aachen) C++ Teil 7 3. Juni 2016 1 / 16 Themen der letzten Vorlesung dynamische Speicherverwaltung (Wdh.) Cast bei Zeigern STL-Vektoren + Live Programming
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,
MehrImplementation VL3 Gruppe A
Doubravsky Filip Rot Drazen Implementation VL3 Gruppe A Datei Anzahl diese Programms: main.cpp Menü mit Exit eingabe.hpp eingabe.cpp Eingabe und Datei öffnen und einlesen translate.hpp translate.cpp Speicherung
MehrE-/A-Funktionalität nicht Teil der Programmiersprache
C Ein-/Ausgabe C Ein-/Ausgabe C.1 Überblick E-/A-Funktionalität nicht Teil der Programmiersprache Realisisierung durch "normale" Funktionen Bestandteil der Standard-Funktionsbibliothek einfache Programmierschnittstelle
MehrIm Windows Betriebssystem sind Dateien eindeutig gekennzeichnet durch ihren Pfad, Dateinamen und nach einem Punkt die Dateierweiterung.
Dateioperationen Seite 1 von 12 Im Windows Betriebssystem sind Dateien eindeutig gekennzeichnet durch ihren Pfad, Dateinamen und nach einem Punkt die Dateierweiterung. z.b.: c:\testdateien\text.dat //Datendatei
MehrC++ für Ingenieure. Einführung in die objektorientierte Programmierung 4 Objektorientierte Programmierung. 4.8 Streams und Dateien HARALD NAHRSTEDT
309 HARALD NAHRSTEDT C++ für Ingenieure Einführung in die objektorientierte Programmierung Kapitel 4 Objektorientierte Programmierung Erstell am Beschreibung 4.8 Streams und Dateien 310 4 Objektorientierte
MehrInformatik II Datenstrukturen und Algorithmen in C/C++ Nachtrag
Informatik II Datenstrukturen und Algorithmen in C/C++ Nachtrag Dr. Stefan Lewandowski 1 Version 25. Juni 2011 Dieses Skript darf nur mit ausdrücklicher Zustimmung des Autors vervielfältigt werden. Die
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
MehrEinführung in die Programmierung mit C++
1 Seite 1 Einführung in die Programmierung mit C++ Teil IV - Weiterführende Themen 13. Klassenbibliotheken Klassenbibliotheken Seite 2 Sammlung von Algorithmen und Klassen in Klassenbibliotheken: Konzept:
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
MehrInformationsverarbeitung
1/19 Informationsverarbeitung Einführung in das Programmieren mit C++ Markus Uhlmann Institut für Hydromechanik Karlsruher Institut für Technologie www.ifh.kit.edu WS 2011/2012 Vorlesung 13 (Download Quelldateien)
MehrEin- und Ausgabe mit Dateien
Ein- und Ausgabe mit Dateien Edouard Lamboray Informatik I für D-ITET (2004) Ein- und Ausgabekonzepte in C und C++ fstream header Streamobjekt Files schreiben und lesen Argumente von main Vorbemerkungen
MehrFor matierte Ein-/Ausgabe iostream: multiple inheritance von istream und ostream Weitere abgeleitete Klassen (z. B. Ausgabe nach Strings)
Übersicht Ersatz für stdio in C Typensicher Benutzt C++-Sprachfeatures Ein-/Ausgabe für selbstdefinierte Datentypen #include Mehrere Ebenen streambuf Schnelle (gepuffer te), zeichenweise Ein-/Ausgabe
MehrEin und Ausgabe Grundlagen C++ E/A System operiert über streams streams sind logische Geräte, die Informationen produzieren bzw. verbrauchen streams
Ein und Ausgabe Grundlagen C++ E/A System operiert über streams streams sind logische Geräte, die Informationen produzieren bzw. verbrauchen streams sind durch das E/A System mit physikalischen Geräten
MehrEinführung in I/O und File-Handling in C ++
1/34 Einführung in I/O und File-Handling in C ++ Florian Adamsky, B. Sc. (PhD cand.) florian.adamsky@iem.thm.de http://florian.adamsky.it/ cbd Softwareentwicklung im WS 2014/15 2/34 Outline 1 Grundlagen
Mehr5. Elementare Befehle und Struktogramme
5. Elementare Befehle und Struktogramme Programmablauf Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme Dr. Norbert Spangler / Grundlagen
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
MehrÜbersicht Shell-Scripten
!!!! Wichtig: Bei Shell-Scripten enden die Zeilen nicht mit einem Strichpunkt!!!! Erste Zeile eines Shell-Scripts: #! /bin/bash Variablen in Shell-Scripts: Variablennamen müssen mit einem Buchstaben beginnen,
MehrMapra: C++ Teil 3. Felix Gruber. 29. April IGPM, RWTH Aachen. Felix Gruber (IGPM, RWTH Aachen) Mapra: C++ Teil 3 29.
Mapra: C++ Teil 3 Felix Gruber IGPM, RWTH Aachen 29. April 2015 Felix Gruber (IGPM, RWTH Aachen) Mapra: C++ Teil 3 29. April 2015 1 / 11 Themen vom letzten Mal Debuggen mit gdb Zusammengesetzte Datentypen
MehrGrundlagen der Informatik 5. Kontrollstrukturen II
5. Kontrollstrukturen II Schleifen Sprünge Grundlagen der Informatik (Alex Rempel) 1 Schleifen Schleifen allgemein und in C++ Schleifen (Loops) ermöglichen die Realisierung sich wiederholender Aufgaben
MehrDateioperationen Fachhochschule Würzburg-Schweinfurt Prof. Dr. Martin Ochs. Abspeichern und Einlesen von Texten (Strings) in Dateien
Informatik I SS 2003 Dateioperationen 1 Textdateien, Öffnen Abspeichern und Einlesen von Texten (Strings) in Dateien 1. Das Öffnen einer Datei a) Deklaration eines Zeigers auf eine Datei FILE *pfile; b)
MehrEinführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung)
Wintersemester 2005/06 Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl
MehrÜbersicht PERL. !!!! Wichtig: Nach dem Befehl einem Strichpunkt setzen!!!!
!!!! Wichtig: Nach dem Befehl einem Strichpunkt setzen!!!! Erste Zeile eines PERL-Scripts: #! /usr/bin/perl Variablen in PERL: Normale Variablen beginnen mit einem $-Zeichen Array-Variablen beginnen mit
MehrGI Vektoren
Vektoren Problem: Beispiel: viele Variablen vom gleichen Typ abspeichern Text ( = viele char-variablen), Ergebnisse einer Meßreihe ( = viele int-variablen) hierfür: Vektoren ( = Arrays = Feld ) = Ansammlung
Mehreinlesen n > 0? Ausgabe Negative Zahl
1 Lösungen Kapitel 1 Aufgabe 1.1: Nassi-Shneiderman-Diagramm quadratzahlen Vervollständigen Sie das unten angegebene Nassi-Shneiderman-Diagramm für ein Programm, welches in einer (äußeren) Schleife Integer-Zahlen
MehrQuiz und Übungen. C++ Übung am 19. Mai 2016
Quiz und Übungen C++ Übung am 19. Mai 2016 Was ist der Unterschied zwischen kompilierenden und interpretierenden Programmiersprachen? Was ist der Unterschied zwischen kompilierenden und interpretierenden
MehrProgrammieren in C++ Stream I/O
Programmieren in C++ Stream I/O Inhalt Datenströme (Streams) Standard Input and Output C++ Streams () Formatierte Ein- und Ausgabe Format-Manipulatoren Textdatei schreiben und lesen Binärdatei
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.
MehrAngewandte Mathematik und Programmierung
Angewandte Mathematik und Programmierung Einführung in das Konzept der objektorientierten Anwendungen zu mathematischen Rechnens SS2013 Inhalt Projekt Vorlesung: praktische Implementierung üben Ein und
MehrPraktikum zur Vorlesung Einführung in die Programmierung WS 14/15 Blatt 3
Michael Jugovac Dominik Kopczynski Jan Quadflieg Till Schäfer Stephan Windmüller Dortmund, den 30. Oktober 2014 Praktikum zur Vorlesung Einführung in die Programmierung WS 14/15 Blatt 3 Es können 12 (+5
MehrStrings. Daten aus Dateien einlesen und in Dateien speichern.
Strings. Daten aus Dateien einlesen und in Dateien speichern. Strings Ein String ist eine Zeichenkette, welche von MATLAB nicht als Programmcode interpretiert wird. Der Ausdruck 'a' ist ein String bestehend
MehrProgrammiersprachen Einführung in C
Programmiersprachen Einführung in C Teil 10: Arbeiten mit Prof. Dr. Gliederung Programmiersprachen 1. Von der Maschinensprache zu C 2. Die Struktur von C-Programmen 3. Variable und Datentypen in C 4. Bildschirm
MehrExcel + VBA. Ergänzungen. Kapitel 1 Einführung in VBA Sequentielle Textdateien HARALD NAHRSTEDT. Erstellt am
HARALD NAHRSTEDT Excel + VBA Ergänzungen Kapitel 1 Einführung in VBA 1.5.23 Sequentielle Textdateien Erstellt am 12.02.2012 Beschreibung In Textdateien lassen sich schnell Informationen speichern und auch
MehrEs ist für die Lösung der Programmieraufgabe nicht nötig, den mathematischen Hintergrund zu verstehen, es kann aber beim Verständnis helfen.
Ziele sind das Arbeiten mit Funktionen und dem Aufzählungstyp (enum), sowie - einfache Verzweigung (if else) - Alternativen switch case - einfache Schleifen (while oder do while) Aufgabe 3: Diese Aufgabe
MehrComputergrundkenntnisse und Programmieren, WS 07/08, Übung 11: Klassen der Standardbibliothek 2
Computergrundkenntnisse und Programmieren, WS 07/08, Übung 11: Klassen der Standardbibliothek 2 Neben vector ist list die zweite wichtige Containerklasse. Um unsere Kenntnisse von Containerklassen zu erweitern,
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
MehrDateizugriff unter C
Begriffe Dateizugriff unter C Datei = sequentielle Ansammlung von Datenbytes, z.b. auf einer Festplatte Auch Bildschirm und Tastatur werden wie Dateien behandelt: Bildschirm ist die Datei stdout Tastatur
MehrKapitel 8: Elementare Datenstrukturen. Inhalt. Definition ADT Keller ADT Schlange ADT Liste ADT Binärbaum
Wintersemester 27/8 Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fakultät für Informatik Lehrstuhl
MehrEinführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung)
Wintersemester 2007/08 Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fakultät für Informatik Lehrstuhl
MehrWintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 25
Kapitel 9 Schleifen Seite 1 von 25 Schleifen - Schleifen werden zur wiederholten Ausführung von Anweisungen verwendet. - Es werden drei Arten von Schleifen unterschieden: o for -Schleife o while -Schleife
MehrKlausur Informatik WS 2012/13
Klausur Informatik WS 2012/13 Name Gruppe 1 Vorname Dauer 90 min Matrikelnummer Hilfsmittel keine Die Klausur ist mit 50 Punkten sicher bestanden. Hinweies: Voraussetzung für die Teilnahme ist das Bestehen
MehrJavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.
JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung
MehrGrundlagen C und C++ Einheit 04: Weitere Grundlagen in C++ Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme
Grundlagen C und C++ Einheit 04: Weitere Grundlagen in C++ Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda Teil 1: Weitere Grundlagen von C++ Das assert Statement File Input und
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
MehrDateien mit wahlfreiem Zugriff (Random Access Files)
Dateien mit wahlfreiem Zugriff (Random Access Files) Anforderungen Direkter Zugriff auf Datensätze Schneller Zugriff ohne sequentiellen Suchvorgang Einfügen von Datensätzen ohne andere Datensätze zu überschreiben
MehrKap 9. Bitoperationen und -strukturen
Kap 9. Bitoperationen und -strukturen 9.1 Anwendung von Bits Im Gegensatz zu den üblicherweise Byte-orientierten Daten gibt es auch Bit-Anwendungsbeispiele Statusanzeigen bei Ein-/Ausgabe (Stream-Klassen)
MehrNachname: Vorname: Matr.-Nr.: Punkte: 1. Aufgabe: ( / 25 Pkt.) Gegeben ist das folgende Struktogramm zur Berechnung von sin(x) mit Hilfe einer Reihe.
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: ( / 25 Pkt.) Gegeben ist das folgende
Mehr8. Referenzen und Zeiger
8. Referenzen und Zeiger Motivation Variable werden in C++ an speziellen Positionen im Speicher abgelegt. An jeder Position befindet sich 1 Byte. Sie sind durchnummeriert beginnend bei 0. Diese Positionen
MehrZeiger und dynamischer Speicher
Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling benedict.reuschling@h-da.de Hochschule Darmstadt Fachbereich Informatik WS 2013/14 Zuletzt aktualisiert: 09.12.2013, 07:49 Uhr
MehrModellierung und Programmierung
Modellierung und Programmierung Dr. Martin Riplinger 9.1.2013 IAM Institut für Angewandte Mathematik Fortgeschrittene Ein- und Ausgabe Bisher: Ein- und Ausgabe nur über die Kommandozeile Erweiterung: Konzept
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 Schleifen. Man kann bestimme Anweisungen in einem Programm mehrfach ausführen lassen. Dazu gibt es in C++ verschiedene Schleifen.
C++ Teil 3 3.3 Schleifen Man kann bestimme en in einem Programm mehrfach ausführen lassen. Dazu gibt es in C++ verschiedene Schleifen. for-schleife for-schleife while-schleife do-while-schleife for ( Ausdruck1;
MehrProgrammieren in C/C++ und MATLAB
Programmieren in C/C++ und MATLAB Sabine Schmidt Christian-Albrechts-Universität zu Kiel CAU, Sommersemester 2008 4-1 Übung Aufgabe: Berechnen Sie für die Klimastation Schleswig des Deutschen Wetterdienstes
MehrGrundlagen C und C++ Einheit 03: Grundlagen in C++ Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme
Grundlagen C und C++ Einheit 03: Grundlagen in C++ Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Teil 1: Wiederholung C Heutige Agenda Nutzereingaben verarbeiten Teil 2: Grundlagen in C++ Erstes
MehrDHBW Karlsruhe, Angewandte Informatik Programmieren in JAVA https://www.iai.kit.edu/~javavorlesung W. Geiger, T. Schlachter, C. Schmitt, W.
Palindrome speichern Klasse: PalindromeFile Erweitern Sie die Palindrom-Aufgabe vom Aufgabenblatt Strings derart, dass wenn die eingelesene Zeichenkette ein Palindrom ist, diese in eine Datei geschrieben
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
MehrProgrammieren in C/C++ und MATLAB
Programmieren in C/C++ und MATLAB Christian-Albrechts-Universität zu Kiel CAU 9-1 Studentendatei Sie sollen ein Programm zur Verwaltung von Studenten (Büchern, Autos, Supermarktartikeln, etc...) schreiben.
MehrPraktikum Betriebssysteme 1. Aufgabe (1)
FG TECHNISCHE INFORMATIK U BS 041 01 TH 09 Praktikum Betriebssysteme 1. Aufgabe (1) Es wird ein unter LINUX lauffähiges C++-Programm ptab, mit dem Informationen über die Partitionierung von Festplatten
MehrTutoraufgabe 1 (Zweierkomplement): Lösung: Programmierung WS16/17 Lösung - Übung 2
Prof. aa Dr. J. Giesl Programmierung WS16/17 F. Frohn, J. Hensel, D. Korzeniewski Tutoraufgabe 1 (Zweierkomplement): a) Sei x eine ganze Zahl. Wie unterscheiden sich die Zweierkomplement-Darstellungen
MehrInformatik I. Matthias Geel Büro: IFW A Blog:
Informatik I Matthias Geel Büro: IFW A45.2 E-Mail: geel@inf.ethz.ch Blog: http://blogs.ethz.ch/infitet09/ Übersicht 1. Nachbesprechung Übung 5 2. Theorie: Ein- und Ausgabe 3. Vorbesprechung Übung 7 09.11.2009
MehrInformatik I - Übung 2 Programmieren in Eclipse
Informatik I - Übung 2 Programmieren in Eclipse. / Info1 / HelloWorld / HelloWorld Wort1 Wort2 Daniel Hentzen dhentzen@student.ethz.ch 5. März 2014 1.2 Häufigste Fehler im Terminal auf Gross-/Kleinschreibung
MehrThemen. Formatierte und unformatierte Eingabe Bedingungsoperator Namespaces Kommandozeilenargumente
Themen Formatierte und unformatierte Eingabe Bedingungsoperator Namespaces Kommandozeilenargumente Formatierte Eingabe mit cin Die Formatierung der Eingabe ist der Ausgabe sehr ähnlich: Die Flags werden
MehrEine Mini-Shell als Literate Program
Eine Mini-Shell als Literate Program Hans-Georg Eßer 16.10.2013 Inhaltsverzeichnis 1 Eine Mini-Shell 1 1.1 Einen Befehl parsen......................... 2 1.2 Was tun mit dem Kommando?...................
MehrEs ist für die Lösung der Programmieraufgabe nicht nötig, den mathematischen Hintergrund zu verstehen, es kann aber beim Verständnis helfen.
Ziele sind das Arbeiten mit Dateien, sowie Records und Funktionen Aufgabe 4: Diese Aufgabe basiert auf der Aufgabe 3. Es ist ein Programm zu erstellen, in welchem der Anwender aus einer Anzahl möglicher
MehrDateien lesen und schreiben mit php
Dateien lesen und schreiben mit php (fopen(), fgets(), fread(), fwrite, fclose(), fputs(), file_get_contents()) Der Dateizugriff (anfügen und lesen) fopen(filename, mode) Öffnen vom lokalen Dateisystem
Mehr6 UTF8 und Stringverarbeitung
6 UTF8 und Stringverarbeitung 6.1 Übungsaufgabe 6.1.1 Aufgabe 1 Verwenden Sie die Musterlösung aus Übung 3-2 und machen Sie das Programm unicodefähig. Arbeiten Sie mit wcin, wcout, wstrings, iswpunct,
Mehr13 Reguläre Ausdrücke
13 Reguläre Ausdrücke 13.1 Übungsaufgabe 13.1.1 Aufgabe 1 Schreiben Sie ein C++ Programm, das eine txt-datei (UTF8 kodiert) öffnet und mit wcin alle Wörter einliest, Punktuationszeichen am Anfang und Ende
MehrFunktionales 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
MehrGrundlagen der Informatik 2. Typen
Grundlagen der Informatik 2. Typen Speicher, Speicherbedarf Ein-/Ausgabe Grundlagen der Informatik (Alex Rempel) 1 Wiederholung // root calculation #include #include using namespace
MehrProgrammierkurs C++ Lösungen zum Übungsblatt 3. Nils Eissfeldt und Jürgen Gräfe. 2. November Aufgabe 5
Zentrum für Angewandte Informatik Köln Arbeitsgruppe Faigle / Schrader Universität zu Köln Lösungen zum Übungsblatt 3 Programmierkurs C++ Nils Eissfeldt und Jürgen Gräfe. November 001 Aufgabe 5 Innerhalb
MehrFB Informatik. Fehler. Testplan
Fehler #include int i,n,summe; int summe (int); cout 0) cin>n; i=summme(n); cout
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
MehrEinstieg in die Informatik mit Java
1 / 17 Einstieg in die Informatik mit Java Methoden und Felder Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 17 1 Überblick 2 Felder als Parameter bei Methoden 3 Feld
MehrPIWIN 1 Übung Blatt 5
Fakultät für Informatik Wintersemester 2008 André Gronemeier, LS 2, OH 14 Raum 307, andre.gronemeier@cs.uni-dortmund.de PIWIN 1 Übung Blatt 5 Ausgabedatum: 19.12.2008 Übungen: 12.1.2009-22.1.2009 Abgabe:
MehrC++ - Einführung in die Programmiersprache Header-Dateien und Funktionen. Leibniz Universität IT Services Anja Aue
C++ - Einführung in die Programmiersprache Header-Dateien und Funktionen Leibniz Universität IT Services Anja Aue Modularisierung Logische Gliederung von Programmteilen mit Hilfe von Namensräumen. Aufteilung
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Dynamische Datenobjekte Pointer/Zeiger, Verkettete Liste Eigene Typdefinitionen 1 Zeigeroperatoren & und * Ein Zeiger ist die Speicheradresse irgendeines Objektes. Eine
MehrGrundlegende Anweisungen in C++
Grundlegende in C++ Peter Bastian Dieses Dokument basiert auf einer ursprünglich englischen Fassung von Katharina Vollmayr-Lee (http: // www. eg. bucknell. edu/ ~ kvollmay/ caps_ s2010/ C+ +_ summary.
MehrProjekt 3 Variablen und Operatoren
Projekt 3 Variablen und Operatoren Praktisch jedes Programm verarbeitet Daten. Um mit Daten programmieren zu können, muss es Möglichkeiten geben, die Daten in einem Programm zu verwalten und zu manipulieren.
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
Mehr