Dzień dobry, otrzymałem zadanie w którym należy utworzyć klasę auto, w której będą metody - przyspiesz (zwiększającą prędkość o 5), - zwolnij (zmniejszającą prędkość o 5). Prędkość nie powinna mieć wartości ujemnej.
Następnie tworzyć klasę potomną: osobowka i zdefiniować metody: wsiadanie (+1 pasażer), wysiadanie (-1 pasażer), zdefiniować pole max_liczba_pasazerow
Aby mógł wysiąść ostatni pasażer (kierowca) samochód musi stać (prędkość = 0). Liczba pasażerów w osobowce nie może przekroczyć wartości max.
Utworzyć klasę potomną (od auto) - cieżarówka. Zdefiniować metody: zaladuj (+10 ladunku), rozladuj (-10 ladunku), zdefiniować pole - max_ladunek
Zaladunek i rozladunek są możliwe jedynie gdy ciezarówka się nie porusza. Wartość ladunku nie może przekroczyć max.
Zadanie wydaje się dość proste natomiast wyskakuje mi bląd w lini 29, czyli " if ($this->liczba_pasazerow > max_liczba_pasazerow)". I teraz moje pytanie jest to bląd związany ze składnią czy może potrzebuje tutaj utworzyć osobnę pole dla tej metody?
Proszę jedynie o wskazówki, nie o rozwiązanie zadania.
Z góry dziękuje za pomoc.
<?php
class auto
{
public $predkosc;
public $ladunek;
public $liczba_pasazerow;
function przyspiesz()
{
return $this -> predkosc + 5;
}
function zwolnij()
{
if($this -> predkosc > 0)
$this->predkosc-5;
}
} //koniec klasy auto
class osobowka extends auto
{
public $max_liczba_pasazerow=4;
function wsiadanie()
{
if ($this->liczba_pasazerow > max_liczba_pasazerow)
echo "Brak dostępnych miejsc";
else
$this->liczba_pasazerow+1;
}
function wysiadanie()
{
if ($this->predkosc == 0 && liczba_pasazerow > 0)
$this-> liczba_pasazerow-1;
}
}//;koniec klasy potomnej osobowka
class ciezarowka extends auto
{
public $max_ladunek = 3500; //w kg
function zaladuj()
{
if ($this-> predkosc==0 && ladunek < max_ladunek)
$this-> ladunek+10;
}
function rozladuj()
{
if ($this predkosc ==0 && ladunek > 9)
$this->ladunek-10;
}
}//koniec klasy potomnej ciezarowka
$osobowka = new osobowka();
$ciezarowka = new ciezarowka();
$osobowka -> przyspiesz();
$osobowka -> zwolnij();
$osobowka -> wsiadanie();
$osobowka -> przyspiesz();
$osobowka -> zwolnij();
$osobowka -> wysiadanie();
?>