Aufgaben 00810 SS18 3 PDF

Title Aufgaben 00810 SS18 3
Course Entwurf und Implementierung von Informationssystemen
Institution FernUniversität in Hagen
Pages 6
File Size 253.5 KB
File Type PDF
Total Downloads 67
Total Views 160

Summary

Übungsaufgaben...


Description

00810-03-172 9 0 9 2 4 9 8 Postanschrift:

EINGANGSSTEMPEL FERNUNIVERSITÄT

Bitte hier unbedingt Matrikelnummer und Adresse eintragen, sonst keine Bearbeitung möglich.

FernUniversität in Hagen 58084 Hagen

W

Tobias Thurner _________________________________________ Name

_________________________________________ c/o

Heubergstr. 35 _________________________________________ Straße, Hausnummer

75179 Pforzheim _________________________________________

Bitte zurück an: FernUniversität in Hagen 58084 Hagen

PLZ, Ort

_________________________________________ Bestimmungsland (nur bei Anschriften außerhalb Deutschlands)

__ Fakultät für Wirtschaftswissenschaft Einsendearbeit zum Kurs

810 Programmieren in C

Kurseinheit

03

-

A. Vorbemerkungen

B. Hinweise zur Bearbeitung

1. Zur Erlangung der Teilnahmeberechtigung an der Abschlussklausur müssen Sie mindestens die Hälfte der vorgesehenen Einsendearbeiten fristgerecht und erfolgreich bearbeitet haben.

1. Es werden keine Aufgabenblätter gestellt. Benutzen Sie bitte eigenes weißes Papier in der Größe DIN A 4. Sollten Lösungsseiten in der Aufgabe vorgegeben sein, so lösen Sie bitte auf diesen vorgefertigten Seiten. 2. Schreiben Sie bitte auf jedes Blatt oben links Ihren Namen mit Matrikel-Nr.! 3. Lassen Sie bitte das linke Drittel eines jeden Blattes für Korrekturbemerkungen frei! 4. Schreiben Sie bitte deutlich! Es empfiehlt sich ein ComputerAusdruck. 5. Schicken Sie mit Ihrer Lösung das Deckblatt zurück. Bitte verbinden Sie Deckblatt und Lösung mit einem Tacker. Ich versichere hiermit, dass ich die vorliegende Einsendearbeit selbständig bearbeitet habe.

2. Diese Einsendearbeit muss bis zu dem Ihnen bekanntgemachten Termin eingesandt werden. Es gilt das Datum des Poststempels. Verspätet eintreffende Einsendearbeiten werden unkorrigiert zurückgeschickt. 3. Nach dem Ausschlusstermin werden die fristgerecht eingegangenen Einsendearbeiten korrigiert und schnellstmöglich zurückgesandt. Musterlösungen können vier Tage nach Ende der Abgabefrist heruntergeladen werden. 4. Als Beleg über die erfolgreiche Absolvierung müssen Sie die Deckblätter der bestandenen Einsendearbeiten aufbewahren. Bitte archivieren Sie diese, bis Ihr Zeugnis ausgefertigt wurde.

Datum

Unterschrift Aufgabe #

erreichte Punktzahl Erstkorrektur

Nachkorrektur best./n.best.

Gesamtpunktzahl: _________________

Gesamtpunktzahl: ___________________

Datum: __________________________

Datum: ____________________________

Unterschrift: ______________________

(Stempel)

Unterschrift: ________________________

© 2018 FernUniversität in Hagen

002 556 960 (04/18)

best.

n.best.

Alle Rechte vorbehalten

00810-7-03-A1

Fakultät für Wirtschaftswissenschaft

Einsendearbeit zum Kurs 00810 Programmieren in C Kurseinheit Kurseinheit 1–3 Semester SoSe 2018 zur Erlangung der Teilnahmeberechtigung an der Prüfung zum Modul 32561

Entwurf und Implementierung von Informationssystemen

Hinweise:

1. Diese Einsendearbeit umfasst eine Aufgabe. 2. Insgesamt sind max. 100 Punkte erreichbar. 3. Sie benötigen mindestens 50 Punkte der insgesamt erreichbaren Punktzahl, damit diese Einsendearbeit als erfolgreich bearbeitet gelten kann.

 2018 FernUniversität in Hagen

002 556 960 (04/18)

00810-7-03-A1

Kurs 00810 Programmieren in C (EA SoSe2018)

!

2

Wichtige Hinweise zur Einsendearbeit !



Senden Sie den implementierten Quellcode als ausgedruckten Programmquelltext auf Papier im DIN A4 Format ein.



