1. 程式人生 > >練習3:初始化MyBank系統的賬戶資訊

練習3:初始化MyBank系統的賬戶資訊

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace MyBank
{
    public class Bank
    {
        User user = new User();  //例項化User物件並賦值

        User[] _userGroup = new User[3];

        #region 初始化帳戶
        /// <summary>
        /// 初始化三個帳戶
        /// </summary>
        public void Initial()
        {
            _userGroup[0] = new User();
            _userGroup[0]._account = "179708064356";
            _userGroup[0]._name = "王麗麗";
            _userGroup[0]._password = "1234";
            _userGroup[0]._identityNum = "210050619890808185";
            _userGroup[0]._balance =1000;

            _userGroup[1] = new User();
            _userGroup[1]._account = "179708064359";
            _userGroup[1]._name = "張穎穎";
            _userGroup[1]._password ="4321";
            _userGroup[1]._identityNum = "510010619891231127";
            _userGroup[1]._balance =2000;

            _userGroup[2] = new User();
            _userGroup[2]._account = "179708064368";
            _userGroup[2]._name = "劉華";
            _userGroup[2]._password = "4567";
            _userGroup[2]._identityNum = "410207198904051271";
            _userGroup[2]._balance = 8000;
        }
         #endregion 


        #region 顯示所有帳戶
        /// <summary>
        /// 顯示所有帳戶的存款資訊
        /// </summary>
        public void ShowAllUser()
        {
            foreach (User userItem in _userGroup)
            {
                Console.WriteLine("帳戶姓名:" + userItem._name + " 帳號:" + userItem._account + " 存款餘額:" + userItem._balance);
            }
        }
        #endregion 

        #region 顯示選單
        /// <summary>
        /// 顯示選單
        /// </summary>
        public void ShowCustomMenu()
        {
            string option = "";
            do
            {
                Console.WriteLine("==================歡迎使用自動銀行服務==================");
                Console.WriteLine("1:開戶 2:存款 3:取款 4:轉賬 5:查詢餘額 6:修改密碼 0:退出");
                Console.WriteLine("=========================================================");
                option = Console.ReadLine();
                switch (option)
                {
                    case "1":
                        CreateAccount();
                        continue;
                    case "2":                        
                        continue;
                    case "3":
                        WithDraw();
                        continue;
                    case "4":
                        continue;
                    case "5":
                        continue;
                    case "6":
                        continue;
                    case "0":
                        break;      //結束switch
                    default:
                        Console.WriteLine("輸入無效!");
                        continue;
                }

                break;              //結束do-while迴圈
            } while (true);
        }
        #endregion

        #region 開戶
        /// <summary>
        /// 
        /// </summary>
        public void CreateAccount()
        {
            //接受輸入的資料
            user._name = "王麗麗";
            user._account = "179708064356";
            user._password = "1234";
            user._identityNum = "2100506198908081847";
            user._balance = 8000;

            Console.WriteLine("帳號:{0},帳戶名:{1},存款金額:{2}建立成功!", user._account, user._name, user._balance);
            Console.WriteLine();
        }
        #endregion

        #region 取款
        /// <summary>
        /// 取款
        /// </summary>
        public void WithDraw()
        {
            string account = "";             //帳號
            string pwd;                      //密碼

            Console.WriteLine("請輸入帳號:");
            account = Console.ReadLine();
            if (account.Length == 0)
            {
                Console.WriteLine("輸入的帳號不正確!");
                return;
            }

            //接收帳戶密碼,並驗證
            Console.WriteLine("請輸入帳戶密碼:");
            pwd = Console.ReadLine();

            if (user._password != pwd)
            {
                Console.WriteLine("密碼有誤!");
                return;
            }

            Console.WriteLine("請輸入取款金額");
            double money = double.Parse(Console.ReadLine());
            double result = user.MinusMoney(money);
            if (result == -1)
            {
                Console.WriteLine("取款失敗");
            }
            else
            {
                Console.WriteLine("取款成功!當前餘額:" + result);
            }
        }
        #endregion
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace MyBank
{
    class Program
    {
        static void Main(string[] args)
        {
            
            Bank myBank = new Bank();

            //開戶
            //myBank.CreateAccount();

            //顯示選單
            //myBank.ShowCustomMenu();

            //取款
            //myBank.WithDraw();

            //初始化資料
            myBank.Initial();

            //顯示所有使用者
            myBank.ShowAllUser();

            Console.ReadLine();
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace MyBank
{
    /// <summary>
    /// 使用者類
    /// </summary>
    public class User
    {
        /// <summary>
        /// 使用者名稱
        /// </summary>
        public string _name;

        /// <summary>
        /// 密碼
        /// </summary>
        public string _password;

        /// <summary>
        /// 身份證號
        /// </summary>
        public string _identityNum;

        /// <summary>
        /// 帳戶餘額
        /// </summary>
        public double _balance;

        /// <summary>
        /// 帳戶
        /// </summary>
        public string _account;


        /// <summary>
        /// 取款操作
        /// </summary>
        /// <param name="money">要取的金額</param>
        /// <returns>返回餘額,輸入有誤返回-1</returns>
        public double MinusMoney(double money)
        {
            if (money > 0)
            {
                if (money <= _balance)
                {
                    _balance -= money;
                    return _balance;
                }
                else
                {
                    return -1;
                }

            }
            else
            {
                return -1;
            }
        }
    }
}