/*package ch07Exer;


class Exercise7_19 {

public static void main(String[] args) {


Buyer b = new Buyer();

b.buy(new Tv());

b.buy(new Computer());

b.buy(new Tv());

b.buy(new Audio());

b.buy(new Computer());

b.buy(new Computer());

b.buy(new Computer());


b.summary();


}

}


class Buyer {

int money = 1000;

Product[] cart = new Product[3]; // 구입한 제품을 저장하기 위한 배열

static int i = 0; // Product배열 cart에 사용될index


void buy(Product p) {

if (money < p.price) {

System.out.println("잔액이 부족하여 " + p + "를 살 수 없습니다.");

return;

}

money -= p.price;

add(p);

}


void add(Product p) {

// 1.1 i의 값이 장바구니의 크기보다 같거나 크면

// 1.1.1 기존의 장바구니보다 2배 큰 새로운 배열을 생성한다.

// 1.1.2 기존의 장바구니의 내용을 새로운 배열에 복사한다.

// 1.1.3 새로운 장바구니와 기존의 장바구니를 바꾼다.

// 1.2 물건을 장바구니(cart)에 저장한다. 그리고 i의 값을 1 증가시킨다.


if (i >= cart.length) {

Product[] tmp = new Product[cart.length * 2];

System.arraycopy(cart, 0, tmp, 0, cart.length);

cart = tmp;

cart[i++] = p;

}

} // add(Product p)


void summary() {

// 1.1장바구니에 담긴 물건들의 목록을 만들어 출력

// 1.2 장바구니에 담긴 물건들의 가격을 모두 더해서 출력한다.

// 1.3 물건을 사고 남은 금액(money)를 출력한다.


// itemList += cart[i] + ",";


for (int i = 0; i < cart.length; i++) {

if (i == 0) {

System.out.print(cart[i]);

} else {

System.out.print(", " + cart[i]);

}

System.out.println();

}


String itemList = "";

int sum = 0;


for (int i = 0; i < cart.length; i++) {

if (cart[i] == null)

break;


itemList += cart[i] + ",";

sum += cart[i].price;

}

System.out.println(itemList);


System.out.println("물건의 총 금액" + sum);


System.out.println("남은금액: " + money);

for(int i = 0; i < cart.length; i++) {

System.out.println(cart[i]);

}

}

}


class Product {

int price; // 제품의 가격


Product(int price) {

this.price = price;

}

}


class Tv extends Product {

Tv() {

super(100);

}


public String toString() {

return "Tv";

}

}


class Computer extends Product {

Computer() {

super(200);

}


public String toString() {

return "Computer";

}

}


class Audio extends Product {

Audio() {

super(50);

}


public String toString() {

return "Audio";

}

}

*/

'IT 잡다 > sorcecode' 카테고리의 다른 글

magicSquare02-마방진 소스  (0) 2015.04.30
MagicSquare03  (0) 2015.04.19
7장 연습문제 19 re  (0) 2015.04.07
wordScramble2  (0) 2015.04.06
BaseballGame 소스코드  (0) 2015.04.03
Posted by 파란개발자
,