Jede Funktion aus Aufgabenteil b) muss auf einem seperaten Blatt Papier im DIN A4 Format abgegeben werden. Des Weiteren verwenden Sie für den Aufgabenteil a) und c) ein gemeinsames Blatt Papier und kennzeichnen die Aufgabenteile durch Kommentare in der nachfolgenden Notation: /* --- */ /* --- Aufgabenteil (a) --- Typenvereinbarung --- ABSCHREIBUNG */ /* --- */ /* --- */ /* --- Aufgabenteil (b) --- Funktion (1) --- erstelle_anlagendatei */ /* --- */ /* --- */ /* --- Aufgabenteil (c) --- Hauptroutine --- int main */ /* --- */



Zusätzlich tragen Sie bitte auch vorn in jedem Programmquelltext Ihren Nachnamen, Vornamen und Ihre Matrikelnummer, jeweils durch Komma getrennt, ein. Beispielsweise: /* ** Programm: Berechnung der Abschreibung von Anlagen ** Einsendearbeit zum Kurs Programmieren in C, SoSe 2018 ** Autor_in: LEHMANN MARTINA, 9876543. */

Bei Fragen zur Einsendearbeit nutzen Sie bitte die eingerichtete Moodle-Lernumgebung. Näheres finden Sie auf der Seite http://www.fernuni-hagen.de/evis/studium/moodle.shtml.

002 556 960 (04/18)

00810-7-03-A1

Kurs 00810 Programmieren in C (EA SoSe2018)

3

Einsendearbeit zum Kurs Programmieren in C, KE 1– 3

(100P)

Bei der jährlichen Abschreibung von Anlagen bedient man sich verschiedener Methoden, darunter der sogenannten linearen sowie der arithmetisch-degressiven Abschreibung. Charakteristisch für die lineare (arithmetische) Abschreibung ist, dass der jährliche Abschreibungsbetrag über die gesamte Nutzungsdauer einer Anlage konstant bleibt. Demgegenüber sinken bei der arithmetisch-degressiven Abschreibung die jährlichen Abschreibungen um konstante Beträge. Beide Methoden seien wie folgt beschrieben: Als Ausgangsdaten werden in beiden Fällen verwendet: • der Basiswert (BW) der Anlage in EUR, • die vorgesehene Nutzungsdauer (N) der Anlage in Jahren. (1) Bei der linearen (arithmetischen) Abschreibung erfolgt die Berechung der jährlichen Abschreibungsbeträge nach dem Ansatz: • bestimme den Degressionsbetrag (D) entsprechend: 𝐷 = 𝐵𝑊/𝑁, • für die jährlichen Abschreibungsbeträge A(i) gilt: 𝐴(𝑖) = 𝐷 mit 𝑖 = 1, 2, … , 𝑛 für 𝑛 ∈ ℕ+ (2) Bei der arithmetisch-degressiven Abschreibung erfolgt die Berechung der jährlichen Abschreibungsbeträge nach dem Ansatz: • ermittle die Summe der restlichen Nutzungsjahre (SN) gemäß: 𝑆𝑁 = ∑ 𝑁 𝑖=1 𝑖, • bestimme den Degressionsbetrag D entsprechend: 𝐷 = 𝐵𝑊/𝑆𝑁, • berechne die jährlichen Abschreibungsbeträge für die Jahre i = 1, 2, ..., 𝑛 gemäß: 𝐴(𝑖) = 𝐷 ⋅ (𝑁 − 𝑖 + 1), Im Rahmen der Einsendearbeit ist ein C-Programm zu entwickeln, mit welchem Abschreibungsberechungen für die Anlagen eines Unternehmens auf der Grundlage der beiden beschriebenen Methoden durchgeführt werden können. Das C-Programm soll die nachfolgenden Anforderungen erfüllen. Die in einer Datei anlagen.dat bereits erfassten Anlagen eines Unternehmens sollen bei Bedarf eingelesen und als Anlagenliste angezeigt werden können. Zusätzlich soll das C-Programm die Erstellung einer neuen Datei anlagen.dat ermöglichen. Jede Anlage ist dabei in der Datei anlagen.dat mit einer Inventarnummer (InventarNr), der Anlagenbezeichnung (Anlagenbez), dem Standort (Standort), dem Basiswert

002 556 960 (04/18)

00810-7-03-A1

Kurs 00810 Programmieren in C (EA SoSe2018)

4

(Basiswert) in EUR, der Nutzungsdauer in Jahren (Nutzungsdauer) sowie dem Anschaffungsjahr (AnschJahr) erfasst. In der Anlagenliste sollen pro Anlage alle erfassten Daten sowie eine fortlaufende Nummer erscheinen. Für die Datei anlagen.dat ist folgende Typvereinbarung zugrunde zu legen: typedef struct { unsigned int InventarNr; char Anlagenbez[15]; char Standort[15]; float Basiswert; /* in EUR */ unsigned int Nutzdauer; /* in Jahren */ unsigned int AnschJahr; } ANLAGE;

