Está en la página 1de 29

Algoritmos de Programación con cadenas

Leslie Granda Curicho, Oscar Osorio Simbaña, Nicol Tutillo Chimarro


Enero de 2022.

Universidad de las Fuerzas Armadas ESPE.


Telecomunicaciones.
Fundamentos de programación.
I. Objetivos

● Realizar los ejercicios propuestos con la programación estructurada para resolver

los problemas planteados mediante un algoritmo.

● Resolver los ejercicios propuestos mediante el uso de pseudocódigos de PSeInt,

utilizando la estructura de modo simplificado con funciones y métodos de Python.

II. Introducción

Cuando hablamos de programación y en específico de la programación estructurada es

inevitable no hablar del uso de cadenas en la misma, ya que, son utilizadas en diversos

aspectos. Una cadena o también conocida como String en su traducción al inglés, es un

fragmento de una cadena de caracteres alfanuméricos (letras, números y símbolos). Para la

sintaxis en el caso de PseInt se va a tener en cuenta ciertos parámetros, ya que al ser variables

de tipo carácter, vamos a tener que definirlas como tal, y asignarlas ya sea con doble comilla o

con doble apóstrofo. En el caso de Python será prácticamente lo mismo, con la diferencia de

que no será necesario hacer uso obligatorio de las definiciones en cada variable. Al hablar de

métodos ya sea en PseInt o en Python van a contar con varios, sin embargo, cabe recalcar que

al usar métodos en Python se debe tener en cuenta la sintaxis que cada método posee y las

funciones que cumplen en sus librerías. Por ello se ha hecho la elaboración de este informe, el

cual permitirá tener un conocimiento más amplio acerca de lo mencionado, explicando de

manera detallada y en base a ejercicios, las estructuras que cada método debe tener.

III. Marco teórico

La cadena de caracteres es una lista o secuencia de caracteres que se tratan como una

unidad,se identifican por estar entre apóstrofes o comillas, la longitud de la cadena es el

número de caracteres encerrados entre comillas, las cadenas y los números se almacenan de

modo diferente en la memoria de la computadora. A su vez, las cadenas pueden ser variables

o constantes.
Este pseudolenguaje incorpora 7 funciones para cadenas:

Cadena de longitud: Devuelve la cantidad de caracteres de la cadena.

Cadena para mayúsculas: Devuelve una copia de la cadena con todos sus caracteres en

mayúsculas.

Cadena para minúsculas: Devuelve una copia de la cadena con todos sus caracteres en

minúsculas.

Subcadena(cadena,pos_ini,pos_fin): Devuelve una nueva cadena que consiste en la parte de la

cadena que va desde la posición pos_ini hasta la posición pos_fin.

Concatenar(cadena1,cadena2): Devuelve una nueva cadena resulta de unir las cadenas

cadena1 y cadena2.

Cadena para convertirANumero: Recibe una cadena de caracteres que contiene un número

(caracteres numéricos) y devuelve una variable numérica con el mismo.

ConvertirATexto(número): Recibe un número y devuelve una variable cadena de caracteres

de dicho real.

IV. Metodología

La metodología que posee la programación con cadena es aquella que por más compleja que

sea se basa en tres tipos de instrucciones básicas, estas son: Instrucciones secuenciales,

alternativas, condicionales y repetitivas. Este grupo de instrucciones dejan de lado al ya

conocido (tipo de salto) ya que dificulta el seguimiento de los programas y los hace un poco

más flexibles de lo normal. Las ventajas que posee este tipo de estructura en programación es

la ejecución del programa ya que facilita la comprensión al carecer de saltos a diferentes

partes del código, al igual que consigue seguir secuencialmente al algoritmo. La reducción de

errores también juega un papel fundamental debido a que al limitar las instrucciones y tener

una estructura definida, se llega a cometer menos errores en el diseño y por lo tanto la

facilidad en la detección es más sencilla, en los programas su estructura es más simple y


rápida garantizando una solución más eficaz y la cantidad del código es más accesible para

ejecutar. Sus operadores permiten realizar una ejecución en el uso de los datos del programa,

en dónde se emplean condicionales y sus funciones internas incluyen las prescritas como

parte integral de los lenguajes de programación y facilitando el significado de las mismas.

V. Pruebas y resultados experimentales

1. EJERCICIO: Realice un algoritmo que lea el nombre y luego el apellido de una

persona y al final le diga su nombre completo.

Análisis del problema

Datos de entrada

1. Ingreso de nombre y apellido

Procesos

2. Concatenar las cadenas de nombre y apellido

Datos de salida

3. Imprime el nombre completo ingresado

Algoritmo en lenguaje natural

● Inicio
● Definir cad1 , cad2 como cadenas
● Escribir ingrese su nombre
● Leer cad1
● Escribir su apellido
● leer cad2
● concatenar cad1 y cad2
● Imprime el nombre completo
● Fin
Diagrama de flujo

Pseudocódigo

