Diferencia entre revisiones de «Usuario:ManuelRomero/ProgramacionWeb/Distancia2018/Objetos/ejercicios»

De WikiEducator
Saltar a: navegación, buscar
(Página creada con «{{Usuario:ManuelRomero/ProgramacionWeb/Distancia2018/Objetos/nav}}»)
 
 
Línea 1: Línea 1:
 
{{Usuario:ManuelRomero/ProgramacionWeb/Distancia2018/Objetos/nav}}
 
{{Usuario:ManuelRomero/ProgramacionWeb/Distancia2018/Objetos/nav}}
 +
<div class="slide">
 +
{{MRM_Actividad|
 +
;Empleado
 +
*Confeccionar una clase Empleado, definir como atributos su nombre y sueldo.
 +
*Definir un método inicializarlo para  que lleguen como dato el nombre y sueldo.
 +
*Plantear un segundo método que imprima el nombre y un mensaje si debe o no pagar impuestos (si el sueldo supera a 3000 paga impuestos)
 +
}}
 +
 +
<source lang=php>
 +
<html>
 +
<head>
 +
<title>Pruebas</title>
 +
</head>
 +
<body>
 +
<?php
 +
class Empleado {
 +
  private $nombre;
 +
  private $sueldo;
 +
 
 +
  public function asigna($nom,$sue)
 +
  {
 +
    $this->nombre=$nom;
 +
    $this->sueldo=$sue;
 +
  }
 +
  public function pagaImpuestos()
 +
  {
 +
    echo $this->nombre;
 +
    echo '-';
 +
    if ($this->sueldo>3000)
 +
      echo 'Debe pagar impuestos';
 +
    else
 +
      echo 'No paga impuestos';
 +
    echo '<br>';
 +
  }
 +
}
 +
 +
$empleado1=new Empleado();
 +
$empleado1->asigna('Luis',2500);
 +
$empleado1->pagaImpuestos();
 +
$empleado1=new Empleado();
 +
$empleado1->asigna('Carla',4300);
 +
$empleado1->pagaImpuestos();
 +
?>
 +
</body>
 +
</html>
 +
</source>
 +
 +
{{MRM_Actividad|
 +
Confeccionar una clase Menu. Permitir añadir la cantidad de opciones que necesitemos. Mostrar el menú en forma horizontal o vertical (según que método llamemos)
 +
}}
 +
<source lang = php>
 +
<html>
 +
<head>
 +
<title>Pruebas</title>
 +
</head>
 +
<body>
 +
<?php
 +
class Menu {
 +
  private $enlaces=array();
 +
  private $titulos=array();
 +
  public function cargarOpcion($en,$tit)
 +
  {
 +
    $this->enlaces[]=$en;
 +
    $this->titulos[]=$tit;
 +
  }
 +
  public function mostrarHorizontal()
 +
  {
 +
    for($f=0;$f<count($this->enlaces);$f++)
 +
    {
 +
      echo '<a href="'.$this->enlaces[$f].'">'.$this->titulos[$f].'</a>';
 +
      echo "-";
 +
    }
 +
  }
 +
  public function mostrarVertical()
 +
  {
 +
    for($f=0;$f<count($this->enlaces);$f++)
 +
    {
 +
      echo '<a href="'.$this->enlaces[$f].'">'.$this->titulos[$f].'</a>';
 +
      echo "<br>";
 +
    }
 +
  }
 +
}
 +
 +
$menu1=new Menu();
 +
$menu1->cargarOpcion('http://www.google.com','Google');
 +
$menu1->cargarOpcion('http://www.yahoo.com','Yhahoo');
 +
$menu1->cargarOpcion('http://www.msn.com','MSN');
 +
$menu1->mostrarVertical();
 +
?>
 +
</body>
 +
</html>
 +
</source>
 +
 +
{{MRM_Actividad|
 +
Construir una clase llamado racional que podamos inicializar con un string del tipo por ejemplo "8/5"
 +
}}
 +
<source lang=php>
 +
<?php
 +
class racional {
 +
    //put your code here
 +
    private $numRacional;
 +
    public function __construct($cadena) {
 +
        $this->numRacional = $cadena;
 +
    }
 +
    public function __toString()(){
 +
        return $this->numRacional;
 +
    }
 +
}
 +
 +
$a=new racional("8/5");
 +
$b=new racional("6/4");
 +
echo "<br>valor de \$a: $a <br />";
 +
