C++留学生编程讲解、辅导program编程语言、c/c++程序讲解
- 首页 >> Python编程 Group Project Requirements
A client can open accounts in a bank. An account can be a normal account or a VIP
account. Assume that accounts’ information is stored in a file in the following format
(file name: account.txt):
accountNo accountName Password Balance VIPorNormal
01234 Joyce 1235 20000.20 N
23412 Helen 1236 300000.00 V
91112 Leon 1111 100000.00 N
……
AccountNo: account number. Number of digits in the account number is 5.
Password: four digits.
V: VIP account, N: normal account
(Hints: though account number and password consist of digits, they can still be
represented as strings. E.g., “23412” is a string)
The system is expected to finish the following features:
1. Each account number (accountNo) contains five digits. For every account, the client
can perform following operations: inquire, withdraw, save and transfer.
(1) Inquire
To inquire the balance in an account, a client must input the account’s
number and corresponding password for that account.
When a client inquires the balance in an account, the balance of this account
is displayed if the account number and password are correct; otherwise, a
warning is given and system goes back to the main menu.
(2) Withdraw
When a client withdraws money from an account, there is a limit:
i. If the account is normal, the client can withdraw at most 2000 per time.
Page 2 of 4
ii. If the account is VIP, the client can withdraw at most 3000 per time.
If a customer wants to withdraw an amount that exceeds the above limit, the
withdrawal operation fails. A warning should be given, and the client can
choose to enter a new amount or go back to the main menu.
When a client withdraws an amount of money from an account and the
amount exceeds the balance in that account, the withdrawal operation fails.
A warning must be given, and the client can choose to input a new amount
or go back to the main menu.
After a client withdraws an amount of money from an account successfully,
the balance in that account should be updated accordingly in the file.
(3) Save
A client can save money to an account without need to input the password
to that account.
After the save operation succeeds, the balance in that account should be
updated accordingly in the file.
If the save operation fails, a warning must be given, and the client can choose
to save again or go back to the main menu.
(4) Transfer
When transferring money, a VIP account can transfer at most 20000 per time
and a normal account can transfer at most 10000 per time.
It is assumed that the accounts transferring from and transferring to are all
in the file account.txt.
A client needs to pay “transfer charge” for each transfer operation. If the
“transfer from” account is VIP, the transfer charge is 0.5% of transferred
amount; otherwise, the charge is 1%. The charge will be deducted from the
“transfer from” account. For example, if the money is transferred from the
Page 3 of 4
account 23412 to account 01234, then the charge is deducted in the account
23412.
To do the transfer, a client needs to input the password for the “transfer from”
account. He does not need to input the password for the “transfer to”
account.
Similar to the withdrawn operation, if the inputted amount (plus charge)
exceeds the balance in “transfer from” account, the transfer operation fails.
A warning must be given, and the client can choose to input a new amount
or go back to the main menu.
If the transfer operation succeeds, the balances in both accounts should be
updated accordingly in the file.
2. A menu is required for the customer to select the operation. A client can also select
to quit the system.
For example, the menu may look like this:
1. Inquire
2. Save
3. Withdraw
4. Transfer
5. Quit
Please enter the choice number to select the service:
3. To inquire, withdraw or transfer money from an account, the password for this
account is required.
4. In all operations, related account number(s) is inputted. If the inputted account
number is not in the file, a warning is given, and the client can choose to input a
new account number or go back to the main menu.
5. Whenever the balance in an account is changed, the file must be updated.
Page 4 of 4
6. After each operation is finished, the system should return to the main menu so that
the user can choose other operations. User can only quit the system from the main
menu.
Other requirements:
1. Try to make the system as user friendly as possible.
2. The project must be able to compile and run under VS 2010. Only C language is
used.
3. The system code should be well-structured, i.e., it should include one main function
and several sub-functions. Each sub-function serves a certain goal.
4. Global variables are not allowed in the project.
Submission:
Compress the following files into one zip (or .7z, .rar) file:
1. code (.cpp files and .h file)
2. an executable file (.exe) and the file account.txt .
3. Documents
i. User manual (one page: give the guideline on how to use your system)
ii. Job allocation (task allocation (which part, percentage) for each member in
your team)
Sample Job Allocation:
Student ID & Name Overall Contribution Percentage (total:
100%)
Contribution Description
1234567890 Apple 20% describe what Apple have done
to this project
A client can open accounts in a bank. An account can be a normal account or a VIP
account. Assume that accounts’ information is stored in a file in the following format
(file name: account.txt):
accountNo accountName Password Balance VIPorNormal
01234 Joyce 1235 20000.20 N
23412 Helen 1236 300000.00 V
91112 Leon 1111 100000.00 N
……
AccountNo: account number. Number of digits in the account number is 5.
Password: four digits.
V: VIP account, N: normal account
(Hints: though account number and password consist of digits, they can still be
represented as strings. E.g., “23412” is a string)
The system is expected to finish the following features:
1. Each account number (accountNo) contains five digits. For every account, the client
can perform following operations: inquire, withdraw, save and transfer.
(1) Inquire
To inquire the balance in an account, a client must input the account’s
number and corresponding password for that account.
When a client inquires the balance in an account, the balance of this account
is displayed if the account number and password are correct; otherwise, a
warning is given and system goes back to the main menu.
(2) Withdraw
When a client withdraws money from an account, there is a limit:
i. If the account is normal, the client can withdraw at most 2000 per time.
Page 2 of 4
ii. If the account is VIP, the client can withdraw at most 3000 per time.
If a customer wants to withdraw an amount that exceeds the above limit, the
withdrawal operation fails. A warning should be given, and the client can
choose to enter a new amount or go back to the main menu.
When a client withdraws an amount of money from an account and the
amount exceeds the balance in that account, the withdrawal operation fails.
A warning must be given, and the client can choose to input a new amount
or go back to the main menu.
After a client withdraws an amount of money from an account successfully,
the balance in that account should be updated accordingly in the file.
(3) Save
A client can save money to an account without need to input the password
to that account.
After the save operation succeeds, the balance in that account should be
updated accordingly in the file.
If the save operation fails, a warning must be given, and the client can choose
to save again or go back to the main menu.
(4) Transfer
When transferring money, a VIP account can transfer at most 20000 per time
and a normal account can transfer at most 10000 per time.
It is assumed that the accounts transferring from and transferring to are all
in the file account.txt.
A client needs to pay “transfer charge” for each transfer operation. If the
“transfer from” account is VIP, the transfer charge is 0.5% of transferred
amount; otherwise, the charge is 1%. The charge will be deducted from the
“transfer from” account. For example, if the money is transferred from the
Page 3 of 4
account 23412 to account 01234, then the charge is deducted in the account
23412.
To do the transfer, a client needs to input the password for the “transfer from”
account. He does not need to input the password for the “transfer to”
account.
Similar to the withdrawn operation, if the inputted amount (plus charge)
exceeds the balance in “transfer from” account, the transfer operation fails.
A warning must be given, and the client can choose to input a new amount
or go back to the main menu.
If the transfer operation succeeds, the balances in both accounts should be
updated accordingly in the file.
2. A menu is required for the customer to select the operation. A client can also select
to quit the system.
For example, the menu may look like this:
1. Inquire
2. Save
3. Withdraw
4. Transfer
5. Quit
Please enter the choice number to select the service:
3. To inquire, withdraw or transfer money from an account, the password for this
account is required.
4. In all operations, related account number(s) is inputted. If the inputted account
number is not in the file, a warning is given, and the client can choose to input a
new account number or go back to the main menu.
5. Whenever the balance in an account is changed, the file must be updated.
Page 4 of 4
6. After each operation is finished, the system should return to the main menu so that
the user can choose other operations. User can only quit the system from the main
menu.
Other requirements:
1. Try to make the system as user friendly as possible.
2. The project must be able to compile and run under VS 2010. Only C language is
used.
3. The system code should be well-structured, i.e., it should include one main function
and several sub-functions. Each sub-function serves a certain goal.
4. Global variables are not allowed in the project.
Submission:
Compress the following files into one zip (or .7z, .rar) file:
1. code (.cpp files and .h file)
2. an executable file (.exe) and the file account.txt .
3. Documents
i. User manual (one page: give the guideline on how to use your system)
ii. Job allocation (task allocation (which part, percentage) for each member in
your team)
Sample Job Allocation:
Student ID & Name Overall Contribution Percentage (total:
100%)
Contribution Description
1234567890 Apple 20% describe what Apple have done
to this project