Usuario:ManuelRomero/ProgramacionWeb/Objetos/practica2

Calculadora Real/Racional
OP1 operador OP2
 * Se pide que realicemos una aplicación web que resuelva cálculos aritméticos con operadores reales o racionales
 * La operación se insertará en una caja de texto
 * La operación tendrá el siguiente formato
 * Donde
 * 1) OP1 es un operador real o racional
 * 2) operador es una operación que puede ser +,-,*,/,:.
 * 3) según los operandos sean reales o racionales el operador división será / o : respectivamente
 * El tipo de operación, la deberemos obtener según nos indique un método stático de la clase operación según se indica más abajo.
 * En la pantalla mostraremos un pequeño texto explicativo y una caja de texto donde el usuario podrá interactuar


 * En el siguiente enlace se puede ver el funcionamiento esperado en esta prácticas


 * Vamos a aplicar una pequeña css para la pantalla


 * Al presionar intro aparecerá un texto (en el primer caso 9/8+4/7)
 * En el segundo caso ( 9.4 / 2)
 * En el tercer caso ( 9/6:6)
 * En el cuarto caso es erróneo ( 9/5*5.6 )


 * Para realizar este ejercicio, tendremos que implementar las siguientes clases según aparece en el dibujo
 * Es obligatorio usar esta jerarquía de clase.
 * Todos los atributos private o protected (no debe de haber atributos public)
 * 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)


 * Métodos


 * 1) constructor. Hay que sobrecargarlo según se indica, aunque en este caso, solo usemos el constructor con cadena de caracteres


 * 1) simplifica Simplifica si se puede numerador y denominador (Utilizar el método de Euclides (mcd))


 * 1) suma
 * 2) resta
 * 3) multiplica
 * 4) divide
 * 5) __toString


 * Todos estos métodos operan con un argumento racional y retorna un Racional resultado de operarse él mismo con el racional que pasamos como argumento

<!--
 * Por defecto todas las operaciones se deben de facilitar con el racional simplificado, salvo que se pase en la operación un segundo parámetro a valor false, en cuyo caso no se simplifica y se da el valor sin simplificar


 * Operación
 * 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.
 * Resultado es el resultado de la operación, puede ser real o racional
 * Esta clase descompondrá la operación y generará un resultado

{{Plegable|hide|Clase OperacionReal| ";       return $r;    }
 * OpReal

//put your code here }

}}

{{Plegable|hide|Clase OpRacional| ";       return $r;    }
 * OpRacional

}

}}


 * A continuación el código del index.php que he usado yo

Código
{{Plegable|hide|Clase OperacionRacional| ";       return $r;    } }}

{{Plegable|hide|Clase OperacionReal|

";       return $r;    }

//put your code here }

}} -->