-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathBankAccount.java
More file actions
137 lines (135 loc) · 5.29 KB
/
Copy pathBankAccount.java
File metadata and controls
137 lines (135 loc) · 5.29 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
import java.util.*;
class BankDetails {
private static int accountNumberCounter = 1000;
private String Acc_no;
private String Name;
private String Acc_type;
private long Balance;
Scanner sc = new Scanner (System.in);
// Constructor to generate unique account number
public BankDetails() {
this.Acc_no = "ACC" + accountNumberCounter++;
}
// method to open new account
public void openAccount() {
System.out.print("Your Account no: " + Acc_no);
System.out.print("Enter Account type.: ");
Acc_type = sc.next();
System.out.print("Enter Name.: ");
Name = sc.next();
System.out.print("Enter Balance.: ");
Balance = sc.nextLong();
}
// method to display account details
public void showAccount() {
System.out.print("name of Acount holder: " + Name);
System.out.print("Account N0.: " + Acc_type);
System.out.print("Emter balance: " + Balance);
}
// Method to deposit money
public void deposit () {
long amount;
System.out.println("Enter the amopunt of money you want to deposit");
amount = sc.nextLong();
Balance = Balance+amount;
}
// Method to withdraw amount
public void withdraw() {
long amount;
System.out.println("Enter the amount you want to withdraw: ");
amount = sc.nextLong();
if (Balance >= amount) {
Balance = Balance - amount;
System.out.println("Balance after withdrawl: " + Balance);
} else {
System.out.println("your balance is insufficient" + "transaction is failed");
}
}
// method to searcth an account number
public boolean search(String Acc_no) {
if (Acc_no.equals(Acc_no)) {
showAccount();
return true;
} else {
return false;
}
}
}
public class BankAccount {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// create initial accounts
System.out.print("No. of customers you want to input");
int n = sc.nextInt();
BankDetails C[] = new BankDetails[n];
for (int i = 0; i < C.length; i++) {
C[i] = new BankDetails();
C[i].openAccount();
}
// loop runs until 5 is pressed
int pr;
do {
System.out.println(
"1. Display all account details\n 2. search account number\n 3. Deposit the amount\n3. Deposit the amount\n 4. withdraw the amount");
System.out.println("Enter your choice");
pr = sc.nextInt();
switch (pr) {
case 1:
for (int i = 0; i < C.length; i++) {
C[i].showAccount();
}
break;
case 2:
System.out.print("Enter Account No. you want ton search");
String Acc_no = sc.next();
boolean found = false;
for (int i = 0; i < C.length; i++) {
found = C[i]. search(Acc_no);
if (found) {
break;
}
if(!found) {
System.out.println("search failed! Account doesn't exist");
}
break;
}
case 3:
System.out.print("Enter Account No : ");
Acc_no = sc.next();
found = false;
for (int i = 0; i < C.length; i++) {
found = C[i].search(Acc_no);
if (found) {
C[i]. deposit();
break;
}
if (!found) {
System.out.println("search failed! account doesn't exist");
}
break;
}
case 4:
System.out.print("Enter Account No.: ");
Acc_no = sc.next();
found = false;
for (int i = 0; i < C.length; i++) {
found = C[i].search(Acc_no);
if (found) {
C[i].withdraw();
break;
}
if (!found) {
System.out.println("search failed! Account doesn't exist");
}
break;
}
case 5:
System.out.println("See you soon...");
break;
default: System.out.println("a");
}
//default: System.out.println("a");
}
while (pr != 5) ;
}
}