Find Jobs
Hire Freelancers

Blocksatz - Ausgabe -- schnelles Geld für wenig Arbeit

€8-30 EUR

Completed
Posted about 8 years ago

€8-30 EUR

Paid on delivery
Schreiben Sie ein Programm blocksatz, das Folgendes tut. - blocksatz liest von der Kommandozeile einen Dateinamen und eine ganze Zahl breite ein. Werden nicht beide Angaben gemacht oder ist breite < 2, gibt es eine Usage aus, welche Kommandozeilenargumente es erwartet . - blocksatz versucht die angegebene Datei zu öffnen. Schlägt das fehl, terminiert es sofort mit einer entsprechenden Fehlermeldung auf cerr - blocksatz liest die Datei und gibt ihren Inhalt im Blocksatz mit der Breite von genau breite Zeichen auf cout aus. Die Absätze werden durch Leerzeilen getrennt. Schreiben Sie eine Datei [login to view URL], die die main()-Funktion enthält. Sie besteht aus drei kurzen Unterabschnitten: - Prüfung, ob die Usage ausgegeben werden soll. Die Bedingungen dazu stehen oben. Falls ja, soll der Hilfetext auf cout erscheinen. - Einlesen des Dateiinhalts in einen String durch Aufruf der Funktion leseArtikel(). Kann die Datei nicht geöffnet werden, gibt diese Funktion (ohne Fehlermeldung) einen leeren String zurück. main() erkennt das ggf. und terminiert mit einer Fehlermeldung auf cerr - Ausgabe des Stringinhalts im Blocksatz auf cout durch Aufruf der Funktion schreibeArti- kel(). Diese reguläre Ausgabe macht die Funktion selbst. Legen Sie eine neue leere Datei [login to view URL] in Ihr Projekt. Sie wird die beiden Funktionen leseArtikel() und schreibeArtikel() enthalten. Die Funktion leseArtikel() wandelt den gesamten Dateiinhalt in einen (einzigen langen) string um, den sog. Rohartikel. Das Zeilenformat in der Input-Datei soll dabei bewusst ignoriert werden, weil der Blocksatz davon unabhängig ist. Nur die Absätze des Textes werden erhalten. Lesen Sie die Datei zeilenweise in eine Zwischenvariable zeile ein. Den Inhalt von zeile hängen Sie nach einer kleinen Modifikation (siehe folgende Punkte) an den entstehenden Rohartikel an. - Die Zeilentrennzeichen ’\n’ in der Datei dienen zwar dazu, die Einlesezeile zeile zu begrenzen. Sie sind aber für den Blocksatz bedeutungslos und werden ignoriert. Ersetzen Sie sie durch Leerzeichen ’ ’ - Wird eine leere Zeile eingelesen, bedeutet sie einen Absatzzwischenraum. Diese Information soll erhalten bleiben, damit hier auch im Output ein Absatz erscheint. Ersetzen Sie eine leere Zeile durch ein Zeilentrennzeichen ’\n’. - Ein Worttrennzeichen ’-’ am Zeilenende ist für den Blocksatz ebenfalls bedeutungslos. Löschen Sie es, damit die Teilwörter im Output wieder zusammengeschrieben erscheinen. Anmerkung: das passt so nicht, falls es sich um einen Gedanken- oder Anknu ̈pfungsstrich handelt (vor dem ein Leerzeichen steht: " -"), falls es ein Bindestrich ist (nach dem lückenlos Text folgt: "2-3") oder falls eine Gruppe mehrere Trennzeichen umfasst ("--", "---"). Die genaue Berücksichtigung solcher Details ist NICHT notwendig. Die Funktion schreibeArtikel sollte sich von selbst erklären, Trennzeichen müssen NICHT Grammatikalisch korrekt sein.
Project ID: 10252904

About the project

1 proposal
Remote project
Active 8 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
Awarded to:
User Avatar
€24 EUR in 3 days
5.0 (3 reviews)
1.4
1.4

About the client

Flag of GERMANY
Berlin, Germany
5.0
2
Payment method verified
Member since Apr 5, 2016

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759) & Freelancer Online India Private Limited (CIN U93000HR2011FTC043854)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.