s3Eva_IIT2008_T1 Contar palabras para un clasificado

Ejercicio: 3Eva_IIT2008_T1 Contar palabras para un clasificado

Intrucciones en Python

A partir del ejemplo,  se consideran como separadores de palabras los espacios ' ', por lo que al encontar un espacio se cuenta una palabra.
Adicionalmente, una coma ',' o un punto '.' tambien pueden usarse como sepadador de palabras, y van seguidos de un espacio.

Solicito Asistente oficina Publicidad, 320 promedio, 4horas. Telf 555444 Silvia Sierra

Como algoritmo:

# 3Eva_IIT2008_T1 Contar palabras para un clasificado

# INGRESO
frase = input('frase: ')

# PROCEDIMIENTO
n = len(frase)
contar = 0
i = 0
while not(i>=n):
    if frase[i] == ' ':
        contar = contar + 1
    if frase[i] == ',' and frase[i+1]!=' ':
        contar = contar + 1
    if frase[i] == '.' and frase[i+1]!=' ':
        contar = contar + 1
    i = i + 1
encontradas = contar + 1

# SALIDA
print('cantidad caracteres: ', n)
print('palabras encontradas: ',encontradas)

como funcion:

# 3Eva_IIT2008_T1 Contar palabras para un clasificado

def cuentapalabras(frase):
    n = len(frase)
    contar = 0
    i = 0
    while not(i>=n):
        if frase[i] == ' ':
            contar = contar + 1
        if frase[i] == ',' and frase[i+1]!=' ':
            contar = contar + 1
        if frase[i] == '.' and frase[i+1]!=' ':
            contar = contar + 1
        i = i + 1
    encontradas = contar + 1
    return(encontradas)

# INGRESO
frase = input('frase: ')

# PROCEDIMIENTO
cuenta = cuentapalabras(frase)

# SALIDA
print('palabras encontradas: ',cuenta)

Tarea: Considere que algún cliente puede escribir el clasificado tan solo separando las palabras por puntos, en cuyo caso el conteo de palabras solo por espacios será insuficiente.