The program starts by asking the user to select either login (L) or sign up (S) feature. Once the user selects a feature, it asks him for (Card Number, then PIN) and after filling the required information for that feature, it shows the above menu for other features. Otherwise, it keeps asking for the required information. Each feature has to be designed using a separate function and it might be called by other functions including the main function. The description of the login feature, sign up feature, and the above features are given below:

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question

The program starts by asking the user to select either login (L) or sign up (S) feature. Once the user selects a feature, it asks him for (Card Number, then PIN) and after filling the required information for that feature, it shows the above menu for other features. Otherwise, it keeps asking for the required information. Each feature has to be designed using a separate function and it might be called by other functions including the main function. The description of the login feature, sign up feature, and the above features are given below:

 

  1. Sign up Feature – def create(): this feature allows new user to create an account and it saves his information in txt. The required information to be asked in this feature as follows:

 

  • Card Number: user will enter a card number and should be four digits, each digit is unique and it should not be repeated in the 4-digits card number. This feature will keep running until the user enters the required number with same length and type.

 

  • PIN: user will enter a PIN number and should be four digits, each digit is unique and it should not be repeated in the 4-digits PIN number. This feature will keep running until the user enters the required number with same length and type.

 

  • Email: user will enter his KFUPM email (g20XXXXXXX@kfupm.edu.sa) and it should KFUPM email. Otherwise, it will ask again for email with same specifications.

 

  • Extra Attribute: user needs to add at least one extra attribute (of your own choice) for the created account.

 

After creating your account, you are required to save the information in cardNumber.txt file in same path of your jupyter file. Then, the program will sleep for few seconds and it will redirect you to login feature.

 

  1. Login Feature – def login(): This feature allows the user to login to his saved account after creating the account using the first function (create()). The required information to be asked in this feature as follows:

 

  • It asks the user to enter his card number and it should be available in same path (cardNumber.txt). The program will check the first line in the cardNumber.txt for the card number. This feature will keep running until the user enters his saved number.

 

  • Then, the program will check the second line in the cardNumber.txt for the PIN number. This feature will keep running until the user enters his saved number.

 

  • If the user enters the correct info, the menu in Figure 1 will appear directly.

 

 

 

1

 

  1. Show Feature – def show(file): this feature allows the user to show his saved account details based on the reading of his .txt file. After doing this step, the program will sleep for few seconds and it will redirect you to the menu again.

 

  1. ChangePIN Feature – def changePinFun(currentPIN, cardNumber, file): this feature allows the user to change his PIN number in the .txt file. Here, you are required to replace the saved PIN by new PIN and it should have same structure. After doing this step, the program will sleep for few seconds and it will redirect you to the menu again.

 

  1. Withdraw Feature – def withdrawFun(money, cardNumber, file): this feature allows the user to withdraw money from his account and then updates the account details in the .txt file accordingly. Remind that, if you don’t have enough money in your account, it will give a notification message and it will ask for new amount until you entered an amount that you can withdraw it. After doing this step, the program will sleep for few seconds and it will redirect you to the menu again.

 

  1. Deposit Feature – def depositFun(file, nMoney, cardNumber): this feature allows the user to deposit money to your account and then updates the account details in the .txt file accordingly. After doing this step, the program will sleep for few seconds and it will redirect you to the menu again.

 

  1. Bills Feature – def payBillFun(file, nMoney, cardNumber): this feature allows the user to pay a bill from his account, deducts this bill from the account and updates the account details in the .txt file accordingly.

 

  • Enter the name of the bill.

 

  • Enter the account number of this bill.

 

  • Enter the value of this bill.

 

Remind that, if you don’t have enough money in your account, it will give a notification message and it will ask to deposit amount to deduct the bill. After doing this step, the program will sleep for few seconds and it will redirect you to the menu again.

 

  1. View Transactions Feature – def viewTransactionsFun(cardNumber): this feature allows the user to show the history of his account based on the .txt file. If there are transactions in the account, it will be presented along with its (date and time). Otherwise, it will show "no transactions". After doing this step, the program will sleep for few seconds and it will redirect you to the menu again.

 

  1. Terminate Feature – def terminateFun(file, nMoney, cardNumber): this feature allows the user to ter-minate the program and at same time it will show the last transactions on the account during the session.

 

 

