enco
02.09.2009, 14:26
Wie versprochen werde ich ab jetzt hier meine Aufgaben posten.
Es geht um ein Bankkontenverwaltungssystem.
Ich denke jeden Dienstag werde ich diesen Thread erweitern, sofern etwas neues im Unterricht drankommt ;D
Wenn ihr eure Lösung postet, spoilert diese bitte, damit die anderen nicht gleich eine Lösung sehen.
Schaut vorbei, übt fleißig und schaut nicht sofort in die Lösungen!
Viel Spaß!
-----------------------------------------------
Hier die Aufgabentexte:
(Die Musterlösungen werden nachgereicht!) [1/4]
Aufgabe 1: Ein Bankkonto mit einer C-Struktur repräsentieren
Schreiben Sie ein Programm, das eine C-Struktur namens konto deklariert. Die Struktur soll die folgenden Informationen enthalten: Namen des Besitzers, Kontonummer und Kontostand.
Im Hauptprogramm soll ein konkretes Konto erzeugt werden, dass anschließend über die Konsole zu initialisieren ist.
Weisen Sie die Funktionalität nach, indem Sie die eingelesenen Daten auf der Konsole ausgeben.
Laden Sie den Quellcode des Programms hoch.Musterlösung
#include <stdio.h>
struct konto
{
int knr;
float kst;
char name[50];
};
int main()
{
struct konto kto;
printf("Name eingeben: ");
scanf("%s", kto.name);
printf("Kontonummer eingeben: ");
scanf("%i", &kto.knr);
printf("Kontostand eingeben: ");
scanf("%f", &kto.kst);
printf("\nAusgabe der Testdaten:\n");
printf("Name:%s\n", kto.name);
printf("Kontonummer:%i\n", kto.knr);
printf("Kontostand:%.2f\n", kto.kst);
return 0;
}
Aufgabe 2: Initialisieren und Anzeigen
Implementieren Sie die zwei Funktionen zum Einrichten bzw. Initialisieren eines Kontos und zum Ausgeben der Kontodaten auf der Konsole:Der Prototyp der Funktionen seien
void init_1( struct konto * pK ) und
void show( struct konto * pK )
Überprüfen Sie, ob die Initialisierung auch mit einer Funktion vom Prototypen
void init_2( struct konto k )
funktioniert. Können Sie sich vorstellen, warum es so nicht klappt?Schreiben Sie ein Hauptprogramm mit dem Sie die Funktionen testen:
void main() {
struct konto k1, k2;
// Initialisieren k1 mit init_1
...
// Anzeigen k1 mit show
...
// Initialisieren k2 mit init_2
...
// Anzeigen k2 mit show
...
}
Laden Sie den Quellcode des Programms hoch.
Aufgabe 3: Einzahlen, Auszahlen und Überweisen
Erweitern Sie Ihr Programm um Funktionen zum Ein- bzw. Auszahlen und zum Überweisen von Geldbeträgen von einem Konto zu einem anderen. Überlegen Sie zunächst, wie die Prototypen derartiger Funktionen aussehen müssen.
Aufgabe 4: Einlesen von bzw. Abspeichern auf der Festplatte
Schreiben Sie zwei weitere Funktionen: Eine zum Einlesen und Initialisieren eines Kontos aus einer Datei von der Festplatte, die andere zum Speichern eines Kontos in eine Datei auf der Festplatte.
Die Funktionen sollen die folgenden Prototypen haben:
void einlesen( char * dateiname, struct konto * pK )
und
void speichern( char * dateiname, struct konto * pK )
Benutzen Sie möglichst die beiden vorgegebenen Inputdateien input1.txt und input2.txt für zwei Konten.
Schreiben Sie ein Hauptprogramm in dem Sie alle Ihre Funktionen wenigstens einmal aufrufen und testen. Laden Sie die cpp-Datei hoch.
Input1.txt
Kontonummer: 4711
Kontostand: 234.67
Name des Inhabers: Frodo Baggins
Input2.txt
Kontonummer: 4712
Kontostand: -34234.67
Name des Inhabers: Samweis Gamshee
Aufgabe 5: C++ Sprachelemente nutzen
Schreiben Sie Ihr Programm um, so dass es für (File/Konsole) In- und Output die C++-Sprachelemente benutzt.
Infoblatt: Gegenüberstellung File-IO mit C und C++ (http://www.mediafire.com/?2larwwjxnyn)
Es geht um ein Bankkontenverwaltungssystem.
Ich denke jeden Dienstag werde ich diesen Thread erweitern, sofern etwas neues im Unterricht drankommt ;D
Wenn ihr eure Lösung postet, spoilert diese bitte, damit die anderen nicht gleich eine Lösung sehen.
Schaut vorbei, übt fleißig und schaut nicht sofort in die Lösungen!
Viel Spaß!
-----------------------------------------------
Hier die Aufgabentexte:
(Die Musterlösungen werden nachgereicht!) [1/4]
Aufgabe 1: Ein Bankkonto mit einer C-Struktur repräsentieren
Schreiben Sie ein Programm, das eine C-Struktur namens konto deklariert. Die Struktur soll die folgenden Informationen enthalten: Namen des Besitzers, Kontonummer und Kontostand.
Im Hauptprogramm soll ein konkretes Konto erzeugt werden, dass anschließend über die Konsole zu initialisieren ist.
Weisen Sie die Funktionalität nach, indem Sie die eingelesenen Daten auf der Konsole ausgeben.
Laden Sie den Quellcode des Programms hoch.Musterlösung
#include <stdio.h>
struct konto
{
int knr;
float kst;
char name[50];
};
int main()
{
struct konto kto;
printf("Name eingeben: ");
scanf("%s", kto.name);
printf("Kontonummer eingeben: ");
scanf("%i", &kto.knr);
printf("Kontostand eingeben: ");
scanf("%f", &kto.kst);
printf("\nAusgabe der Testdaten:\n");
printf("Name:%s\n", kto.name);
printf("Kontonummer:%i\n", kto.knr);
printf("Kontostand:%.2f\n", kto.kst);
return 0;
}
Aufgabe 2: Initialisieren und Anzeigen
Implementieren Sie die zwei Funktionen zum Einrichten bzw. Initialisieren eines Kontos und zum Ausgeben der Kontodaten auf der Konsole:Der Prototyp der Funktionen seien
void init_1( struct konto * pK ) und
void show( struct konto * pK )
Überprüfen Sie, ob die Initialisierung auch mit einer Funktion vom Prototypen
void init_2( struct konto k )
funktioniert. Können Sie sich vorstellen, warum es so nicht klappt?Schreiben Sie ein Hauptprogramm mit dem Sie die Funktionen testen:
void main() {
struct konto k1, k2;
// Initialisieren k1 mit init_1
...
// Anzeigen k1 mit show
...
// Initialisieren k2 mit init_2
...
// Anzeigen k2 mit show
...
}
Laden Sie den Quellcode des Programms hoch.
Aufgabe 3: Einzahlen, Auszahlen und Überweisen
Erweitern Sie Ihr Programm um Funktionen zum Ein- bzw. Auszahlen und zum Überweisen von Geldbeträgen von einem Konto zu einem anderen. Überlegen Sie zunächst, wie die Prototypen derartiger Funktionen aussehen müssen.
Aufgabe 4: Einlesen von bzw. Abspeichern auf der Festplatte
Schreiben Sie zwei weitere Funktionen: Eine zum Einlesen und Initialisieren eines Kontos aus einer Datei von der Festplatte, die andere zum Speichern eines Kontos in eine Datei auf der Festplatte.
Die Funktionen sollen die folgenden Prototypen haben:
void einlesen( char * dateiname, struct konto * pK )
und
void speichern( char * dateiname, struct konto * pK )
Benutzen Sie möglichst die beiden vorgegebenen Inputdateien input1.txt und input2.txt für zwei Konten.
Schreiben Sie ein Hauptprogramm in dem Sie alle Ihre Funktionen wenigstens einmal aufrufen und testen. Laden Sie die cpp-Datei hoch.
Input1.txt
Kontonummer: 4711
Kontostand: 234.67
Name des Inhabers: Frodo Baggins
Input2.txt
Kontonummer: 4712
Kontostand: -34234.67
Name des Inhabers: Samweis Gamshee
Aufgabe 5: C++ Sprachelemente nutzen
Schreiben Sie Ihr Programm um, so dass es für (File/Konsole) In- und Output die C++-Sprachelemente benutzt.
Infoblatt: Gegenüberstellung File-IO mit C und C++ (http://www.mediafire.com/?2larwwjxnyn)