<?php
class Iron
{
// Свойства
public $powerSupply; // Питание
public $toggle; // Тумблер
public $water; // Вода
public $temp = 24; // Температура
// Методы
public function __construct($powerSupply, $water)
{
$this->powerSupply = $powerSupply;
$this->water = $water;
}
public function turnOn() // Включить
{
if ($this->powerSupply) {
if (!$this->toggle) {
$this->toggle = 1;
echo "Утюг включён\n\n";
$this->warmUp();
} else {
echo "Утюг уже был включён\n\n";
}
} else {
echo "Отсутствует питание\n\n";
}
}
public function warmUp() // Разогреть
{
if ($this->toggle) {
if ($this->temp <= 60) {
echo "Начался разогрев:\n";
echo "{$this->temp} °C\n...\n";
while ($this->temp < 90) {
$this->temp++;
}
echo "{$this->temp} °C\n";
echo "Разогрев завершен, можно гладить\n\n";
} else {
echo "Разогрев не требуется\n\n";
}
} else {
echo "Утюг не включен\n\n";
}
}
public function iron($water = 0) // Гладить
{
// Добавляем воды
$this->water += $water;
}
if ($this->toggle) {
if ($this->water >= 100) {
if ($this->temp <= 60) {
echo "Требуется разогрев\n\n";
$this->warmUp();
}
echo "Гладим белье\n...\n";
$this->water -= 100;
$this->temp -= 10;
echo "Белье поглажено\n\n";
} else {
echo "Недостаточно воды\n\n";
}
} else {
echo "Утюг не включен\n\n";
}
}
public function standIdle() // Ожидать
{
echo "Утюг в режиме ожидания\n\n";
// Со временем остывает
while ($this->temp >= 60) {
$this->temp--;
}
$this->warmUp();
}
public function switchOff() { // Выключить
if ($this->toggle) {
$this->toggle = 0;
$this->temp = 24;
echo "Утюг выключен\n\n";
} else {
echo "Утюг не был включен\n\n";
}
}
}
$iron = new Iron(1, 300);
$iron->turnOn();
$iron->iron();
$iron->iron();
$iron->standIdle();
$iron->iron();
$iron->iron(100);
$iron->switchOff();