L
leonte54
Guest
Salve,
mi sto esercitando con le classi e avrei bisogno di un aiuto per risolvere un problema che da qualche giorno mi blocca.
Vorrei passare alla funzione statica motoDaControllare l'array per estrapolare le moto che dall'ultimo controllo hanno percorso + di 1000km.
Grazie per l'aiuto
mi sto esercitando con le classi e avrei bisogno di un aiuto per risolvere un problema che da qualche giorno mi blocca.
Vorrei passare alla funzione statica motoDaControllare l'array per estrapolare le moto che dall'ultimo controllo hanno percorso + di 1000km.
Grazie per l'aiuto
PHP:
<?php
class Motociclo{
public $moto;
public $targa;
public $tot_km;
public $km_uc;
public function __construct($moto, $targa, $tot_km, $km_uc){
$this->moto = $moto;
$this->targa = $targa;
$this->tot_km = $tot_km;
$this->km_uc = $km_uc;
}
public function kmUltimoControllo(){
return $this->tot_km - $this->km_uc;
}
//Verifica delle moto che hanno percorso + di $k Kmetri dall'ultimo controllo
public static function motoDaControllare($v, $k) {
if(count($v)==0)
return "array vuoto<br>";
else{
$moto=$v[0];
foreach($v as $n){
if($moto->kmUltimoControllo($k) > self::motoDaControllare($a, $k));
return $moto = $n;
}}}}
$m1 = new Motociclo("Honda", "A", 5000, 4500);
$m2 = new Motociclo("Guzzi", "B", 10000, 8000);
echo("-- Ultimo controllo:<br>");
controlloKM($m1->kmUltimoControllo(), 500);
controlloKM($m2->kmUltimoControllo(), 2000);
echo("-- Moto da controllare:<br>");
$arr = array($m1,$m2);
$arr1 = Motociclo::motoDaControllare($arr, 1000);
$res = "";
foreach ($arr1 as $x){
$res.=$x->targa.",";
}
controllo($res, "Honda,Guzzi");
function controlloKM($arr, $arr1) {
echo($arr." (Risultato: ".$arr1.") ".($arr==$arr1?"OK":"NO")); echo"<br>";
}
function controllo($arr, $arr1) {
echo($arr." (Risultato: ".$arr1.") ".($arr==$arr1?"OK":"NO")); echo"<br>";
} ?>