AutoSave ● Off
Lab_Project_Description_ICS104-202-Aslam
Protected View - Saved to this PC -
O Search
ALBRAA TAWFEEK MOLAH
AT
File
Home
Insert
Design
Layout
References
Mailings
Review
View
Help
A Share
O Comments
PROTECTED VIEW Be careful-files from the Internet can contain viruses. Unless you need to edit, it's safer to stay in Protected View.
Enable Editing
1 . . . | . .
...I . . . 1. ..I . 2.. : .: 3... I. .4 ... ... 5 . . . I · . . 6.
Develop a menu driven complete program that can perform the features in in Figure 1. This program works
for an individual customer only; the program will save the bank account information into a text file.
Bank Account Program
====================
1.
Show account information
Change PIN number
Withdraw amount of money
Deposit amount of money
Pay bills
View the last transactions
2.
3.
4.
5.
6.
7.
Terminate a program
===
Enter Your Feature:
Figure 1: Bank Account System Menu
1 Description:
The program starts by asking the user to select either login (L) or sign up (S) feature. Once the user selects
a feature, it asks him for (Card Number, then PIN) and after filling the required information for that feature, it
shows the above menu for other features. Otherwise, it keeps asking for the required information. Each
feature has to be designed using a separate function and it might be called by other functions including the
main function. The description of the login feature, sign up feature, and the above features are given below:
1. Sign up Feature – def create(): this feature allows new user to create an account and it saves his
information in cardNumber.txt. The required information to be asked in this feature as follows:
(a) Card Number: user will enter a card number and should be four digits, each digit is unique and it
should not be repeated in the 4-digits card number. This feature will keep running until the user
enters the required number with same length and type.
(b) PIN: user will enter a PIN number and should be four digits, each digit is unique and it should not
be repeated in the 4-digits PIN number. This feature will keep running until the user enters the
required number with same length and type.
(c) Email: user will enter his KFUPM email (920XXXXXXX@kfupm.edu.sa) and it should KFUPM
email. Otherwise, it will ask again for email with same specifications.
(d) Extra Attribute: user needs to add at least one extra attribute (of your own choice) for the created
account.
Page 1 of 3
1110 words
D Focus
100%
10:24 PM
O Type here to search
32
1 4) ENG
IMI
4/23/2021
(4
Transcribed Image Text:AutoSave ● Off Lab_Project_Description_ICS104-202-Aslam Protected View - Saved to this PC - O Search ALBRAA TAWFEEK MOLAH AT File Home Insert Design Layout References Mailings Review View Help A Share O Comments PROTECTED VIEW Be careful-files from the Internet can contain viruses. Unless you need to edit, it's safer to stay in Protected View. Enable Editing 1 . . . | . . ...I . . . 1. ..I . 2.. : .: 3... I. .4 ... ... 5 . . . I · . . 6. Develop a menu driven complete program that can perform the features in in Figure 1. This program works for an individual customer only; the program will save the bank account information into a text file. Bank Account Program ==================== 1. Show account information Change PIN number Withdraw amount of money Deposit amount of money Pay bills View the last transactions 2. 3. 4. 5. 6. 7. Terminate a program === Enter Your Feature: Figure 1: Bank Account System Menu 1 Description: The program starts by asking the user to select either login (L) or sign up (S) feature. Once the user selects a feature, it asks him for (Card Number, then PIN) and after filling the required information for that feature, it shows the above menu for other features. Otherwise, it keeps asking for the required information. Each feature has to be designed using a separate function and it might be called by other functions including the main function. The description of the login feature, sign up feature, and the above features are given below: 1. Sign up Feature – def create(): this feature allows new user to create an account and it saves his information in cardNumber.txt. The required information to be asked in this feature as follows: (a) Card Number: user will enter a card number and should be four digits, each digit is unique and it should not be repeated in the 4-digits card number. This feature will keep running until the user enters the required number with same length and type. (b) PIN: user will enter a PIN number and should be four digits, each digit is unique and it should not be repeated in the 4-digits PIN number. This feature will keep running until the user enters the required number with same length and type. (c) Email: user will enter his KFUPM email (920XXXXXXX@kfupm.edu.sa) and it should KFUPM email. Otherwise, it will ask again for email with same specifications. (d) Extra Attribute: user needs to add at least one extra attribute (of your own choice) for the created account. Page 1 of 3 1110 words D Focus 100% 10:24 PM O Type here to search 32 1 4) ENG IMI 4/23/2021 (4
AutoSave ● Off
Lab_Project_Description_ICS104-202-Aslam
Protected View - Saved to this PC -
O Search
ALBRAA TAWFEEK MOLAH
AT
File
Home
Insert
Design
Layout
References
Mailings
Review
View
Help
A Share
O Comments
PROTECTED VIEW Be careful-files from the Internet can contain viruses. Unless you need to edit, it's safer to stay in Protected View.
Enable Editing
... I : . . 1 · . I: · 2 . : · 3.. ..
.. I . . 6. . 7..
For example
# This work done by group 15:
# Khalid Ali, 2019000223, (65%)
# Saleh Ahmed, 2019000888, (35%)
Let's suppose group 15 deserve 100 points, based on the distribution above. Student Saleh
Ahmed should receive 15% less grade than Khalid Ali. That is:
Khalid Ali will receive 100 points
Saleh Ahmed will receive 85 points
I encourage every one of you to contribute equally to the project.
Figure 3: Grade distribution based on the student's contribution
Page 3 of 3
863 of 1110 words
D Focus
100%
10:23 PM
O Type here to search
32
1 4) ENG
IMI
4/23/2021
(4
Transcribed Image Text:AutoSave ● Off Lab_Project_Description_ICS104-202-Aslam Protected View - Saved to this PC - O Search ALBRAA TAWFEEK MOLAH AT File Home Insert Design Layout References Mailings Review View Help A Share O Comments PROTECTED VIEW Be careful-files from the Internet can contain viruses. Unless you need to edit, it's safer to stay in Protected View. Enable Editing ... I : . . 1 · . I: · 2 . : · 3.. .. .. I . . 6. . 7.. For example # This work done by group 15: # Khalid Ali, 2019000223, (65%) # Saleh Ahmed, 2019000888, (35%) Let's suppose group 15 deserve 100 points, based on the distribution above. Student Saleh Ahmed should receive 15% less grade than Khalid Ali. That is: Khalid Ali will receive 100 points Saleh Ahmed will receive 85 points I encourage every one of you to contribute equally to the project. Figure 3: Grade distribution based on the student's contribution Page 3 of 3 863 of 1110 words D Focus 100% 10:23 PM O Type here to search 32 1 4) ENG IMI 4/23/2021 (4
Expert Solution
steps

Step by step

Solved in 4 steps with 3 images

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY