Skip to content

Commit efd7f12

Browse files
committed
Merge branch 'main' into Daeun
2 parents 1be0fe6 + e5acbfe commit efd7f12

File tree

5 files changed

+349
-0
lines changed

5 files changed

+349
-0
lines changed

반재형/Account.java

Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,116 @@
1+
package chap00_practice;
2+
3+
import java.util.Scanner;
4+
5+
public class Account {
6+
public int balance;
7+
public String accountNum;
8+
public String accountName;
9+
public int initDeposit;
10+
11+
public Account() {
12+
13+
}
14+
15+
public Account(String accountNum, String accountName, int initDeposit) {
16+
this.accountNum = accountNum;
17+
this.accountName = accountName;
18+
this.balance = initDeposit;
19+
}
20+
21+
public int getBalance() {
22+
return balance;
23+
}
24+
25+
public String getAccountNum() {
26+
return accountNum;
27+
}
28+
29+
public String getAccountName() {
30+
return accountName;
31+
}
32+
33+
public int getInitDeposit() {
34+
return initDeposit;
35+
}
36+
37+
public void createAccount(Account[] accounts, int count) {
38+
Scanner sc = new Scanner(System.in);
39+
System.out.println("-------------");
40+
System.out.println("계좌생성");
41+
System.out.println("-------------");
42+
43+
System.out.println("계좌번호");
44+
accountNum = sc.nextLine();
45+
System.out.println("계좌주");
46+
accountName = sc.nextLine();
47+
System.out.println("초기 입금액");
48+
initDeposit = balance + sc.nextInt();
49+
50+
if(accountNum != null && accountName != null && initDeposit > 0) {
51+
accounts[count] = new Account(accountNum, accountName, initDeposit);
52+
System.out.println("결과 : 계좌가 생성되었습니다.");
53+
}
54+
}
55+
56+
public void accountList(Account[] accounts, int count) {
57+
System.out.println("계좌목록");
58+
System.out.println("-------------");
59+
60+
for(int i = 0; i < count; i++) {
61+
System.out.println(accounts[i].getAccountNum() + " "
62+
+ accounts[i].getAccountName() + " " + accounts[i].getBalance());
63+
}
64+
System.out.println(count);
65+
}
66+
67+
public void deposit(Account[] accounts, int count) {
68+
Scanner sc = new Scanner(System.in);
69+
System.out.println("예금");
70+
System.out.println("-------------");
71+
System.out.println("계좌번호: ");
72+
String accountNum = sc.nextLine();
73+
System.out.println("예금액 : ");
74+
int money = sc.nextInt();
75+
76+
for(int i = 0; i < count; i++) {
77+
if(accountNum.equals(accounts[i].getAccountNum())) {
78+
if(money > 0) {
79+
accounts[i].balance += money;
80+
return;
81+
} else {
82+
System.out.println("입금액은 0보다 커야합니다.");
83+
return;
84+
}
85+
}
86+
}
87+
System.out.println("계좌를 찾지 못했습니다.");
88+
}
89+
90+
public void withdraw(Account[] accounts, int count) {
91+
Scanner sc = new Scanner(System.in);
92+
System.out.println("출금");
93+
System.out.println("-------------");
94+
System.out.println("계좌번호: ");
95+
String num = sc.nextLine();
96+
System.out.println("출금액 : ");
97+
int money = sc.nextInt();
98+
99+
for(int i = 0; i < count; i++) {
100+
if(num.equals(accounts[i].getAccountNum())) {
101+
if(money > 0 && money <= accounts[i].getBalance()) {
102+
accounts[i].balance -= money;
103+
System.out.println("결과 : 출금이 성공되었습니다.");
104+
return;
105+
} else if (money <= 0) {
106+
System.out.println("출금액은 0보다 커야합니다.");
107+
return;
108+
} else {
109+
System.out.println("잔액이 부족합니다.");
110+
return;
111+
}
112+
}
113+
}
114+
System.out.println("계좌를 찾지 못했습니다.");
115+
}
116+
}

반재형/BankApplication.java

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
package chap00_practice;
2+
3+
import java.util.Scanner;
4+
5+
public class BankApplication {
6+
7+
public static void main(String[] args) {
8+
9+
Scanner sc = new Scanner(System.in);
10+
Account account = new Account();
11+
Account[] accountArr = new Account[100];
12+
int count = 0;
13+
while(true) {
14+
System.out.println("--------------------------------------");
15+
System.out.println("1.계좌생성|2.계좌목록|3.예금|4.출금|5.종료");
16+
System.out.println("--------------------------------------");
17+
System.out.print("선택>");
18+
int num = sc.nextInt();
19+
if(num == 1) {
20+
account.createAccount(accountArr, count);
21+
count++;
22+
}
23+
else if(num == 2) {
24+
account.accountList(accountArr, count);
25+
}
26+
else if(num == 3) {
27+
account.deposit(accountArr, count);
28+
}
29+
else if(num == 4) {
30+
account.withdraw(accountArr, count);
31+
}
32+
else if(num == 5) {
33+
System.out.println("프로그램을 종료합니다.");
34+
break;
35+
}
36+
else {
37+
System.out.println("잘 못 입력하셨습니다.");
38+
}
39+
}
40+
sc.close();
41+
}
42+
43+
}

송주헌/Account.java

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
package team4_study;
2+
3+
public class Account {
4+
private String ano;
5+
private String owner;
6+
private int balance;
7+
8+
public Account(String ano, String owner, int balance) {
9+
this.ano = ano;
10+
this.owner = owner;
11+
this.balance = balance;
12+
}
13+
14+
public String getAno() {
15+
return ano;
16+
}
17+
18+
public void setAno(String ano) {
19+
this.ano = ano;
20+
}
21+
22+
public String getOwner() {
23+
return owner;
24+
}
25+
26+
public void setOwner(String owner) {
27+
this.owner = owner;
28+
}
29+
30+
public int getBalance() {
31+
return balance;
32+
}
33+
34+
public void setBalance(int balance) {
35+
this.balance = balance;
36+
}
37+
}

송주헌/BankApplication.java

Lines changed: 152 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,152 @@
1+
package team4_study;
2+
3+
import java.util.Scanner;
4+
5+
public class BankApplication {
6+
7+
private static Account[] accountArray = new Account[100];
8+
//static으로 선언한 이유는 main에서 객체를 생성하고, 사용하기 위해서
9+
private static Scanner sc = new Scanner(System.in);
10+
public static void main(String[] args) {
11+
// TODO Auto-generated method stub
12+
13+
14+
//사용자의 입력을 읽기 위해 Scanner 추가
15+
// local 변수 boolean 선언
16+
boolean run = true;
17+
while(run) {
18+
System.out.println("------------------------------------");
19+
System.out.println("1.계좌생성|2.계좌목록|3.예금|4.출금|5.종료");
20+
System.out.println("------------------------------------");
21+
System.out.print("선택> ");
22+
23+
int selectNo = sc.nextInt();
24+
25+
if(selectNo == 1) {
26+
createAccount();
27+
//메인 메소드에서 호출했기 때문에 static 메소드여야 함.
28+
} else if(selectNo == 2) {
29+
accountList();
30+
} else if(selectNo == 3) {
31+
Deposit();
32+
} else if(selectNo == 4) {
33+
withdraw();
34+
} else if(selectNo == 5) {
35+
run = false;
36+
}
37+
}
38+
39+
System.out.println("프로그램 종료");
40+
41+
}
42+
// 매개변수에 스캐너 넣는방법 찾아보기
43+
private static void withdraw() {
44+
// TODO Auto-generated method stub
45+
System.out.println("-------------");
46+
System.out.println("출금");
47+
System.out.println("-------------");
48+
System.out.println("계좌번호");
49+
String aNum = sc.next();
50+
System.out.println("출금액");
51+
int money = sc.nextInt();
52+
53+
Account account = findAccount(aNum);
54+
if(account == null) {
55+
System.out.println("결과: 계좌가 없습니다.");
56+
return;
57+
}
58+
account.setBalance(account.getBalance() - money);
59+
System.out.println("결과: 출금되었습니다.");
60+
}
61+
62+
private static void Deposit() {
63+
// TODO Auto-generated method stub
64+
System.out.println("-------------");
65+
System.out.println("예금");
66+
System.out.println("-------------");
67+
System.out.println("계좌번호");
68+
String aNum = sc.next();
69+
System.out.println("예금액");
70+
int money = sc.nextInt();
71+
72+
Account account = findAccount(aNum);
73+
if(account == null) {
74+
System.out.println("결과: 계좌가 없습니다.");
75+
return;
76+
}
77+
account.setBalance(account.getBalance() + money);
78+
System.out.println("결과: 입금되었습니다.");
79+
80+
81+
}
82+
83+
private static Account findAccount(String ano) {
84+
Account account = null;
85+
for(int i = 0; i < accountArray.length; i++) {
86+
if(accountArray[i] != null) {
87+
String aNum = accountArray[i].getAno();
88+
if(aNum.equals(ano)) {
89+
// aNum이 ano와 같은지 검사
90+
account = accountArray[i];
91+
// accountArray 배열의 i번째 값과 일치할 때
92+
break;
93+
}
94+
}
95+
}
96+
return account;
97+
}
98+
99+
100+
101+
private static void accountList() {
102+
// TODO Auto-generated method stub
103+
System.out.println("-------------");
104+
System.out.println("계좌목록");
105+
System.out.println("-------------");
106+
107+
for(int i = 0; i < accountArray.length; i++) {
108+
Account account = accountArray[i];
109+
if(account != null) {
110+
System.out.print(account.getAno());
111+
System.out.print(" ");
112+
System.out.print(account.getOwner());
113+
System.out.print(" ");
114+
System.out.print(account.getBalance());
115+
System.out.println();
116+
117+
}
118+
}
119+
}
120+
121+
private static void createAccount() {
122+
// TODO Auto-generated method stub
123+
124+
125+
System.out.println("-------------");
126+
System.out.println("계좌생성");
127+
System.out.println("-------------");
128+
129+
System.out.print("계좌번호: ");
130+
String ano = sc.next();
131+
132+
System.out.print("계좌주: ");
133+
String owner = sc.next();
134+
135+
System.out.print("초기입금액: ");
136+
int balance = sc.nextInt();
137+
138+
Account newAccount = new Account(ano, owner, balance);
139+
// 배열의 내용이 null인 곳에 저장
140+
141+
for(int i = 0; i < accountArray.length; i++) {
142+
if(accountArray[i] == null) {
143+
accountArray[i] = newAccount;
144+
System.out.println("결과: 계좌가 생성되었습니다.");
145+
break;
146+
}
147+
}
148+
149+
150+
}
151+
152+
}

송주헌/폴더 생성용.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
test4

0 commit comments

Comments
 (0)