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
Zitat:
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
PHP-Code:
#include <stdio.h>
struct konto { int knr; float kst; char name[50]; };
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
Zitat:
Implementieren Sie die zwei Funktionen zum Einrichten bzw. Initialisieren eines Kontos und zum Ausgeben der Kontodaten auf der Konsole:Der Prototyp der Funktionen seien
Ü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
Zitat:
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
Zitat:
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:
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
Zitat:
Kontonummer: 4711
Kontostand: 234.67
Name des Inhabers: Frodo Baggins
Input2.txt
Zitat:
Kontonummer: 4712
Kontostand: -34234.67
Name des Inhabers: Samweis Gamshee
Aufgabe 5: C++ Sprachelemente nutzen
Zitat:
Schreiben Sie Ihr Programm um, so dass es für (File/Konsole) In- und Output die C++-Sprachelemente benutzt.
freeeeeeeeeeeeeeeeeeed!
It is not a bug, it is an undocumentated feature!
EDIT:
Ich weiß, das ist mehr als nur Off-Topic, aber ich editier es ja nur rein und mach keinen neuen Post:
Code:
<BlackBerry0815>freeeeeeeeeeeed
<BlackBerry0815>wieso liegt ein gecrashtes programm in unserem haus
<fred777>Bbeeeeeeeeeeeeeeeee
<BlackBerry0815>was wer wie wo, ich war's nicht
<BlackBerry0815>freeeeeeeeeed erzähl mir was du getan hast
<BlackBerry0815>ich? ich war's nicht
<BlackBerry0815>freeeeeed, sag mir was du getan hast als ich weg war
[...]
<BlackBerry0815>nunja... ich saß in meinem zimmer
<BlackBerry0815>ja
[...]
<BlackBerry0815>und da kam plötzlich dieses programm
<fred777>und dann kam der mann
<BlackBerry0815>und ich habe A gedrückt gehalten
<fred777>ja und dann?
<BlackBerry0815>und dann enter gedrückt
<BlackBerry0815>und dann ist es abgestürzt
<fred777>oh nein, das tut programmen wehh
<BlackBerry0815>oh errrm ups das wusste ich nicht
<BlackBerry0815>ok, ich bin blöd
<tmh>Gelesen BlackBerry0815 ?
<BlackBerry0815>noch nicht
<BlackBerry0815>ich reinterpretiere gerade mit fred777 lamas mit hüten
02.09.2009, 19:21
fred777
Ich hatte keine Lust nen sizecheck durchzuführen, mach ich wenn ich mehr Zeit habe bebeeeeeeeeee :D
So für die Stofler wie Blackberry HIER EXTRA FÜR DICH:
mhmm hab ich was überlesen? muss es straight c sein?
Code:
#include <iostream>
using namespace std;
struct KONTO{
char KontoBesitzer[50];
unsigned int KontoNummer;
float KontoStand;
};
int main(){
KONTO Konto1;
int Kontonummern=0;
cout<<"Wie heißen sie?"<<endl;
cin>>Konto1.KontoBesitzer;
Konto1.KontoBesitzer[50]=0;
Konto1.KontoNummer=Kontonummern;
Konto1.KontoStand=0.0;
cout<<"Du heißt:"<<Konto1.KontoBesitzer<<endl
<<"dein knr"<<Konto1.KontoNummer<<endl
<<"du hast"<<Konto1.KontoStand" euronen,dollars.was weiß ich";
return 0;
}
edit:och ihr seid ja lustig... jetz muss ich auch noch ausgeben was was ist oder wie?
02.09.2009, 20:02
blackberry
@wacked
Der Thread-Titel heißt "[C/C++] Bankkontenverwaltungssystem [4/?]".
Also gehe ich davon aus, dass beide Sprachen erlaubt sind.
P.S.: meine Lösung ist natürlich reines C :) *angeb*
02.09.2009, 20:58
Steav
Viel Spaß falls Du bis zum Onlinebanking kommst und Dich mit HBCI / FinTS außeinandersetzen darfst^^
03.09.2009, 16:58
cyber_gh0st
// Editiert: Bitte spoilern ;D
Hi habe Aufgabe 1 (glaub ich) gelöst :
PHP-Code:
//Konto.c
#include <stdio.h> #include <stdlib.h>
struct konto { int kontonummer;//<-- ich muss dazu sagen dass ich noch nie ein Konto hatte und nicht wieß ob int reicht :S char vname[30]; char nname[30]; //hoffe das reicht }*user;
int main(void) { user = malloc(sizeof(struct konto)+1); FILE *usr_data; int kontonr; int i = 1;
//stream wird geöffnet if ( (usr_data = fopen("usr_data.txt","a+")) == NULL) { fprintf(stderr,"Fehler beim Öffnen der Datei :("); exit(EXIT_FAILURE); }
//Informationen werden abgefragt: printf("Bitte geben sie ihren Vornamen ein:\n"); fgets((*user).vname,29,stdin); printf("Bitte geben sie ihren Nachnamen ein:\n"); fgets((*user).nname,29,stdin);