第十二轴项目4-银行系统(二)

任务2——引入函数改善程序结构

1、数据中,用户密码、帐户余额用全局变量存储。
2、在输入密码环节,实现有限次密码输入的限制,如果三次都没有输入正确,程序将直接退出,不允许用户继续操作。
并将查验密码功能做成一个函数。

/*
 *Copyright (c) 2014,烟台大学计算机学院
 *All gight reserved.
 *文件名称:temp.cpp
 *作者:邵帅
 *完成时间:2014年11月12日
 *版本号:v1.0
*/
#include<iostream>
using namespace std;
int password;
double money;
bool pass();
void work();
void exit();
void showbalance();
double drawmoney(double money);
double deposit(double money);
double transferAccounts(double money);
int updatePassword(int password);
int main()
{
    password=123456;
    money=10000;
    cout << "麻鱼银行欢迎您的光临!" << endl;
    cout << "请输入密码:";
    if (pass())
    {
        cout<<endl;
        work();
    }
    else
        cout << "请到柜台办理密码查询后再来。" << endl;
    return 0;
}

bool pass()		// 输入密码函数&判断
{
    int i = 1, pass;
    bool passtrue = false;
    do
    {
        cin >> pass;
        if (pass == password)
        {
            passtrue = true;
            return passtrue;
        }
        else
        {
            i++;
            if (i < 4)
                cout << "密码输入错误" << i-1 << "次,再输错" << 4 - i << "次将要吞卡。" << endl;
            else if (i = 4)
                cout << "银行卡已被吞。" << endl;
            continue;
        }
    }
    while (passtrue = false || i < 4);
}

void work()
{
    int choice;
    while (choice != 0)
    {
        cout << "* 您可以办理下面的业务:" << endl;
        cout << "* 1.查询 2.取款 3.存款 4.转账 5.改密 0.退出" << endl;
        cout << "* 请输入(0~5):";
        cin >> choice;
        switch (choice)
        {
        case 0:
            exit();
            break;
        case 1:
            showbalance();
            break;				// 查询
        case 2:
            money=drawmoney(money);
            break;				// 取款
        case 3:
            money=deposit(money);
            break;				// 存款
        case 4:
            money=transferAccounts(money);
            break;				// 转账
        case 5:
            password=updatePassword(password);
            break;				// 改密
        default:
        {
            cout << "输入错误,请重新输入。" << endl;
            continue;
        }
        }
    }
}

void exit()
{
    cout << "欢迎下次光临。" << endl;
}

void showbalance()
{
    cout << "您当前的账户余额为:" << money << "元。" << endl<< endl;
    work();
}

double drawmoney(double money)
{
    double outmoney;
    while (1)
    {
        cout << "请输入取款金额:";
        cin >> outmoney;
        if (outmoney > money)
        {
            cout << "对不去,余额不足。" << endl;
            continue;
        }
        else
        {
            money -= outmoney;
            cout << "取款后,您的余额是:" << money << "元" <<endl<<endl;
        }
        return money;
    }
}

double deposit(double money)
{
    double inmoney;
    cout << "请输入存款金额:";
    cin >> inmoney;
    money += inmoney;
    cout << "存款后,您的余额是:" << money << "元。" << endl<<endl;
    return money;
}

double transferAccounts(double money)
{
    double changemoney, otheraccount;
    while (1)
    {
        cout << "请输入转账金额:";
        cin >> changemoney;
        cout << "请输入对方账户:";
        cin >> otheraccount;
        if (otheraccount > money)
        {
            cout << "对不去,余额不足,请重新输入。" << endl;
            continue;
            cout << endl;
        }
        else
        {
            money -= changemoney;
            cout<<"汇款成功!"<<"您成功汇款"<<changemoney<<"元。"<<endl;
            cout<<"您的余额:"<<money<<"元。"<<endl<<endl;
            return money;
        }
    }
}

int updatePassword(int password)
{
    int pass_1, pass_2;
    while (1)
    {
        cout << "请输入旧密码:";

        if (pass())
        {
            cout << "请输入新密码:";
            cin >> pass_1;
            cout << "请确认新密码:";
            cin >> pass_2;
            if (pass_1 == pass_2)
            {
                password = pass_1;
                cout << "密码修改成功!" << endl<<endl;
                return password;
                cout << endl;
                work();
            }
            else
            {
                cout << "两次密码输入不一致,请重新输入!" <<
                     endl;
                continue;
            }
        }
        else
        {
            cout << "请联系客服。" << endl;
            continue;
        }
    }
}

运行结果:






@ Mayuko

posted @ 2014-11-12 22:50  麻麻麻麻鱼鱼  阅读(124)  评论(0编辑  收藏  举报