'''
Objetivo del programa (descripción del problema que resuelve):

Autor/es: 

Versión: 

Fecha: 

Análisis de Casos (número de caso, estado inicial, transformación, estado final -se consideran casos base para la prueba del programa):


Síntesis de Casos (composición de casos para la generalización):


Recursos (variables y funciones del programa -nombre y propósito)

    Datos a solicitar al usuario (sea en el prólogo o sea durante la resolución):
    
    Auxiliares (necesarios para transformaciones intermedias):
    
    Resultados (a informar sea durante el desarrollo o en el epílogo):

    Funciones propias (necesarias para la descomposición del problema en subproblemas):

'''
# DEFINICIÓN DE FUNCIONES (si se requieren para descomponer la solución del problema)

#def nom_función():
'''
    Recibe (descripción de parámetros de la función -tipo de valores-, si es que tiene):

    Objetivo (descripción de lo que hace o devuelve):

    Análisis de Casos (número de caso, estado inicial, transformación, estado final -se consideran casos base para la prueba
    de la función):

    Síntesis de Casos (composición de casos para la generalización):

    Recursos (variables o funciones internas -nombre y propósito)

        Auxiliares (necesarios para transformaciones intermedias):

        Resultados (si la función devuelve):

    '''
    #1 PRÓLOGO
    # Establecimiento de valores iniciales para datos auxiliares o que se transformarán en resultados (opcional)

    #2 RESOLUCIÓN
    # Descomposición del problema en subproblemas 2.x que a su vez pueden requerir inicialización de datos o mostrar resultados

    #3 EPÍLOGO
    # Devolución de valor o valores o muestra de resultados


# PROGRAMA    
#1 PRÓLOGO
#1.1 Presentación
#1.1.1 Impresión del título del programa en pantalla

#1.1.2 Descripción o aclaraciones al usuario (opcional)

#1.2 Datos iniciales 
#1.2.1 Solicitud e ingreso de datos desde teclado (opcional, si los datos se piden durante la resolución)

#1.2.2 Establecimiento de valores iniciales para datos auxiliares o que se transformarán en resultados (opcional)

#2 RESOLUCIÓN
# Descomposición del problema en subproblemas 2.x que a su vez pueden requerir ingreso o inicialización de datos o mostrar resultados

#3 EPÍLOGO
#3.1 Muestra de la solución del problema por pantalla (opcional, si sólo se muestran resultados durante la resolución)

#3.2 Pausa para ver resultados en pantalla que se puede obviar, si los resultados se van mostrando durante la resolución
print() # salto de línea
input('Pulse tecla Enter para terminar el programa...') # pausa forzada