Resultados
Código en Python

Resultados en Python

2. EJERCICIO: Realice un algoritmo que lea dos nombres de personas y al final le diga

si son iguales o diferentes.

Análisis del problema

Datos de entrada

1. Ingreso de los nombres

Procesos

2. Identificar si los nombres ingresados son iguales o diferentes

Datos de salida

3. Imprime un mensaje diciendo si los nombres ingresados son iguales o


diferentes

Algoritmo en lenguaje natural

● Inicio
● Definir cad1,cad2 como cadena
● Ingresa el primer nombre
● Ingresa el segundo nombre
● Se comparan los nombres ingresados
● Imprime un mensaje si los nombres ingresados son iguales o diferentes
● Fin
Diagrama de flujo

Pseudocódigo

Resultados
Código en Python

Resultados en Python

3. EJERCICIO: Realice un algoritmo que lea una dirección y al final le diga al usuario

cuántos caracteres tiene la dirección.

Análisis del problema

Datos de entrada

1. Ingreso de la dirección

Procesos

2. Identificar la longitud de la cadena ingresada

Datos de salida

3. Imprimir cuantos caracteres tiene la dirección ingresada

Algoritmo en lenguaje natural

● Inicio
● Definir cadena como carácter
● Ingresar la dirección
● Longitud de la dirección
● Resultado de cuantos caracteres tiene la dirección ingresada
● Fin
Diagrama de flujo

Pseudocódigo

Resultados
Código en Python

Resultados en Python

4. EJERCICIO: Realice un algoritmo que lea una cadena y luego le diga al usuario si

esa cadena es palíndrome. Una cadena es palíndrome si se lee igual de izquiera a

derecha que de derecha a izquierda. Ejemplo Ana.

Análisis del problema

Datos de entrada

1. definir variables como caractere

Procesos

2. hacer comparaciones mediante un ciclo para

Datos de salida

3. Imprimir si es palindrome o no

Algoritmo en lenguaje natural

● Inicio
● definimos las variables a utilizar
● ingresamos por teclado la palabra a evaluar
● iniciamos un ciclo para
● se realizan comparaciones en cada posición de la palabra
● se realiza condiciones para determinar si son iguales
● se imprime los resultados
● Fin

Diagrama de flujo

Pseudocódigo
Resultados

Código en Python

Resultados en Python

5. EJERCICIO: Realice un algoritmo que lea una cadena y luego le diga al usuario

cuantas palabras tiene la cadena.

Análisis del problema

Datos de entrada

1. Ingreso de una cadena

Proceso

2. Identificar cuántas palabras tiene la cadena

Datos de salida

3. Imprime el número de palabras que tiene la cadena ingresada


Algoritmo en lenguaje natural

● Inicio
● Definir cadena
● Ingreso de la cadena
● Identificar cuántas palabras tiene la cadena
● mensaje de cuántas palabras tiene la cadena ingresada
● Fin

Diagrama de flujo

Pseudocódigo
Resultados

Código en Python

Resultados en Python

6. EJERCICIO: Realice un algoritmo que lea una cadena y luego le diga al usuario cuántas vocales
tiene la cadena.

Análisis del problema

Datos de entrada

1. Ingreso de la cadena

Procesos
2. Identificar las vocales de la cadena

Datos de salida

3. Imprimir cuantas vocales tiene la cadena ingresada

Algoritmo en lenguaje natural

● Inicio
● definir variables como carácter
● definir la longitud de la cadena
● utilizar un ciclo mientras para comparar los datos
● hacer uso de la herramienta Según
● Imprimir la cantidad de vocales que existe en la cadena
● Fin
Diagrama de flujo
Pseudocódigo

Resultados

Código en Python

Resultados en Python
7. EJERCICIO: Realice un algoritmo que lea una cadena y luego le diga al usuario cuántos espacios
tiene la cadena.

Análisis del problema

Datos de entrada

1. La cadena u oración

Procesos

2. Identificar el número de espacios de la cadena u oración

Datos de salida

3. Imprimir el número de espacios que posee la cadena u oración

Algoritmo en lenguaje natural

● Inicio
● Definir cadena1 como cadena
● Definir cadena1 como entero
● Ingresar la oración
● Mediante un ciclo para hallar el número de espacios
● Escribir el número de espacios
● Fin

Diagrama de flujo
Pseudocódigo

Resultados

Código en Python
Resultados en Python

8. EJERCICIO: Realice un algoritmo que lea una cadena cualquiera y luego al usuario la cadena al
revés.

Análisis del problema

Datos de entrada

1. Palabra o frase

Procesos

2. Realizar una operación para darle vuelta a la cadena

Datos de salida

3. Imprimir la cadena al revés

Algoritmo en lenguaje natural

● Inicio
● escribir una palabra o frase
● Leer palabra
● Longitud de la palabra
● Mediante un ciclo para dar la vuelta a la palabra
● Escribir el resultado
● Fin
Diagrama de flujo