Innerhalb der Hauptroutine des C-Programms soll abgefragt werden, ob eine Anlagendatei erstellt (0) oder eine bestende Anlagendatei anlagen.dat eingelesen (1) werden soll. Bei Bedarf soll für alle in der Datei anlagen.dat eingetragenen Anlagen eine Abschreibungsrechnung wahlweise mit linearer (A) oder arithmetisch-degressiver (D) Abschreibung durchgeführt werden können. In beiden Fällen sind die oben angeführten Berechnungsvorschriften zu nutzen. Für die Berechnung ist ferner vorauszusetzen, dass jede Anlage zu Beginn des ersten Nutzungsjahres angeschafft wurde. Das Ergebnis der Abschreibungsberechnung wird in einer Datei aban.dat festgehalten. Ein Abschreibungssatz der Datei aban.dat umfasst folgende Daten: Die Inventarnummer einer Anlage, das Jahr der Abschreibung, den Abschreibungsmodus (linear oder arithmetisch-degressiv) sowie den für diese Werte berechneten Abschreibungsbetrag. Für eine Anlage mit einer Nutzungsdauer von 9 Jahren enthielte also eine erzeugte Datei aban.dat 9 Sätze. Abgesehen von den vorgegebenen Daten eines Satzes kann die Datei aban.dat beliebig gestaltet werden. Aus den Dateien anlagen.dat und aban.dat soll auf Nutzeranforderung eine Abschreibungsliste erstellt und angezeigt werden, die pro Anlage und für alle Nutzungsjahre der Anlage die Abschreibungsbeträge enthält. Zur Kennzeichung der Anlage müssen dabei nur die Inventarnummer und die Anlagenbezeichnung in der Liste erscheinen, aus der auch die verwendete Abschreibungsmethode hervorgehen muss. Anschließend soll eine weitere am Bildschirm auszugebende Abschreibungssummenliste erstellt werden können, aus der für einen nutzerseitig einzugebenden Zeitraum von einem oder mehreren Jahren die Abschreibungssumme über alle Anlagen pro Jahr ersichtlich ist. Das Auswahlmenü für die Programmfunktionen soll wie folgt aussehen: L A D R S Q

Anlagenliste erstellen. Abschreibungsberechnung durchführen, Modus linear (arithmetisch). Abschreibungsberechnung durchführen, Modus arithmetisch-degressiv. Abschreibungsliste zur letzten Berechnung erstellen und anzeigen. Abschreibungssummenliste zur letzten Berechnung erstellen. Programm beenden.

Es kann davon ausgegangen werden, dass in der Datei anlagen.dat immer mindestens ein Satz vorhanden ist und die Daten korrekt sind.

002 556 960 (04/18)

00810-7-03-A1

Kurs 00810 Programmieren in C (EA SoSe2018)

5

Erstellen Sie ein C-Programm mit dem beschriebenen Funktionsumfang. Testen Sie das Programm an der oben angegebenen selbst zu erfassenden Anlagendatei anlagen.dat. Für den Entwurf des C-Programms stehen Ihnen folgenden Bezeichner zur Verfügung: (1) (2) (3) (4) (5) (6) (7) (8)

erstelle_anlagendatei verarbeite_anlagendatei erstelle_anlagenliste berechne_abschreibungen schreibe_anlage_arithmetisch_ab schreibe_anlage_arith_degr_ab erstelle_abschreibungsliste erstelle_abschrsummenliste

Weiterhin stehen Ihnen für die Bearbeitung dieser Aufgabe folgende C-Standardbibliotheken zur Verfügung: #include #include #include #include

Die maximale Anzahl der Jahre für die Abschreibungssummenliste beträgt 15 Jahre.

Aufgabenteil: Berechnung der Abschreibung von Anlagen a) Entwerfen Sie eine Typenvereinbarung für den Abschreibungssatz mit der entsprechenden Variablen ABSCHREIBUNG.

(10P)

/* --- */ /* --- Aufgabenteil (a) --- Typenvereinbarung --- ABSCHREIBUNG */ /* --- */ typedef struct { ... } ABSCHREIBUNG;

b) Entwerfen Sie die oben aufgeführten Funktionen (1)–(8) der Reihenfolge nach und kennzeichnen Sie diese mit Hilfe des Sprachkonzepts „Kommentar“. Bei der Implementierung sind die oben aufgeführten Bezeichnungen zu verwenden; andere Bezeichnungen der Funktion werden nicht bewertet. Für die Korrektur ist es zwingend erforderlich, den unten aufgeführte Kommentar in den Quellcode zu implementieren. (80P) /* --- */ /* --- Aufgabenteil (b) --- Funktion (1) --- erstelle_anlagendatei */ /* --- */

c) Entwerfen Sie die int main() Routine.

002 556 960 (04/18)

(10P)

00810-7-03-A1...


Similar Free PDFs