Diferencia entre revisiones de «Usuario:ManuelRomero/php/opp/practica»

De WikiEducator
Saltar a: navegación, buscar
Línea 74: Línea 74:
 
$c->toStrig(); //Me visualizará 56/24, o bien simplificado 7/3
 
$c->toStrig(); //Me visualizará 56/24, o bien simplificado 7/3
 
</source>
 
</source>
 
  
 
;Operacion
 
;Operacion
 +
*Como vemos en el diagrama va a tener algún método abstracto, por lo que la vamos a considerar abstracta
 +
:Propiedades
 +
*'''''Operando1''''' es un atributo que podrá ser real o racional, pero como en php no hay que declarar tipos, nos va bien
 +
*'''''Operando2''''' igual
 +
*'''''Operación''''' será la cadena de caracteres que el usuario inserte en la caja de texto.
 +
*'''''Operador'''' es el carácter que indica el tipo de operación que se quiere realizar.
 +
 +
:Métodos
 
;OpReal
 
;OpReal
 
;OpRacional
 
;OpRacional

Revisión de 21:18 19 dic 2014

Road Works.svg Trabajo en proceso, espera cambios frecuentes. Tu ayuda y retroalimentación son bienvenidos.
Ver página de charlas.
Road Works.svg




DWES TituloTema6.png

Enunciado

  • Se pide que realicemos una aplicación web que resuleva cálculos aritméticos
  • La operación se insertará en una caja de texto
  • La operacion tendrá el siguiente formato
OP1 operador OP2
  • Donde
  1. OP1 es un operador real o racional
  2. operador es una operación que puede ser +,-,*,/,:.
    1. según los operandos sean reales o racionales el operador división será / o : respectivamente
  • El tipo de operación, la seleccionará el cliente con un check box.
  • En el cliente veremos la siguiete pantalla

ClienteRacional.png

  • Para realizar este ejercicio, tendremos que implementar las siguientes clases según aparece en el dibujo

Racional.png

  • Todos los atributos private o protected
  • Los métodos según correspondan serán private protected o public
  • A continuación una descripción de las clases
Racional (p.e 10/6)
Propiedades
  1. Num (p.e 10)
  2. Den (p.e 6)
  3. Numero (p.e "10/6")
Métodos
  1. contructor. Hay que sobrecargarlo según se indica
$a = new Racional();      //Crea el racional 1/1
$a=  new Racional (10);   //Crea el racional 10/1
$a = new Racional(10,6);  //Crea el racional 10/6 
$a = new Racional("10/6");//Crea el racional 10/6
  1. 'asigna. También se pide que está sobrecargado
$a = new Racional();      //Crea el racional 1/1
$a->asigna(10);   //Asigna al raciona a el valor  10/1
$a->asigna(10,6);  //Asigna al raciona a el valor 10/6 
$a->asigna("10/6");//Asigna al raciona a el valor 10/6
$a->asigna();  //Asigna al raciona a el valor 1/1
  1. simplifica() Simplifica si se puede numerador y denominador
  2. toString() Retorna el número racional como una cadena de caracteres, es decir el contenido del atributo numero
  1. suma
  2. resta
  3. multimplica
  4. divide
Todos estos métodos operan con un argumento y retorna un Racional resultado de operarse él mismo con el racional que pasamos como argumento
//En la clase
public function suma (Racional $b) {
 $numResultado = ....;
 $denResultado = ....
 $resultado = new Racional......
 return $resultado;
}
.....
//En el programa que use la clase
 
$a = new Racional("5/6");
$b = new Racional (6,4);
$c= $a->sumar($b);
$c->toStrig(); //Me visualizará 56/24, o bien simplificado 7/3
Operacion
  • Como vemos en el diagrama va a tener algún método abstracto, por lo que la vamos a considerar abstracta
Propiedades
  • Operando1 es un atributo que podrá ser real o racional, pero como en php no hay que declarar tipos, nos va bien
  • Operando2 igual
  • Operación será la cadena de caracteres que el usuario inserte en la caja de texto.
  • Operador' es el carácter que indica el tipo de operación que se quiere realizar.
Métodos
OpReal
OpRacional