ILS CSH03B-XX1-K02 Note 2

ILS CSH03B-XX1-K02 Note 2 Cover - ILS CSH03B-XX1-K02 Note 2 1 2 2.50
2,50 €

Eintritt in die .NET-Bibliothek

Musterlösung der Einsendeaufgabe fürs Lernheft CSH03B-XX1-K02
Eintritt in die .NET-Bibliothek

Ich biete hier meine selbsterstellte Lösung für das oben genannte Lernheft an. Diese Arbeit wurde mit der Note 2 bewertet. Bitte verwendet diese Lösung nur zur Unterstützung, als Hilfe oder Denkanstoß. Das direkte Einsenden dieser Einsendeaufgabe untersage ich hiermit ausdrücklich!

Alle weiteren Einsendeaufgaben könnt ihr gerne in meinem Profil finden.
Diese Lösung enthält 2 Dateien: (zip,pdf) ~467.73 KB
Diese Lösung zu Deinen Favoriten hinzufügen?
Diese Lösung zum Warenkorb hinzufügen?
CSH03 ILS Lösung.zip ~ 157.92 KB
CSH03 ILS Lösung.pdf ~ 309.81 KB
1. a) Wie öffnen Sie eine vorhandene Datei, sodass deren Inhalt gelöscht wird, damit
sodann neue Inhalte in die Datei geschrieben werden können?
b) Wie stellen Sie sicher, dass eine Datei geöffnet wird, falls sie existiert, und anderenfalls
neu erstellt wird?
Nennen Sie jeweils kurz den Lösungsansatz und geben Sie ein Codierungsbeispiel.
2. Gegeben sei das folgende Byte-Array:
byte[] array = {32, 32, 67, 67, 32, 32, 32, 35, 32, 35, 32,
32, 67, 32, 32, 67, 32, 32, 35, 32, 35, 32,
67, 32, 32, 32, 32, 32, 35, 35, 35, 35, 35,
67, 32, 32, 32, 32, 32, 32, 35, 32, 35, 32,
67, 32, 32, 32, 32, 32, 35, 35, 35, 35, 35,
32, 67, 32, 32, 67, 32, 32, 35, 32, 35, 32,
32, 32, 67, 67, 32, 32, 32, 35, 32, 35, 32 };
Schreiben Sie eine Methode „ESA2In“ in einem neuen Projekt „ESA_2“, mit der dieses
Array in eine in Ihrem Projektmappenordner anzulegende Datei „ESA2.txt“ gespeichert
werden kann.
Schreiben Sie sodann eine weitere Methode „ESA2Out“, mit der dieses Array aus der
Datei ausgelesen und auf Konsole ausgegeben werden kann. Die Konsolenausgabe
soll in sieben Zeilen mit jeweils elf Zeichen gegliedert werden – dies entspricht auch
der vorstehenden Anordnung der Array-Elemente. Beachten Sie aber, dass eine Zeile
im Array aus 33 Zeichen besteht – Ihre Konsolenausgabe soll hingegen elf Zeichen
umfassen!
Tipp:
Wofür stehen die Werte im Array? Für diese gegliederte Ausgabe müssen Sie
eine passende Steuerstruktur entwerfen.
Geben Sie den Quellcode an und zeigen Sie in einem Screenshot die Ausgabe der Methode
„ESA2Out“.
3. Erstellen Sie für diese Einsendeaufgabe ein neues Projekt „ESA_Projekt“, in das Sie
den letzten Stand des Fliegerprojekts kopieren. Ergänzen Sie das Projekt durch eine
Programmierung, mit der die Positionsdaten eines Flugs in einer Datei protokolliert
werden können.
• Die Protokollierungsdatei soll in den Ausführordner des Programms („Release“
oder „Debug“) geschrieben werden
• Der Name jeder Protokolldatei soll nach dem Muster
<kennung>_<Tag>-<Stunde>-<Minute>-<Sekunde>.bin
zusammengesetzt werden. Das lässt sich programmgesteuert erzeugen und unterscheidet
mit dieser zeitabhängigen Codierung zuverlässig mehrere Protokolldateien.
• In die Datei soll zunächst ein String geschrieben werden, der folgende Informationen
zusammenfasst:
Flug "<kennung>" (Typ "<typ>") startet an Position
"<x>-<y>-<h>" mit Zielposition "<x>-<y>-<h>".
Das ist der Header der Protokollierungsdatei, auf den sodann die Daten folgen.
Auch hier sind wieder alle Ausdrücke mit spitzen Klammern durch konkrete
Werte aus der Programmierung zu ersetzen.
• In die Datei sollen sodann fortlaufend die x-, y- und h-Daten der aktuellen Position
als int-Werte geschrieben werden, bis der Flug beendet ist. Das sind sozusagen
die Daten der Datei.
• Die Protokollierung soll vom Wert eines „Schalters“ abhängig gemacht werden,
den Sie in der Klasse Program als static-Variable definieren:
public static bool protokollieren = true;
Wenn dieser Schalter auf true gesetzt ist, wird protokolliert, wenn er
auf false gesetzt ist, wird nicht protokolliert.
Bei dieser Aufgabe geht es nicht nur um die technische Realisierung vorgenannter
Anforderungen, sondern vor allem um grundlegende Überlegungen objektorientierter
Programmierung. Sie sollten sich z. B., wenn Sie den nötigen Writer
deklarieren, klarmachen, dass ein Writer einem Flugschreiber entspricht und
prüfen, welcher Fliegertyp überhaupt einen Flugschreiber nutzen kann. Beispiele
für derartige Überlegungen objekt- orientierter Planung gab es in diesem Heft,
aber auch schon bei der Planung des Projekts im Studienheft CSH01B – z. B. zur
Ansiedlung des Transponders.
Auf diesen Überlegungen aufbauend sind dann folgende Fragen zu beantworten:
a) Wo deklarieren Sie das Writer-Objekt, damit es an den Stellen im Programm, an
denen es benötigt wird, auch bekannt ist?
b) An welcher Stelle im Programm bauen Sie den Dateipfad zusammen, erstellen
den Writer und schreiben den Header?
c) An welcher Stelle im Programm schreiben Sie die Daten der x-, y- und h-Werte?
d) An welcher Stelle im Programm schließen Sie den Writer?
e) Wie stellen Sie jeweils sicher, dass diese Operationen nur dann erfolgen, wenn
der „Schalter“ in der Programmklasse auf true gestellt ist?
Geben Sie jeweils den Programmcode an und erläutern Sie kurz Ihre Programmierung.
Hinweis:
BinaryWriter kennt eine Methode
public virtual void Write ( string value )
… die nicht nur den als Parameter anzugebenden String in die Datei schreibt, sondern
davor eine Information über die Länge des Strings speichert (vergleichen Sie die
.NET-Dokumentation).
BinaryReader kennt eine spiegelbildliche Methode
public virtual string ReadString ()
… die zunächst die in der Binärdatei gespeicherte Längeninformation auswertet und
sodann präzise die Länge des nachfolgenden String liest, sodass der Lesezeiger für
weitere Leseoperationen genau auf das nachfolgende Byte gesetzt wird.
4. Ergänzen Sie in der Programmklasse FliegerProjekt (zu Einsendeaufgabe 3)
eine Methode
public void ESA4Out(string protokollpfad)
Diese Methode soll die Binärdatei eines Fluges, die mit der Programmierung in ESA
3 erstellt wird, zurücklesen und deren Inhalt auf Konsole ausgeben. Im Ergebnis
könnte das für zwei Flüge wie in Abb. G.1 aussehen:
Abb. G.1: Ausschnitt zur Ausgabe der Flugprotokollierung in eine Datei für zwei Flüge
auf Grundlage der init-Dateien zu „LH 3000“ und „LH 500“ über die Methode
„ESA4Out“
Aufrufe dieser Methode „ESA4Out“ ergänzen Sie am Ende der Programmsteuerung
in „ProgrammTakten“.
Damit die Methode „ESA4Out“ immer den zuletzt protokollierten Flug ausgeben
kann, speichern Sie den Pfad auf dessen Protokollierungsdatei in einer neuen Property,
die für den Abruf lediglich mit einem get-Accessor ausgestattet wird. Diese
Property wird dort angelegt, wo auch die Protokollierung erfolgt.
Bei der Programmierung von „ESA4Out“ ist die innere Dateistruktur der Protokolldatei
zu beachten, sodass in der Konsole zunächst der Header und sodann die Flugdaten
ausgegeben werden. Die Flugdaten beginnen mit der Start- und enden mit der
erreichten Zielposition. Wegen der groben Taktung und der daraus folgenden groben
Positionsberechnungen werden die vorgegebene und die real erreichte Zielposition
voneinander abweichen.
Erläutern Sie die wesentlichen Schritte Ihrer Lösung mit Codeauszügen.
Hinweis:
Reichen Sie mit Ihren Ausführungen zu den Einsendeaufgaben auch die vollständigen
Quellcodes der beiden Projekte zu Einsendeaufgabe 2 bzw. den Einsendeaufgaben
3 (im Verbund mit 4) ein.
Vorschau
Weitere Information: 20.11.2024 - 12:13:39
  Kategorie: Sonstiges
