Проверьте пожалуйста задание:
1. Создайте базовый класс продукта.
2. Создайте три любых типа продукта (класса), в разных категориях;
3. Все продукты, кроме одного, имеют 10 процентную скидку и их цена должна выводиться с ней;
4. Один тип продукта - имеет скидку только в том случае, если его вес больше 10 килограмм;
Используйте примеси, интерфейсы или абстрактные классы в решении задачи.
я не знаю, как правильно использовать абстрактные классы и интерфейсы.
PHP:
скопировать код в буфер обмена
<?PHP header('Content-Type: text/html; charset:utf-8'); abstract class Product{ public function __construct($title, $price, $weight){ $this->title = $title; $this->price = $price; $this->weight = $weight; } } class Planshet extends Product{ public $discount = 10; public function getPrice(){ if ($this->discount) { return round($this->price - ($this->price * $this->discount/100 )); } else { return $this->price; } } } class Potato extends Planshet{ public function getPrice(){ if ($this->weight > 10000) { return round($this->price - ($this->price * $this->discount/100 )); } else { return $this->price; } } } class Jacket extends Product{} $planshet = new Planshet('Планшет', 2000, 400); $potato = new Potato('Картошка', 700, 4000); $potato2 = new Potato('Ещё картошка', 700, 12000); $jacket = new Jacket('Куртка', 6300, 2000); ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> </head> <body> <?PHP echo $planshet->title . ' цена без скидки ' . $planshet->price . ', со скидкой ' . $planshet->getPrice(); echo '<br>'; echo $potato->title . ' цена без скидки ' . $potato->price . ', со скидкой ' . $potato->getPrice(); echo '<br>'; echo $potato2->title . ' цена без скидки ' . $potato2->price . ', со скидкой ' . $potato2->getPrice(); echo '<br>'; echo $jacket->title. ' цена ' . $jacket->price; ?> </body> </html>
|