Ejercicio: 1Eva2016TII_T1 Analiza una frase por vocales y consonantes
Propuesta de solución en Python, para:
texto = 'Algunas Palabras pArA contar en un programa con algo de Python'
Igual número de consonantes y vocales:
5
>>>
Para facilitar el trabajo con el texto, se convierten todas las letras a mayúsculas upper().
En principio, se considera que las palabras se separan solo por espacios ' ', separando las palabras en sus partes usando la instrucción split(' '). Queda como tarea considerar otras formas de separar palabras con ',' y '.'
>>> partes
['ALGUNAS', 'PALABRAS', 'PARA', 'CONTAR',
'EN', 'UN', 'PROGRAMA', 'CON', 'ALGO',
'DE', 'PYTHON']
>>>
Las vocales y consonantes se referencian con los caracteres en mayúsculas.
El análisis se realiza por cada palabra, luego por cada letra, realizando el conteo de cada vocal y consonante.
>>> j=0
>>> palabra=partes[j]
>>> palabra
'ALGUNAS'
>>>
El resultado se obtiene al comparar los contadores de vocal y consonante.
Algoritmo en Python
# CCPG1001 Fundamentos de Programación FIEC-ESPOL
# 1Eva_IIT2016_T1 Analiza frase por vocales y consonantes
# Solución propuesta: edelros@espol.edu.ec
# INGRESO
# texto = input('frase: ')
texto = 'Algunas Palabras pArA contar en un programa con algo de Python'
# PROCEDIMIENTO
# unificando todo mayúsculas
texto = texto.upper()
# Separa palabras por espacios
# Tarea: considerar ',' y '.'
partes = texto.split(' ')
m = len(partes)
vocales = 'AEIOU'
consonantes = 'BCDFGHJKLMNPQRSTVWXYZ'
cuenta = 0
j = 0
while not(j>=m):
palabra = partes[j]
# Analiza una palabra
n = len(palabra)
cvocal = 0 # contador vocal
cconso = 0
i=0
while not(i>=n):
letra = palabra[i]
if letra in vocales:
cvocal = cvocal + 1
else:
cconso = cconso + 1
i = i + 1
if (cvocal==cconso):
cuenta = cuenta + 1
j = j + 1
# SALIDA
print('Igual número de consonantes y vocales: ')
print(cuenta)