Ejercicio: 1Eva_IIT2016_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)