Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Hello. I am resending the ProjectATM. Can anybody there help me with this projec

ID: 3576153 • Letter: H

Question

Hello. I am resending the ProjectATM. Can anybody there help me with this project? Thanks

I need help with this project. There is an instruction page and the hint sample . The project set up some what similar to the hint that is given. Can anybody help me. Thanks

In this project you are to write a Java program similar to the ones used in ATM machines. Essentially your program is to handle the following services:

Cash withdrawal from either account

Deposit to both accounts

Transfer from saving account to checking account

Transfer from checking account to saving account

Balance statements for both accounts

The start message is to be displayed as follows:

*** Welcome to CTE ATM ***

                Input PIN:

                Clear

                Exit

In response to Input PIN, the user has to enter a valid 4-digit PIN. If any 4-digit number besides the correct PIN is entered, the system should display an error message, and the original menu to be redisplayed. The user then gets a second chance to enter a valid PIN. If an illegal PIN is entered three consecutive times, the following message should appear on the screen “Too many illegal attempts. Try again later.” If the user input a value in wrong format, the system should keep displaying an error message and ask for correct format (this does not count for an illegal attempt). Clear, does clear the number of attempts to reset the system for a new user. Exit option should be available only on this screen. Selecting this option should display

“***Thank you for using CTE ATM***” message before terminating the application.

If the entered PIN is a legal value, the main form should display:

                ***CTE ATM system ***

                Withdrawal Cash

                Deposit

                Transfer

                Balance Inquiry

                Logout

Guidelines:

Use arrays to hold the accounts information (assume the ATM could have maximum of 10 accounts and there are no duplicated PINs). Among other accounts, have one account with the following information: PIN should be 1111 with saving and checking initial balance of $1000.00. Withdraw Cash selection should give the user options to withdraw from checking or saving account and should subtract the amount specified from the appropriate account only if it can be honored. There should be the following options to choose from: $20.00, $40.00, $60.00, $80.00, $100.00, or Other amount where the user could input any amount. The ATM should only be capable of dispensing amounts that are multiples of 20. Deposit should give the user options to deposit to checking or saving account and should accept any amount. Any transfer is allowed only if it can be honored. For example, if the savings account balance is $500.00 and the user requests to transfer $550.00 from the savings account to the checking account an appropriate should be displayed. Balance Inquiry should display the current amount available in the accounts. Logout option should take you back to the initial screen to allow ATM use by a new user. The user should be able to cancel the current transaction at all time. Canceling the current transaction should display the main menu. If a transaction is completed, the application should display “Transaction completed” and go to the main menu. If a transaction is not completed, the application should display “Transaction not completed” and stay in current menu. Do not use global variables.

Here is the hint from the Instructor

public class Project2ATM {
10          final static int MAX_ACCOUNTS = 10;   
11          public static void main (String [] args){
12          
15          double[] saving = new double [MAX_ACCOUNTS];
16          double[] checking = new double [MAX_ACCOUNTS];
17          String [] pin = new String [MAX_ACCOUNTS];
18          
19          
24          int numberOfAccounts = 3;
25          int active_account = -1;
26          int countPin = 0, mainInput;
27          String pinInput = "";


28          populateArrays(saving, checking, pi                       
29          // get the pin from user

          // use the method to see which account should be active

          // the method check the user input against existing pins and return the indext of correct pin. If the pin does       not match. Return -1. // The method uses a loop from 0 to numberofAccount to search for pin.

         

          // if active pin is at location 0
52         /* active_account = 0;
53          System.out.println(saving [ active _account]) ;
54          System.out.println(checking [ active _account]) ;
55          active_account = 0
56          System.out.println(pin[ active _account]) ;
57          
58          }
59          public static void populateArrays(double[] saving, double[] checking, String[] pin)
60          {
61             

61             saving [0] = 1000;
62             checking [0] = 1000;
63             pin [0] = "1111";

saving [1] = 950;
62             checking [1] = 755;
63             pin [1] = "1230";

Explanation / Answer

#include unsigned long amount=1000, deposit, withdraw; int choice, pin, k; char transaction ='y'; void main() { while (pin != 1520) { printf("ENTER YOUR SECRET PIN NUMBER:"); scanf("%d", &pin); if (pin != 1520) printf("PLEASE ENTER VALID PASSWORD "); } do { printf("********Welcome to ATM Service************** "); printf("1. Check Balance "); printf("2. Withdraw Cash "); printf("3. Deposit Cash "); printf("4. Quit "); printf("******************?**************************?* "); printf("Enter your choice: "); scanf("%d", &choice); switch (choice) { case 1: printf(" YOUR BALANCE IN Rs : %lu ", amount); break; case 2: printf(" ENTER THE AMOUNT TO WITHDRAW: "); scanf("%lu", &withdraw); if (withdraw % 100 != 0) { printf(" PLEASE ENTER THE AMOUNT IN MULTIPLES OF 100"); } else if (withdraw >(amount - 500)) { printf(" INSUFFICENT BALANCE"); } else { amount = amount - withdraw; printf(" PLEASE COLLECT CASH"); printf(" YOUR CURRENT BALANCE IS%lu", amount); } break; case 3: printf(" ENTER THE AMOUNT TO DEPOSIT"); scanf("%lu", &deposit); amount = amount + deposit; printf("YOUR BALANCE IS %lu", amount); break; case 4: printf(" THANK U USING ATM"); break; default: printf(" INVALID CHOICE"); } printf(" DO U WISH TO HAVE ANOTHER TRANSCATION?(y/n): "); fflush(stdin); scanf("%c", &transaction); if (transaction == 'n'|| transaction == 'N') k = 1; } while (!k); printf(" THANKS FOR USING OUT ATM SERVICE"); }