ES6 - Herencia

PROBLEMA

  1. Declarar una clase llamada Calculadora que reciba en el constructor dos valores.
    Definir las responsabilidades de sumar, restar, multiplicar, dividir e imprimir.

    Declarar luego una clase llamada CalculadoraCientifica que herede de Calculadora y añada las responsabilidades de calcular el cuadrado del primer número y la raíz cuadrada.

Solución
Problema 1.


<!DOCTYPE html>
<html>

<head>
    <title>Ejemplo de JavaScript</title>
    <meta charset="UTF-8">
</head>

<body>

    <script>
        class Calculadora {
            constructor(x1, x2) {
                this.x1 = x1;
                this.x2 = x2;
                this.resultado = null;
            }

            sumar() {
                this.resultado = this.x1 + this.x2;
                document.write(`La suma de ${this.x1} y ${this.x2} es `);
                this.imprimir();
            }

            restar() {
                this.resultado = this.x1 - this.x2;
                document.write(`La resta de ${this.x1} y ${this.x2} es `);
                this.imprimir();
            }

            multiplicar() {
                this.resultado = this.x1 * this.x2;
                document.write(`La multiplicación de ${this.x1} y ${this.x2} es `);
                this.imprimir();
            }

            dividir() {
                this.resultado = this.x1 / this.x2;
                document.write(`La división de ${this.x1} y ${this.x2} es `);
                this.imprimir();
            }

            imprimir() {
                document.write(this.resultado + '<br>');
            }
        }

        class CalculadoraCientifica extends Calculadora {
            cuadrado() {
                this.resultado = this.x1 * this.x1;
                document.write(`${this.x1} elevado al cuadrado es `);
                this.imprimir();
            }

            raizCuadrada() {
                this.resultado = Math.sqrt(this.x1);
                document.write(`La raiz cuadrada de ${this.x1}  es `);
                this.imprimir();
            }
        }

        const calculadora1 = new Calculadora(100, 20);
        calculadora1.sumar();
        calculadora1.restar();
        calculadora1.multiplicar();
        calculadora1.dividir();

        const calculadoraCientifica1 = new CalculadoraCientifica(6, 2);
        calculadoraCientifica1.sumar();
        calculadoraCientifica1.restar();
        calculadoraCientifica1.cuadrado();
        calculadoraCientifica1.raizCuadrada();
    </script>

</body>

</html>


Retornar al menu