2015-04-26 3 views
-2

импорт java.util.Scanner; общественного класса ATM {Что не так с фигурными брекетами, почему это не сработало?

static Scanner console = new Scanner(System.in); 

public static void main(String[] args) { 

    int Account01 = 3000; 
    int Account02 = 2000; 
    int Account03 = 1000; 
    String username; 
    int pin, transaction, counter=1, menu, chooseAccount; 
    int withdraw_amount, deposited_amount, transfer_amount, transfer_account = 0; 


    do{ 
     System.out.print("Enter username: "); 
     username = console.next(); 

     System.out.print("Enter PIN: "); 
     pin = console.nextInt(); 


     if ((username.equalsIgnoreCase("Account01")) && (pin == 1234)) 
     { 
      System.out.println("PIN Accepted"); 
      System.out.println("\n\nSelect a menu:"); 
      System.out.println("[1] Balance Inquiry\n[2] Withdrawal\n[3] Deposit\n[4] Transfer Amount"); 
      System.out.print("\nEnter your choice: "); 
      menu = console.nextInt(); 
      do{ 
       if (menu == 1) 
       { 
        System.out.print("\n\nBALANCE INQUIRY"); 
        System.out.print("\nYour Current Balance is: " + Account01); 
       } 

       else if (menu ==2) 
       { 
        do{ 
         System.out.print("\n\nWITHDRAWAL"); 
         System.out.print("\nEnter amount: "); 
         withdraw_amount = console.nextInt(); 
         if(((withdraw_amount % 100) == 0) && ((withdraw_amount >= 200) && 
           (withdraw_amount <= Account01) && (withdraw_amount <= 10000))) 
         { 
          Account01 = Account01 - withdraw_amount; 
          break; 
         } 
         // error catching 
         if(counter<3) 
          System.out.println("Error: Incorrect amount!\n"); 
         else{ 
          System.out.println("Card has been captured!"); 
          break; 
         } 
         counter++; 
        }while(counter<=3); 

       } 

       else if (menu == 3) 
       { 
        do 
        { 
         System.out.print("\n\nDEPOSIT"); 
         System.out.print("\nEnter amount: "); 
         deposited_amount = console.nextInt(); 
         if(((deposited_amount % 100) == 0) && (deposited_amount <= 10000)) 
         { 
          Account01 = Account01 + deposited_amount; 
          break; 
         } 
         // error catching 
         if(counter < 3) 
          System.out.println("Error: Incorrect amount.\n"); 
         else 
         { 
          System.out.println("Card has been captured."); 
          break; 
         } 
         counter++; 
        }while(counter <= 3); 
       } 

       else if (menu == 4) 
       { 

        do{ 
         System.out.print("\n\nTRANSFER PAYMENT"); 
         System.out.print("\nEnter amount: "); 
         transfer_amount = console.nextInt(); 
         System.out.print("[1] account01\n[2] account02\n[3] account03\n"); 
         System.out.print("Chose account: "); 
         chooseAccount = console.nextInt(); 
         if(chooseAccount == 1) 
         { 
          transfer_account = Account01; 
         } 
         else if(chooseAccount == 2) 
         { 
          transfer_account = Account02; 
         } 
         else if(chooseAccount == 3) 
         { 
          transfer_account = Account03; 
         } 
         else System.out.println("invalid number entered."); 

         if(((transfer_amount % 100) == 0) && (transfer_amount <= 10000)) 
         { 
          Account01 = Account01 - transfer_amount; 
          transfer_account = transfer_account + transfer_amount; 
          break; 
         } 
         // error catching 
         if(counter < 3) 
          System.out.println("Error: Incorrect amount.\n"); 
         else 
         { 
          System.out.println("Card has been captured."); 
          break; 
         } 
         counter++; 
        }while(counter <= 3); 
       } 


       System.out.println("\n\n\nDo you want another transaction?\nType [1] if YES. Type [2] if NO"); 
       System.out.print("\nEnter your choice: "); 
       transaction = console.nextInt(); 
       if (transaction == 1) 
       { 
        System.out.println("\n\nSelect a menu:"); 
        System.out.println("[1] Balance Inquiry\n[2] Withdrawal\n[3] Deposit\n[4] Transfer Amount"); 
        System.out.print("\nEnter your choice: "); 
        menu = console.nextInt(); 
        do{ 
         if (menu == 1) 
         { 
          System.out.print("\n\nBALANCE INQUIRY"); 
          System.out.print("\nYour Current Balance is: " + Account01); 
         } 

         else if (menu ==2) 
         { 
          do{ 
           System.out.print("\n\nWITHDRAWAL"); 
           System.out.print("\nEnter amount: "); 
           withdraw_amount = console.nextInt(); 
           if(((withdraw_amount % 100) == 0) && ((withdraw_amount >= 200) && 
             (withdraw_amount <= Account01) && (withdraw_amount <= 10000))) 
           { 
            Account01 = Account01 - withdraw_amount; 
            break; 
           } 
           // error catching 
           if(counter<3) 
            System.out.println("Error: Incorrect amount!\n"); 
           else{ 
            System.out.println("Card has been captured!"); 
            break; 
           } 
           counter++; 
          }while(counter<=3); 
         } 

         else if (menu == 3) 
         { 
          do 
          { 
           System.out.print("\n\nDEPOSIT"); 
           System.out.print("\nEnter amount: "); 
           deposited_amount = console.nextInt(); 
           if(((deposited_amount % 100) == 0) && (deposited_amount <= 10000)) 
           { 
            Account01 = Account01 + deposited_amount; 
            break; 
           } 
           // error catching 
           if(counter < 3) 
            System.out.println("Error: Incorrect amount.\n"); 
           else 
           { 
            System.out.println("Card has been captured."); 
            break; 
           } 
           counter++; 
          }while(counter <= 3); 
         } 

         else if (menu == 4) 
         { 

          do{ 
           System.out.print("\n\nTRANSFER PAYMENT"); 
           System.out.print("\nEnter amount: "); 
           transfer_amount = console.nextInt(); 
           System.out.print("[1] account01\n[2] account02\n[3] account03\n"); 
           System.out.print("Chose account: "); 
           chooseAccount = console.nextInt(); 
           if(chooseAccount == 1) 
           { 
            transfer_account = Account01; 
           } 
           else if(chooseAccount == 2) 
           { 
            transfer_account = Account02; 
           } 
           else if(chooseAccount == 3) 
           { 
            transfer_account = Account03; 
           } 
           else System.out.println("invalid number entered."); 

           if(((transfer_amount % 100) == 0) && (transfer_amount <= 10000)) 
           { 
            Account01 = Account01 - transfer_amount; 
            transfer_account = transfer_account + transfer_amount; 
            break; 
           } 
           // error catching 
           if(counter < 3) 
            System.out.println("Error: Incorrect amount.\n"); 
           else 
           { 
            System.out.println("Card has been captured."); 
            break; 
           } 
           counter++; 
          }while(counter <= 3); 
         } 
       else 
       { 
        System.out.println("\nThank You!!!\nGood Bye!!!"); 
       } 
       break; 

      }while((menu >= 1) && (menu <= 4)); 
      break; 
     } 


     else if ((username.equalsIgnoreCase("Account02")) && (pin == 4321)) 
     { 
      System.out.println("PIN Accepted"); 
      System.out.println("\n\nSelect a menu:"); 
      System.out.println("[1] Balance Inquiry\n[2] Withdrawal\n[3] Deposit\n[4] Transfer Amount"); 
      System.out.print("\nEnter your choice: "); 
      menu = console.nextInt(); 
      do{ 
       if (menu == 1) 
       { 
        System.out.print("\n\nBALANCE INQUIRY"); 
        System.out.print("\nYour Current Balance is: " + Account02); 
       } 

       else if (menu ==2) 
       { 
        do{ 
         System.out.print("\n\nWITHDRAWAL"); 
         System.out.print("\nEnter amount: "); 
         withdraw_amount = console.nextInt(); 
         if(((withdraw_amount % 100) == 0) && ((withdraw_amount >= 200) && 
           (withdraw_amount <= Account02) && (withdraw_amount <= 10000))) 
         { 
          Account02 = Account02 - withdraw_amount; 
          break; 
         } 
         // error catching 
         if(counter<3) 
          System.out.println("Error: Incorrect amount!\n"); 
         else{ 
          System.out.println("Card has been captured!"); 
          break; 
         } 
         counter++; 
        }while(counter<=3); 

       } 

       else if (menu == 3) 
       { 
        do 
        { 
         System.out.print("\n\nDEPOSIT"); 
         System.out.print("\nEnter amount: "); 
         deposited_amount = console.nextInt(); 
         if(((deposited_amount % 100) == 0) && (deposited_amount <= 10000)) 
         { 
          Account02 = Account02 + deposited_amount; 
          break; 
         } 
         // error catching 
         if(counter < 3) 
          System.out.println("Error: Incorrect amount.\n"); 
         else 
         { 
          System.out.println("Card has been captured."); 
          break; 
         } 
         counter++; 
        }while(counter <= 3); 
       } 

       else if (menu == 4) 
       { 

        do{ 
         System.out.print("\n\nTRANSFER PAYMENT"); 
         System.out.print("\nEnter amount: "); 
         transfer_amount = console.nextInt(); 
         System.out.print("[1] account01\n[2] account02\n[3] account03\n"); 
         System.out.print("Chose account: "); 
         chooseAccount = console.nextInt(); 
         if(chooseAccount == 1) 
         { 
          transfer_account = Account01; 
         } 
         else if(chooseAccount == 2) 
         { 
          transfer_account = Account02; 
         } 
         else if(chooseAccount == 3) 
         { 
          transfer_account = Account03; 
         } 
         else System.out.println("invalid number entered."); 

         if(((transfer_amount % 100) == 0) && (transfer_amount <= 10000)) 
         { 
          Account02 = Account02 - transfer_amount; 
          transfer_account = transfer_account + transfer_amount; 
          break; 
         } 
         // error catching 
         if(counter < 3) 
          System.out.println("Error: Incorrect amount.\n"); 
         else 
         { 
          System.out.println("Card has been captured."); 
          break; 
         } 
         counter++; 
        }while(counter <= 3); 
       } 


       System.out.println("\n\n\nDo you want another transaction?\nType [1] if YES. Type [2] if NO"); 
       System.out.print("\nEnter your choice: "); 
       transaction = console.nextInt(); 
       if (transaction == 1) 
       { 
        System.out.println("\n\nSelect a menu:"); 
        System.out.println("[1] Balance Inquiry\n[2] Withdrawal\n[3] Deposit\n[4] Transfer Amount"); 
        System.out.print("\nEnter your choice: "); 
        menu = console.nextInt(); 
        do{ 
         if (menu == 1) 
         { 
          System.out.print("\n\nBALANCE INQUIRY"); 
          System.out.print("\nYour Current Balance is: " + Account02); 
         } 

         else if (menu ==2) 
         { 
          do{ 
           System.out.print("\n\nWITHDRAWAL"); 
           System.out.print("\nEnter amount: "); 
           withdraw_amount = console.nextInt(); 
           if(((withdraw_amount % 100) == 0) && ((withdraw_amount >= 200) && 
             (withdraw_amount <= Account02) && (withdraw_amount <= 10000))) 
           { 
            Account02 = Account02 - withdraw_amount; 
            break; 
           } 
           // error catching 
           if(counter<3) 
            System.out.println("Error: Incorrect amount!\n"); 
           else{ 
            System.out.println("Card has been captured!"); 
            break; 
           } 
           counter++; 
          }while(counter<=3); 

         } 

         else if (menu == 3) 
         { 
          do 
          { 
           System.out.print("\n\nDEPOSIT"); 
           System.out.print("\nEnter amount: "); 
           deposited_amount = console.nextInt(); 
           if(((deposited_amount % 100) == 0) && (deposited_amount <= 10000)) 
           { 
            Account02 = Account02 + deposited_amount; 
            break; 
           } 
           // error catching 
           if(counter < 3) 
            System.out.println("Error: Incorrect amount.\n"); 
           else 
           { 
            System.out.println("Card has been captured."); 
            break; 
           } 
           counter++; 
          }while(counter <= 3); 
         } 

         else if (menu == 4) 
         { 

          do{ 
           System.out.print("\n\nTRANSFER PAYMENT"); 
           System.out.print("\nEnter amount: "); 
           transfer_amount = console.nextInt(); 
           System.out.print("[1] account01\n[2] account02\n[3] account03\n"); 
           System.out.print("Chose account: "); 
           chooseAccount = console.nextInt(); 
           if(chooseAccount == 1) 
           { 
            transfer_account = Account01; 
           } 
           else if(chooseAccount == 2) 
           { 
            transfer_account = Account02; 
           } 
           else if(chooseAccount == 3) 
           { 
            transfer_account = Account03; 
           } 
           else System.out.println("invalid number entered."); 

           if(((transfer_amount % 100) == 0) && (transfer_amount <= 10000)) 
           { 
            Account02 = Account02 - transfer_amount; 
            transfer_account = transfer_account + transfer_amount; 
            break; 
           } 
           // error catching 
           if(counter < 3) 
            System.out.println("Error: Incorrect amount.\n"); 
           else 
           { 
            System.out.println("Card has been captured."); 
            break; 
           } 
           counter++; 
          }while(counter <= 3); 
       } 
       else 
       { 
        System.out.println("\nThank You!!!\nGood Bye!!!"); 
       } 
       break; 

      }while((menu >= 1) && (menu <= 4)); 
      break; 
     } 


     else if ((username.equalsIgnoreCase("Account03")) && (pin == 5555)) 
     { 
      System.out.println("PIN Accepted"); 
      System.out.println("\n\nSelect a menu:"); 
      System.out.println("[1] Balance Inquiry\n[2] Withdrawal\n[3] Deposit\n[4] Transfer Amount"); 
      System.out.print("\nEnter your choice: "); 
      menu = console.nextInt(); 
      do{ 
       if (menu == 1) 
       { 
        System.out.print("\n\nBALANCE INQUIRY"); 
        System.out.print("\nYour Current Balance is: " + Account03); 
       } 

       else if (menu ==2) 
       { 
        do{ 
         System.out.print("\n\nWITHDRAWAL"); 
         System.out.print("\nEnter amount: "); 
         withdraw_amount = console.nextInt(); 
         if(((withdraw_amount % 100) == 0) && ((withdraw_amount >= 200) && 
           (withdraw_amount <= Account03) && (withdraw_amount <= 10000))) 
         { 
          Account03 = Account03 - withdraw_amount; 
          break; 
         } 
         // error catching 
         if(counter<3) 
          System.out.println("Error: Incorrect amount!\n"); 
         else{ 
          System.out.println("Card has been captured!"); 
          break; 
         } 
         counter++; 
        }while(counter<=3); 

       } 

       else if (menu == 3) 
       { 
        do 
        { 
         System.out.print("\n\nDEPOSIT"); 
         System.out.print("\nEnter amount: "); 
         deposited_amount = console.nextInt(); 
         if(((deposited_amount % 100) == 0) && (deposited_amount <= 10000)) 
         { 
          Account03 = Account03 + deposited_amount; 
          break; 
         } 
         // error catching 
         if(counter < 3) 
          System.out.println("Error: Incorrect amount.\n"); 
         else 
         { 
          System.out.println("Card has been captured."); 
          break; 
         } 
         counter++; 
        }while(counter <= 3); 
       } 

       else if (menu == 4) 
       { 

        do{ 
         System.out.print("\n\nTRANSFER PAYMENT"); 
         System.out.print("\nEnter amount: "); 
         transfer_amount = console.nextInt(); 
         System.out.print("[1] account01\n[2] account02\n[3] account03\n"); 
         System.out.print("Chose account: "); 
         chooseAccount = console.nextInt(); 
         if(chooseAccount == 1) 
         { 
          transfer_account = Account01; 
         } 
         else if(chooseAccount == 2) 
         { 
          transfer_account = Account02; 
         } 
         else if(chooseAccount == 3) 
         { 
          transfer_account = Account03; 
         } 
         else System.out.println("invalid number entered."); 

         if(((transfer_amount % 100) == 0) && (transfer_amount <= 10000)) 
         { 
          Account03 = Account03 - transfer_amount; 
          transfer_account = transfer_account + transfer_amount; 
          break; 
         } 
         // error catching 
         if(counter < 3) 
          System.out.println("Error: Incorrect amount.\n"); 
         else 
         { 
          System.out.println("Card has been captured."); 
          break; 
         } 
         counter++; 
        }while(counter <= 3); 
       } 


       System.out.println("\n\n\nDo you want another transaction?\nType [1] if YES. Type [2] if NO"); 
       System.out.print("\nEnter your choice: "); 
       transaction = console.nextInt(); 
       if (transaction == 1) 
       { 
        System.out.println("\n\nSelect a menu:"); 
        System.out.println("[1] Balance Inquiry\n[2] Withdrawal\n[3] Deposit\n[4] Transfer Amount"); 
        System.out.print("\nEnter your choice: "); 
        menu = console.nextInt(); 
        do{ 
         if (menu == 1) 
         { 
          System.out.print("\n\nBALANCE INQUIRY"); 
          System.out.print("\nYour Current Balance is: " + Account03); 
         } 

         else if (menu ==2) 
         { 
          do{ 
           System.out.print("\n\nWITHDRAWAL"); 
           System.out.print("\nEnter amount: "); 
           withdraw_amount = console.nextInt(); 
           if(((withdraw_amount % 100) == 0) && ((withdraw_amount >= 200) && 
             (withdraw_amount <= Account03) && (withdraw_amount <= 10000))) 
           { 
            Account03 = Account03 - withdraw_amount; 
            break; 
           } 
           // error catching 
           if(counter<3) 
            System.out.println("Error: Incorrect amount!\n"); 
           else{ 
            System.out.println("Card has been captured!"); 
            break; 
           } 
           counter++; 
          }while(counter<=3); 

         } 

         else if (menu == 3) 
         { 
          do 
          { 
           System.out.print("\n\nDEPOSIT"); 
           System.out.print("\nEnter amount: "); 
           deposited_amount = console.nextInt(); 
           if(((deposited_amount % 100) == 0) && (deposited_amount <= 10000)) 
           { 
            Account03 = Account03 + deposited_amount; 
            break; 
           } 
           // error catching 
           if(counter < 3) 
            System.out.println("Error: Incorrect amount.\n"); 
           else 
           { 
            System.out.println("Card has been captured."); 
            break; 
           } 
           counter++; 
          }while(counter <= 3); 
         } 

         else if (menu == 4) 
         { 

          do{ 
           System.out.print("\n\nTRANSFER PAYMENT"); 
           System.out.print("\nEnter amount: "); 
           transfer_amount = console.nextInt(); 
           System.out.print("[1] account01\n[2] account02\n[3] account03\n"); 
           System.out.print("Chose account: "); 
           chooseAccount = console.nextInt(); 
           if(chooseAccount == 1) 
           { 
            transfer_account = Account01; 
           } 
           else if(chooseAccount == 2) 
           { 
            transfer_account = Account02; 
           } 
           else if(chooseAccount == 3) 
           { 
            transfer_account = Account03; 
           } 
           else System.out.println("invalid number entered."); 

           if(((transfer_amount % 100) == 0) && (transfer_amount <= 10000)) 
           { 
            Account03 = Account03 - transfer_amount; 
            transfer_account = transfer_account + transfer_amount; 
            break; 
           } 
           // error catching 
           if(counter < 3) 
            System.out.println("Error: Incorrect amount.\n"); 
           else 
           { 
            System.out.println("Card has been captured."); 
            break; 
           } 
           counter++; 
          }while(counter <= 3); 
       } 
       else 
       { 
        System.out.println("\nThank You!!!\nGood Bye!!!"); 
       } 
       break; 

      }while((menu >= 1) && (menu <= 4)); 
      break; 
     } 


     else if ((username.equalsIgnoreCase("x")) && (pin == 0000)) 
     { 
      System.out.println("Program will be terminated!"); 
      break; 
     } 
     // error catching 
     if(counter<3) 
      System.out.println("Error: Incorrect username or password.\n"); 
     else{ 
      System.out.println("Card has been captured!"); 
      System.out.println("\n\nDo you want to continue?\nType [1] if YES. Type [2] if NO "); 
      System.out.print("Enter your choice: "); 
      transaction = console.nextInt(); 
      if (transaction == 1) 
      { 
       System.out.println("\n\nInsert your card."); 
       System.out.print("\nEnter username: "); 
       username = console.next(); 

       System.out.print("Enter PIN: "); 
       pin = console.nextInt(); 

      } 
      else 
      { 
       System.out.println("\nThank You!!!\nGood Bye!!!"); 
      } 
      break; 
     } 

     counter++; 
    }while(counter<=3); 
} 

}

Я делаю программу банкомат. Что случилось с моей программой, почему это не сработало? Любые предложения ребята? Мне действительно нужно разобраться с этим, мне нужен он! :(

+0

Вам необходимо описать, как именно ваша программа не может произвести ожидаемые результаты. Трудно изолировать вашу проблему от всего этого кода, особенно если вы не укажете, что это такое. – toniedzwiedz

+0

Не могли бы вы описать, что вы пробовали до сих пор, что вы ожидаете, и что он делает до сих пор? – BretC

+0

Вот моя проблема при запуске: Синтаксическая ошибка, вставить «while (Expression)»; для завершения DoStatement \t Ошибка синтаксиса, вставить «}» для завершения MethodBody –

ответ

2

Ваш код не будет компилироваться, потому что вы использовали Do {} в то время как петля, которая имеет общий вид:

do { 
statement(s) 
} while (expression); 

и вы не добавить выражение участие в трех из них (из .. начало кода) Вы пишете заявления без выражения

Я не знаю, ваш код, но достаточно, чтобы добавить:.

     }while(true); 
        } 
       }while(true); 
      } 
     }while(true); 
    } 
} 

скомпилировать

Однако вы должны серьезно подумать о разделении кода между несколькими классами и методами, потому что его очень трудно читать и поддерживать (как вы, вероятно, знаете).

Смежные вопросы