Elabore un programa en pseint que le pida al usuario una frase en minúscula y:
a) Permita contabilizar cuantas veces una subcadena (palabra) se repite dentro de la frase digitada. Por
ejemplo, si la frase es “si puedes imaginarlo, puedes programarlo” y el usuario me pide que busque la
palabra puedes, el algoritmo me debe decir que la palabra puedes se encuentra 2 veces en la frase
digitada.
b) Contar del número de vocales (de cada una) que aparecen. Por ejemplo, si el usuario digita la frase
“murciélago en su cueva”, el algoritmo debe mostrar:
a. Vocal “a”: 2
b. Vocal “e”: 3
c. Vocal “i”: 1
d. Vocal “o”: 1
e. Vocal “u”: 3
c) Sustituir todos los espacios en blanco de la frase digitada por un asterisco(*). Por ejemplo, si la frase
digitada es “hola que tal”, el algoritmo debe imprimir “hola*que*tal”.
d) Modificar la frase digitada convirtiendo el primer carácter de cada palabra si esta fuera una letra, de
minúsculas a mayúsculas. Por ejemplo, si la frase digitada es “hola que tal”, el algoritmo debe imprimir
“Hola Que Tal”
Respuestas a la pregunta
A continuación se muestran 4 algoritmos en pseint que procesan cadenas de caracteres y muestran por pantalla palabras repetidas, la cantidad de vocales, sustituir espacios en blanco y colocar mayúsculas.
Algoritmo para contar una palabra específica que se encuentre en una frase
- // Definimos variables
auxPalabra <- ''
- // Ingresamos datos
Escribir 'Ingrese frase'
Leer frase
Escribir 'Ingrese una palabra que aparezca en la frase: ' Sin Saltar
Leer palabra
frase <- Minusculas(frase)
palabra <- Minusculas(palabra)
- // Procesar datos (buscamos la palabra en la frase y las contamos)
j <- 1
Para i<-0 Hasta Longitud(frase) Hacer
Si Subcadena(frase,i,i)=Subcadena(palabra,j,j) Entonces
letra <- Subcadena(frase,i,i)
auxPalabra <- Concatenar(auxPalabra,letra)
j <- j+1
Si palabra=auxPalabra Entonces
contador <- contador+1
auxPalabra <- ''
j <- 1
FinSi
FinSi
FinPara
- // Mostramos resultados
Escribir 'La palabra ',Mayusculas(palabra),' aparece ',contador,' veces '
FinAlgoritmo
Algoritmo para contar en un frase ingresada cada tipo de vocales
- // Definir variables
vocales <- 'aáeéiíoóuú'
acontador <- 0
ácontador <- 0
econtador <- 0
écontador <- 0
icontador <- 0
ícontador <- 0
ocontador <- 0
ócontador <- 0
ucontador <- 0
úcontador <- 0
- // Ingresamos la frase y la validamos que queden todas las letras en minúscula
Escribir 'Ingrese una frase'
Leer frase
frase <- Minusculas(frase)
- // Procesar datos (indenficamos vocales y las contamos)
Para i<-1 Hasta Longitud(frase) Hacer
Para j<-1 Hasta Longitud(vocales) Hacer
Si Subcadena(frase,i,i)=Subcadena(vocales,j,j) Entonces
Segun Subcadena(vocales,j,j) Hacer
'a':
acontador <- acontador+1
'á':
ácontador <- ácontador+1
'e':
econtador <- econtador+1
'é':
écontador <- écontador+1
'i':
icontador <- icontador+1
'í':
ícontador <- ícontador+1
'o':
ocontador <- ocontador+1
'ó':
ócontador <- ócontador+1
'u':
ucontador <- ucontador+1
'ú':
úcontador <- úcontador+1
FinSegun
FinSi
FinPara
FinPara
- // Mostramos resultados
Escribir 'Vocal a: ',acontador
Escribir 'Vocal á: ',ácontador
Escribir 'Vocal e: ',econtador
Escribir 'Vocal é: ',écontador
Escribir 'Vocal i: ',icontador
Escribir 'Vocal í: ',ícontador
Escribir 'Vocal o: ',ocontador
Escribir 'Vocal ó: ',ócontador
Escribir 'Vocal u: ',ucontador
Escribir 'Vocal ú: ',úcontador
FinAlgoritmo
Algoritmo que sustituye en una frase espacios en blanco por asteriscos (*)
- // Definir variables
Definir frase Como Caracter
Definir letra Como Caracter
- // Ingresar frase y pasarla a minúscula
Escribir 'Ingrese frase: ' Sin Saltar
Leer frase
frase <- Minusculas(frase)
- // recontruir la frase identificando espacios en blanco y colocando el "*"
Para d<-1 Hasta LONGITUD(frase) Hacer
letra <- SUBCADENA(frase,d,d)
Si letra=' ' Entonces
auxfrase <- Concatenar(auxfrase,'*')
SiNo
auxfrase <- Concatenar(auxfrase,letra)
FinSi
FinPara
- // Mostrar resultados
Escribir auxfrase
FinAlgoritmo
Algoritmo MayusculaPrimeraLetra
- // Definir variables
Definir frase Como Caracter
Definir letra Como Caracter
- // Ingresar frase y pasarla a minúscula
Escribir 'Ingrese frase: ' Sin Saltar
Leer frase
frase <- Minusculas(frase)
- // reconstruimos la frase identificando espacios en blanco y colocando mayúscula la letra siguiente
Para d<-1 Hasta LONGITUD(frase) Hacer
letra <- SUBCADENA(frase,d,d)
Si d=1 Entonces
auxfrase <- Concatenar(auxfrase,Mayusculas(letra))
SiNo
Si SUBCADENA(frase,d-1,d-1)=' ' Entonces
auxfrase <- Concatenar(auxfrase,Mayusculas(letra))
SiNo
auxfrase <- Concatenar(auxfrase,letra)
FinSi
FinSi
FinPara
- // Mostrar resultados
Escribir auxfrase
FinAlgoritmo
Para saber más acerca de algoritmos en pseint para procesar subcadenas de caracteres consulte: https://brainly.lat/tarea/61515053
#SPJ1