Eingestellt am: 27.09.2021 von Wowa91
Letzte Aktualisierung: 29.07.2023
2 Bewertungen
12345
Studium:
Bisher verkauft: 90 mal
Bisher aufgerufen: 2553 mal
Prüfungs-/Lernheft-Code: CSH03B-XX1-K02
Benotung: 2
Bewertungen
13.4.23 - Ananoym:
12345
Keine hilfreiche Lösung und auch zum hinführen um auf die Lösun...
5.4.23 - DarkMatthes:
12345
Diese Lösung ist halbarschig. Noch schlimmer ist, dass die korr...
Benötigst Du Hilfe?
Solltest du Hilfe benötigen, dann wende dich bitte an unseren Support. Wir helfen dir gerne weiter!
Was ist StudyAid.de?
StudyAid.de ist eine Plattform um selbst erstellte Musterlösungen, Einsendeaufgaben oder Lernhilfen zu verkaufen.

Jeder kann mitmachen. StudyAid.de ist sicher, schnell, komfortabel und 100% kostenlos.
Rechtliches
Für diesen Artikel ist der Verkäufer verantwortlich.

Sollte mal etwas nicht passen, kannst Du gerne hier einen Verstoß melden oder Dich einfach an unseren Support wenden.

Alle Preise verstehen sich inkl. der gesetzlichen MwSt.
Mehr von Wowa91
 
Zahlungsarten
  • Payments
Auf StudyAid.de verkaufen
> 2000
Schrieb uns eine WhatsApp