1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Klasse Account (Konto) erstellen

Discussion in 'Programmieren' started by opteronfx, Apr 27, 2007.

Thread Status:
Not open for further replies.
  1. opteronfx

    opteronfx ROM

    1 Klasse Account (Konto)
    a) Entwerfen Sie eine Klasse Account. Entwerfen Sie parallel ein Anwendungsprogramm,
    das mit verschiedenen Konten die realisierten Methoden benutzt.
    b) Geben Sie - wo sinnvoll - geeignete Zusicherungen (Pre-/Post-Conditions) für
    die Methoden vor!
    c) Deklarieren Sie die Klasse Konto mit dem Klassengenerator von Visual C++.
    Implementieren Sie parallel Ihr Anwendungsprogramm. Stellen Sie sicher,
    daß Sie jederzeit ein lauffähiges Anwendungssystem haben. Beachten
    Sie die Programmierrichtlinien (z.B. englischsprachige selbsterklärende
    Bezeichner verwenden).
    d) Implementieren Sie alle Methoden.
    Besonderheiten der Methoden:
    • Mit dem Erzeugen eines Kontos soll die Geheimnummer (4-stellig)
    festgelegt werden.
    • Die zum Ablauf aller Methoden nötigen Daten sollen entweder Attribute des Objektes sein oder von
    Tastatur eingelesen werden.
    • Auszahlungen, Kontostandsabfragen und Ändern der Geheimnummer sollen nur möglich sein, wenn
    die Geheimnummer korrekt über Tastatur angegeben worden ist.
    Hinweis: Zur Prüfung kann der ternäre Operator( ? : ) verwendet werden.
    • Verwenden Sie, wo sinnvoll, Zusicherungen
    • Der Destruktor soll den Zustand (= Werte der Attribute) des jeweiligen Objektes am Bildschirm
    ausgeben.
    -------------------------------------------------------------
    Konto wird angelegt; gib Geheimnummer: 123
    Einzahlung: Wieviel wollen Sie einzahlen: 100
    Kontostand anzeigen:
    Identifikation: Gib Geheimnummer: 123
    Der aktuelle Stand des Kontos ist: 100
    Auszahlung: Kontostand anzeigen:
    Identifikation: Gib Geheimnummer: 123
    Der aktuelle Stand des Kontos ist: 100
    Wieviel soll es denn sein: 50
    Geheimnummer aendern: Identifikation: Gib Geheimnummer: 123
    Gib neue Geheimnummer: 234
    Neue Geheimnummer eingetragen.
    Konto wird geloescht; Stand: 50 mit Geheimnummer: 234
    -------------------------------------------------------------
    Wie mache ich das???:aua: Hilfe!
     
  2. kalweit

    kalweit Hüter der Glaskugel

    ...ich würde mal sagen, im Unterricht besser aufpassen.
     
  3. specialist7

    specialist7 Kbyte

    Hast du wenigstens einen Anfang? Dann könnte man dir eventuell helfen. Aber zum Hausaufgaben vorsagen, ist das sicher nicht das richtige Forum. ;)
     
  4. opteronfx

    opteronfx ROM

    also hier ist das was ich bis jetzt gemacht habe:
    headerdatei:
    #pragma once

    class account
    {
    private:
    double payIn, balance,payOut;
    int pin, changePin, Ipin;
    char aDelete;

    public:
    account(void);
    ~account(void);




    void payin();
    void checkpin();
    void payout();
    void showcredit();
    void changepin();
    };

    account.cpp


    #include "account.h"

    #include <iostream>
    using namespace std;
    int i=0;

    account::account()
    {

    cout<<"****Ein Konto wird erstellt****\n";




    do{
    cout<<"Geben Sie bitte Ihre neue vierstellige Identifikationsnummer ein: ";

    cin>>pin;
    system("cls");


    }
    while(pin <1111 || pin>9999) ;


    }

    void account::payin()
    {

    do{
    cout<<"Wieviel wollen Sie einzahlen?: Euro ";
    cin>>payIn;
    system("cls");
    }while(payIn < 0);

    if(payIn > 0){
    balance=+payIn;
    cout<<"Ihr aktueller Kontostand betraegt "<<balance<<" Euro\n";}
    }

    void account::payout()
    {

    do{
    cout<<"Wieviel wollen Sie auszahlenzahlen?: Euro ";
    cin>>payOut;

    }while(payOut < 0);
    balance=balance- payOut;
    if(payOut > 0 && balance > 0){

    cout<<"Ihr aktueller Kontostand betraegt "<<balance<<" Euro\n";}

    else cout<<"Sie haben Ihr Konto ueberzogen Euro"<<balance<<endl;

    }

    void account::showcredit()
    {
    cout<<"Ihr aktueller Kontostand betraegt "<<balance<<" Euro\n";

    }

    void account::changepin()
    {
    cout<<"***Damit Sie Ihre PIN aendern koennen, muessen Sie alte eingeben***\n";
    do
    {

    cout<<"Ihre alte PIN: ";

    cin>>Ipin;

    }while(Ipin!=pin);

    if (Ipin==pin){
    do{
    cout<<"Neue PIN: ";
    cin>>changePin;




    }while(changePin <1111 || pin>9999) ;


    cout<<"Neue Geheimnummer eingetragen.\n";
    }



    }




    account::~account()

    {

    cout<<"Konto wird geloescht mit Kontostand: "<<balance<<" Euro\n";
    cout<<"und Geheimnummer "<<changePin<<endl;
    }

    main.cpp
    #include "account.h"


    void main()
    {

    account first;

    first.payin();
    first.payout();
    first.showcredit();
    first.changepin();
    }

    es funktioniert alles soweit... wie kann ich die methode first.changepin() in bool-style ausdrucken?
    Danke.
     
  5. gerald_b

    gerald_b Kbyte

    Code:
    while(changePin <1111 || pin>9999)
    da ist noch ein Fehler drin, denn hier muss die neue Pin (changePin) lediglich größer als 1110 und darf z.b. auch 10000000 sein. Lediglich die vorhergehende PIN pin muß kleiner als 10000 sein

    dies sollte so geändert werden:

    while(changePin <1111 || changePin>9999)

    da ist aber immer noch das Problem, dass zwar die neue PIN in changePin gespeichert wir aber bei der Anmeldung die alte PIN pin gefordert ist. Diese Zuweisung muss also auch noch rein aber das solltest Du - wenn ich mir den obigen Quellcode so ansehe - auch hinbekommen....
     
Thread Status:
Not open for further replies.

Share This Page