echo "<br>valor de \$b: $b";
 +
?>
 +
</source>
 +
 +
 +
 +
{{MRM_Actividad|
 +
Creamos la clase factura
 +
*Constantes IVA
 +
*Atributos Importe Base, fecha, impuestos, Importe bruto, estado (pagada o pendiente)
 +
*Métodos: imprime }}
 +
{{MRM_Actividad|Title=Sobrecargar el constructor de un racional|
 +
Siguiendo el ejemplo establecido anteriormente realiza un constructor que permita instanciar un objeto de la clase racional de la siguiente manera
 +
<source lang=php>
 +
$a = new racional ("8/5");/*  8/5  */
 +
$b = new racional (5,4);  /*  5/6  */
 +
$c = new racional (5);    /*  5/1  */
 +
$d = new racional ();    /*  1/1  */
 +
</source>
 +
}}

Última revisión de 22:35 26 feb 2019



Icon activity.jpg
Actividad
Empleado
  • Confeccionar una clase Empleado, definir como atributos su nombre y sueldo.
  • Definir un método inicializarlo para que lleguen como dato el nombre y sueldo.
  • Plantear un segundo método que imprima el nombre y un mensaje si debe o no pagar impuestos (si el sueldo supera a 3000 paga impuestos)




<html>
<head>
<title>Pruebas</title>
</head>
<body>
<?php
class Empleado {
  private $nombre;
  private $sueldo;
 
  public function asigna($nom,$sue)
  {
    $this->nombre=$nom;
    $this->sueldo=$sue;
  }
  public function pagaImpuestos()
  {
    echo $this->nombre;
    echo '-';
    if ($this->sueldo>3000)
      echo 'Debe pagar impuestos';
    else
      echo 'No paga impuestos';
    echo '<br>';
  }
}
 
$empleado1=new Empleado();
$empleado1->asigna('Luis',2500);
$empleado1->pagaImpuestos();
$empleado1=new Empleado();
$empleado1->asigna('Carla',4300);
$empleado1->pagaImpuestos();
?>
</body>
</html>



Icon activity.jpg
Actividad

Confeccionar una clase Menu. Permitir añadir la cantidad de opciones que necesitemos. Mostrar el menú en forma horizontal o vertical (según que método llamemos)



<html>
<head>
<title>Pruebas</title>
</head>
<body>
<?php
class Menu {
  private $enlaces=array();
  private $titulos=array();
  public function cargarOpcion($en,$tit)
  {
    $this->enlaces[]=$en;
    $this->titulos[]=$tit;
  }
  public function mostrarHorizontal()
  {
    for($f=0;$f<count($this->enlaces);$f++)
    {
      echo '<a href="'.$this->enlaces[$f].'">'.$this->titulos[$f].'</a>';
      echo "-";
    }
  }
  public function mostrarVertical()
  {
    for($f=0;$f<count($this->enlaces);$f++)
    {
      echo '<a href="'.$this->enlaces[$f].'">'.$this->titulos[$f].'</a>';
      echo "<br>";
    }
  }
}
 
$menu1=new Menu();
$menu1->cargarOpcion('http://www.google.com','Google');
$menu1->cargarOpcion('http://www.yahoo.com','Yhahoo');
$menu1->cargarOpcion('http://www.msn.com','MSN');
$menu1->mostrarVertical();
?>
</body>
</html>



Icon activity.jpg
Actividad

Construir una clase llamado racional que podamos inicializar con un string del tipo por ejemplo "8/5"



<?php
class racional {
    //put your code here
    private $numRacional;
    public function __construct($cadena) {
        $this->numRacional = $cadena;
    }
    public function __toString()(){
        return $this->numRacional;
    }
}
 
$a=new racional("8/5");
$b=new racional("6/4");
echo "<br>valor de \$a: $a <br />";
echo "<br>valor de \$b: $b";
?>




Icon activity.jpg
Actividad

Creamos la clase factura

  • Constantes IVA
  • Atributos Importe Base, fecha, impuestos, Importe bruto, estado (pagada o pendiente)
  • Métodos: imprime




Icon activity.jpg
Sobrecargar el constructor de un racional

Siguiendo el ejemplo establecido anteriormente realiza un constructor que permita instanciar un objeto de la clase racional de la siguiente manera

$a = new racional ("8/5");/*   8/5  */
$b = new racional (5,4);  /*   5/6  */
$c = new racional (5);    /*   5/1  */
$d = new racional ();     /*   1/1   */