Cómo sumar dos números romanos en Python [Método add]

| Última modificación: 19 de julio de 2024 | Tiempo de Lectura: 2 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

Python permite un sin fin de ejercicios y programas que nunca habías pensado que se podrían resolver desde el pensamiento computacional. Por eso, ejercicios sobre cómo sumar dos números romanos en Python van muy bien para cuando quieras empezar a perfeccionar tus habilidades.

En otros post hemos hablado de jugar con los números romanos en Python, como la conversión de posición de entero a número romano en Python o las restricciones para convertir un número romano a un número entero. Ahora, en este post, te contaremos cómo sumar dos números romanos en Python.

Método _ _ add _ _

Según la documentación de Python, el método _ _ add _ _ funciona con el operador de suma +, donde los parámetros que se ingresan a la función serían operandos, es decir, el primer parámetro es primer operando y el segundo parámetro es segundo operando.

Para conocer cómo funciona, puedes observar el siguiente ejemplo sobre cómo sumar dos números romanos en Python.

Cómo sumar dos números romanos en Python

  1. Primero defines la clase suma.
  2. El primer operador siempre es self y tienes que comprobar que el segundo operador sea un número romano. El primero seguro que es número romano porque se saca de una clase de números romanos que ya habías definido anteriormente. Esta será la clase RomanNumber. Para comprobar que sea un número romano, utilizas el módulo isinstance, después de levantar una restricción para cuando no se agrega un objeto de la clase RomanNumber.
  3. A continuación podrás escribir una instrucción para la suma. Ten en cuenta que el “valor” se saca en la construcción de la clase de RomanNumber. La suma la definimos para tres ocasiones: para sumar un número romano con un número romano, para sumar un número romano con un entero y para sumar un número romano con una cadena.

Los pasos ejecutados se verían de la siguiente forma:

def _ _ add _ _ (self, sumando)

#para sumar RomanNumber más un RomanNumber

       if isinstance (sumando, RomanNumber):

           return self.valor  + sumando.valor

#para sumar un RomanNumber más un entero

       if instance (sumando, int):

            return  self.valor + sumando

#para sumar un RomanNumber con una cadena

      if instance ( sumando, str)

#instancia de la clase RomanNumber que se convierte en un objeto RomanNumber y ese objeto RomanNumber tiene una propiedad que es valor, de tipo entero. Ahí lo estás convirtiendo en número entero. 

            return  self.valor + RomanNumber (sumando).valor

       raise  ValueError (f"{sumando} debe ser un RomanNumber}")

Si lo pruebas quedaría algo así:

#lo que ingresas a la consola

siete + 'VII'

#el resultado

>> 14

Ahora que sabes cómo sumar dos números romanos en Python con el método add, debes seguir practicando tus habilidades para perfeccionar tus conocimientos en lenguajes de programación. Si necesitas más ejercicios para seguir aprendiendo sobre Python y, además, alguien que te guíe en el proceso, te recomendamos apuntarte a nuestro Bootcamp Aprende a Programar desde Cero. ¡Inscríbete y sigue aprendiendo!

Ramón Maldonado

Full Stack Developer y Responsable de Formación base en KeepCoding.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Aprende a Programar desde Cero

Full Stack Jr. Bootcamp

Apúntate y consigue uno de los perfiles más demandados con Python en solo 4 meses.