Project 2
import java.io.*;
import java.util.Scanner;
public class Bank {
public static void main(String[] args) {
System.out.println("***** Welcome to national bank management system *****");
System.out.println("Do you want to create a bank account! Y/N");
Scanner sc = new Scanner(System.in);
String getout = sc.nextLine();
if (getout.equalsIgnoreCase("y")) {
FreshAccount obj = new FreshAccount();
obj.creatAccount();
}else if (getout.equalsIgnoreCase("n")) {
RBI obj1=new RBI();
obj1.showmenu();
}
}
}
import java.time.LocalDate;
import java.util.Scanner;
public class FreshAccount {
String name;
long accountnum;
String accountType;
String dob;
String bank;
void creatAccount() {
System.out.println("In which bank to open an account 1.SBI 2.TMB 3.ICICI ");
Scanner sc = new Scanner(System.in);
int chooseBank = sc.nextInt();
if (chooseBank == 1) {
bank = "SBI";
} else if (chooseBank == 2) {
bank = "TMB";
} else if (chooseBank == 3) {
bank = "ICICI";
}
System.out.println("please enter your name:");
sc.nextLine();
name = sc.nextLine();
System.out.println("please enter your date of in YYYY-MM-DD format: ");
System.out.println("NOTE! follow the format");
dob = sc.nextLine();
LocalDate dob1 = LocalDate.parse(dob);
System.out.println("What is the type of account : 1 saving 2 current");
int type = sc.nextInt();
if (chooseBank == 1) {
accountType = "saving";
} else if (chooseBank == 2) {
accountType = "current";
}
System.out.println("Your account has been opened with following details");
System.out.println("Bank : " + bank);
System.out.println("Name : " + name);
System.out.println("DOB : " + dob1);
System.out.println("Account Type : " + accountType);
System.out.println("Account Number : " +bank +(long) Math.floor(Math.random() * 9_000_000_000L) + 1_000_000_000L);
System.out.println("\n");
RBI obj1=new RBI();
obj1.showmenu();
sc.close();
}
}
import java.io.FileOutputStream;
import java.io.PrintStream;
import java.util.Scanner;
public class RBI {
int balance;
int previousTransaction;
String customerName;
String customerId;
String accountType;
double totalInterest;
void getPreviousTransaction() {
FileOutputStream out;
PrintStream p = null;
try {
out = new FileOutputStream("C:\\Users\\demo\\eclipse-workspace\\Project_2\\tansaction.txt");
p =new PrintStream(out);
if(previousTransaction>0) {
p.append("Deposited :"+previousTransaction);
System.out.println("Deposited :"+previousTransaction);
}else if(previousTransaction<0) {
p.append("Withdrawn :"+previousTransaction);
System.out.println("Withdrawn :"+Math.abs(previousTransaction));
}else {
System.out.println("No Transaction occured");
}
}catch(Exception e) {
System.out.println("Error in printing the data"+e);
}
p.close();
}
void withdraw(int amount) {
if(amount != 0);
{
balance =balance - amount;
System.out.println("Balance after deposit: "+balance);
previousTransaction = -amount;
}
}
void deposit(int amount) {
if(amount != 0);
{
balance =balance + amount;
System.out.println("Balance after deposit: "+balance);
previousTransaction = amount;
}
}
void calculateInterset(double balance){
System.out.println("What type of account 1 savings 2 current");
Scanner sc = new Scanner(System.in);
int choice =sc.nextInt();
if(choice ==1) {
accountType = "saving";
int r=8;
int t;
System.out.println("Enter the year to calculate the interest");
t=sc.nextInt();
// System.out.println("Rate ;"+r);
// System.out.println("Year ;"+t);
// System.out.println("Principle ;"+balance);
double finalAmount =(double)(balance*r*t)/100;;
System.out.println("Total interest earned is :"+finalAmount);
}else if(choice==2) {
accountType = "current";
int r=10;
int t;
System.out.println("Enter the year to calculate the interest");
t=sc.nextInt();
double finalAmount =(double)(balance*r*t)/100;
System.out.println("Total interest earned is :"+finalAmount);
}
}
void showmenu() {
char option = '\0';
Scanner sc = new Scanner(System.in);
System.out.println("Welcome to the menu");
System.out.println("\n");
System.out.println("A. checkBalance");
System.out.println("B. Deposit Amount");
System.out.println("C. Withdraw Amount");
System.out.println("D. See Previous transaction");
System.out.println("E. Calculate Interest");
System.out.println("F. Exit");
do {
System.out.println("----------------------");
System.out.println("Enter an option");
System.out.println("----------------------");
option = sc.next().charAt(0);
System.out.println("\n");
switch(option) {
case'A':
System.out.println("----------------------");
System.out.println("Balance =" +balance);
// System.out.println("\n");
break;
case'B':
System.out.println("----------------------");
System.out.println("Enter the amount to deposit :");
int amount = sc.nextInt();
deposit(amount);
// System.out.println("\n");
break;
case'C':
System.out.println("----------------------");
System.out.println("Enter the amount to withdraw :");
int amount2 = sc.nextInt();
withdraw(amount2);
// System.out.println("\n");
break;
case'D':
System.out.println("----------------------");
getPreviousTransaction();
// System.out.println("\n");
break;
case'E':
System.out.println("----------------------");
// System.out.println(balance);
calculateInterset(balance);
// System.out.println("\n");
break;
case'F':
System.out.println("----------------------");
break;
default:
System.out.println("Entered Invalid option!.Please enter Agian");
break;
}
}while(option!='F');
System.out.println("Thank you for using our banking system");
sc.close();
}
}