Zum Inhalt springen

UnderTears

Mitglieder
  • Gesamte Inhalte

    11
  • Benutzer seit

  • Letzter Besuch

  1. Huhu und Danke, Aufgabe hab ich geschafft, funktioniert sogar reibngslos
  2. Gut danke Dann versuch ich mein Glück mal!
  3. Ne, die mache ich schon lieber selbst Ich müsste wissen wie ich ne vorhandene Datei in ein Array schreiben kann und evtl. noch wie sich der Zugriff regelt. Oder gibt es irgendeine andere Möglichkeit die Zeilen aus der Datei quasi rückwärts auszulesen?
  4. Huhu, nun hab ich die nächste Hausaufgabe, die folgendermaßen lautet "Erstellen sie ein Programm, das die letzten n Zeilen einer Textdatei ausgibt, wobei n wählbar ist. Die Angabe des Dateinamens, ebenso wie die Anzahl der auszugebenden Zeilen werden interaktiv eingeben. Fehlerbehandlung bei fehlerhaften Eingaben ist vorzusehen. Es ist in Ordnung, wenn n einen Maximalwert hat und die Zahl der Zeilen zwischen dem 1 und dem Maximalwert gewählt werden kann." Meiner Meinung nach MUSS ich das über ein Array irgendwie lösen, denn in einer Datei vom Ende zum Anfang zählen wird schwer, oder ist sogar unmöglich? Da ich aber noch nie mit Arrays gearbeitet habe *schäm* habe ich noch keinen blassen Schimmer wie ich das realisieren soll Wäre lieb wenn ihr mir helft :e@sy UnderTears
  5. Ok, überredet Also "Er" kopiert lines mehrfach in die Datei, erweitert Zeilen durch Zaheln etc... Eine Logik hab ich dahinter leider noch nicht entdeckt
  6. Ich habe grade mal das hier: else if (wahl == 'u') { lines = 0; while (lines < linesstd) { getline(file,s); cout << s << endl; lines++; cout << lines << endl; } probiert. Wieso klappt das nur beim der ersten u-Eingabe und geht hinterher weiter als hätte ich d eingegeben? Boah C++ wird mir immer unsympathischer:floet: Und nochwas: Wieso schreibt er in die Datei? Dazu forder ich doch nirgends auf?:eek
  7. Davon hab ich noch nichts gehört *zugeb* Ich werde mal meister Google bemühen.
  8. Ich soll es nicht über ein Array realisieren, das war auch meine Idee, da könnte ich ja problemlos hoch und runter zählen...
  9. Huhu, ich hab ne Aufgabe von meinem Ausbilder bekommen die folgendermaßen lautet: Erstelle ein Programm, das eine Datei Seitenweise, d.h. eine vorgegebene Anzahl von Zeilen auf einmal, auf den Bildschirm ausgibt. Die Ausgabe kann mit folgenden Befehlen, die über die Tastatur eingeben werden, gesteuert werden: 1. q – Verlassen des Programms 2. d – nächste Seite 3. u – vorhergehende Seite Der Dateiname und die Anzahl der Zeilen pro Zeile sollen interaktiv eingegeben werden. Das ganze sieht jetzt dann folgender maßen aus... #include <iostream> #include <fstream> #include <string> #include <stdlib.h> using namespace std; int main() { int i = 0; int lines = 0; int linesstd = 0; char filename [255]; char wahl; string s; cout << "Wieviele Zeilen sollen ausgegeben werden? "; cin >> linesstd; lines=linesstd; cout << "Bitte geben Sie den Dateipfad an: "; cin >> filename; fstream file(filename); if(!file) { cout << "Datei nicht gefunden:" << filename << endl; } while(linesstd > i) { getline(file,s); cout << s << endl; i++; }; while (wahl != 'q') { cout << "Wollen Sie die naechste Zeile ausgeben(d)" << endl; cout << "oder die vorhergehende Zeile (u) ausgeben?" << endl; cin >> wahl; if (wahl == 'd') { lines = linesstd+lines; while(lines > i) { getline(file,s); cout << s << endl; i++; }; } else if (wahl == 'u') { ???"vorherige zeile (theoretisch)" ??? } else if (wahl == 'q') { system("PAUSE"); } else { cout << "Ungueltige Wahl!\n"; } } return 0; system ("PAUSE"); } funktioniert bis dahin auch, aber ich weiß nicht wie ich es realisieren soll, dass er die vorherige Zeile ausgibt :confused: Hoffe ihr könnt mir helfen

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...