class Buyer {
var $money = 1000,
$cart = array(), // 구입한 제품을 저장하기 위한 배열
$i = 0; // Product배열 cart에 사용될 index
function buy(Product $p) {
if ($p->price > $this->money) {
println('잔액이 부족하여 ' . $p . '를 살수 없습니댜.');
return;
}
$this->money -= $p->price;
$this->add($p);
/*
가진 돈과 물건의 가격을 비교해서 가진 돈이 적으며 종료한다.
가진 돈이 충분하면, 제품의 가격을 가진 돈에서 빼고
장바구니에 구입한 물건을 담는다. (add메서드 호출)
*/
}
function add(Product $p) {
$this->cart[$this->i] = $p;
$this->i++;
/*
물건을 장바구니(cart)에 저장한다. 그리고 i의 값을 1 증가시킨다.
*/
} // add(Product p)
function summary() {
$itemList = '';
$sum = 0;
for ($i=0; $i<count($this->cart); $i++) {
$this->itemList .= $this->cart[$i] . ',';
$this->sum += $this->cart[$i]->price;
}
println('구입한 물건 : ' . $this->itemList);
println('사용한 금액 : ' . $this->sum);
println('남은 금액 : ' . $this->money);
/*
장바구니에 담긴 물건들의 목록을 만들어 출력한다.
장바구니에 담긴 물건들의 가격을 모두 더해서 출력한다.
물건을 사고 남은 금액(money)를 출력한다.
*/
} // summary()
}
class Product {
var $price; // 제품의 가격
function __construct($price) {
$this->price = $price;
}
}
class Tv extends Product {
function __construct() {
Parent::__construct(100);
}
public function __toString() {
return 'Tv';
}
}
class Computer extends Product {
function __construct() {
Parent::__construct(200);
}
public function __toString() {
return 'Computer';
}
}
class Audio extends Product {
function __construct() {
Parent::__construct(50); }
public function __toString() {
return 'Audio';
}
}
$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();
// 줄바꿈 출력
function println($arg) {
echo $arg.'<br />';
}
/* 출력
잔액이 부족하여 Computer를 살수 없습니댜.
구입한 물건 : Tv,Computer,Tv,Audio,Computer,Computer,사용한 금액 : 850
남은 금액 : 150
*/
게시판 목록
프로그램
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 7030 | 11년 전 | 1402 | ||
| 7029 |
|
11년 전 | 3238 | |
| 7028 |
|
11년 전 | 1133 | |
| 7027 | 11년 전 | 1001 | ||
| 7026 | 11년 전 | 2079 | ||
| 7025 |
어려워요잉
|
11년 전 | 2735 | |
| 7024 | 11년 전 | 2101 | ||
| 7023 | 11년 전 | 3130 | ||
| 7022 |
Shhhh
|
11년 전 | 1523 | |
| 7021 |
|
11년 전 | 3267 | |
| 7020 | 11년 전 | 785 | ||
| 7019 |
막돼먹은영애
|
11년 전 | 1079 | |
| 7018 | 11년 전 | 1953 | ||
| 7017 | 11년 전 | 2311 | ||
| 7016 | 11년 전 | 1018 | ||
| 7015 | 11년 전 | 2824 | ||
| 7014 | 11년 전 | 3027 | ||
| 7013 | 11년 전 | 1516 | ||
| 7012 |
|
11년 전 | 2190 | |
| 7011 | 11년 전 | 1048 | ||
| 7010 | 11년 전 | 1400 | ||
| 7009 |
|
11년 전 | 1070 | |
| 7008 | 11년 전 | 2261 | ||
| 7007 | 11년 전 | 2177 | ||
| 7006 |
|
11년 전 | 1166 | |
| 7005 | 11년 전 | 5302 | ||
| 7004 | 11년 전 | 2352 | ||
| 7003 | 11년 전 | 3063 | ||
| 7002 | 11년 전 | 1913 | ||
| 7001 | 11년 전 | 948 | ||
| 7000 | 11년 전 | 2033 | ||
| 6999 |
|
11년 전 | 2157 | |
| 6998 | 11년 전 | 1876 | ||
| 6997 |
네이비칼라
|
11년 전 | 1489 | |
| 6996 | 11년 전 | 948 | ||
| 6995 |
|
11년 전 | 1847 | |
| 6994 | 11년 전 | 2572 | ||
| 6993 |
kimsdesign
|
11년 전 | 1295 | |
| 6992 |
|
11년 전 | 2772 | |
| 6991 | 11년 전 | 1716 | ||
| 6990 | 11년 전 | 4470 | ||
| 6989 | 11년 전 | 1848 | ||
| 6988 |
네이비컬러
|
11년 전 | 2504 | |
| 6987 | 11년 전 | 3718 | ||
| 6986 |
잘살아보자
|
11년 전 | 1591 | |
| 6985 |
잘살아보자
|
11년 전 | 2464 | |
| 6984 | 11년 전 | 816 | ||
| 6983 |
천재조상훈
|
11년 전 | 1849 | |
| 6982 |
천재조상훈
|
11년 전 | 4481 | |
| 6981 |
천재조상훈
|
11년 전 | 1605 | |
| 6980 |
|
11년 전 | 1864 | |
| 6979 |
|
11년 전 | 744 | |
| 6978 |
잘살아보자
|
11년 전 | 1135 | |
| 6977 |
잘살아보자
|
11년 전 | 1464 | |
| 6976 |
잘살아보자
|
11년 전 | 1567 | |
| 6975 |
천재조상훈
|
11년 전 | 1475 | |
| 6974 |
잘살아보자
|
11년 전 | 2229 | |
| 6973 |
잘살아보자
|
11년 전 | 1153 | |
| 6972 |
잘살아보자
|
11년 전 | 3065 | |
| 6971 |
잘살아보자
|
11년 전 | 3271 | |
| 6970 |
잘살아보자
|
11년 전 | 1830 | |
| 6969 |
잘살아보자
|
11년 전 | 4754 | |
| 6968 | 11년 전 | 9890 | ||
| 6967 |
|
11년 전 | 2627 | |
| 6966 |
|
11년 전 | 1109 | |
| 6965 | 11년 전 | 3255 | ||
| 6964 | 11년 전 | 2573 | ||
| 6963 | 11년 전 | 2100 | ||
| 6962 |
star3840
|
11년 전 | 1011 | |
| 6961 | 11년 전 | 4238 | ||
| 6960 |
|
11년 전 | 704 | |
| 6959 | 11년 전 | 1230 | ||
| 6958 |
|
11년 전 | 1662 | |
| 6957 | 11년 전 | 1886 | ||
| 6956 |
잘살아보자
|
11년 전 | 1849 | |
| 6955 | 11년 전 | 4620 | ||
| 6954 | 11년 전 | 1620 | ||
| 6953 |
잘살아보자
|
11년 전 | 856 | |
| 6952 |
잘살아보자
|
11년 전 | 2039 | |
| 6951 | 11년 전 | 1603 | ||
| 6950 | 11년 전 | 2605 | ||
| 6949 |
잘살아보자
|
11년 전 | 880 | |
| 6948 | 11년 전 | 1551 | ||
| 6947 | 11년 전 | 1460 | ||
| 6946 | 11년 전 | 1598 | ||
| 6945 | 11년 전 | 1226 | ||
| 6944 | 11년 전 | 1181 | ||
| 6943 | 11년 전 | 1226 | ||
| 6942 | 11년 전 | 1568 | ||
| 6941 | 11년 전 | 1653 | ||
| 6940 | 11년 전 | 1747 | ||
| 6939 | 11년 전 | 1660 | ||
| 6938 | 11년 전 | 1936 | ||
| 6937 | 11년 전 | 1145 | ||
| 6936 | 11년 전 | 1345 | ||
| 6935 | 11년 전 | 1295 | ||
| 6934 | 11년 전 | 1463 | ||
| 6933 | 11년 전 | 1968 | ||
| 6932 | 11년 전 | 1529 | ||
| 6931 | 11년 전 | 1532 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기