yung hindi ko makuha is yung sa withdraw dapat hindi pwede maka withdraw ng less than 100 at maximum withdraw is 10k. Tyaka sa balance lagi 10k lumalabas dapat kung ilan nalang yung amount ng account yun nalang lalabas.
Java:
import java.util.*;
public class bank
{
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String Ashley;
choose();
}
private static void choose() {
Scanner in = new Scanner(System.in);
int choice;
System.out.println("\nPlease select an option");
System.out.println("1. Registration");
System.out.println("2. Balance");
System.out.println("3. Withdraw");
System.out.println("4. Deposit");
System.out.println("5. Exit\n\n"+"Enter your answer here: ");
try {
choice = +in.nextInt();
switch (choice){
case 1:
registering();
break;
case 2:
balance();
break;
case 3:
withdraw();
break;
case 4:
deposit();
break;
case 5:
in.close();
break;
default:
System.out.println("Please enter correct answer.");
anotherTransaction();
break;
}
} catch(Exception e) {
System.out.println("\nPlease enter correct answer.\n");
anotherTransaction();
}
}
private static void balance() {
Scanner in = new Scanner(System.in);
int totalBalance;
totalBalance = 10000;
System.out.println("Please enter your account number:");
int inaccnum=in.nextInt();
System.out.println("Your Account Balance is:"+totalBalance);
anotherTransaction();
}
private static void withdraw() {
int totalBalance;
int compute;
int etAmount;
Scanner in = new Scanner(System.in);
System.out.println("\nPlease enter desired amount: ");
etAmount = in.nextInt();
compute = etAmount - 10000;
totalBalance=etAmount;
if(totalBalance<=etAmount||totalBalance==0||totalBalance>=100)
{
System.out.println("Successfully withdraw\nTotal Balance: "+compute+"\n");
anotherTransaction();
}
else
{
System.out.println("--Invalid make sure amount is greater than to 100 and 10000 maximum--");
wrongamount();
}
}
private static void deposit() {
int totalBalance, compute;
int etAmount;
Scanner in = new Scanner(System.in);
System.out.println("\nPlease enter desired amount: ");
try {
etAmount = in.nextInt();
compute = 10000+etAmount;
System.out.println("Successfully deposited\nTotal Balance: "+compute+"\n");
anotherTransaction();
} catch(Exception e) {
System.out.println("\nPlease enter number only.\n");
choose();
}
}
private static void registering() {
int num;
int max;
Scanner in = new Scanner(System.in);
String aName, aNumber, pNumber;
int pInitialBal;
System.out.println("\nPlease enter Account Name: ");
aName = in.nextLine();
System.out.println("\nPlease enter Account Number: ");
num=in.nextInt();
aNumber = in.nextLine();
max=Integer.toString(num).length();
if(max<10)
{
System.out.println("--10 numbers only--");
invalidnum();
}
System.out.println("\nPlease enter Pin Number");
System.out.println("--4-8 characters only must--");
System.out.println("--contain number, letter--");
System.out.println("--and special symbol--");
System.out.print ("Enter Pin NUmber:");
String pinnum = in.nextLine();
if(isValid(pinnum))
{
System.out.println("--VALID pass--");
pInitialBal = 100000;
System.out.println();
System.out.println("You have successfully registered, Here's your details\nAccount Name:"+aName+
"\nAccount Number:"+num+"\n\nAs an additional information you have initally 10,000 balance upon registering\nThank you!\n\n");
choose();
}
else
{
System.out.println("--INVALID pass--");
invalidpin();
}
}
public static boolean isValid(String pinnum) {
if(!((pinnum.length()>=4)&&(pinnum.length()<=8)))
{
return false;
}
if(true)
{
int count=0;
for(int i=0;i<=9;i++)
{
String pinnum1=Integer.toString(i);
if(pinnum.contains(pinnum1))
{
count=1;
}
}
if(count==0)
{
return false;
}
}
if(!(pinnum.contains("@")||pinnum.contains("#")||pinnum.contains("!")||pinnum.contains("~")||pinnum.contains("$")||pinnum.contains("%")||pinnum.contains("^")||pinnum.contains("&")||pinnum.contains("*")||pinnum.contains("(")||pinnum.contains(")")||pinnum.contains("_")||pinnum.contains("-")||pinnum.contains("=")||pinnum.contains("+")))
{
return false;
}
if(true)
{
int count=0;
for(int i=65;i<=90;i++)
{
char c=(char)i;
String pinnum1=Character.toString(c);
if(pinnum.contains(pinnum1))
{
count=1;
}
}
if(count==0)
{
return false;
}
}
if(true)
{
int count=0;
for(int i=90;i<=122;i++)
{
char c=(char)i;
String pinnum1=Character.toString(c);
if(pinnum.contains(pinnum1))
{
count=1;
}
}
if(count==0)
{
return false;
}
}
return true;
}
private static void invalidpin() {
Scanner in = new Scanner(System.in);
System.out.println("--The pin number must have number,letter and special symbol--");
System.out.print ("Enter Pin Number:");
String pinnum = in.nextLine();
if(isValid(pinnum))
{
System.out.println("--VALID pass--");
}
else
{
System.out.println("--INVALID pass--");
invalidpin();
}
}
private static void invalidnum() {
Scanner in = new Scanner(System.in);
System.out.println("--Enter a unique 10 numbers--");
System.out.print("Account Number:");
int num=in.nextInt();
int max=Integer.toString(num).length();
if (max==10)
{
System.out.println("Your account is valid");
System.out.println("Account Number:"+num);
}
else if(max<10)
{
System.out.println("--Invalid must be unique and 10 numbers only--");
invalidnum();
}
else
{
invalidnum();
}
}
private static void anotherTransaction() {
Scanner in = new Scanner(System.in);
String choose;
System.out.println("Would you like to make another transaction?[Y/N]");
choose = in.nextLine();
switch (choose){
case "Y":
choose();
break;
case "N":
System.out.println("\nThank you!");
in.close();
break;
default:
System.out.println("Please make sure you answer correctly.");
anotherTransaction();
break;
}
}
private static void wrongamount() {
int totalBalance;
int compute;
int etAmount;
Scanner in = new Scanner(System.in);
System.out.println("\nPlease enter desired amount: ");
etAmount = in.nextInt();
compute = 10000;
totalBalance=etAmount;
if(totalBalance<=etAmount||totalBalance==0||totalBalance>=100)
{
int div=totalBalance-etAmount;
System.out.println("Your account balance now is:"+div);
}
else
{
System.out.println("--Invalid make sure amount is greater than to 100 and 10000 maximum--");
wrongamount();
}
}
}