1 usuario conectado

Formatear ordinal. Ejercicio en Python

Comparte esto

 

Escribe una función en Python llamada formatear_ordinal_es que tome un número entero como entrada y devuelva su representación ordinal en español como texto para los primeros pocos casos (primero, segundo, tercero, etc.). Para otros números, podría simplemente añadir "avo".


Más ejercicios




Mostrar/Ocultar ejercicio resuelto


  Solución al Ejercicio: Formatear ordinal

📋 Copiar código


def formatear_ordinal_es(numero):
  """
  Formatea un número entero a su representación ordinal en español (limitado).

  Args:
    numero: El número entero a formatear.

  Returns:
    La representación ordinal del número como texto.
  """
  ordinales_especiales = {
      1: "primero",
      2: "segundo",
      3: "tercero",
      4: "cuarto",
      5: "quinto",
      6: "sexto",
      7: "séptimo",
      8: "octavo",
      9: "noveno",
      10: "décimo"
  }
  if numero in ordinales_especiales:
    return ordinales_especiales[numero]
  else:
    return str(numero) + "avo"

# Ejemplos de uso
numero1 = 1
resultado1 = formatear_ordinal_es(numero1)
print(f"{numero1} en ordinal: {resultado1}")

numero2 = 3
resultado2 = formatear_ordinal_es(numero2)
print(f"{numero2} en ordinal: {resultado2}")

numero10 = 10
resultado10 = formatear_ordinal_es(numero10)
print(f"{numero10} en ordinal: {resultado10}")

numero11 = 11
resultado11 = formatear_ordinal_es(numero11)
print(f"{numero11} en ordinal: {resultado11}")

numero25 = 25
resultado25 = formatear_ordinal_es(numero25)
print(f"{numero25} en ordinal: {resultado25}")

numero0 = 0
resultado0 = formatear_ordinal_es(numero0)
print(f"{numero0} en ordinal: {resultado0}")

Explicación del Código:

  1. Función formatear_ordinal_es(numero):
    • Define un diccionario ordinales_especiales que mapea los primeros números enteros a sus formas ordinales escritas en español.
    • Verifica si el numero de entrada está presente en las claves del diccionario ordinales_especiales.
    • Si el número está en el diccionario, devuelve su correspondiente forma ordinal.
    • Si el número no está en el diccionario (para números mayores que 10 en este ejemplo simplificado), devuelve el número convertido a cadena seguido del sufijo "avo".

Ejemplos de Uso:

Los ejemplos muestran cómo la función convierte los primeros números a sus ordinales correctos y aplica el sufijo "avo" para otros números.

Nota: La generación de ordinales en español de forma completa es más compleja debido a las variaciones (undécimo, duodécimo, décimo tercero, vigésimo primero, etc.) y requeriría una lógica más elaborada. Este ejemplo es una simplificación para ilustrar la manipulación de cadenas basada en números.