Tein tällaisen:
class MuutaLuku
{
var $luku;
public function tuplaa($luku)
{
echo "Tuplataan..";
$luku *= 2;
echo $luku;
}
public function jaaLuku($luku)
{
echo "Jaetaan kolmella..";
$luku /= 3;
echo $luku;
}
}
$luku = new MuutaLuku(5);
$luku->tuplaa(5);
$luku->jaaLuku(5);
?>
Ongelmana on siis, että tuossa jaaLuku vaiheessa se jakaa tuon 5:sen kolmella, vaikka pitäisi haluaisin, että jakaa tuon kerrotun luvun kolmella...
Mitä siis tuohon jaaLuku() pitäisi sulkujen sisälle laittaa, jotta tulos olisi oikea? Muutamia vaihtoehtoja olenkin jo kokeillut...
Jos siis joku tietäisi toimivan systeemin =)
class MuutaLuku
{
var $luku;
public function tuplaa($luku)
{
echo "Tuplataan..";
$luku *= 2;
echo $luku;
}
public function jaaLuku($luku)
{
echo "Jaetaan kolmella..";
$luku /= 3;
echo $luku;
}
}
$luku = new MuutaLuku(5);
$luku->tuplaa(5);
$luku->jaaLuku(5);
?>
Ongelmana on siis, että tuossa jaaLuku vaiheessa se jakaa tuon 5:sen kolmella, vaikka pitäisi haluaisin, että jakaa tuon kerrotun luvun kolmella...
Mitä siis tuohon jaaLuku() pitäisi sulkujen sisälle laittaa, jotta tulos olisi oikea? Muutamia vaihtoehtoja olenkin jo kokeillut...
Jos siis joku tietäisi toimivan systeemin =)
Vastaukset 4
Vanhimmat
Itsehän käsket funktion jaaLuku(luku) jakaa luvun viisi etkä itse lukua... Laita mielummin
public function jaaLuku(){
echo "Jaetaan kolmella..";
$this -> luku /= 3;
$this -> luku;
}
Pitäisi varmaan tuon funktion jaaLuku() saada kuitenkin parametrina tuo arvo 10?
Tuo ei meinaan tulosta mitään. Jos kuitenkin laitan echolla tuon $this -> luku; niin tulostuu arvo 0.
Sun pitää tuonne funktioon tuplaa tehdä pieni korjaus:
$luku *= 2; tilalle $this->luku = $luku *= 2;
Tuon lisäyksen jälkeen tuon nimerkin teuro antama ehdotus toimii.