Pseudocódigo

Resultados
Código en Python

Resultados en Python

9. EJERCICIO: Realice un algoritmo que lea una cadena y luego se la muestre al usuario sin vocales.

Análisis del problema

Datos de entrada

1. Un texto

Procesos

2. Realizar una operación para quitar las vocales

Datos de salida

3. Imprimir el texto sin vocales

Algoritmo en lenguaje natural

● Inicio
● Escribir que ingrese un texto
● Leer el palabra
● Longitud de la palabra
● Mediante un ciclo para quitar las vocales de la palabra
● Escribir la palabra sin vocales
● Fin
Diagrama de flujo

Pseudocódigo

Resultados
Código en Python

Resultados en Python

10. EJERCICIO: Realice un algoritmo que lea una cadena y luego se la muestre al usuario
reemplazando todas las vocales por la letra a.

Análisis del problema

Datos de entrada

1. Un texto

Procesos

2. Realizar una operación que reemplace las vocales con la letra a

Datos de salida

3. Imprimir el reemplazo de las vocales con la letra a del texto

Algoritmo en lenguaje natural

● Inicio
● Escribir que ingrese un texto
● Leer el palabra
● Longitud de la palabra
● Mediante un ciclo para quitar las vocales y reemplazarlas con la letra a
● Escribir los resultados
● Fin
Diagrama de flujo

Pseudocódigo

Resultados
Código en Python

Resultados en Python

11. EJERCICIO: Realice un algoritmo que lea el primer nombre, el segundo nombre, el primer apellido
y el segundo apellido de una persona y al final le muestre al usuario el nombre completo.

Análisis del problema

Datos de entrada

1. Primer nombre, segundo nombre, primer apellido y segundo apellido

Procesos

2. Identificar el método para unir todos los datos ingresados

Datos de salida

3. Imprimir el nombre completo

Algoritmo en lenguaje natural

● Inicio
● Enviar mensajes de pantalla para solicitar los nombres
● Enviar mensajes de pantalla para solicitar los apellidos
● concatenar la variables que almacenan los datos
● imprimir los datos ya concatenados
● Fin
Diagrama de flujo

Pseudocódigo
Resultados

Código en Python

Resultados en Python

VI. Conclusiones

● La utilización de la programación estructurada es eficiente ya que facilita la

comprensión y reduce los errores al realizar el algoritmo, obteniendo un buen

resultado en la solución del problema.

● La programación estructurada es un buen método para obtener una solución más

sencilla debido a la cantidad de código utilizado en el programa, dándonos como


resultado una mejor movilidad en el algoritmo realizado.

VII. Recomendaciones

● Al utilizar las instrucciones secuenciales tener en cuenta que todas sus sentencias

son secuenciales y solo unas cuantas pueden ser simples en la inicialización de las

variables y otras más.

● En las alternativas múltiples es muy importante saber que una condición de

verdadero y falso no determina el camino a seguir en el algoritmo, más bien es una

expresión que da como resultado varios valores.

VIII. Referencias

Vasquez, J. (2012), Análisis y diseño de algoritmos, México, Editorial Red Tercer


Milenio.
Conde E. (sf), Aula virtual Informática, Metodología para la solución de problemas,
Recuperado de: https://enriqueconde.wixsite.com/informaticauno/metodologia-para-la
solucin-de-problema
Cuestionario
1. ¿Cuáles son los tipos de instrucciones básicas que posee la programación estructurada?

a. Instrucciones secuenciales
b. Instrucciones alternativas o condicionales
c. Instrucciones repetitivas
d. Todas las anteriores
2. ¿Cuál de las siguientes es una ventaja en la programación estructurada?

a. Sus programas son más simples y rápidos


b. Los programas son más fáciles de entender
c. Su factibilidad en la detección de errores
d. Todas las anteriores
3. ¿En qué condición de instrucciones se emplean los operadores condicionales?

a. De tipo If y While
b. De tipo It y Weel
c. Todas las anteriores
d. Ninguna de las anteriores
4. ¿Qué son los tipos de instrucciones repetitivas?

a. Es un tipo de instrucción con la que realizamos funciones prescritas como parte integral de los
lenguajes de programación

b. Es un tipo de instrucción con la que realizamos operaciones de datos dentro de un programa y están
clasificados por tipos
c. Es un tipo de introducción con la que podemos realizar cálculos iterativos y
estructuras de datos complejos
d. Es un tipo de instrucción con la que se maneja los datos que se almacenan y se
operan a través de variables
5. ¿Qué función cumple la longitud(cadena)?

a. Devuelve una variable cadena de caracteres de dicho real


b. Devuelve la cantidad de caracteres de la cadena
c. Devuelve una nueva cadena que consiste en la parte de la cadena que va desde la
posición inicial hasta la final
d. Devuelve una copia de la cadena con todos sus caracteres en mayúsculas o
minúsculas

También podría gustarte