Vous êtes sur la page 1sur 190

Índice

Preliminares

Primer
bimestre

Segundo
bimestre

Solucionario

Modalidad Abierta
Glosario

Referencias
bibliográficas

y a Distancia Anexos

Carrera de
Técnologías de la información

Guía Didáctica
Algoritmos y Resolución de Problemas

La Universidad Católica de Loja

Área Técnica
Índice

Preliminares

MODALIDAD ABIERTA Y A DISTANCIA


Primer
bimestre

Segundo
Departamento de Ciencias de la Computación y Electrónica bimestre
Sección Tecnologías Avanzadas de la Web y SBC
Solucionario

Algoritmos y Resolución de Problemas Glosario

Guía Didáctica
Referencias
bibliográficas

Anexos

Carrera Ciclo

ƒ Técnologías de la información I

Autoras:
María del Carmen Cabrera L.
Gladys Alicia Tenesaca L.

La Universidad Católica de Loja


Asesoría virtual:
www.utpl.edu.ec
Índice

Preliminares

Primer
bimestre

Segundo
bimestre
ALGORITMOS Y RESOLUCIÓN DE PROBLEMAS
Guía Didáctica Solucionario
María del Carmen Cabrera L.
Gladys Alicia Tenesaca L.
Glosario

UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA Referencias


bibliográficas
4.0, CC BY-NY-SA

Anexos
Diagramación y diseño digital:
EDILOJA Cía. Ltda.
Telefax: 593-7-2611418
San Cayetano Alto s/n
www.ediloja.com.ec
edilojainfo@ediloja.com.ec
Loja-Ecuador

Primera edición
ISBN digital - 978-9942-25-297-5

La versión impresa y digital han sido acreditadas bajo la licencia Creative Commons 4.0, CC
BY-NY-SA: Reconocimiento-No comercial-Compartir igual; la cual permite: copiar, distribuir y
comunicar públicamente la obra, mientras se reconozca la autoría original, no se utilice con
fines comerciales y se permiten obras derivadas, siempre que mantenga la misma licencia al ser
divulgada. https://creativecommons.org/licenses/by-nc-sa/4.0/deed.es

03 de abril, 2018
2 Índice Índice

Preliminares

Primer
2 Índice............................................................................................................................................. 4 bimestre

3 Introducción............................................................................................................................... 6
Segundo
4 Bibliografía................................................................................................................................. 8 bimestre

4.1. Básica................................................................................................................................. 8
Solucionario
4.2. Complementaria............................................................................................................. 8

5 Orientaciones generales para el estudio..................................................................... 10 Glosario

6 Proceso de enseñanza-aprendizaje para el logro de competencias............. 14


Referencias
PRIMER BIMESTRE bibliográficas

UNIDAD 1. FUNDAMENTOS DE ALGORITMOS Y SU REPRESENTACIÓN.. 14


Anexos

1.1. Concepto de Lógica........................................................................................... 14

1.2. Algoritmo................................................................................................................ 15

1.3. Sistema.................................................................................................................. 20

1.4. Concepto de algoritmo en el marco de la Lógica................................... 20

1.5. Lógica de programación.................................................................................. 21

1.6. Lenguajes de programación: sintaxis básicas......................................... 21

1.7. Diagramas de flujo y su representación..................................................... 25

Autoevaluación 1............................................................................................................ 38

UNIDAD 2. DATOS E INFORMACIÓN............................................................................. 42

2.1. Datos e información........................................................................................... 42

2.2. Bit y Byte................................................................................................................ 43

2.3. Múltiplos y Submúltiplos del Byte................................................................. 43

2.4. Operadores........................................................................................................... 45

2.5. Expresiones.......................................................................................................... 54

2.6. Variables y tipos predefinidos........................................................................ 57

Autoevaluación 2 ........................................................................................................... 65
UNIDAD 3. CICLO DE DESARROLLO Y PRIMITIVAS ALGORÍTMICAS......... 68
Índice
3.1. Ciclo de desarrollo de un programa............................................................ 68

3.2. Primitivas algorítmicas...................................................................................... 73 Preliminares

3.3. Diseño de miniespecificaciones.................................................................... 77


Primer
3.4. Pruebas de escritorio........................................................................................ 83 bimestre

Autoevaluación 3............................................................................................................ 86 Segundo


bimestre
SEGUNDO BIMESTRE
Solucionario
UNIDAD 4. ESTRUCTURAS LÓGICAS CONDICIONALES................................... 90

4.1. Estructura lógica condicional simple........................................................... 90


Glosario

4.2. Estructura lógica condicional compuesta.................................................. 93


Referencias
4.3. Estructura lógica Dependiendo De.............................................................. 96 bibliográficas

Autoevaluación 4............................................................................................................ 101


Anexos
UNIDAD 5. ESTRUCTURAS LÓGICAS REPETITIVAS............................................ 108

5.1. Estructura lógica repetitiva Mientras que – Hacer................................. 109

5.2. Estructura lógica repetitiva Hacer - Hasta................................................. 112

5.3. Estructura lógica repetitiva Para................................................................... 116

5.4. Estructuras lógicas repetitivas anidadas................................................... 120

Autoevaluación 5............................................................................................................ 131

UNIDAD 6. ESTRUCTURAS DE DATOS........................................................................ 135

6.1. Arreglos unidimensionales.............................................................................. 136

6.2. Arreglos bidimensionales o matrices.......................................................... 142

Autoevaluación 6............................................................................................................ 152

7 Solucionario............................................................................................................................... 155

8 Glosario........................................................................................................................................ 178

9 Referencias bibliográficas.................................................................................................. 185

10 Anexos.......................................................................................................................................... 186
Guía Didáctica: Algoritmos y Resolución de Problemas PRELIMINARES

3 Introducción Índice

Preliminares

Estimados estudiantes, reciban un cordial saludo de bienvenida a esta su


Primer
universidad, expresamos nuestra felicitación por haber elegido y confiado en bimestre

la Universidad Técnica Particular de Loja. Es un gusto para nosotros guiar


Segundo
el proceso de aprendizaje en la asignatura de Algoritmos y Resolución de bimestre

Problemas, cualquier duda e inquietud estamos a sus órdenes para responderle.


Solucionario

Algoritmos y Resolución de Problemas es una asignatura de primer ciclo


Glosario
que corresponde a la unidad de organización curricular básica, su campo de
formación es praxis profesional con 120 horas de planificación dentro de la Referencias
bibliográficas
carrera de Tecnologías de la Información de la Modalidad Abierta y a Distancia
de UTPL. Esta asignatura se ha elaborado enfocándose en el desarrollo de las
Anexos
competencias básicas para el diseño de algoritmos a través del pensamiento
lógico aplicado a la resolución de problemas por computadora.

Dentro de la carrera de Tecnologías de la Información, es muy importante


considerar que el desarrollo de habilidades para resolver un problema
computacional no se logra sino con la adquisición de una forma de pensamiento
que tiene la capacidad de abstracción, de encontrar patrones, de ordenar de
manera operativa, de identificar los componentes de un problema y representarlo
en una notación formal que permita establecer una solución para el mismo. Todas
las personas nos enfrentamos día a día a un sin número de problemas y somos
capaces de resolverlos de diferentes maneras, pero existen muchas dificultades al
momento de traducir este problema a un lenguaje algorítmico.

Intentar resolver lo mencionado es justamente el objetivo principal de la


asignatura de Algoritmos y Resolución de Problemas. Con las competencias
adquiridas al finalizar las asignatura, estarán en la posibilidad no solo de
aprender a programar, sino de entender cómo funcionan los distintos lenguajes
computacionales y, por tanto, entender cómo funciona la computadora. De igual

6 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRELIMINARES

manera, los conocimientos adquiridos los podrán aplicar a la resolución de los


Índice
problemas que se les presenten en el transcurso de la carrera.

Preliminares
Los contenidos han sido organizados en unidades y distribuidos equitativamente
para los dos bimestres. Se abordará en la unidad 1 los fundamentos de algoritmos Primer
bimestre
y su representación; en la unidad 2 se estudiará la naturaleza de los datos, su
representación y sus operaciones, y la unidad 3 se enfoca en el ciclo de vida Segundo
bimestre
del desarrollo de un programa y las primitivas algorítmicas básicas para la
resolución de problemas. El segundo bimestre comprende la unidad 4 que abarca Solucionario
el uso de las estructuras lógicas y condicionales, la unidad 5 las estructuras
lógicas repetitivas y finalmente completamos las temáticas planificadas en la Glosario

unidad 6 con el estudio de las estructuras de datos, arreglos unidimensionales y


Referencias
bidimensionales. bibliográficas

La programación no es un arte, es una técnica. Cualquiera que pueda pensar Anexos

podrá analizar, cualquiera que pueda analizar podrá generar algoritmos, quien
pueda generar algoritmos podrá generar modelos de datos, y quien pueda
generar modelos de datos podrá generar miniespecificaciones, codificar y probar
programas (Ramírez, 2007)

Al iniciar esta asignatura hay mucho por descubrir y aprender, lo que cada uno
quiera dar hace la diferencia. Si del tiempo planificado para sus estudios invierten
el 101% y no el 99% en los 365 días del año, se darán cuenta que el 1% de
dedicación adicional será su impulso para culminar con éxitos su carrera.

99% nuestro tiempo en 365 días → 0,99365 = 0,03

101% nuestro tiempo en 365 días → 1,01365 = 37,8

Entonces estimado estudiante no hay excusas. Lo invitamos a ponerse a trabajar.


Damos inicio a la asignatura, ¡Bienvenidos!.

7 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRELIMINARES

4 Bibliografía Índice

Preliminares

4.1. Básica
Primer
bimestre

Mancilla, A., Ebratt, R. y Capacho, J. (2014). Diseño y construcción de algoritmos.


Segundo
Barranquilla Universidad del Norte. bimestre

Solucionario
Este libro contiene un compendio detallado y sistemático que sirve para el
análisis, diseño y construcción de algoritmos.
Glosario

Cabrera, M. y Tenesaca, G. (2017). Guía didáctica de Algoritmos y Resolución de


Referencias
bibliográficas
Problemas. Loja. Universidad Técnica Particular de Loja.

Anexos
La guía didáctica está diseñada para brindar los conocimientos necesarios
sobre la resolución de problemas mediante el diseño de algoritmos. Explica
cómo representar la solución de un problema a través de diagramas de
flujo y miniespecificaciones. Además se enfoca en el uso de estructuras
lógicas de condición, de repetición y estructuras de datos. La presente guía
proporciona ejercicios y actividades recomendadas que ayudan a reforzar
los conocimientos adquieridos sobre las temáticas planificadas.

4.2. Complementaria

Farrell, J. (2013). Introducción a la programación lógica y diseño. México.


Cengege Learning Editores.

Su propósito es dar las bases y los conceptos del pensamiento lógico.


Este recurso servirá de apoyo para solventar dudas sobre los fundamentos
de algoritmos, naturaleza de los datos, estructuras lógicas condicionales,
estructuras lógicas repetitivas y estructuras de datos.

8 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRELIMINARES

Ramírez, F. (2007). Introducción a la programación : algoritmos y su


Índice
implementación en VB.Net, C#, Java y C++. México D. F Alfaomega Grupo
Editor SA.
Preliminares

El presente libro pretende que el lector consiga familiarizarse rápidamente Primer


bimestre
con el lenguaje, aprendiendo sus fundamentos y descubriendo cómo
utilizarlo para desarrollar diferentes tipos de aplicaciones. La unidad 3, Segundo
bimestre
ciclo de desarrollo y primitivas algorítmicas, se ha realizado en base a este
recurso. Solucionario

Zapata, L. (2012). Desarrollo del pensamiento analítico y sistemático: Guía Glosario

práctica para aprender a programar por competencias. Medellín Politécnico


Referencias
Colombiano. bibliográficas

Guía práctica para aprender a programar por competencias. Este recurso Anexos

apoyará en las siguientes temáticas: declaración de variables y tipos de


datos, estructuras lógicas y estructuras de control, diagramas de flujo y
codificación de programas.

9 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRELIMINARES

5 Orientaciones generales para el estudio Índice

Preliminares

El estudio de la asignatura de Algoritmos y Resolución de Problemas es una tarea


Primer
que requiere el desarrollo de algunas habilidades orientadas a descomponer un bimestre

problema en partes manejables para dar una solución óptima al mismo. Además,
Segundo
se debe considerar que esta asignatura es de primer nivel y se convierte en la bimestre

base para continuar con éxito la malla de la carrera.


Solucionario

Con el objetivo de posibilitar un aprendizaje significativo y exitoso, a continuación


Glosario
se detalla el material de estudio y los recursos que utilizaremos durante el
transcurso de la asignatura: Referencias
bibliográficas

▪▪ El plan docente: Proporciona una planificación semanal a detalle, con


Anexos
las actividades a desarrollar durante del ciclo académico, por lo que es
importante que se utilice este recurso para organizar de mejor manera su
tiempo de dedicación.

▪▪ La guía didáctica: Le orientará sobre cómo y qué temas estudiar, además


contiene actividades recomendadas y ejercicios de autoevaluación que
le permitirán fortalecer y medir su grado de comprensión conforme vaya
avanzando en la asignatura.

▪▪ El texto básico: Contiene los temas principales conforme se lo indica en la


guía didáctica. Es importante aclarar que no todos los capítulos del texto se
consideran para la asignatura y tampoco cubre todos los contenidos por lo
que el estudio debe hacerse siguiendo las instrucciones de la guía didáctica.

▪▪ El Entorno Virtual de Aprendizaje (EVA): Es el medio por el cual se podrá


interactuar con su docente y compañeros. En este entorno encontrará las
orientaciones académicas de cada unidad por semana, además de las
actividades síncronas y asíncronas planificadas. El EVA ayudará también a

10 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRELIMINARES

resolver inquietudes mediante el uso de la mensajería instantánea, foros,


Índice
chats, entre otros.

Preliminares
▪▪ La tutoría personal: Los docentes dedicamos un horario de tutoría al
estudiante. Tiempo para atender las inquietudes en relación a los contenidos Primer
bimestre
o desarrollo de las tareas, actividades recomendadas, entre otras. Para ello,
el docente publicará un anuncio en la plataforma virtual EVA con el horario Segundo
bimestre
en el puede considerar como recurso la planificación del plan docente..

Solucionario
▪▪ La tarea bimestral: Es una actividad teórica y práctica que acompaña a
la guía didáctica de cada asignatura. La tarea bimestral no es obligatoria, Glosario

pero tiene una valoración de 6 puntos que sumados a la calificación de


Referencias
participación en el EVA (4 puntos) en actividades síncronas o asíncronas, bibliográficas
dan un total de 10 puntos a la nota final de cada bimestre. Esta tarea debe
ser enviada en las fechas definidas en el calendario académico de MAD. Anexos

▪▪ Evaluación presencial: Al finalizar cada bimestre debe presentarse a la


evaluación presencial en su centro universitario. Esta evaluación se califica
sobre10 puntos, que sumados a los 10 puntos de la tarea bimestral y las
actividades en el EVA le dan un total de 20 puntos por bimestre.

Antes de iniciar el estudio de esta asignatura se recomienda considerar las


siguientes sugerencias y recomendaciones:

• Estudiar en un ambiente ordenado, con poco ruido, buena iluminación


y temperatura. Con esto, garantiza que en sus momentos de estudio no
pierda la concentración con facilidad.

• Utilice técnicas de lectura comprensiva, como una lectura general


para revisar las temáticas de cada unidad, y lecturas analíticas para
identificar los aspectos más relevantes.

11 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRELIMINARES

• Mantener un aprendizaje activo, utilizando técnicas de estudio como:


Índice
elaboración de resúmenes, esquemas, mapas conceptuales, subrayado
u otra estrategia de aprendizaje.
Preliminares

• Organizar su tiempo, de tal manera que evite dejar para el último Primer
bimestre
momento el desarrollo de las actividades previstas. Se sugiere dedicar
al menos 8 horas semanales para el estudio de esta asignatura. Segundo
bimestre
Para esta planificación es importante considerar sus ocupaciones,
habilidades y conocimientos, llevando un orden y dedicación es posible Solucionario
cumplir con esta planificación.
Glosario

• Estudiar cada una de las temáticas planteadas de forma secuencial,


Referencias
asegurándose de no avanzar a la siguiente temática si aún tiene alguna bibliográficas
duda. Para esto, tanto el plan docente como los recursos de apoyo son
de mucha utilidad. Anexos

• Dedicarse periódicamente a la revisión del texto básico, guía didáctica,


así como los anuncios, directrices y recursos que se subirán en el
Entorno de Aprendizaje Virtual (EVA).

• La asignatura tiene una naturaleza práctica, por lo que es


recomendable realizar la mayor cantidad de ejercicios sin limitarse a los
ejercicios propuestos en la guía didáctica. El texto básico provee una
cantidad de ejercicios por desarrollar, es importante analizar y realizar
dichos ejercicios para fortalecer cada una de la unidades establecidas
para la asignatura.

• Es conveniente, que realice las actividades recomendadas y


autoevaluaciones propuestas en la guía didáctica, esto le permitirá
reforzar su proceso de aprendizaje.

• Se recomienda que desarrolle la tarea conforme vaya avanzando en el


estudio. En el plan docente se planifica el desarrollo de la misma por
semana con el objetivo de cumplir con los plazos establecidos.

12 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRELIMINARES

• Se recomienda realizar todas las actividades síncronas y asíncronas


Índice
planificadas por el docente en el transcurso de la asignatura. Estas
actividades tienen dos objetivos, ayudar a fortalecer el conocimiento y
Preliminares
dar una valoración para la aprobación de la asignatura.
Primer
bimestre
• Es importante conocer que en el transcurso del ciclo académico,
existen tres momentos de evaluación presencial: el primer bimestre: Segundo
bimestre
que corresponde a los contenidos desarrollados en los primeros
dos meses (ocho semanas) del período académico. En el segundo Solucionario
bimestre: considera los contenidos desarrollados en los siguientes dos
últimos meses (ocho semanas) del período académico. Evaluación Glosario

final: dirigida a los estudiantes que no alcanzaron el puntaje mínimo de


Referencias
aprobación de 28 puntos sobre 40 puntos (28/40). bibliográficas

• Finalmente, recordar su auto motivación y perseverancia para superar Anexos

las dificultades que se presenten en el camino de su aprendizaje. Pero


es importante recordar los horarios de tutoría y el chat permanente
de consulta. Esto le ayudará a no sentirse solo ya que cuenta con un
equipo de docentes para apoyarlo.

13 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

6 Proceso de enseñanza-aprendizaje para el logro de competencias Índice

Preliminares

PRIMER BIMESTRE Primer


bimestre

Segundo
bimestre
UNIDAD 1. FUNDAMENTOS DE ALGORITMOS Y SU REPRESENTACIÓN
Solucionario

“Para tener éxito, tus deseos de triunfar deberían


ser más grandes que tu miedo de fracasar”. Glosario

Bill Cosby.
Referencias
bibliográficas

Estimado estudiante:
Anexos

Iniciamos el estudio de esta asignatura y le pido que vaya al título de la primera


unidad del texto básico. La lectura del mismo le permite saber de qué se trata la
temática y tener una visión general acerca del contexto del marco de Lógica de la
Programación. La primera unidad del texto está enfocada a analizar el desarrollo
tecnológico como el desarrollo de las formas de razonamiento humano. Por ello lo
invitamos a revisar la presente unidad.

En la presente unidad revisaremos el Capítulo 1: Marco


conceptual de la Lógica de programación del texto básico, así
mismo, puede ayudarse de los libros de Lógica planteados en la
bibliografía complementaría, si puede disponer de ellos sería
importante que los use para reforzar los temas planteados.

1.1. Concepto de Lógica

Lógica es una rama de la filosofía que estudia de manera formal las deducciones
válidas que se derivan de un sistema de razonamiento fundamentado en un
conjunto de reglas, es decir, la Lógica investiga la relación de consecuencia que
se da entre una serie de premisas y la conclusión de un argumento correcto.

14 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

En el texto nos habla de términos importantes de Lógica por ello lo invitamos a


Índice
que lea la sección 1 en la página 1 del texto básico.

Preliminares
¿Cómo le fue con la lectura? Espero haya sido un buen comienzo. Podemos,
entonces, seguir con el siguiente tema de la página 2 del texto básico que es muy Primer
bimestre
interesante y le permitirá avanzar en su estudio.
Segundo
bimestre
1.2. Algoritmo
Solucionario
Un algoritmo es como una secuencia de instrucciones que representan un
modelo de solución para determinado tipo de problema. Según el texto básico un Glosario

Algoritmo representa un conjunto finito de reglas bien definidas en su lógica de


Referencias
control que permiten la solución de un problema en una cantidad finita de tiempo. bibliográficas
En la Figura 1 se observa las cuatro reglas para desarrollar un algoritmo.
Anexos

1 2
1 Reglas de Entrada Reglas intermedias "
- Punto inicial - Proceso
- Cálculo

4 3
%
Reglas de finalización Proceso lógico
- Punto final - Respuesta de usuario

Figura 1. Reglas de un algoritmo


Fuente: Mancilla, (2014)
Elaboración: Cabrera, M.; Tenesaca, G., (2018)

A continuación detallamos el conjunto de reglas:

• Una(s) regla (s) de entrada(s) al algoritmo o punto inicial del algoritmo.

15 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

• Una o un conjunto de reglas intermedias (reglas de proceso o de


Índice
cálculo)
• Un conjunto o una regla de finalización de algoritmo, que asegure su
Preliminares
terminación.
• Exactitud en el proceso lógico de organización de las reglas a fin de dar Primer
bimestre
respuestas al usuario.
Segundo
bimestre
A continuación, lo invitamos a revisar el siguiente ejemplo propuesto, el mismo le
permitirá poner en práctica lo aprendido, en especial al desarrollar un algoritmo Solucionario
utilizando un conjunto de reglas.
Glosario

Ejemplo 1.1 Crear las reglas en las que permita crear un barco de papel.
Referencias
bibliográficas
Tenemos una hoja de papel, cuyo tamaño es A4.
Análisis: Anexos

Se tiene la hoja de tamaño A4 que permita construir un barco de papel.


Solución:
1. Primero debe doblar la hoja en la mitad (largo de hoja)
2. Nuevamente doblar la hoja en la mitad
3. Se abre el pliegue anterior y se realiza 2 nuevos pliegues desde
las esquinas y deberán coincidir con la línea central marcada
anteriormente.
4. Se procede a doblar hacia arriba los bordes inferiores que han quedado
del paso anterior, una para cada lado de la hoja.
5. Introducir los extremos sobrantes que han quedado de los pasos
anteriores, doblar uno interiormente bajo del otro, en ambos extremos
sobrantes.
6. Abrir y doblar de tal forma que forme un cuadrado y doblar las
esquinas, para lo cual se recomienda una distancia de 1 cm entre los
dos pliegues.
7. Abrir el hueco que se forma abajo del barco y se pliega en el otro
sentido del papel.
8. Finalmente, estirar de los dos extremos de los pliegues formando el
barco de papel.

16 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

La Figura 2 muestra los pasos enunciados en el apartado anterior del ejemplo 1.1
Índice
Análisis para construir un barco de papel, el ejercicio es desarrollado con el fin de
comprender el término de algoritmo como “secuencia de instrucciones”.
Preliminares

Primer
bimestre

Segundo
bimestre

Solucionario

Glosario

Referencias
Figura 2. Algoritmo armar un barco de papel. bibliográficas

Fuente: https://es.pinterest.com/pin/564005553307105984/
Anexos

A continuación se propone el siguiente ejemplo, lo que permitirá poner en práctica


lo aprendido.

Ejemplo 1.2 Calcular el área de un terreno rectangular.

Sean a y b los lados del rectángulo, cuyos lados son a= 30 metros (alto) y b= 40
metros (largo), diseñe un conjunto de reglas para determinar el área del terreno.

Análisis:

Figura 3. Rectángulo
Elaboración: Cabrera, M.; Tenesaca, G., (2018)

17 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

El área A del rectángulo se determina con A = ancho x alto, en este caso tenemos
Índice
A = a x b.

Preliminares
Solución:

Primer
bimestre
• Primero: Se requiere una regla mediante la cual obtengamos los datos
de entrada. Entonces R1 es igual a obtener a y b. Segundo
bimestre

• Segundo: Se necesita la segunda regla R2 que calcule el valor del área Solucionario
del terreno de forma rectangular, de acuerdo a la ecuación de cálculo A
= a x b, por tanto: R2 = Calcular el valor de área A que es igual a alto a Glosario
por el ancho b del rectángulo.
Referencias
bibliográficas
• Finalmente, es necesaria una tercera regla R3 que muestre el resultado
del cálculo. Luego, R3 = Muestre el valor de área (A) calculada. Anexos

• Finalmente, organizamos de una forma lógica las reglas definidas


anteriormente. Es decir, su ejecución manual es R1 → R2 → R3, si y solo
si se realiza la secuencia de las reglas con el fin de lograr el cálculo del
área del terreno rectangular, cuyo valor es, por ejemplo:
R = a x b = 30 x 40 = 120

El valor de 120 induce que de acuerdo a los primeros datos de entrada a = 30, b =
40 , la respuesta del Área es exacta = 120
Finalmente podemos ver en la Tabla 1. Un resumen del algoritmo para determinar
el área de rectángulo

Tabla 1. Algoritmo para determinar el área del terreno rectángulo.

Entrada Proceso Salida


R1 R2 R3
Obtener a y b Calcular valor Presentar el valor de Ʌ
A=axb
Fuente: Mancilla, (2014)
Elaboración: Cabrera, M.; Tenesaca, G., (2018)

18 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

El problema puede complicarse más cuando se pide determinar el área de


Índice
un paralelepípedo. ¿Sería capaz de plantear una solución considerando este
problema? Lo invitamos a solucionarlo en papel.
Preliminares

Una vez culminada la presente sección, es importante que estudie


Primer
ahora los apartados del Capítulo 1: sección 1.1 y 1.2 del texto bimestre

básico.
Segundo
bimestre

Además, si todavía tiene inquietudes respecto a la temática, a continuación lo


Solucionario
invitamos a revisar los siguiente recurso de apoyo, que le explica ¿qué es un
algoritmo?
Glosario

Recursos de apoyo
Referencias
bibliográficas
Para fortalecer los conocimientos adquiridos se recomienda
revisar el siguiente recurso audiovisual.
Anexos
• http://purl.org/taw-sbc-utpl/algorithm/unit1/v1_algortimos

¿Pudo acceder al enlace?. Ahora respondamos la pregunta: ¿Qué es un


algoritmo? En el recurso de apoyo se define a un algoritmo como una serie
de pasos o instrucciones finitas y ordenadas que sirven para dar solución
a un problema, un algoritmo debe ser preciso y sin ambigüedades. Un
algoritmo debe tener siempre inicio y fin, entre el inicio y el fin debe estar las
instrucciones o pasos.

Existen dos tipos de algoritmos cualitativo y cuantitativo; el algoritmo cualitativo


es aquel que describe situaciones de la vida cotidiana por ejemplo “algoritmo
para encender un computador”, algoritmo cuantitativo es aquel que realiza
operaciones matemáticas que tiene procesos, tiene entrada que es procesada
para generar una salida por ejemplo “algoritmo para determinar la edad de
una persona”. Además en el recurso existe una tarea planteada, lo invitamos a
desarrollar el ejercicio. ¡Adelante, que lo están haciendo muy bien!

¿Qué le pareció la temática?. Ahora bien, para reforzar su aprendizaje sobre


algoritmos, lo invitamos a estudiar la sección 1.2.2 – Algoritmo del texto básico.

19 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Esta sección le ayudará a comprender de mejor manera el siguiente tema de


Índice
estudio: Sistema

Preliminares
1.3. Sistema
Primer
bimestre
Existen muchos puntos de vista para definir un sistema, entre ellas una definición
genérica de sistema es que debe ser capaz de ser absorbido por un sistema Segundo
bimestre
mayor como una de sus partes.
Solucionario
Una definición más enfocada al punto de vista informático es: Sistema se
refiere a las interacciones de componentes de diferentes formas, tales como Glosario

técnicas o instruccionales. Una de las características de la definición de


Referencias
sistema es la generación de información, a continuación se propone una bibliográficas
definición.
Anexos
Información: Es considerada como un conjunto organizado de datos derivados
de un sistema en operación.

Para reforzar la temática, revisar los apartados del Capítulo 1:


Concepto de Sistema del texto básico.

Para fortalecer su aprendizaje sobre Sistema lo invitamos a estudiar la sección


1.3 Concepto de sistema del texto básico. Esto nos ayudará a comprender de
mejor manera el siguiente tema de estudio: conceptos de algoritmo, lógica de
programación y lenguajes de programación.

1.4. Concepto de algoritmo en el marco de la Lógica

Desde el punto de vista de la Lógica, un algoritmo conduce a identificar que, la


resolución de problemas factibles de ser tratados por máquinas de procesamiento
electrónica de datos o computador inicia en el sistema de razonamiento humano.

20 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

1.5. Lógica de programación


Índice

La lógica de programación es una herramienta que combina los campos de


Preliminares
la lógica humana, la algoritmia y la ciencia de la computación en un sentido
informático, para consolidar las capacidades del ingeniero en identificar, formular Primer
bimestre
y resolver problemas en Ingeniería.
Segundo
bimestre
Este tema se profundiza con la lectura del texto básico en la página 12 de la
sección 1.4 Concepto de algoritmo en el marco de la lógica. Solucionario

1.6. Lenguajes de programación: sintaxis básicas. Glosario

Referencias
Basados en Ramírez, (2007) los lenguajes de programación son estructuras bibliográficas
simbólicas que nos permiten disponer de los dispositivos de una computadora.
El objetivo primordial de un lenguaje de programación es, hacernos pues la Anexos

vida más sencilla, proporcionando formas humanamente comprensibles.

Sin la existencia de lenguajes de programación de alto nivel, sería imposible la


elaboración de programas tan útiles y complejos como Microsoft Word o Microsoft
Excel, los lenguajes de programación tienen los siguientes elementos que
presentan la Tabla 2:

Tabla 2. Elementos de los lenguajes de programación1

Elemento Descripción Ejemplo


Estructuras Presenta la forma general en que Public class Coche {
de código debe escribirse un programa, con private String nombre;
el fin de delimitar los bloques de private int idDrawable;
código1 que lo componen, en una public String getNombre( ) {
forma ordenada y sistemáticas. return nombre;
}
}

1 Bloque de código: conjunto de líneas de código que pueden ser consideradas como unidad
independiente de ejecución

21 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Elemento Descripción Ejemplo


Índice
Palabras Son palabras con significado Generalmente son palabras en inglés,
reservadas dentro del lenguaje de que en el caso de ser verbos están
Preliminares
programación que no podrán ser en infinitivo: palabras como PRINT, o
utilizadas más que en el sentido DELETE.
Primer
original en el que fueron creadas. bimestre

Símbolos que provocarán un


Segundo
comportamiento predecible. bimestre
Expresiones Son valores expresados de forma Class Sumas {
entendible para el lenguaje de public static void main (String args Solucionario

programación. Generalmente [ ]){


los datos de tipo numérico no String bienvenida=”Bienvenido Glosario

tienen problemas, ya que se a UTPL”


escriben como normalmente los int b=7; Referencias
bibliográficas
entendemos. Las expresiones int Alberto=8;
textuales, llamadas cadenas int resultado; Anexos
son secuencias de caracteres resultado= b+alberto
generalmente delimitadas por // esta es la línea de expresión
comillas simples o dobles, System.out.println(bienvenida);
dependiendo del lenguaje. System.out.println(“El resultado
es: ” +bienvenida);
}
}
Símbolos Son los caracteres (generalmente A esta categoría pertenecen
especiales no más de dos), que provocan típicamente los operadores
un comportamiento predecible aritméticos (+,-,*, /) y de comparación
dentro de un programa. (<,>, <>,=).
Sintaxis Es la forma ordenada en que se //Aplicación Hola UTPL de ejemplo
deben especificar la palabras class HolaUTPL {
reservadas, las expresiones y
los símbolos especiales, a fin public static void main ( String args
de que tengan significado para []){
el lenguaje de programación. System.out (‘ Hola UTPL’ );
Generalmente que no se respetar }
las reglas de sintaxis de un }
lenguaje provoca errores en los
programas.

22 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Elemento Descripción Ejemplo


Índice
Semántica Son las reglas que determinan el Un ejemplo en el que la semántica
significado que ha de dársele a toma relevancia es cuando se utiliza
Preliminares
una palabra reservada, expresión en algunos lenguajes el símbolo
o símbolo especial, dependiendo de igualdad (=); dependiendo de
Primer
del contexto de sintaxis en que la sintaxis utilizada el símbolo de bimestre

se encuentran. igualdad puede asignar un valor, o


Segundo
bien indicar una comparación en la bimestre

que deseamos saber si un valor es


igual a otro. Solucionario

Fuente: Mancilla, (2014)


Elaboración: Cabrera, M.; Tenesaca, G., (2018) Glosario

Referencias
Ahora, lo invitamos a revisar el siguiente ejemplo propuesto esto le permitirá bibliográficas
poner en práctica lo aprendido. El ejemplo 1.3 realiza la suma de dos números en
lenguaje de programación Java, en el mismo se detalla la sintaxis y la estructura Anexos

que se utiliza para desarrollar un programa.

Ejemplo 1.3 Programa que suma dos números

import java.lang.*;
import java.io.*;
import java.util.*;
public class Sumas {

public static void main(String[] args) {

int a=0, b=0;


int sum;
Scanner Teclado= new Scanner (System.in);
System.out.println("Ingrese el primer número");
a=Teclado.nextInt();
System.out.println("Ingrese el segundo valor");

23 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

b=Teclado3.nextInt();
Índice

sum=a+b;
Preliminares

System.out.println("La suma de los dos números es:"+sum); Primer


bimestre
}
} Segundo
bimestre
Es momento de reforzar lo aprendido con el desarrollo de algunos ejercicios
propuestos y recursos de apoyo que le ayudarán a fortalecer la elaboración de Solucionario
diagramas de flujo.
Glosario
Recursos de apoyo
Para fortalecer los conocimientos adquiridos se recomienda Referencias
bibliográficas
revisar el siguiente recurso audiovisual.
• http://purl.org/taw-sbc-utpl/algorithm/unit1/v2_programacion Anexos

¿Pudo revisar el recurso? ¿Qué le pareció? Interesante! ¡Verdad!. La


explicación le ayudará a diferenciar los principios básicos de programación,
definiciones como: Lógica es tener idea del camino más fácil para lograr
nuestro objetivo, en programación siempre está sujeto a decidir entre varias
alternativas distintas, entonces se debe analizar cada alternativa y ver la mejor
decisión.

Otras definiciones importantes de conocer es

¿Qué es un programa?

Un programa es un conjunto de instrucciones que logran un objetivo al ser


ejecutadas, el objetivo es el programa.

¿Qué es programación?

Programación es crear una serie de pasos o instrucciones para que un


problema pueda ser resuelto.

24 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Conceptos que elementales conocer y saber diferenciar. Si desea avanzar o


Índice
tener más información puede seguir el canal de subscripción ya que esto le
ayudará a fortalecer su estudio. Éxitos estimado estudiante.
Preliminares

La revisión de los recursos de apoyo le ayudará a comprender de mejor manera el Primer


bimestre
siguiente tema de estudio: Diagramas de flujo y su representación, cabe recalcar
que este tema no se encuentra en el texto básico, por ello lo invitamos a revisar la Segundo
bimestre
bibliografía complementaria.

Solucionario

1.7. Diagramas de flujo y su representación


Glosario

Un diagrama de flujo es una representación visual del tratamiento de un


Referencias
problema; como mínimo, un diagrama de flujo muestra las operaciones bibliográficas
realizadas dentro del proceso que pretende la solución del problema y la
secuencia en la que son realizadas dichas operaciones. Anexos

Los diagramas de flujo generalmente son elaborados en las fases iniciales del
ciclo de vida de desarrollo (análisis, diseño), dado que facilitan la comunicación
entre los desarrolladores y los clientes; una de sus mayores virtudes es que
facilitan el entendimiento de la lógica del problema a resolver, transformando
problemas grandes y complejos en una serie ordenada de actividades por realizar.

1.7.1. Ventajas de los diagramas de flujo

A continuación la Figura 4 presenta las diferentes ventajas de utilizar diagramas


de flujo. Para la elaboración de diagramas de flujo se puede utilizar Microsoft Visio
o Raptor, entre otros.

25 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Índice
Son una de las mejores
Son generalmente Permiten el análisis de
formas de comunicar la
conocidos e un problema de forma
lógica de un programa Preliminares
interpretados. abstracta.
o sistema.

Primer
bimestre
Apoyan al proceso de
depuración de programas, Segundo
Son aceptados como
Sirven como referencia sobre todo en la solución bimestre
documentación técnica
para los de problemas relacionados
para los programas y
programadores. con la lógica del programa,
desarrollos. Solucionario
mismos que el compilador
es incapaz de detectar.

Glosario
Facilitan las funciones
de mantenimiento a los
Referencias
programas, al bibliográficas
exponerlos de una
forma clara y lógica.
Anexos

Figura 4. Ventajas de los diagramas de flujo.


Elaboración: Cabrera, M.; Tenesaca, G., (2018)

En el tema de diagramas de flujo y sus ventajas destaca la importancia que tiene


cada uno de los símbolos para desarrollar un algoritmo, ahora es importante
conocer que cada uno de estos símbolos se basan a un Estándar ANSI/ISO
5807-1985 que distingue cada uno de los tipos de diagramas que existen, en el
siguiente tema revisamos esta temática.

1.7.2. Estándar ANSI/ISO 5807-1985 para diagramas de flujo

De acuerdo al estándar ANSI/ISO 5807-1985 de la (American National Standard


Institute), los diferentes tipos de diagramas de flujo son los siguientes.

• Diagramas de flujo de datos (data flowchart).


• Diagramas de flujo de programas (program flowchart).
• Diagramas de flujo de sistemas (system flowchart).
• Diagrama de flujo de red (program network chart).
• Diagramas de recursos de sistemas (system resources chart).

26 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

El estándar ANSI/ISO 5807-1985 define un diagrama de flujo como la


Índice
representación gráfica de la definición, análisis y métodos de solución de
problemas, en el cual los símbolos son utilizados para representar operaciones,
Preliminares
datos, flujos, equipo. Un símbolo es una representación gráfica asociada a un
concepto de funcionalidad determinado. Dicha asociación, para ser efectiva, debe Primer
bimestre
ser generalmente entendida y aceptada.
Segundo
bimestre
El estándar propone símbolos para todos los tipos de diagramas, pero hace la
distinción respecto a los símbolos que aplican para cada tipo de diagrama en Solucionario
particular. Desde luego, para nuestro interés nos centramos en los diagramas de
flujo de programas. Un diagrama de flujo de programa contiene los siguientes Glosario

elementos:
Referencias
bibliográficas
• Símbolos de procesamiento que definen la ruta que seguirá el
programa tomando en cuenta condiciones lógicas. Anexos

• Líneas de flujo que indican el flujo de control de las operaciones.


• Símbolos especiales que facilitan la lectura y escritura del diagrama de
flujo.

Hasta ahora hemos revisado los 5 tipos de diagramas de flujo, a continuación en


la sección 1.7.3 estudiaremos los símbolos más utilizados en los diagramas de
flujo.

1.7.3. Símbolos utilizados en los diagramas de flujo

De acuerdo al estándar ANSI/ISO 5807-1985 los símbolos se dividen en las


siguientes categorías:

• Símbolos de datos(data symbols)


• Símbolos de proceso (process symbols)
• Símbolos de líneas (line symbols)
• Símbolos especiales (special symbols)

27 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

La Tabla 3 presenta un resumen descriptivo de los símbolos y las categorías de


Índice
los diagramas de flujo de programas..

Preliminares
Tabla 3. Símbolos y categorías de los diagramas de flujo de los programas

Primer
bimestre
Símbolo Categoría Nombre y utilidad

De datos Símbolo de datos (data): Representa los datos de Segundo


bimestre
entrada y salida.
Operaciones que soporta: Solucionario
▪▪ Petición de datos
▪▪ Muestra de datos.
Glosario
De proceso Símbolo de datos (process): Representa cualquier
operación de procesamiento por ejemplo: la Referencias
bibliográficas
ejecución de una o más operaciones que resultan
en un cambio de valor, forma o ubicación de la
Anexos
información; también puede tratarse de operaciones
para determinar una o más rutas que puede seguir
el flujo del programa (sin que sea una decisión)
Operaciones que soporta:
▪▪ Declaraciones
▪▪ Cambios de estado.
De proceso Símbolo de proceso definido(Predefined Process)
Representa un proceso nominado que consiste en
una o más operaciones especificadas en otro lado,
como podría ser una subrutina, una clase o un
módulo externo. Puede ser utilizado para evitar la
mezcla de operaciones de diferente nivel.
Operaciones que soporta:
▪▪ Llamado a procedimiento.

28 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Símbolo Categoría Nombre y utilidad Índice

De proceso Símbolo de Preparación (Preparation)


Este símbolo representa una modificación o Preliminares

instrucción que afecta la actividad subsecuente,


Primer
aunque no forma parte del problema. Ejemplo bimestre
de esto sería una variable de trabajo o inicializar
contadores y acumuladores. Segundo
bimestre
Operaciones que soporta:
▪▪ Cambios de estado Solucionario
De proceso Símbolo Modo paralelo (Parallel mode)
Representa la sincronización de dos operaciones
Glosario
que deben realizarse de forma dependiente
(paralelo). El uso del modo paralelo hace obligatorio Referencias
bibliográficas
que para realizar un proceso sea necesaria la
conclusión de otro proceso.
Anexos
Operaciones que soporta:
▪▪ Cambios de estado
De proceso Símbolo de decisión y ciclo (Loop limit)
Representa el inicio y fin de un bucle. La decisión
a evaluar se encontrará en el límite inicial o en el
final, dependiendo del tipo de ciclo que se esté
utilizando.
Operaciones que soporta:
▪▪ Estructuras de control
De línea Símbolo Línea de flujo (Line)
Representa el flujo de datos y el control de la
operación programa. Representa la secuencia
lógica en que se desarrolla las operaciones.
De línea Símbolo Línea punteada (Dashed Line)
Representa una relación alternativa entre dos
o más símbolos. Es útil para representar una
conexión poco común entre dos o más elementos.
Especiales Símbolo Conector (Connector)
Traslada el control del programa a otra parte dentro
del mismo diagrama. Cada conector deberá contar
con un identificador único.

29 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Símbolo Categoría Nombre y utilidad Índice

Especiales Símbolo Terminador (Terminator)


Representa la salida o la entrada al diagrama. Preliminares

Al menos se debe tener una entrada al diagrama


Primer
(inicio), y al menos una terminación (fin). bimestre
Especiales Símbolo Anotación (Annotation)
Agrega explicaciones que clarifiquen de forma Segundo
bimestre
descriptiva el funcionamiento del diagrama y sus
elementos. Solucionario
Fuente: Mancilla, (2014)
Elaboración: Cabrera, M.; Tenesaca, G., (2018)
Glosario

1.7.4. ¿Cómo elaborar un diagrama de flujo en un programa? Referencias


bibliográficas

El desarrollo de diagramas de flujo puede realizarse de dos formas, la primera es Anexos


partir de una mini especificación y la segunda es hacerlo directamente sin ella, en
cualquiera de los dos casos debemos tener en cuenta la necesidad de realizar el
análisis correspondiente del problema.

Revisemos el siguiente ejemplo propuesto que se desarrolla partiendo desde una


miniespecificación a un diagrama flujo.

Ejemplo 1.4 Se desea desarrollar un algoritmo que muestre el proceso de


comprar o plantar flores en la primavera

30 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Nro Miniespecificación
Índice
1 Inicio
2 //se solicita preguntar
Preliminares
3 << “¿Plantaremos flores este año?”
4 //Si es si entonces se condiciona
Primer
5 Si (“Plantaremos flores este año”) entonces bimestre
6 Escriba “Comprar flores para macetas”
7 Si (Se predice frio esta noche) entonces Segundo
bimestre
8 Si (la temperatura es de 50° F) entonces
9 Escriba “Poner las flores al aire libre durante el día”
Solucionario
10 Sino
11 Escriba “Mantener las flores de las macetas cubiertas durante el día”
12 Fin Si Glosario
13 Fin Si
Referencias
bibliográficas
Diagrama de flujo
Anexos

No Si

No Si

No Si

Como se muestra en el diagrama de flujo anterior permite hacer un seguimiento


más claro de la lógica utilizada para resolver el problema, para la solución del
problema (caso real) se utiliza las estructuras de decisión y de proceso que
ayudan a tener claro el desarrollo de la solución.

31 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

A continuación, se presenta el ejemplo 1.5 propuesto lo que ayudará a reforzar lo


Índice
aprendido.

Preliminares
Ejemplo 1.5 Se desea desarrollar un diagrama de flujo para un programa que
indique si un número ingresado es perfecto. Se considera un número perfecto Primer
bimestre
cuando la sumatoria de todos sus divisores exactos es igual al mismo número.
Segundo
bimestre
Tabla 4. Miniespecificación del problema

Solucionario
Nro Miniespecificación
1 Inicio
2 //declaración de variables Glosario

3 num, i[0-n], i[0 - n] // número a determinar si es perfecto


Referencias
4 cnt, i[0-n], i[0 - n] // contador del ciclo repetitivo bibliográficas
5 sum, i[0-n], i[0 - n] // variable que almacena divisores exacto
6 //inicialización de variables
Anexos
7 cont ← 1, sum ← 0
8 //se solicita que se ingrese el número para determinar si es número perfecto
9 << “Ingrese el número a determinar si es perfecto”
10 >>num
11 Mientras (cnt <= num) entonces //determinar si número es perfecto
12 Si ((num % cnt)=0) entonces
13 <<cnt
14 sum=sum+cnt
15 Sino
16 cnt=cnt+1
17 Fin si
18 Fin Mientras
19 Si( sum=num) entonces
20 <<”El número es perfecto”
21 Fin si
22 Fin

Si traducimos esta miniespecificación a diagrama de flujo obtendríamos el


diagrama que se presenta en la Figura 5, en el cual se puede apreciar con
claridad la lógica de programación utilizada, a pesar de que el código en la
miniespecificación es corto, el seguimiento del diagrama se facilita en el diagrama
de flujo.

32 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Índice

Preliminares

Primer
bimestre

Segundo
bimestre

Solucionario
No

Glosario

Si
Referencias
bibliográficas

No
Anexos

Si

Si

No

Figura 5. Diagrama de flujo para determinar si un número es perfecto


Fuente: (Calderón B, 2010)
Elaboración: Cabrera, M.; Tenesaca, G., (2018)

33 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

En primer lugar todo diagrama de flujo debe iniciar con el símbolo de inicio, de la
Índice
de siguiente manera:

Preliminares

Primer
bimestre

Segundo
Figura 6. Inicio de Diagrama de flujo determinar si un número es perfecto. bimestre
Elaboración: Cabrera, M.; Tenesaca, G., (2018)

Solucionario

Luego, se realiza la petición de datos, se almacena en la variable num el


número ingresado por teclado. Seguido de ello, el diagrama de proceso realiza la Glosario

asignación del valor de 1 a la variable cnt y a sum se asigna el valor de 0.


Referencias
bibliográficas

Anexos

Figura 7. Inicio de Diagrama de flujo determinar si un número es perfecto.


Elaboración: Cabrera, M.; Tenesaca, G., (2018)

Una vez realizada la asignación y presentación de variables, se realiza el control


mediante el proceso de decisión en la que compara si la división exacta de (num
/ cnt) =0, si esto es verdadero muestra el valor de cnt y realiza el proceso de
asignar a sum el valor de sum + cnt, caso contrario que sea falso lo que debe

34 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

realizar es preparar una modificación que afecte el estado de las variables e


Índice
iniciar la decisión a evaluar.

Preliminares

Primer
bimestre

Segundo
bimestre

Solucionario

Glosario

Referencias
bibliográficas

Anexos

Figura 8. Inicio de Diagrama de flujo determinar si un número es perfecto.


Elaboración: Cabrera, M.; Tenesaca, G., (2018)

En la siguiente parte del diagrama de flujo de la Figura 9, se realiza la


comparación con el símbolo de decisión que compara si la variable sum = num
si esto es verdadero a través del símbolo de datos presenta que “El número es
perfecto”, caso contrario en esa comparación es falso entonces presenta con
símbolo de datos “El número no es perfecto”

35 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Índice

Preliminares

Primer
bimestre

Segundo
bimestre

Figura 9. Decisión de Diagrama de flujo determinar si un número es perfecto.


Solucionario
Elaboración: Cabrera, M.; Tenesaca, G., (2018)

Glosario
Finalmente, una vez determinado si el número es o no perfecto finalizamos el
proceso y fin del diagrama de flujo con el mismo símbolo terminador. Referencias
bibliográficas

Anexos

Figura 10. Decisión de Diagrama de flujo determinar si un número es perfecto.


Elaboración: Cabrera, M.; Tenesaca, G., (2018)

A continuación se presenta el siguiente recurso con una explicación más amplia


sobre la elaboración de diagramas de flujo.

Recursos de apoyo
Para fortalecer los conocimientos adquiridos se recomienda
revisar el siguiente recurso audiovisual.
• http://purl.org/taw-sbc-utpl/algorithm/unit1/v3_diagramas

Bien en el primer recurso estudiamos que es un algoritmo y los tipos de


algoritmos que existen, bueno pues ahora en este recurso estudiaremos

¿Qué es un Diagrama de flujo.

36 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Índice
Un diagrama de flujo es otra herramienta que ayuda a representar los
algoritmos de forma gráfica con una simbología específica.
Preliminares

¿Para qué sirve los diagramas de flujo?, Los diagramas de flujo son Primer
bimestre
considerados como un entregable en la fase de diseño, y ayudan a
esquematizar de mejor manera un algoritmo. Son de mucha ayuda para Segundo
bimestre
que los programadores puedan entender el problema a codificar. Estimado
estudiante, si tiene más inquietudes puede consultar a su Docente mediante el Solucionario

chat de tutoría permanente. ¡Continuamos con la asignatura!


Glosario
Recuerde realizar las actividades planteadas como interacción en
el EVA para fortalecer sus conocimientos, además obtendrá Referencias
bibliográficas
retroalimentación de sus tutores y demás compañeros.

Anexos

37 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

AA Autoevaluación 1 Índice

Preliminares

Estimado estudiante, hemos concluido el estudio de la primera unidad,


Primer
continuaremos con el siguiente tema, no sin antes comprobar lo aprendido hasta bimestre

ahora realizando la autoevaluación.


Segundo
bimestre

Seleccione la respuesta según corresponda:


Solucionario

1. El desarrollo de la Informática como ciencia, estudia el tratamiento de:


Glosario

a. Ficheros
Referencias
b. Información bibliográficas

c. Programas
Anexos

2. Traslada el control del programa a otra parte dentro del mismo diagrama.

a. Símbolo conector
b. Símbolo de línea de flujo
c. Proceso

3. Realiza un conjunto de pasos cuya ejecución para dar la solución del


problema puede ser ejecutada manualmente, mecánicamente o utiliza una
máquina de procesamiento electrónico de datos.

a. Sistema
b. Lenguaje de programación
c. Algoritmo

4. Es una ventaja ser generalmente conocidos e interpretados :

a. Diagramas de flujo
b. Miniespecificación
c. Sistema

38 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

5. Es utilizado para procesar información y obtener resultados, capaz de


Índice
ejecutar cálculos y tomar decisiones a velocidades millones o cientos de
millones más rápidas que puedan hacerlo los seres humanos.
Preliminares

a. Sistema computacional Primer


bimestre
b. Computadora
c. Lenguaje de programación Segundo
bimestre

6. Son los caracteres (generalmente no más de dos), que provocan un Solucionario


comportamiento predecible dentro de un programa Ítem.
Glosario
a. Variables
b. Palabras reservadas Referencias
bibliográficas
c. Símbolos especiales
Anexos

7. Generalmente son elaborados en las fases iniciales del ciclo de vida de


desarrollo (análisis, diseño).

a. Diagramas de flujo
b. Lenguajes de programación
c. Símbolo de datos

8. En un diagrama de flujo, el paralelogramo es el símbolo de diagrama de flujo


que representa

a. Petición de datos
b. Proceso definido
c. Operación de decisión

39 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

9. Relacione el término con la forma apropiada (Ver figura 11


Índice

1. Conector a
Preliminares
2. Límite de bucle b
Primer
bimestre

3. Decisión c Segundo
bimestre

4. Terminador d Solucionario

Glosario
5. Proceso e

Referencias
bibliográficas
Figura 11. Accesibilidad Universal
Elaboración: Cabrera, M.; Tenesaca, G., (2018)
Anexos

a. 1a, 2b, 3d, 4e, 5c


b. 1c, 2e, 3b, 4d, 5a
c. 1e, 2c, 3a, 4d, 5b

40 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

10. Complete el siguiente diagrama de flujo, para que permita pedir un mensaje
Índice
al usuario y luego presente el mismo en pantalla.

Preliminares
Diagrama de flujo a Diagrama de flujo b Diagrama de flujo c

Primer
bimestre

Segundo
bimestre

Solucionario

Glosario

Referencias
bibliográficas

Anexos

a. Diagrama de flujo a
b. Diagrama de flujo b
c. Diagrama de flujo c

¿Cómo le fue en la autoevaluación? Seguramente muy bien, pero


para que esté seguro compare sus respuestas de la parte objetiva
con las que constan en el SOLUCIONARIO que está al final de la
guía didáctica. Si hubiera discrepancias o dudas, vuelva a leer
estos temas a fin de que pueda cubrir los vacíos y reforzar su
aprendizaje.

Ahora, es momento de iniciar el aprendizaje de la Unidad dos, con


el tema Datos e Información.

41 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

UNIDAD 2. DATOS E INFORMACIÓN Índice

“Nunca consideres el estudio como una Preliminares

obligación, sino como una oportunidad para entrar


Primer
en el bello y maravilloso mundo del saber.” bimestre

Albert Einstein
Segundo
bimestre

Señor estudiante, es un gusto iniciar nuevamente el desarrollo de esta segunda


Solucionario
unidad. En esta ocasión, haremos una explicación más detallada de la
representación de la información en la computadora que justamente utiliza para
Glosario
construir los códigos de la computadora. Además revisar las definiciones de
variables, tipos de datos, operadores y las expresiones que se utiliza para realizar Referencias
bibliográficas
y presentar en un programa.

Anexos
2.1. Datos e información

Los datos constituyen la “materia prima” de la información. Un dato representa un


número, una letra o un carácter que puede tener o no significado para quién lo
recibe. Si tomamos un conjunto de datos es muy posible que no trasmita ningún
mensaje entendible o que no tenga relación entre sus elementos, es decir, los
datos no representan información o no tiene significado. Los datos no tienen la
capacidad de representar información por sí solos.

La información es la asociación coherente y con significado dentro de un


contexto definido de datos individuales o de un conjunto de datos. Por lo
tanto la información siempre tendrá significado para quien la recibe. Para una
empresa la información representa el “activo más valioso” que posee.

Para que la computadora interprete los datos deben estar en un lenguaje


codificado como es sistema numérico binario (0 y 1).

42 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

0 1 1 0 1 0 0 1 1 0 1 0 0 1 1 0 1 Índice

Figura 12. Datos en arreglo lineal del sistema binario


Elaboración: Cabrera, M.; Tenesaca, G., (2018) Preliminares

Primer
La Figura 12 muestra como los datos se almacenan en la memoria de la bimestre

computadora en forma de arreglo lineal de ceros y unos


Segundo
bimestre

2.2. Bit y Byte


Solucionario

Bit: Digito binario (Binary digit), es considerado la unidad más pequeña de


Glosario
información; es utilizado fundamentalmente en operaciones booleanas conocidas
como: AND, OR, NOT y XOR. Sin embargo, se necesita más de un bit para la Referencias
bibliográficas
representación de datos (números, letras, símbolos), revisemos el siguiente
concepto. Anexos

Se denomina Byte e octeto a un conjunto de ocho bits, en los que se almacena


números binarios de ocho dígitos, el byte es la unidad básica de medida de la
capacidad de la memoria o cualquier dispositivo de almacenamiento de una
computadora.

¿Qué le pareció la temática?. Ahora bien, para reforzar su aprendizaje sobre


datos e información, lo invitamos a estudiar la sección 2.1 - Bit y Byte del texto
básico en las páginas 34 y 35. Esto nos ayudará a comprender de mejor manera
el siguiente tema de estudio: múltiplos y submúltiplos del byte. ¡Avancemos!

2.3. Múltiplos y Submúltiplos del Byte

Los múltiplos del byte son: Word (Palabra), Half Word (Media Palabra), Double
Word (Doble palabra). Un Word es el número máximo de bits con los que trabaja
un procesador de manera simultánea.

43 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Los únicos submúltiplos del byte son el nibble y el bit. Un nibble es un conjunto
Índice
de cuatro bits, conocido también como “cuarteto o semiocteto”, que permite
representar un número binario de cuatro dígitos.
Preliminares

Los múltiplos del byte más conocidos por la frecuencia que se utiliza cuando se Primer
bimestre
especifica la capacidad de almacenamiento de los dispositivos como son: kilobyte,
megabyte, gigabyte y terabyte. Los prefijos (kilo, mega, giga, tera) están definidos Segundo
bimestre
en el Sistema Internacional de Medidas (SI). La Tabla 5 presenta un resumen
de los múltiplos y submúltiplos del Byte que le ayudará a comprender de mejor Solucionario
manera este tema.
Glosario

Tabla 5. Múltiplos y submúltiplos del byte.


Referencias
bibliográficas
Múltiplos / Submúltiplos N° de bytes N° de bits
Anexos
Bit(b) 2-3 20
Nibble 2-1 22
Byte(B) 20 23
Half Word / Media Palabra 21 24
Word / Palabra (P) 22 25
Double Word / Doble Palabra 23 26
Kilobyte (KB) 210 213
Megabyte (MB) 220 223
Gigabyte (GB) 230 233
Terabyte (TB) 240 243
Petabyte (PB) 250 253
Exabyte (EB) 260 263
Zetabyte(ZB) 270 273
Yottabyte(YB) 280 283
Fuente: Mancilla, (2014)
Elaboración: Cabrera, M.; Tenesaca, G., (2018)

La Tabla 5 muestra 3 campos que describen el nombre del Múltiplo y submúltiplo


con sus respectivas abreviaturas, número de bytes binario con la potencia que
posee y el tercer campo el valor binario elevado a la potencia de bits.

44 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Revise y analice ahora los ejercicios propuestos acerca conversión Índice


de múltiplos y submúltiplos de Byte que se encuentran en la
sección 2.2.1 de texto básico.
Preliminares

En esta sección se analiza un tema muy importante acerca de las unidades Primer
bimestre
de los datos, con ello nos da firmes conocimientos para avanzar y comprender
el siguiente tema: tipos de operadores y expresiones. ¡Continuemos con el Segundo
bimestre
desarrollo de la unidad!
Solucionario

2.4. Operadores
Glosario

Luego de haber identificado los tipos de operadores que se pueden usar en


Referencias
una expresión, se puede concluir que un operador es un símbolo que tiene una bibliográficas
función predefinida (suma, resta, multiplicación, mayor que, etc.); los mismos que
nos permiten construir expresiones compuestas. Los operadores se clasifican en Anexos

aritméticos, relacionales y lógicos.

2.4.1. Operadores Aritméticos

Se utilizan para formar expresiones cuyo resultado será un valor numérico. Junto
con las variables de tipo numérico dan lugar a las expresiones aritméticas.

La Tabla 6 muestra denominación y descripción de los operadores aritméticos.


Tabla 6. Operadores Aritméticos

Acción Operador
Suma +
Resta, negación -
Multiplicación .,*
Potenciación ^
División real /
División real DIV
MOD Residuo de la división entera
Fuente: Mancilla, (2014)
Elaboración: Cabrera, M.; Tenesaca, G., (2018)

45 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Recuerde: Índice
El operador DIV es la parte entera del cociente de una división y el
operador MOD el residuo de esta división. Por ejemplo
Preliminares
7/2 = 3.5 entonces...
7 DIV 2 = 3
Primer
y para los residuos 7/2 deja de residuo 1 bimestre
entonces para representarlo75 MOD 2 = 1
Segundo
bimestre
2.4.2. Operadores Relacionales o Condicionales
Solucionario

Se utilizan para formar expresiones booleanas, es decir, expresiones que al ser


Glosario
evaluadas producen un valor booleano: VERDADERO o FALSO. Los operadores
relacionales son los que permiten comparar expresiones, una en relación a la
Referencias
otra, proporcionando un valor de falso (False), verdadero (True), o nulo (Null), bibliográficas

dependiendo si la comparación es una verdad o no.


Anexos

La Tabla 7 describe los operadores relacionales clásicos que se pueden utilizar en


una expresión, sentencia.

Tabla 7. Operadores Relacionales

Operador Verdadero SI Falso si


< (Menor que) expresión1 < expresión2 expresión1 >= expresión2
<= (Menor o igual que) expresión1 <= expresión2 expresión1 > expresión2
>(Mayor que ) expresión1 > expresión2 expresión1 <= expresión2
>= (Mayor o igual que ) expresión1 >= expresión2 expresión1 < expresión2
= (Igual a) expresión1 = expresión2 expresión1 <> expresión2
<>(Distinto de) expresión1 <> expresión2 expresión1 = expresión2
Fuente: Mancilla, (2014)
Elaboración: Cabrera, M.; Tenesaca, G., (2018)

El resultado de la comparación será Null si cualquiera de las expresiones


comparadas es Null. La forma en que se resuelven este tipo de operadores es la
siguiente:

Resultado = Expresión1 Operador Expresión2

46 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Expresión1 y Expresión2 pueden ser cualquier tipo de expresiones comparables


Índice
entre sí. El resultado será siempre lógico (True, False), o nulo (Null).

Preliminares
Algunos ejemplos del uso de estos operadores son:

Primer
bimestre
“A” = “B” retorna False
1 > 0.5 retorna True Segundo
2 >= 2 retorna True bimestre

“S” < “s” retorna True


Solucionario

En el caso de los datos de tipo cadena, tome en cuenta que las letras
Glosario
mayúsculas, para efectos de comparación para efectos de comparación, tienen un
valor en código ASCII menor a las minúsculas, y por tanto, son menores. Siendo Referencias
bibliográficas
así, la “A” es menor que la “ a”, pero “z” es mayor a “A”.

Anexos
2.4.3. Operadores Lógicos o Booleanos

Los operadores lógicos son aquellos que sirven para unir o negar condiciones,
produciendo un valor lógico. Combinan sus operandos (proposiciones simples
o compuestas) de acuerdo con las reglas del Álgebra de Boole. El objetivo es
producir un nuevo valor (FALSO o VERDADERO) que se convierta en el valor de
la expresión. Las condiciones para control de flujo son expresiones de este tipo.

La Tabla 8 describe los operadores booleanos más utilizados con la respectiva


expresión lógica.

47 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Tabla 8. Operadores Booleanos


Índice

Exp. Lógica
Nombre Operador Comportamiento Preliminares
simbólica
Negación Not Niega el resultado de una condición. Revierte ¬
Primer
el valor; si la condición que afecta es True bimestre
producirá False, y viceversa.
Disyunción And Cuando de entre dos condiciones, las dos ^ Segundo
bimestre
deben ser True para que en su conjunto la
expresión sea True. Solucionario
Conjunción Or Cuando de entre dos condiciones, al menos v
una debe ser True para que en su conjunto la
Glosario
expresión sea True.
Fuente: Mancilla, (2014)
Referencias
Elaboración: Cabrera, M.; Tenesaca, G., (2018) bibliográficas

Anexos
2.4.4. Operador de Asignación

El operador de asignación es el que permite asignar un valor a una variable. El


operador clásico de asignación es el signo de igual ( =).

Variable = Valor

Donde “Variable” es una variable y Valor, una expresión válida para el tipo de
dato de Variable. Desde el punto de vista de la lógica simbólica, la asignación se
representa con el símbolo “←”, que indica que una expresión pasa a una variable.
La Tabla 9 muestra los símbolos del operador de asignación y la expresión lógica
simbólica.

Tabla 9. Operadores de Asignación

Nombre Operador Comportamiento Exp. Lógica simbólica


Asignación ← Almacena valores en una variable Variable ← Expresión
Asignación = Almacena valores en una variable Variable= Expresión
Fuente: Mancilla, (2014)
Elaboración: Cabrera, M.; Tenesaca, G., (2018)

48 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Para el análisis de operadores booleanos y asignación se requiere conocer la


Índice
prioridad que debe existir en desarrollar cada término de una expresión, por ello,
es importante revisar la siguiente temática, reglas de precedencia.
Preliminares

2.4.5. Reglas de precedencia Primer


bimestre

Podemos definir a la precedencia como la característica de una expresión Segundo


bimestre
compuesta de resolverse con anterioridad a otras expresiones. Existen los
siguientes tipos de precedencia: implícita, posicional y explícita. Solucionario

Precedencia implícita Glosario

La precedencia implícita es aquella inherente a los operadores y la categoría a la Referencias


bibliográficas
que pertenecen.
Anexos

• La precedencia implícita por categoría: se presenta cuando hay


expresiones que contienen operadores de más de una categoría
(aritméticos, comparativos y lógicos). Por regla general se resuelven
antes las expresiones que involucran operadores aritméticos, a
continuación se resuelven las expresiones que involucran operadores
de comparación y por último se resuelven las expresiones que
involucran operadores lógicos.

• La precedencia implícita por operador: La precedencia implícita por


operador es la que tiene un operador respecto a los operadores de su
misma categoría. En el caso de los operadores de comparación, todos
tienen la misma precedencia implícita por operador. Los operadores
aritméticos se evalúan en el siguiente orden de prioridad, que a
continuación la Tabla 10 presenta.

49 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Tabla 10. Orden de prioridad de Operadores Aritméticos y Lógicos


Índice

Aritméticos Lógicos
Exponenciación Not Preliminares

Multiplicación And
Primer
División Or bimestre
Adición y substracción Negatividad
Segundo
Fuente: Mancilla, (2014)
bimestre
Elaboración: Cabrera, M.; Tenesaca, G., (2018)

Solucionario

En los temas anteriores estudiamos los tipos de precedencia, ¡Ahora! Lo


invitamos a revisar el ejemplo 2.1 con el fin de ampliar su aprendizaje de forma Glosario

práctica.
Referencias
bibliográficas
Ejemplo 2.1 Resuelva el siguiente problema aplicando operadores aritméticos
Anexos

Imagine que se quiere comprar dos productos, uno por 200 pesos y otro de 500
pesos, a los cuales habrá que aplicarles el 15% de impuestos. Vea como se
resolvería la siguiente expresión compuesta.

Tabla 11. Solución del problema

Expresión Solución
200+500*1+0,15 Se resuelve primero las expresiones que
involucran la multiplicación
200+500+0,15 Luego se resuelve las sumas, en orden de
izquierda a derecha
700+0,15
700,15 Expresión resuelta
Fuente: Mancilla, (2014)
Elaboración: Cabrera, M.; Tenesaca, G., (2018)

El ejemplo anterior demuestra como la procedencia de los operadores nos puede


llevar a errores de cálculo difíciles de detectar. Lo que realmente queríamos era
sumar el precio de los productos y multiplicar por 1.15, cosa que no sucedió.

50 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Considerar que para el desarrollo de una expresión también se Índice


analiza el tipo de precedencia basado en la posición que se
encuentre el operador (de izquierda a derecha) y se debe tomar en
Preliminares
cuenta para la resolución de los ejercicios. Revisemos ahora la
siguiente regla de precedencia posicional.
Primer
bimestre
Se puede ayudar en el texto básico en la sección 2.4 Operadores,
Segundo
que se encuentran en las páginas 42 hasta la página 49. bimestre

Precedencia posicional Solucionario

La precedencia posicional se presenta cuando se tienen varias expresiones que Glosario

involucran operadores de la misma precedencia implícita, y consisten en que se


Referencias
resuelven expresiones de izquierda a derecha. bibliográficas

Anexos
El ejemplo anterior ilustró precedencia posicional, dado que al encontrarse puras
sumas (operadores de igual procedencia) se resolvieron en orden de izquierda a
derecha.

Precedencia explícita

La precedencia explícita es aquella que se provoca mediante el uso de paréntesis.


Aquella que se encierra en paréntesis en una expresión es obligada a resolverse
sin respetar otras reglas de precedencia respecto a lo que está afuera de los
paréntesis, sin embargo, lo que está entre paréntesis sigue sujeto a las reglas de
precedencia implícitas y posicionales.

Veamos cómo podríamos resolver el ejemplo que dio resultados incorrectos.

Ejemplo: Imagine que se quiere comprar dos productos, uno por 200 pesos y otro
de 500 pesos, a los cuales habrá que aplicarles el 15% de impuestos. Vea como
se resolvería la siguiente expresión compuesta.

51 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Tabla 12. Solución del problema


Índice

Expresión Solución
(200 + 500) * (1 + 0,15) Se resuelve primero las expresiones que se encuentren Preliminares

700* (1 + 0,15) entre paréntesis. Como son sumas, se resuelven atendiendo


Primer
precedencia posicional bimestre
(700)* 1,15 Finalmente queda la multiplicación que realmente
pretendemos Segundo
bimestre
805 Expresión resuelta
Fuente: Mancilla, (2014) Solucionario
Elaboración: Cabrera, M.; Tenesaca, G., (2018)

Glosario
NOTA: No olvide que por más larga que parezca una expresión, todos los
operadores actúan sobre dos expresiones, y de dos en dos, hasta dejar un solo Referencias
bibliográficas
valor final.
Anexos
A continuación. Los ejemplo 2.2 y 2.3 resuelto le indica el desarrollo de las
expresión mediante el uso de las precedencias.

Ejemplo 2.2 Resuelva el siguiente problema aplicando operadores aritméticos

2+25*1+12/1

Tabla 13. Solución del problema

Expresión Solución
2+ 25*1 + 12/1 Se resuelve primero las expresiones que tiene prioridad como la
multiplicación y luego la división.
2 + 25*1 + 12/1 Se realiza la multiplicación
2 + 25 + 12/1
2 + 25 + 12/1 Se realiza la división
2 + 25 + 12
2 + 25 + 12 Finalmente queda la suma que realmente pretendemos
39 Expresión resuelta
Fuente: Mancilla, (2014)
Elaboración: Cabrera, M.; Tenesaca, G., (2018)

52 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Ejemplo 2.3 Resuelva el siguiente problema aplicando operadores aritméticos, Índice

booleanos.
Preliminares

((“A” = ”aA”) or (2 * 5 * 40 < 40) and (1^2 = 2 * 1))


Primer
bimestre

Tabla 14. Solución del problema


Segundo
bimestre
Expresión Solución
((“A”=”aA”) or (2*5*40 < and (1^2=2*1)) Se resuelve primero las expresiones que Solucionario
40) tiene prioridad como la multiplicación.
((“A”=”aA”) or (400 < 40) and (1^2=2)) Se realiza la multiplicación, se resuelve la Glosario
potencia
((“A”=”aA”) or (400 < 40) and (1=2)) Se resuelve el contenido de paréntesis Referencias
bibliográficas
((“A”=”aA”) or (400 < 40) and (1=2)) Se resuelve los valores booleanos, primer
F F F el operador or Anexos
Se resuelve los valores booleanos, el
F and F operador and Finalmente queda F or F
que realmente pretendemos
F Expresión resuelta
Fuente: Mancilla, (2014)
Elaboración: Cabrera, M.; Tenesaca, G., (2018)

¿Cómo le fue con los ejercicios propuestos?. Si todavía tiene inquietudes respecto
a la temática, a continuación lo invitamos a revisar los siguientes recursos de
apoyo que se enfocan en el uso de operaciones y reglas de precedencia.

Recursos de apoyo
Para fortalecer los conocimientos adquiridos se recomienda
revisar los siguientes recursos.
• http://purl.org/taw-sbc-utpl/algorithm/unit2/v1_operadores
• http://purl.org/taw-sbc-utpl/algorithm/unit2/v2_precedencia

Luego de revisar los recursos de apoyo, hemos aclarado las temáticas de


operadores y reglas de precedencia. Con el primer recurso nos queda más
claro que existen 3 tipos de operadores: aritméticos, relacionales y lógicos son

53 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

muy importantes para la programación.


Índice

Los operadores aritméticos (jerarquía de operaciones) son: suma(+), resta(-),


Preliminares
multiplicación(*), división(/) y potencia(^). Los operadores relacionales son:
mayor que (>), menor que(<), mayor o igual que(>=), menor igual que(<=), Primer
bimestre
diferente(!=) e igual(==). Los operadores lógicos son: conjunción (AND),
disyunción (OR) y Negación (NOT), los tres operadores son muy importantes Segundo
bimestre
para crear condiciones, denominados también operadores booleanos los
cuales van arrojar los resultados Verdadero o Falso es decir (1,0). En el Solucionario

recurso se explica cómo funciona cada uno de estos operadores.


Glosario

El segundo recurso, nos recuerda la importancia de conocer las operaciones


Referencias
básicas de matemáticas ya que la programación está basada en gran parte en bibliográficas

las matemáticas puras, por ejemplo, realizar un programa para conocer cuánto
Anexos
dinero le queda a una máquina de casino, aquí se requiere una operación
básica de suma y resta. Pero es importante recordar que existen 4 reglas al
programar expresiones matemáticas que son: i) Una expresiones van en una
sola línea, ii) La computadora resuelve en orden jerárquico. ¡Recuerde! que
primero se resuelve la potencia, luego multiplicación y división, tercero suma y
resta, en el ejemplo muestra un ejemplo de este caso de orden jerárquico. iii)
En caso de querer establecer otro orden se utiliza paréntesis. iv) Si hay varios
paréntesis se resuelve primero lo más interno, es decir, si tiene paréntesis
anidado debe resolver el que está más interno de la expresión tomando en
cuenta el orden jerárquico matemático. En los recursos de apoyo se plantean
algunos ejercicios, si desea reforzar lo aprendido puede resolverlos. ¡Adelante!

Ahora bien, continuemos con la siguiente temática: Expresiones.

2.5. Expresiones

Estimado estudiante, para comprender de mejor manera la


presente temática revisar previamente la sección 2.5
Expresiones, en el Capítulo 2 del texto básico.

54 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Una vez revisados los contenidos propuestos en el texto básico, vamos a reforzar
Índice
los conocimientos adquiridos en el uso de expresiones. A continuación se
presenta la definición de expresión:
Preliminares

Una expresión es una relación entre variables y operadores relacionales, Primer


bimestre
aritméticos y/o lógicos.
Segundo
Así también las expresiones están clasificadas en: aritméticas, relacionales y bimestre

lógicas como se detalla en la siguiente Figura 13.


Solucionario

Glosario

Referencias
bibliográficas

Anexos

Figura 13. Tipos de expresiones


Fuente: Mancilla, (2014)
Elaboración: Cabrera, M.; Tenesaca, G., (2018)

Para la creación de cada uno de los diferentes tipos de expresiones se utilizan


operadores tanto matemáticos como lógicos, los mismos que se presentan en la
Tabla 15.

55 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Tabla 15. Operadores matemáticos y lógicos


Índice

Operadores matemáticos Operadores lógicos


+ Suma or (˅) o Preliminares
- Resta and (˄) y
* Producto ~ negación Primer
bimestre
/ División (DIV) > mayor que
% Residuo (MOD) < menor que
Segundo
⊂ Subconjunto = igual bimestre
⊆ Subconjunto o igual ≥ mayor o igual que
^ Potenciación ≤ menor o igual que Solucionario
() Paréntesis ≠ diferente
[] Corchetes ↔ si y solo si
Glosario
{} Llaves → si entonces

Referencias
Se debe considerar que para resolver una expresión se necesita conocer el bibliográficas

orden de precedencia de los operadores aritméticos y lógicos que la conforman.


Anexos
En la Tabla 10 de la sección 2.4.5 se detallan las reglas de precedencia por
cada operador de manera general. A continuación, lo invitamos a revisar el
siguiente ejemplo propuesto que le permitirá poner en práctica lo aprendido sobre
expresiones.

Ejemplo 2.4 Resolver la siguiente expresión:

~ (“casa” = “caza” ˅ (20 * 30 * 50 > 10 * 40) ^ (30^2 > 15^4))


→ ~ (“casa” = “caza” ˅ (20 * 30 * 50 > 10 * 40) ^ (30^2 > 15^4))
→ ~ (“casa” = “caza” ˅ (600 * 50 > 10 * 40) ^ (30^2 > 15^4))
→ ~ (“casa” = “caza” ˅ (30000 > 10 * 40) ^ (30^2 > 15^4))
→ ~ (“casa” = “caza” ˅ (30000 > 400) ^ (30^2 > 15^4))
→ ~ (“casa” = “caza” v (True) ^ (30^2 > 15^4))
→ ~ (“casa” = “caza” ˅ (True) ^ (900 > 15^4))
→ ~ (“casa” = “caza” ˅ (True) ^ (900 > 50625))
→ ~ (“casa” = “caza” ˅ (True) ^ (False))
→ ~ (“casa” = “caza” ˅ False)
→ ~ (False ˅ False)
→ ~ (False)
True

56 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Como se observa en el desarrollo del ejercicio anterior, se considera la


Índice
precedencia de cada operado para ir resolviendo paso a paso la expresión dada
hasta llegar a su mayor simplificación.
Preliminares

Para fortalecer la temáticas de operadores y expresiones lo invitamos a realizar Primer


bimestre
los siguientes ejercicios propuestos.
Segundo
bimestre
Ejercicios propuestos
Para a = 3, b = 2 y c = 7, resolver lo siguiente:
Solucionario
• ( a + b)/(b *( c/3)) > (b (a * c))
• ((a > b) v (a < c)) ˄ ((a = c) v (a > = b))
Glosario

Para revisar la resolución de los ejercicios propuestos Referencias


bibliográficas
ingresar al siguiente enlace. http://purl.org/taw-sbc-utpl/
algorithm/unit2/solutions
Anexos

¿Qué le pareció la temática sobre expresiones? Ahora bien, para reforzar su


aprendizaje es conveniente estudiar la sección 2.5 - Expresiones del texto básico.
Esto nos ayudará a comprender de mejor manera el siguiente tema de estudio:
variables y tipos de datos.

2.6. Variables y tipos predefinidos

En la presente sección se estudia los fundamentos en la creación de variables.


Además, se explica los tipos de datos y dominios con los que se puede definir una
variable.

Para el inicio de la presente temática es importante que revise la


sección de Variables y tipos predefinidos del Capítulo 2 del texto
básico.

A continuación iniciamos esta sección con la definición de variables.

57 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

2.6.1. Variables
Índice

Una variable es un conjunto de bytes en la memoria, referenciada por un


Preliminares
nombre donde se almacena el valor correspondiente a un dato de un tipo de
dato específico. Primer
bimestre

El valor de una variable puede ser modificado en cualquier momento, bien por una
Segundo
asignación directa o bien como resultado de alguna expresión. bimestre

Solucionario

Glosario

Referencias
bibliográficas

Anexos

Figura 14. Definición de variables


Fuente: Mancilla, (2014)
Elaboración: Cabrera, M.; Tenesaca, G., (2018)

Una variable correctamente definida requiere:

• Nombre
• Tipo de dato y dominio: numérico, carácter, cadena de caracteres o
booleano.
• Un valor inicia (opcional)

Reglas para definir el nombre de una variable

Se debe considerar las siguientes reglas para definir correctamente el nombre de


una variable:

• Siempre iniciar con una letra.


• Se recomienda que debe componerse de letras y números.

58 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

• No contener espacios en blanco ni caracteres generales (incluyendo


Índice
letras acentuadas y signos regionales) a excepción del guión bajo ( _ ).
• No mayor a 32 caracteres.
Preliminares
• Deben ser representativos del valor que almacena. Por ejemplo, si se
quiere almacenar el área de un cuadrado, la variable sería: area. Primer
bimestre

Recuerde: Segundo
Cuando una variable se ha declarado de un cierto tipo de dato, bimestre

solamente puede asignársele datos del mismo tipo.


Solucionario

A continuación presentamos algunos ejemplos que le ayudarán a representar un


Glosario
problema dado a través de variables.

Referencias
bibliográficas
Ejemplo 2.5 Representar la nota del primer parcial de un estudiante

Anexos
Tabla 16. Definición de variables

Variables correctas Variables incorrectas


nota1parcial 1notaparcial
notaPrimerParcial nota-primerparcial
nota_primerparcial n1p
nota_1p nota del primer parcialdelestudiante

¿Con lo aprendido, considera ya está en la capacidad de definir ¿qué es una


variable?. Si tiene aún alguna duda le sugiero revisar la sección 2.3.1 – Variables,
del texto básico.

Una vez que tenemos claro cómo definir una variable, podemos continuar con la
siguiente temática: naturaleza de los datos.

2.6.2. Naturaleza de los datos

La naturaleza de los datos nos hace referencia a los tipos de valores que se
pueden asignar a una variable. Para esto debemos considerar las siguientes
propiedades de los datos:

59 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

• Tipo de dato: Permite a una variable almacenar una determinada


Índice
naturaleza de dato.
• Dominio: Es el conjunto de valores válidos que es posible que el dato
Preliminares
adquiera. El dominio evita el ingreso de datos equivocados.
• Opcionalidad: Es la necesidad que se tiene que una variable tenga Primer
bimestre
valor.
• Valor: Es el valor que se le asigna a una variable. Segundo
bimestre

A continuación vamos a revisar los diferentes tipos de datos que se utilizan en la Solucionario
definición de variables.
Glosario

Tipos de datos
Referencias
bibliográficas
Los tipos de datos son clasificados en tres grandes grupos: numéricos, cadena
y lógicos. En la siguiente Figura 15 observamos los diferentes tipos de datos por Anexos

cada grupo y un ejemplo por cada uno de ellos.

Figura 15. Tipos de datos


Fuente: Mancilla, (2014)
Elaboración: Cabrera, M.; Tenesaca, G., (2018)

Datos numéricos: Este tipo de dato pertenece al conjunto de los números, y son
de longitud fija. Los datos numéricos son: Enteros y Reales.

Datos cadena: Los datos del tipo carácter están contenidos en el conjunto finito
de caracteres: alfabéticos, numéricos y especiales. Y por otro lado, los datos tipo
cadena de caracteres son sucesiones de caracteres con longitud finita y variable.

60 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Datos lógicos: Los datos tipo lógico pueden tomar uno de los dos valores
Índice
booleanos: VERDADERO (true) o FALSO (false). La correspondencia binaria para
estos dos valores es: 1 para VERDADERO y 0 para FALSO.
Preliminares

Tipos predefinidos Primer


bimestre

Cada uno de los lenguajes de programación tienen tipo de datos predefinidos para Segundo
bimestre
ser usados por los desarrolladores. En la Tabla 17 podemos observar los tipos
predefinidos más utilizados en los lenguajes de programación C++ y Java. Solucionario

Tabla 17. Operadores matemáticos y lógicos Glosario

Tipos de datos C++ Java Referencias


bibliográficas
Byte short byte
Entero int int
Anexos
long long
Real float float
double double
Cadena char char
string String
Booleano bool boolean

Para el estudio de la presente asignatura, vamos a utilizar la simbología que


se describe en la Tabla 18. Esta simbología nos permitirá representar los tipos
de datos que utilizaremos en la definición de variables a nivel de algoritmos y
miniespecificaciones.

Tabla 18. Simbología para representar tipos de datos

Tipos de datos Símbolo Abstracto


Byte b
Entero i
Real d
Cadena x(n) Dónde n es la longitud en caracteres de la cadena.
Booleano l
Fecha f

61 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Una vez aprendidos los diferentes tipos de datos, a continuación se presentan los
Índice
dominios de lo datos que puede tomar un tipo de dato asociado a una variable.

Preliminares
Dominio de los datos

Primer
bimestre
En el desarrollo de algoritmos, el dominio de los datos es el conjunto de
valores válidos para un dato. La definiciónv del dominio de datos para una Segundo
bimestre
variable evita el ingreso de datos equivocados.

Solucionario
Podemos especificar los dominios considerando tres aspectos importantes: tipo,
regla de negocios y relación con otros datos como podemos observar en la Figura
Glosario
16.
Referencias
bibliográficas

Anexos

Figura 16. Tipo de dominios


Fuente: Mancilla, (2014)
Elaboración: Cabrera, M.; Tenesaca, G., (2018)

Si aún tenemos dudas sobre esta temática, lo invitamos a revisar la sección 2.3 –
Variables y tipos predefinidos del texto básico. Y para reforzar lo aprendido vamos
a realizar los siguientes ejercicios.

62 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Declaraciones de variables, tipo de dato y dominio


Índice

Para declarar una variable se debe considerar: el nombre de la variable, tipo de


Preliminares
dato y dominio de dato.

Primer
bimestre
<nombre_variable>, <tipoDato>[<dominio>]
Segundo
bimestre
A continuación presentamos algunos ejemplos de declaración de variables con su
tipo de dato y dominio en base a un problema dato. Solucionario

Ejemplo 2.6 Declarar una variable para determinar el sueldo mensual de una Glosario
persona.
Referencias
bibliográficas
Declaración en Miniespecificación
sueldo_mensual, d[1 - n] Anexos

sueldoMensual, d[1 - n]

Ejemplo 2.7 Declara una variable para almacenar la siguiente información, “El
usuario ha sido registrado”

Declaración en Miniespecificación
informacion, x(50)

Ejemplo 2.8 Declara una variable que permita almacenar una clave compuesta
por 6 letras y 4 números.

Declaración en Miniespecificación
clave, x(10) [6{A-Z}, 4{0-9}]

Para fortaleces esta temática, ahora lo invitamos a revisar los siguientes recursos
de apoyo sobre: ¿qué es una variable?, su representación y uso.

63 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Recursos de apoyo
Índice
Para fortalecer los conocimientos adquiridos se recomienda
revisar los siguientes recursos audiovisuales.
Preliminares
• http://purl.org/taw-sbc-utpl/algorithm/unit2/v3_variables
• http://purl.org/taw-sbc-utpl/algorithm/unit2/v4_variables Primer
bimestre

¿Qué le parecieron los recursos de apoyos?. Esperamos hayan servido para Segundo
bimestre
aclarar las dudas pendientes. Ahora bien, con la revisión del recurso de apoyo
ya estamos en la capacidad de responder a la pregunta ¿Para qué me sirve Solucionario
una variable?. Como revisamos en los recursos de apoyo, las variables sirven
para identificar una datos específico que ha sido o será almacenado en la Glosario

memoria del computador.


Referencias
bibliográficas
Por ejemplo, llevando esto a la vida real, supongamos que queremos guardar
en la refrigeradora leche, debemos primero buscar un recipiente que permita Anexos

realizar esta acción, y debe ajustarse a los requerimientos de lo que se desea


almacenar. Un requerimiento sería que el recipiente no debe tener agujeros,
o sino la leche se derramaría. Una vez encontrado el recipiente idóneo,
almacenamos la leche y cuando necesitemos la leche accedemos al lugar
donde fue guardada dentro de la refrigeradora. Haciendo una equivalencia,
podemos decir que en este ejemplo la variable es el recipiente, la leche es el
valor que almacenamos y la refrigeradora es la memoria de la computadora
donde almacenamos cada variable. ¡Mucho más claro, verdad!.

Felicidades!!, se ha concluido con la segunda unidad. Ahora se puede medir lo


aprendido con la siguiente autoevaluación.

64 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

AA Autoevaluación 2 Índice

Preliminares

Responda las siguientes preguntas de opción múltiple y seleccione la respuesta


Primer
correcta para cada una de ellas. bimestre

Segundo
1. Corresponden a un carácter del sistema hexadecimal van desde (016) al (F16) bimestre

a. Bit Solucionario

b. Double Word
Glosario
c. Nibble

Referencias
2. Se desea almacenar el costo de un producto, ¿qué tipo de dato se debe bibliográficas

usar, tomando en cuenta el contexto que se presenta?


Anexos

a. Byte
b. Decimal
c. Entero

3. ¿Cuál de las siguientes expresiones retorna un valor igual a True?

a. “C” = “c”
b. 7 >= 7
c. 4+5=9-1

4. ¿Qué dominio es el correcto para almacenar los datos referentes a la edad


de una persona?

a. b[0-110]
b. b[0-10]
c. b[18-100]

65 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

5. La precedencia que se provoca mediante el uso de paréntesis, se conoce


Índice
como:

Preliminares
a. Posicional
b. Implícita Primer
bimestre
c. Explícita
Segundo
bimestre
6. Tenemos la siguiente expresión: (a - b < 3 - c) and (c * 1 == a - b)

Solucionario
Donde a = 2 , b = 4 , c = 6. Determine el valor resultante.
a. Verdadero Glosario
b. Falso
c. Nulo Referencias
bibliográficas

7. Los nombres de variables deben cumplir algunas reglas, del siguiente Anexos

listado, indique cuales pertenecen a estas reglas:

1. Siempre iniciar con letra


2. Puede contener caracteres especiales
3. Contener espacio y caracteres especiales opcionalmente
4. Puede contener vocales tildadas
5. Máximo 32 caracteres de longitud
6. Representativo al valor que guarda.

a. 1,5,6
b. 1,2,5,6
c. 1,4,5

8. Seleccione la representación abstracta de dominio para una clave formada


por una letra “Z” y 5 números. Ningún número puede ser 0

a. X(6) [1 {Z}, 5 {0-9}]


b. X(6) [1 {A-Z}, 5 {1-9}]
c. X(6) [1 {Z}, 5 {1-9}]

66 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

9. ¿Cuál de las siguientes opciones no describe el tipo de dato de una


Índice
variable?

Preliminares
a. Los valores que puede contener ésta
b. Qué operaciones pueden realizarse con ella Primer
bimestre
c. El ámbito de la misma
Segundo
bimestre
10. Si
costoProducto y precioProducto son variables numéricas y
nombreProducto es una variable cadena. ¿Cuál de las siguientes Solucionario
declaraciones no es válida?
Glosario
a. costoProducto = 100
b. precioProducto = “24.95” Referencias
bibliográficas
c. costoProducto = precioProducto - 10
Anexos

Estimado estudiante para comprobar sus respuesta puede ir


al solucionario que se encuentra al final de la guía. Si sus
respuestas han sido correctas, Felicidades!!. Y sino, no se
desanime!, puede revisar las temáticas nuevamente y volver
a contestar.

Hemos concluido la Unidad 2, sigamos avanzando en


nuestros conocimientos con la Unidad 3: Ciclo de desarrollo
y primitivas algorítmicas.

67 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

UNIDAD 3. CICLO DE DESARROLLO Y PRIMITIVAS ALGORÍTMICAS Índice

Nuestra mayor debilidad reside en rendirnos. La Preliminares

forma más segura de tener éxito es intentarlo una


Primer
vez más. bimestre

Thomas A. Edison.
Segundo
bimestre
Estimado estudiante en la presente unidad se explica el ciclo de
desarrollo de un programa con todas sus fases y lo que se realiza Solucionario
en cada una de ellas. También se revisa las primitivas básicas
lógicas, el diseño de algoritmos y miniespecificaciones.
Glosario

3.1. Ciclo de desarrollo de un programa Referencias


bibliográficas

El ciclo de desarrollo de un programa esta compuesto por cuatro fases: Análisis, Anexos

diseño, codificación y pruebas e implementación. La Figura 17 presenta el ciclo de


desarrollo de un programa.

Figura 17. Ciclo de desarrollo de un programa


Fuente: Ramirez, (2017)
Elaboración: Cabrera, M.; Tenesaca, G., (2018)

68 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

El desarrollo de cada una de estas fases debe responder a una pregunta y


Índice
obtener los entregables necesarios para dar solución al problema planteado. A
continuación describimos cada una de estas fases.
Preliminares

3.1.1. Fase de análisis Primer


bimestre

El análisis consiste en descomponer el todo en sus partes, con el fin de Segundo


bimestre
comprender el problema.

Solucionario
En esta fase interviene el analista de sistemas y es el encargado de analizar
detalladamente el problema planteado para determinar las posibles soluciones y Glosario
levantar los requerimientos necesarios para resolver el mismo.
Referencias
bibliográficas
Esta fase es muy importante debido a que si el análisis esta equivocado,
las siguientes fases desarrollarán un diseño, codificación e implementación Anexos

equivocado y que no cumpla con los requerimientos del cliente.

En la fase de análisis se debe responder la pregunta: ¿Qué quiere automatizar


el cliente?. Y el entregable principal en esta fase son los algoritmos.

En esta fase se tiene como objetivos realizar lo siguiente:

• Identificar claramente los requerimientos del cliente. Este objetivo


consiste en conocer y documentar lo que el cliente espera del
programa a desarrollar.

• Identificar y definir el alcance del programa. Consiste en determinar


las unidades de funcionalidades suficientes y necesarias para cubrir las
necesidades del cliente. Las funcionalidades deben tener:

♦♦ Un identificador.
♦♦ Una prioridad.
♦♦ Una obligatoriedad.

69 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

• Determinar la interfaz y el comportamiento del programa. La


Índice
interfaz es el medio por el cual el usuario y la aplicación se comunican.
La interfaz debe tener las siguientes características:
Preliminares

♦♦ Sencilla de entender. Primer


bimestre
♦♦ De uso intuitivo.
♦♦ Diseñada bajo estándares. Segundo
bimestre
♦♦ Validar los dominios.
♦♦ Tener una secuencia lógica de sus elementos. Solucionario
♦♦ Preguntar la cantidad mínima, suficiente y necesaria para el
procesamiento o almacenamiento. Glosario

Referencias
3.1.2. Fase de diseño bibliográficas

La fase de diseño es la segunda más importante en el ciclo de desarrollo de un Anexos

programa. Tiene por objetivo traducir técnicamente los requerimientos del cliente
obtenidos en la fase de análisis a una forma abstracta y estandarizada.

El resultado de la fase de análisis es el diseño de miniespecificaciones, diagramas


de flujo y pruebas de escritorio. Estos entregables servirán como materia prima
para la fase de codificación.

Algo importante en esta fase es que no se deben modificar los requerimientos del
cliente, ni agregar ni eliminar los requerimientos.

En la fase de diseño se debe responder a la siguiente pregunta: ¿Cómo se


puede automatizar lo que quiere el cliente?.

3.1.3. Fase de codificación

La fase de codificación consiste en codificar bajo un lenguaje de programación


los documentos obtenidos la fase de diseño. Hay un sin número de lenguajes de
programación disponibles. El lenguaje de programación puede ser un requisito del
cliente o una sugerencia del equipo de desarrollo. En esta fase se debe responder

70 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

a la siguiente preguntas: ¿Cómo se representa las especificaciones de diseño


Índice
en un lenguaje de programación?. El entregable en esta fase es el código
fuente.
Preliminares

Para tener una perspectiva de los lenguajes de programación más utilizados, lo Primer
bimestre
invitamos a revisar los siguientes recursos de apoyo que presentan un ranking
actual de los lenguajes de programación. Segundo
bimestre

Recursos de apoyo Solucionario


En los siguientes enlaces se presentan un ranking de los lenguajes de
programación: Glosario

• http://purl.org/taw-sbc-utpl/algorithm/unit2/programmingLanguages1
Referencias
• http://purl.org/taw-sbc-utpl/algorithm/unit2/programmingLanguages2 bibliográficas

Luego de haber revisado los recursos de apoyo, ahora ya conocemos cuales Anexos

son los lenguajes de programación más utilizados a nivel mundial. Estos


lenguajes son: Python, Java, C y C++ ubicados en los primeros puestos.
Ahora bien, en el transcurso de la asignatura y la carrera se enseñaran varios
de estos lenguajes de programación, pero no debe ser una limitante para
aprender nuevos lenguajes que les permitan ampliar su perfil profesional.

3.1.4. Fase de pruebas e implementación

La fase de pruebas es fundamental para el éxito del ciclo de desarrollo. En esta


fase se realiza la verificación de que el programa desarrollado cumpla con los
requisitos planteados en la fase de análisis y las especificaciones de diseño.

Cuando un el programa no cumple con las especificaciones, se habla de un


error lógico, es decir, que los resultados del programa no son los deseados. Aquí
interviene un nuevo proceso, la depuración. La depuración ayuda a probar un
programa sobre varios conjuntos de datos para de esta forma encontrar y corregir
los errores presentados.

71 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

La fase de pruebas está a cargo generalmente del equipo de calidad de la


Índice
empresa. Ellos son los que dan el visto bueno y aprobación del programa y se
hacen la siguiente pregunta: ¿Los programas cumplen a la perfección las
Preliminares
especificaciones de diseño?.
Primer
Recuerde: bimestre

Un programa que no tiene errores de sintaxis no necesariamente


Segundo
está libre de errores lógicos. bimestre

Solucionario
La fase de implementación inicia una vez que se haya probado y depurado
detalladamente el programa y aprobado por el equipo de control de calidad. Esta
Glosario
fase también se llama “puesta en producción” que significa poner el programa ya
a disposición de usuario final. Referencias
bibliográficas

En el caso que existan nuevos requerimiento interviene la fase de mantenimiento


Anexos
del programa. En esta fase se realizan los nuevos cambios solicitados. Cuando se
realizan estos cambios a los programas existentes se repite el ciclo de desarrollo.
Esto significa que los cambios involucran: análisis, diseño, codificación, pruebas e
implementación.

Recuerde:
Si el programa original requiere una cantidad considerable de
modificaciones, es recomendable dar de baja el programa y
empezar el ciclo de desarrollo para uno nuevo.

Para revisar con mayor profundidad las actividades que se realizan en cada una
de las fases del ciclo de desarrollo, así como también los entregables que se
deben generar en cada fase, es recomendable revisar los apartados del capítulo 6
del recurso bibliográfico complementario (Ramírez, 2007)

Una vez comprendida cada una de las fases, a continuación iniciamos la temática
de primitivas algorítmicas.

72 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

3.2. Primitivas algorítmicas


Índice

La presente sección se enfoca al estudio de las primitivas algorítmicas para el


Preliminares
desarrollo de algoritmos y miniespecificaciones como los entregables de la fase
de análisis y diseño del ciclo de desarrollo de programas. Primer
bimestre

Estimado estudiante, previo al inicio de la presente unidad, es Segundo


importante que revise los contenidos del Capítulo 3: Primitivas bimestre

Algorítmicas del texto básico.


Solucionario

La lógica de la programación esta compuesta por un conjunto de estructuras


Glosario
lógicas de control algorítmico que desempeñan funciones básicas de entrada,
asignación, proceso y salida en la resolución de problemas. Éstas estructuras Referencias
bibliográficas
lógicas son conocidas como primitivas algorítmicas.

Anexos
Una primitiva lógica para la construcción de algoritmos es una instrucción
lógica que permite la ejecución de una o varias acciones en el computador.
Acciones que, a su vez, pueden ser otras primitivas lógicas y que en un
momento dado son codificadas y reciben el nombre de instrucciones de un
lenguaje de programación.

Los algoritmos están conformados por un conjunto de primitivas. Para explicar


estas primitivas se realiza el siguiente ejercicio:

Ejemplo 3.1: Calcular el área de un triángulo.

Análisis:

b h
El área de un triángulo (AT) se define por la expresión matemática AT= *
2
donde b es la base del triángulo y h su altura. Para calcular la expresión AT, se
requiere necesariamente de su base y altura.

El siguiente paso es identificar las entradas, el proceso y la salida, como se


muestra en la Figura 18.

73 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Índice

Preliminares

Primer
bimestre
Figura 18. Entrada, proceso y salida de un programa
Elaboración: Cabrera, M.; Tenesaca, G., (2018)
Segundo
bimestre

A continuación se explica cada una de las primitivas básicas en base al ejercicio


Solucionario
planteado.

Glosario
Primitivas de inicio y fin: Son las primitivas que delimitan el inicio y fin de
un algoritmo. A continuación se puede observar su representación a nivel de Referencias
bibliográficas
algoritmo y diagrama de flujo.

Anexos
Algoritmo Diagrama de flujo
Inicio
Decimal: AT, b, h
Leer b
Leer h
b*h
Calcular el área: AT=
2

Escribir “El área es:”, AT


Fin

Primitivas de entrada: Son las primitivas de lectura o entrada de datos. Se


identifican por acciones de lectura (Leer) de datos que ingresan al computador
sobre una o un conjunto de variables, como se observa a continuación.

74 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Algoritmo Diagrama de flujo


Índice
Inicio
Decimal: AT, b, h
Preliminares
Leer b
Leer h
Primer
b h bimestre
Calcular el área: AT= *
2
Segundo
bimestre
Escribir “El área es:”, AT
Fin
Solucionario

Glosario

Referencias
bibliográficas

Anexos

Primitivas de asignación: Son las estructuras lógicas primitivas representadas


por las asignaciones de valores. Estos valores pueden ser de inicialización o
como resultado de la operaciones lógicas y aritméticas dentro del proceso.

Para realizar la asignación de valores tanto en algoritmos y miniespeci icaciones


el símbolo (=) es sustituido por (←).

b h b*h
AT= * AT
2 2

Esta asignación se puede observar en el siguiente algoritmo y diagrama de flujo.

75 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Algoritmo Diagrama de flujo


Índice
Inicio
Decimal: AT, b, h
Preliminares
Leer b
Leer h
Primer
b*h bimestre
Calcular el área: AT
2
Segundo
bimestre
Escribir “El área es:”, AT
Fin
Solucionario

Glosario

Referencias
bibliográficas

Anexos
Primitiva de salida: Son las primitivas de salida de datos representadas por
las variables que contienen los resultados de las operaciones de asignación.
Se identifican por las acciones de escritura (Escritura) como se muestra a
continuación.

Algoritmo Diagrama de flujo


Inicio
Decimal: AT, b, h
Leer b
Leer h
Calcular el área: AT = (b *
h)/2
Escribir “El área es:”, AT

Fin

76 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Una vez comprendidas las primitivas básicas, ingresar al siguiente recurso para
Índice
revisar la codificación del ejercicio propuesto con un lenguaje de programación.

Preliminares
Codificación
Ingresar al siguiente enlace para ver la codificación en un lenguaje
Primer
de programación del ejercicio propuesto: bimestre
http://purl.org/taw-sbc-utpl/algorithm/unit3/coding
Segundo
bimestre

3.3. Diseño de miniespecificaciones


Solucionario

Una miniespecificación es la representación abstracta y simbólica que muestra


Glosario
de mejor manera las operaciones que un programa debe hacer con los datos.

Referencias
La miniespecificación es el paso siguiente al desarrollo de algoritmos. Se la bibliográficas
considera además como una herramienta para la especificación sistemática
de procesos computacionales, sin dejar de ser entendible por humanos. Las Anexos

principales características de la miniespecificaciones son:

• Debe tener un inicio y un fin.


• Debe tener líneas numeradas.
• Es independiente de los lenguajes de programación.
• Contiene un cuadro básico de instrucciones que pueden ser
representadas en cualquier lenguaje.
• Se describen mayormente con representaciones simbólicas.

Además una miniespecificación por lo general debe tener la siguiente estructura:


• Inicio.
• Declaración de variables: se coloca todas las variables a utilizar con su
tipo de dato y dominio.
• Inicialización de variables: se asigna el valor inicial a cada variable
dependiendo del problema a resolver.
• Entrada de datos: se realiza las peticiones de los datos de entrada.
• Proceso: se realiza todas las operaciones establecidas.
• Salida: se presenta los resultados obtenidos en el proceso.
• Fin.

77 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Utilizando el ejemplo 3.1, a continuación se presentan los cambios que se realizan


Índice
al convertir un algoritmos a miniespecificación:
• Las declaraciones de los datos se transforman en declaraciones de
Preliminares
memoria.
• Se inicializa los datos declarados. Primer
bimestre

Algoritmo Miniespecificación Segundo


Inicio Inicio bimestre

//declaración de variables //declaración de variables


Solucionario
Decimal: AT, b, h AT, d[0 – n]
b, d [0 – n ]
h, d [0 – n ] Glosario
Leer b
Leer h
Referencias
b*h //inicialización de variables bibliográficas
Calcular el área: AT
2
AT ← 0, b ← 0, h ← 0
Anexos
Escribir “El área es:”, AT
Fin

• Para el ingreso o lectura de datos se reemplaza Leer por dos símbolo


mayor que (>>).

Algoritmo Miniespecificación
Inicio Inicio
//declaración de variables //declaración de variables
Decimal: AT, b, h AT, d[0 – n]
b, d [0 – n ]
//lectura de datos h, d [0 – n ]
Leer b
Leer h //inicialización de variables
b*h AT ← 0, b ← 0, h ← 0
Calcular el área: AT
2

//lectura de datos
Escribir “El área es:”, AT
>> b
Fin
>> h

• Los cálculos se transforma en asignaciones.

78 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Algoritmo Miniespecificación
Índice
Inicio Inicio
//declaración de variables //declaración de variables
Preliminares
Decimal: AT, b, h AT, d[0 – n]
b, d [0 – n ]
Primer
//lectura de datos h, d [0 – n ] bimestre

Leer b //inicialización de variables


Segundo
Leer h AT ← 0, b ← 0, h ← 0 bimestre

//lectura de datos
//proceso >> b Solucionario

b*h >> h
Calcular el área: AT
2 Glosario
//proceso
b*h
Escribir “El área es:”, AT AT
2 Referencias
Fin bibliográficas
Fin

Anexos

• Para la presentación o escritura de datos se reemplaza la palabra


Escribir por dos signos menor que (<<).

Algoritmo Miniespecificación
Inicio Inicio
//declaración de variables //declaración de variables
Decimal: AT, b, h AT, d[0 – n]
b, d [0 – n ]
//lectura de datos h, d [0 – n ]
Leer b //inicialización de variables
Leer h AT ← 0, b ← 0, h ← 0
//lectura de datos
//proceso >> b
b*h >> h
Calcular el área: AT
2
//proceso
b*h
//escritura de datos AT
2
Escribir “El área es:”, AT
//escritura de datos
Fin
<< “El área es:”, +AT
Fin

79 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

• Las decisiones se transforman en primitivas lógicas condicionales no


Índice
repetitivas. Ver unidad 4.

Preliminares
• Los cálculos reiterativos se transforman en primitivas lógicas
condicionales repetitivas. Ver unidad 5. Primer
bimestre

Recuerde:
Segundo
Una aspecto importante en el diseño de algoritmos y bimestre

miniespecificaciones es la identación. Indentar significa dar


tabulaciones a la derecha conforme se lo requiera para ir Solucionario

ordenando y agrupando cada línea en base a lógica diseñada. La


identación es utilizado para mejorar la legibilidad al momento de Glosario
leer y analizar un algoritmo, miniespecificación o código fuente.
Ejemplo: Referencias
bibliográficas

Código sin identar Código identado


Anexos
Inicio Inicio
//declaración de variables //declaración de variables
AT, d[0 – n] AT, d[0 – n]
b, d [0 – n ] b, d [0 – n ]
h, d [0 – n ] h, d [0 – n ]
//inicialiación de variables //inicialización de variables
AT ← 0, b ← 0, h ← 0 AT ← 0, b ← 0, h ← 0
//lectura de datos //lectura de datos
>> b >> b
>> h >> h
//proceso //proceso
b*h b*h
AT AT
2 2
Si (AT > 20) entonces Si (AT > 20) entonces
//escritura de datos //escritura de datos
<< “El área es:”, +AT << “El área es:”, +AT
Fin_Si Fin_Si
Fin Fin

Para comprender de mejor manera el diseño de algoritmos y miniespecificaciones


se desarrolla el siguiente ejercicio.

80 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Ejemplo 3.2: Calcular el puntaje total del examen de un estudiante. Índice

Se requiere conocer el puntaje total del examen de un estudiante. Para esto, Preliminares

se debe solicitar el número de respuestas correctas, incorrectas, en blanco y el


Primer
nombre del estudiante. Por cada respuesta correcta se le acreditará 4 puntos, por bimestre

respuesta incorrecta se le restara 1 punto y las respuestas en blanco tendrán una


Segundo
valoración de 0 puntos. Presentar el nombre del estudiante y el puntaje total del bimestre

examen.
Solucionario

Algoritmo Miniespecificación
Inicio 1 Inicio Glosario

//declaración de variables 2 //declaración de variables

Cadena: nombre 3 nombre, x[40] Referencias


bibliográficas
4 r_correctas, i[0-n]
Entero: r_correctas, r_incorrectas,
5 p_correctas, d[0-n]
r_blanco Anexos
6 r_incorrectas, i[0-n]
Decimal: p_correctas, p_ 7 p_incorrectas, d[0-n]
incorrectas, p_total 8 r_blanco, i[0-n]
//lectura de datos 9 p_total, d [0-n]
Leer nombre 10
11 //inicialización de variables
Leer r_correctas
12 r_correctas ← 0
Leer r_incorrectas
13 r_incorrectas ← 0
Leer r_blanco 14 r_blanco ← 0
//proceso 15 p_total ← 0
Calcular: p_correctas ← r_ 16
correctas * 4 17 //lectura de datos

Calcular: p_incorrectas ← r_ 18 << “Ingrese el nombre del estudiantes”


19 >> nombre
incorrectas*(-1)
20 << “Ingrese el número de respuestas
Calcular: p_total ← p_correctas +
21 correctas”
p_incorrectas 22 >> r_correctas
//salida de datos 23 << “Ingrese el número de respuestas
Escribir nombre 24 incorrectas”
Escribir pTotal 25 >> r_incorrectas
26 << “Ingrese el número de respuestas en
Fin
27 blanco”
28 >> r_blanco
29

81 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Algoritmo Miniespecificación
Índice
Diagrama de flujo 30 //proceso
31 p_correctas ← r_correctas * 4
32 p_incorrectas ← r_incorrectas * (-1) Preliminares

33 p_total ← p_correctas + p_incorrectas


34 Primer
bimestre
35 //salida de datos
36 <<”El puntaje del estudiante”, +nombre,
Segundo
37 “es:”, bimestre
38 +pTotal, “puntos”
39 Fin Solucionario

Glosario

Referencias
bibliográficas

Anexos

En el ejercicio 3.2 podemos observar la transformación de algoritmo a


miniespecificación, y de miniespecificación a diagrama de flujo. Esto se realiza
en base a las directrices dadas en la presente sección. Es importante considerar
la fluidez del proceso al momento de dar solución al problema planteado. Por
ejemplo, la declaración e inicialización de variables se debe realizar previo a la
lectura de datos, al igual que el proceso de los datos se debe realizar previo a la
salida de datos.

A continuación puede encontrar la codificación del problema desarrollado

82 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Codificación
Índice

Ingresar al siguiente enlace para ver la codificación en un


Preliminares
lenguaje de programación del ejercicio propuesto:
http://purl.org/taw-sbc-utpl/algorithm/unit3/coding Primer
bimestre

3.4. Pruebas de escritorio Segundo


bimestre

En la sección anterior se han desarrollado algoritmos utilizando Solucionario


miniespecificaciones. Ahora bien, necesitamos comprobar si el algoritmo funciona
correctamente, en decir si hace lo que tiene que hacer. Para esto se utiliza Glosario

las pruebas de escritorio. Las pruebas de escritorio no son más que pruebas
Referencias
manuales que permiten validar al detalle cada línea del algoritmo y si se diera el bibliográficas
caso permitirá saber en donde se encuentra el error para poder corregir.
Anexos

Para realizar la prueba de escritorio se debe crear una tabla con todas las
variables del algoritmo. De esta forma se irá visualizando los cambios de valor
dentro de cada una de ellas.

A continuación presentamos la prueba de escritorio del ejercicio 3.2.

Variables
valo nombre r_correctas p_correctas r_incorrectas p_incorrectas r_blanco p_total
res 0 0 0 0 0 0
Juan 13 7 2
Ríos
52 -7 45

Salida: El puntaje total de Juan Ríos es 45 puntos

Para fortalecer esta sección es conveniente realizar los siguientes ejercicios


propuestos.

83 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Ejercicios propuestos
Índice
Desarrolle el algoritmo, miniespecificación, diagrama de flujo y
prueba de escritorio de los siguiente problemas.
Preliminares
▪ Un estudiante desea obtener el promedio de sus notas. Para eso
se debe ingresar la nota de talleres, trabajos extraclase y examen Primer
bimestre
final. Identificar dentro del algoritmos las primitivas de entrada,
asignación y salida. Segundo
bimestre
▪ Se requiere leer un número de tres cifras y presentar el número
de unidades, decenas y centenas que éste tiene. Solucionario

Para revisar la resolución de los ejercicios propuestos


Glosario
ingresar al siguiente enlace. http://purl.org/taw-sbc-utpl/
algorithm/unit3/solutions
Referencias
bibliográficas

Si todavía tiene inquietudes respecto a la temática, a continuación lo invitamos a


Anexos
revisar los siguientes recursos de apoyo que da una explicación más amplia sobre
el diseño de miniespecificaciones.

Recursos de apoyo
Para comprender de mejor manera el diseño de
miniespecificaciones revisar el siguiente recurso:
• http://purl.org/taw-sbc-utpl/algorithm/unit3/v1_miniespecificacion

Luego de revisar el recurso de apoyo, ahora con mayor seguridad


estamos en la capacidad de responder preguntas como: ¿Qué es una
miniespecificación?, ¿Para qué me sirven las miniespecificaciones?, ¿Es lo
mismo la miniespecificación que un algoritmo?. Lo invitamos a responder estas
preguntas, sin olvidar que una miniespecificación, también conocida como
Pseudocódigo, es una representación abstracta y simbólica, que sin llegar
a la rigidez de la sintaxis de un lenguaje de programación ni a la fluidez del
lenguaje natural, permite codificar un programa o algoritmo con mayor agilidad.

84 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Recuerde que es importante realizar las actividades planteadas


Índice
como interacción en el Entorno Virtual de Aprendizaje. Recuerde
que con ello además de afirmar sus conocimientos obtendrá
Preliminares
retroalimentación de sus tutores y demás compañeros.

Primer
¿Ya realizó los ejercicios propuestos y reviso los recursos de apoyo? ¡Qué bien!. bimestre

Ahora, para medir la comprensión de las temáticas estudiadas, realice la siguiente Segundo
bimestre
autoevaluación.

Solucionario

Glosario

Referencias
bibliográficas

Anexos

85 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

AA Autoevaluación 3 Índice

Preliminares

Analice las siguientes preguntas de opción múltiple y seleccione la respuesta


Primer
correcta. bimestre

Segundo
1. ¿Cuál es el orden correcto de las fases desarrollo de un programa? bimestre

a. Análisis, Codificación, Diseño, Pruebas e Implementación Solucionario

b. Codificación, Análisis, Diseño, Pruebas e Implementación.


Glosario
c. Análisis, Diseño, Codificación, Pruebas e Implementación

Referencias
2. En el ciclo de desarrollo de un programa, la fase en la cual se analiza una bibliográficas

situación del mundo real, ¿a qué fase hace referencia?


Anexos

a. Diseño
b. Pruebas e Implementación
c. Análisis

3. En el ciclo de desarrollo de un programa. ¿Cuál es la fase que se caracteriza


por ser importante para el cliente, más que para el desarrollador.?

a. Pruebas e Implementación
b. Codificación
c. Diseño

4. En el ciclo de desarrollo de un programa, cuál de las fases da respuesta a la


siguiente pregunta: ¿Cómo se puede automatizar lo que quiere el cliente?

a. Diseño
b. Codificación
c. Análisis

86 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

5. ¿Cuál es el concepto apropiado para definir un algoritmo de programación?


Índice

a. Conjunto ordenado y finito de asignaciones, procesos, cálculos y


Preliminares
decisiones que permiten a un programa satisfacer una unidad de
funcionalidad dada. Primer
bimestre
b. Conjunto ordenado e infinito de asignaciones, procesos, cálculos
y decisiones que permiten a un programa satisfacer una unidad de Segundo
bimestre
funcionalidad dada.
c. Conjunto sin ordenar y finito de asignaciones, procesos, cálculos y Solucionario
decisiones que permiten a un programa satisfacer una unidad de
funcionalidad dada. Glosario

Referencias
6. Si tenemos como entregable la aceptación del programa que hemos bibliográficas
realizado. ¿A qué fase del ciclo de desarrollo de un programa estamos
haciendo referencia? Anexos

a. Análisis
b. Diseño
c. Pruebas e Implementación

7. Se desea desarrollar un algoritmo para calcular el costo de un terreno


rectangular, cuyo valor se calcula multiplicando el área del terreno por el
valor del metro cuadrado más el 5% de este valor que corresponde al pago
de impuestos.

El algoritmo es el siguiente:

1. Inicio
2. Se solicita las dimensiones del terreno (largo y ancho)
3. Se calcula el área del terreno.
4. Se calcula el valor del terreno.
5. Se calcula el valor del impuesto.
6. Se calcular el total sumando el valor del terreno + el impuesto calculado
7. Fin.

87 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

Evalúe el algoritmo y determine ¿qué información le falta para poder resolver


Índice
el problema?

Preliminares
a. El área del terreno.
b. El costo por metro cuadrado. Primer
bimestre
c. El valor del impuesto.
Segundo
bimestre
8. Se desea desarrollar un algoritmo que permita mostrar las tablas de restar
de un número, solo en el caso que el mismo esté entre 5 y 20. El algoritmo Solucionario
debe presentar un mensaje en caso que no haya seleccionado un número
dentro del rango establecido. Seleccione la opción correcta para el caso Glosario

presentado:
Referencias
bibliográficas
a. 1) Inicio
2) Se pregunta la tabla del número que se desea Anexos

3) Si la tabla está entre 5 y 20, entonces se procede a imprimir la tabla


de restar indicada
4) Si la tabla no está en el rango, entonces se procede a mostrar un
mensaje de error en pantalla
5) Fin

b. 1) Inicio
2) Se pregunta la tabla del número que se desea
3) Si la tabla está entre 5 y 19, entonces se procede a imprimir la tabla
de restar indicada
4) Si la tabla no está en el rango, entonces se procede a mostrar un
mensaje de error en pantalla
5) Fin

c. 1) Inicio
2) Se pregunta la tabla del número que se desea
3) Si la tabla está entre 5 y 20, entonces se procede a mostrar un
mensaje de error en pantalla

88 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas PRIMER BIMESTRE

4) Si la tabla no está en el rango, entonces se procede a imprimir la


Índice
tabla de restar indicada
5) Fin
Preliminares

Estimado estudiante al final de la guía se encuentra el solucionario


Primer
para verificar las respuestas de la autoevaluación. Si sus bimestre

respuestas han sido correctas, Felicidades!!. Si hemos fallado en


Segundo
alguna respuesta puede reforzar sus conocimientos con los bimestre
recursos de apoyo.

Solucionario
Con esto hemos terminado los contenidos del Primer Bimestre. Lo
invitamos a continuar con el mismo entusiasmo de aprender en el
Glosario
Segundo Bimestre.

Referencias
bibliográficas

Anexos

89 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Índice
SEGUNDO BIMESTRE
Preliminares

UNIDAD 4. ESTRUCTURAS LÓGICAS CONDICIONALES


Primer
bimestre

Cree en ti mismo y en lo que eres. Se consciente Segundo


bimestre
de que hay algo en tu interior que es más grande
que cualquier obstáculo. Solucionario
-Christian D. Larson
Glosario
Estimado estudiante ¿Estamos listos para continuar? Muy bien,
avancemos. Ahora, lo invitamos a insertarnos en el estudio de este Referencias
bibliográficas
importante tema de Estructuras lógicas condicionales en ellas
aprenderemos a plantear expresiones lógicas, para controlar la
Anexos
ejecución de una o más instrucciones. El objetivo de la presente
unidad es dar a conocer el funcionamiento y utilidad de las
estructuras lógicas. La más clásica de las estructuras de decisión
es la condicional simple.

Las estructuras lógicas condicionales comparan el valor de una (algunas)


variable (s) contra el valor de otra (s) variable(s) para que en base al resultado de
esta comparación, se siga un curso de acción (instrucción) dentro del programa.
Cabe mencionar que la comparación se puede hacer contra otra variable o contra
una constante, según se necesite.

Para reforzar más su aprendizaje sobre estructuras condicionales lo invitamos a


estudiar el capítulo 3 en la sección 3.3 Estructura lógica condicional simple del
texto básico. Esto nos ayudará a comprender de mejor manera este tema.

4.1. Estructura lógica condicional simple.

El condicional simple es aquella en la que solo especificamos el bloque de


código que deseamos que se ejecute, si la expresión lógica de la operación de
comparación resuelve por verdadero (True). En otras palabras, es una condición

90 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

que toma el control lógico que dependiendo de las respuestas de cumplimiento a


Índice
la condición sea verdadero se debe realizar la instrucción del caso. La siguiente
Figura muestra la estructura lógica condicional simple en sintaxis y diagrama de
Preliminares
flujo. Es fundamental revisar y diferenciar las estructuras de decisión, ya que son
la base para comprende las siguientes temáticas. ¡Sigamos adelante!. Primer
bimestre

Sintaxis: Diagrama de flujo Segundo


Si (expresión lógica) entonces bimestre

Parte del algoritmo a


Solucionario
ejecutar si la expresión es
verdadera (True)
Fin Si Glosario

Referencias
bibliográficas

Anexos
!

Recuerde:
Cuando la condición lógica es verdadera (True) realiza la
ejecución de la instrucción.

Revisar el ejemplo 4.1 y el recurso de apoyo que le ayudarán a fortalecer el


aprendizaje en estructuras de control.

Ejemplo 4.1 Determinar que un número sea impar

Para el presente ejemplo se desarrolla la Miniespecificación, Algoritmo, Diagrama


de flujo y prueba de escritorio.

Primero, Un número es impar si y solo si no es par, es decir si la división entre 2


es diferente de 0.

91 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Nro Algoritmo Diagrama de flujo


Índice
1 Inicio
2 //declaración de variables
3 num, i[0 - n] //número a determinar Preliminares

4 si es impar
5 //se ingresa el número para saber si Primer
bimestre
6 es impar
7 Leer num
Segundo
8 //calcula el factorial Si bimestre
9 Si (num %2≠0) entonces
10 Escriba “El número es impar” Solucionario
11 Fin_Si
12 Fin
Glosario

Referencias
bibliográficas

Miniespecificación
Anexos

Nro Miniespecificación
1 Inicio
2 <<”Ingrese el número” //Leer el número en la variable entera
3 >>numero
4 Si (numero %2 ≠0) entonces //Condicional que verifica si el número dado es impar
5 //Instrucción o instrucción que se ejecuta si la condición es verdadera
6 <<"El número leído es impar", numero
7 Fin si //Cierre del condicional Si
8 Fin

Prueba de escritorio

Variables
num Salida presentar
5 Número es impar
8
17 Número es impar
Valores
49 Número es impar
50
2
11 Número es impar

92 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

¿Cómo le fue con los ejercicios propuestos?. Si todavía tiene inquietudes respecto
Índice
a la temática, a continuación lo invitamos a revisar el siguiente recurso de apoyo.

Preliminares
Codificación
Ingresar al siguiente enlace para ver la codificación en un Primer
bimestre
lenguaje de programación del ejercicio propuesto:
http://purl.org/taw-sbc-utpl/algorithm/unit5/coding Segundo
bimestre

Ahora bien, para reforzar su aprendizaje sobre estructuras lógicas condicionales Solucionario
lo invitamos a estudiar la sección 3.3 – Estructura lógica condicional simple del
texto básico, que se encuentra en la página 67. Glosario

Continuamos con el tema de estructuras lógicas de condicionales compuesta, Referencias


bibliográficas
por ello en sus apuntes ya puede anotar las diferencias entre las condicionales
simples estudiadas en el apartado anterior y la estructura condicional compuesta. Anexos

4.2. Estructura lógica condicional compuesta.

La condicional compuesta es aquella que, además de especificar el bloque


de código que deseamos se ejecute si la expresión lógica de la operación de
comparación resuelve por verdadero (True), especificamos también el bloque
de código que deseamos que se ejecute si la expresión lógica de la operación
de comparación resuelve falso (False). La siguiente Figura muestra a detalle
la estructura sintáctica y el diagrama de flujo de esta estructura de control
compuesta.

Sintaxis: Diagrama de flujo


Si (expresión lógica) entonces
Parte del algoritmo a ejecutar si la expresión
<Condición> F
es verdadera (True)
De lo contrario V
< Instrucciones >
Parte del algoritmo a ejecutar si la expresión
< Instrucciones >
es falsa (False)
Fin Si
!

93 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Vamos a revisar el siguiente ejemplo propuesto.


Índice

Ejemplo 4.2 Revise la temperatura ambiental. Sí es mayor a 25°C decidir ir a la


Preliminares
playa sino esperar al buen tiempo.

Primer
Nro Algoritmo Diagrama de flujo bimestre

1 Inicio
Segundo
2 //declaración de variables bimestre
3 temperatura, i[0 - n] // Valor de
4 temperatura ambiental
Solucionario
5 //ingresar el número para saber
6 si es impar
7 Leer temperatura Glosario

8 //Evalúa la temperatura
9 Si (temperatura >25) entonces Referencias
bibliográficas
10 Escriba “Ir a la playa”
Si
11 Sino
Anexos
12 Escriba “Esperando al
No
13 buen tiempo”
14 Fin_Si
15 Fin
16 //presenta el resultado de la
17 evaluación según la condición
18 cuando es verdadera o falsa

Miniespecificación

Nro Miniespecificación
1 Inicio
2 (temperatura, i[1..n])
3 << ”Ingrese la temperatura ambiental” //Leer la variable entera temperatura
4 >> temperatura
5 Si (temperatura > 25) entonces //Valida si la temperatura es mayor a 25
6 //Instrucción o primitiva que se ejecuta si la condición es verdadera
7 <<“Ir a la playa!!!”
8 Sino
9 //Instrucción o primitiva que se ejecuta si la condición es falsa
10 << “Esperando al buen tiempo…”
11 Fin Si //Cierre del condicional Si
12 Fin

94 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Prueba de escritorio
Índice

Variables
temperatura Salida presentar Preliminares

27 Ir a la playa
10 Esperando al buen tiempo Primer
bimestre
26 Ir a la playa
Valores
28 Ir a la playa
Segundo
29 Ir a la playa bimestre
11 Esperando al buen tiempo
30 Ir a la playa Solucionario

Como se puede observar en el ejemplo el Si-sino en el diagrama muestra la Glosario

condición (temperatura es > 25) Si es Verdadera el diagrama indica la instrucción


Referencias
de presentar “Ir a la playa!!!” Sino es decir si es Falso el diagrama indica la bibliográficas
instrucción de presentar “Esperar al buen tiempo…”
Anexos

¿Muy sencillo verdad? Ahora seguimos con el mismo ejemplo codificado.

Codificación

Ingresar al siguiente enlace para ver la codificación en un


lenguaje de programación del ejercicio propuesto:
http://purl.org/taw-sbc-utpl/algorithm/unit5/coding

Recuerde:
La estructura condicional compuesta a su vez puede anidar otra
estructura simple o compuesta.

Es recomendable revisar los contenidos del texto básico en la sección 3.3 –


Estructura lógica condicional simple y conocer claramente la diferencia entre los
esquemas y reglas de cada estructura simple y compuesta. ¡Avancemos!

95 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

4.3. Estructura lógica Dependiendo De


Índice

La estructura Dependiendo_De (ó según sea) permite ejecutar un conjunto de


Preliminares
sentencias o primitivas, en la que el cumplimiento de la condición de la estructura
en mención, hace posible la ejecución de las instrucciones entre muchas Primer
bimestre
alternativas; no solo para el cumplimiento verdadero de la condición, sino por el
cumplimiento de la condición cuando es falsa. Es conocida como ‘Switch case’, Segundo
bimestre
también interpretada como tener un menú de opciones ya que el usuario deberá
escoger una de las opciones, ya que las variables pueden tomar diferentes Solucionario

valores.
Glosario
Sintaxis: Diagrama de flujo
Dependiendo_De (opción) haga Referencias
bibliográficas
Opción 1:
<Expresión>
Instrucción para opción 1
Anexos
Fin Caso 1 <Instrucciones>
Opción 2:
Instrucción para opción 2 Caso 2 <Instrucciones>

Fin
Caso 3 <Instrucciones>
Opción 3:
Instrucción para opción 3
Fin
.
.
.
Opción n:
Instrucción para opción n
Fin
Fin Dependiendo_ De

Ahora, vamos a revisar el ejemplo 4.3 propuesto para comprender la estructura


lógica Dependiendo_De.

96 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Ejemplo 4.3 Se desea determinar qué vocal se ingresa y la letra que representa. Índice

Nro Algoritmo Preliminares


1 Inicio
2 //declaración de variables
Primer
3 vocal, char[a…u] // Variable para determinar la vocal que corresponde bimestre
4 Leer vocal //se ingresa la letra para evaluar a vocal corresponde
5 //Evalúa el caso Segundo
bimestre
6 Dependiendo_De (vocal) haga
7 Opción a:
Solucionario
8 Escriba “La vocal que ingreso es a”
9 break;
10 Opción e: Glosario
11 Escriba “La vocal que ingreso es e”
12 break; Referencias
bibliográficas
13 Opción i:
16 Escriba “La vocal que ingreso es i”
17 break; Anexos

18 Opción o:
19 Escriba “La vocal que ingreso es o”
20 break;
21 Opción u:
22 Escriba “La vocal que ingreso es u”
23 break;
25 default:
27 Escriba “Ha ingresado datos incorrectos”
28 Fin Dependiendo_De
29 Fin
30 //presenta el resultado de la evaluación

97 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Diagrama de flujo
Índice

Preliminares

Primer
bimestre

Segundo
bimestre

Solucionario

Glosario

Referencias
bibliográficas
Miniespecificación

Anexos
Nro Miniespecificación
1 Inicio
2 (vocal, char [a…u])
3 <<”Ingrese la vocal ” // Leer la vocal
4 Dependiendo De (vocal) haga //Pregunta condicional si la temperatura es mayor a
5 25
6 Opción ‘a’:
7 Escriba “Se ha ingresado la letra a”
8 break;
9 Opción ‘e’:
10 Escriba “Se ha ingresado la letra e”
11 break;
12 Opción ‘i’:
13 Escriba “Se ha ingresado la letra i”
14 break;
15 Opción ‘o’:
16 Escriba “Se ha ingresado la letra o”
17 break;
18 Opción ‘u’:
19 Escriba “Se ha ingresado la letra u”
20 break;
21 Default;
22 Escriba “Error”
23 Fin Dependiendo_De
24 Fin

98 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Prueba de escritorio
Índice

Variables
Opción Salida presentar Preliminares

a La letra que escribió es a


e La letra que escribió es e Primer
bimestre
i La letra que escribió es i
Valores
a La letra que escribió es a
Segundo
L Ha ingresado datos incorrectos bimestre
o La letra que escribió es o
u La letra que escribió es u Solucionario

¿Cómo le fue con los ejercicios propuestos?. Si todavía tiene inquietudes respecto Glosario

a la temática, a continuación lo invitamos a revisar el siguiente recurso de apoyo.


Referencias
bibliográficas
Codificación
Anexos

Ingresar al siguiente enlace para ver la codificación en un


lenguaje de programación, del ejercicio propuesto:
http://purl.org/taw-sbc-utpl/algorithm/unit4/coding

A continuación, lo invitamos a realizar los siguientes ejercicios propuestos.

Ejercicios propuestos
Mida su avance realizando los ejercicios del capítulo 3
sección 3.10 – Ejercicio propuestos del texto básico.

Para revisar la resolución de los ejercicios propuestos


ingresar al siguiente enlace: http://purl.org/taw-sbc-utpl/
algorithm/unit4/solutions

¿Cómo le fue con los ejercicios propuestos?. Si todavía tiene inquietudes respecto
a la temática, a continuación lo invitamos a revisar el siguiente recurso de apoyo
sobre estructuras condicionales.

99 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Recursos de apoyo
Índice
Revisar el siguientes recurso:
http://purl.org/taw-sbc-utpl/algorithm/unit4/v1_estructuras-
Preliminares
condicionales
Primer
bimestre
¿Revisó el recurso de apoyo? ¡Muy bien!. Con este recurso hemos reforzado
algunos aspectos muy importantes en el uso de estructuras condicionales, a Segundo
bimestre
continuación hacemos un resumen de estos aspectos:
• El resultado de evaluar una condición dentro de la estructura siempre nos Solucionario
dará valores booleanos, es decir un valor de VERDAD o un valor FALSO, de
esto depende la ejecución de instrucciones dentro de la estructura. Glosario

Referencias
• Se puede utilizar dentro de la condición operadores de comparación bibliográficas
relacionados para comparar dos operandos del mismo tipo. Los operandos
más utilizados son: =, >, <, >=, <= y <>. Anexos

• Cuando utilizamos el operador AND, dos condiciones deben ser


verdaderas para que ocurra una acción resultante.

• Con el operador OR, al menos una de las dos condiciones debe ser
verdadera para que se presente una acción resultante.

• Y, Cuando combinamos los operadores AND y OR en una expresión,


debemos recordar que el operador AND tiene mayor precedencia.

¡Felicidades!. Hemos terminado la presente unidad. Ahora bien, continuemos con


la misma dedicación a la unidad 5: Estructuras lógicas repetitivas. ¡Éxitos!

Estimado estudiante es importante realizar las actividades


planteadas como interacción en el Entorno Virtual de Aprendizaje.
Recuerde que con ello además de afirmar sus conocimientos
obtendrá retroalimentación de sus tutores y demás compañeros.

A continuación lo invitamos a realizar la siguiente autoevaluación


para medir sus conocimientos.

100 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

AA Autoevaluación 4 Índice

Preliminares

Hemos concluido el estudio de la cuarta unidad, continuaremos con el


Primer
siguiente tema, no sin antes comprobar lo aprendido hasta ahora, realizando la bimestre

autoevaluación.
Segundo
bimestre

1. Cuando la condición es verdadera, solo se ejecutan las primitivas de control


Solucionario
diseñadas en la parte verdadera de la condición (p1, p2, p3, . . ., pi, . . ., pn);
y cuando la condición es falsa se ejecutan solo las estructuras de control
Glosario
diseñadas en la parte falsa de cumplimiento de la condición (q1, q2, q3, . . .,
qi, . . ., qn). Referencias
bibliográficas

a. Condicional simple
Anexos
b. Condicional compuesta
c. Bucle Para

2. Cuál es la estructura lógica que es útil en el diseño de algoritmos que


requieren el diseño de menús de opciones, o diseños que requieran la
modularización parcial de la lógica de control del algoritmo.

a. Condicional simple
b. Condicional compuesta
c. Dependiendo_De

101 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

3. Cuál de las siguientes instrucciones le permitirá incrementar el salario de un


Índice
empleado en un 25% siempre y cuando gane 750 dólares o más.

Preliminares
a. Alternativa 1
Si salario >= 750 entonces Primer
bimestre
salario =( salario * 0.25)
Fin Si Segundo
bimestre

b. Alternativa 2 Solucionario
Si salario >= 750 entonces
salario = salario + (salario * 0.25) Glosario

Fin Si
Referencias
bibliográficas
c. Alternativa 3
Si (salario > 750) entonces Anexos

salario = salario + (salario * 0.25)


Fin Si

4. Se desea genera un programa que permita determinar si alguien es mayor


de edad en Ecuador (desde los 18 años). Si es mayor de edad presentar
la edad, en caso que no sea mayor de edad, presentar un mensaje de
“incorrecto”.

¿Cuál de las siguientes sentencias permite obtener el resultado deseado?

a. lternativa 1
Si edad > 18 entonces
>> edad
Sino
<< “incorrecto”
Fin Si

102 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

b. Alternativa 2
Índice
Si edad >= 18 entonces
>> edad
Preliminares
Sino
<< “incorrecto” Primer
bimestre
Fin Si
c. Alternativa 3 Segundo
bimestre
Si edad >= 18 entonces
<< edad Solucionario

Sino
<<“incorrecto” Glosario

Fin Si
Referencias
5. Seleccionar el algoritmo que permita determinar si un usuario que adquiere 3 bibliográficas

productos su costo final es mayor a 200 dólares se realiza un descuento de


Anexos
15%, el algoritmo debe mostrar el total, descuento.

a. Alternativa 1
Inicio
Ingrese precio de 3 productos
>>prod1,
>>prod2,
>>prod3
total = prod1 + prod2 + prod3
Si (total > 200) entonces
desc = total x 15%
Fin si
total = total - desc
<<”El total es”, total
<<”El descuento por su compra es”, desc
Fin

103 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

b. Alternativa 2
Índice
Inicio
Ingrese precio de 3 productos
Preliminares
>>prod1,
>>prod2, Primer
bimestre
>>prod3
total = prod1 + prod2 + prod3 Segundo
bimestre
Si (total > 200) entonces
desc = total x 15% Solucionario

Fin si
Total = Total + desc Glosario

<<”El total es”, total


Referencias
<<”El descuento por su compra es”, desc bibliográficas

Fin
Anexos

c. Alternativa 3
Inicio
Ingrese precio de 3 productos
>>prod1,
>>prod2,
>>prod3
total = prod1 + prod2 + prod3
Si (total < 200) entonces
desc = total x 15%
total = total - desc
Fin si
<<”El total es”, total
<<”El descuento por su compra es”, desc
Fin

104 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

6. Determine las respuestas de los siguientes enunciados según correspondan


Índice
es V o F.

Preliminares
La “condición” se refiere a una decisión que se debe tomar en la lógica de
control ( ) Primer
bimestre

La “decisión” implica la solución a una pregunta que se estructura en ciclo de Segundo


bimestre
repetición. ( )

Solucionario
7. En base a las siguientes expresiones, determinar que estructura de decisión
o control se está usando: Glosario

1. Si ((area >= 10) or (area = 50) entonces Referencias


bibliográficas
2. << area <-- area + 1000
3. Fin Si Anexos

a. Acumulador
b. Condicional compuesta
c. Condicional simple

8. Se desea generar un programa que permite obtener y presentar el cubo de


un número, siempre y cuando el número sea menor a 60, caso contrario
debería obtener y presentar el cuadrado del número indicado.

¿Cuál de las siguientes sentencias permite obtener el resultado deseado?

Sentencia 1
Si numero < 60 entonces
cuadrado <-- numero ^ 2
<< cuadrado
Sino
cubo <-- numero ^ 3
<< cubo
Fin Si

105 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Sentencia 2
Índice
Si numero < 60 entonces
cuadrado <-- numero ^ 3
Preliminares
<< cuadrado
Sino Primer
bimestre
cubo <-- numero ^ 2
<< cubo Segundo
bimestre
Fin Si
Solucionario
Sentencia 3
Si numero <= 60 entonces Glosario

cuadrado <-- numero ^ 3


Referencias
<< cuadrado bibliográficas
Sino
cubo <-- numero ^ 2 Anexos

<< cubo
Fin Si

9. Se desea generar un programa que permita determinar si alguien tiene la


edad para entrar a la universidad en un país (el país tiene como ley que
los estudiantes pueden ingresar a la universidad sólo si tienen 20 años, en
ningún otro caso). Si la persona cumple con la edad presentar un mensaje
de “ingreso exitoso”, en caso que no tenga la de edad presentar un mensaje
de “edad incorrecta”

a. Si edad > 20 entonces


<< “ingreso exitoso”
Sino
<< “edad incorrecta”
Fin Si

106 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

b. Si edad >= 20 entonces


Índice
<< “ingreso exitoso”
Sino
Preliminares
<< “edad incorrecta”
Fin Si Primer
bimestre

c. Si edad == 20 entonces Segundo


bimestre
<< “ingreso exitoso”
Sino Solucionario
<< “edad incorrecta”
Fin Si Glosario

Referencias
10. Cuál es la estructura en la que cada alternativa es disyuntiva y se ejecuta bibliográficas
independiente de las otras.
Anexos

a. Condicional simple
b. Condicional DD
c. Condicional compuesta

Estimado estudiante para comprobar sus respuesta puede ir


al SOLUCIONARIO que se encuentra al final de la guía. Si
sus respuestas han sido correctas, Felicidades!!, podemos
avanzar a la siguiente unidad. De no ser así, lo invitamos a
revisar nuevamente los contenidos para que pueda solventar
sus dudas y reforzar su aprendizaje.

107 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

UNIDAD 5. ESTRUCTURAS LÓGICAS REPETITIVAS Índice

Si escuchas una voz dentro de ti que dice “no Preliminares

puedes pintar”, entonces pinta, y la voz será


Primer
silenciada. bimestre

-Vincent Van Gogh.


Segundo
bimestre
Estimado estudiante, previo al inicio de la presente unidad, es
importante que revise los contenidos del Capítulo 3: Primitivas Solucionario
Algorítmicas del texto básico.

Glosario
Las estructuras lógicas repetitivas llamadas también bucles o ciclos repetitivos,
permiten realizar la ejecución de un conjunto de instrucciones de manera Referencias
bibliográficas
repetitiva mediante la evaluación de una o más condiciones lógicas o por medio
de un contador asociado. Anexos

Antes de iniciar con las estructuras lógicas repetitivas, se debe conocer los
conceptos de dos elementos importantes para definir estas estructuras: contador
y acumulador.

Contador
Un contador es una variable cuyo valor se incrementa o decrementa en una
cantidad constante con la finalidad de contar sucesos o acciones internas de
un ciclo repetitivo. Por lo general un contador es inicializado desde 0 o 1 y va
incrementado de uno en uno. Tanto la inicialización y el incremento del contador
dependen también del problema a resolver.
contador ← 1 → Inicialización
contador ← contador + 1 → Incremento

Acumulador
Un acumulador es una variable que suma sobre sí misma un conjunto de valores,
para de esta forma almacenar la suma de todos ellos en una sola variable.
suma ← 0 → inicialización
suma ← suma + expresión → acumulador

108 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Recuerde:
La diferencia entre un contador y un acumulador es que mientras Índice

el primero va aumentando en una cantidad fija que por lo general


es de uno en uno, el acumulador va aumentando en una cantidad Preliminares
variable.
Primer
bimestre
5.1. Estructura lógica repetitiva Mientras que – Hacer
Segundo
bimestre
La estructura Mientras que – Hacer es una estructura lógica repetitiva de
comparación al inicio. Las instrucciones se realizan siempre y cuando la expresión Solucionario

lógica sea verdadera, caso contrario el ciclo repetitivo terminará.


Glosario

Sintaxis: Diagrama de flujo


Inicializa el contador Referencias
bibliográficas
Mientras (condición) hacer
Instrucción 1 Anexos
Instrucción 2

Instrucción n
incremento del contador
Fin_Mientras
Ejemplo:
sum ← 0
i←1
Mientras (i <= 7) hacer
suma ← suma + i
<< i
i ← i +1
Fin_Mientras
<< suma
Salida
i→1234567
suma → 28

Ejemplo 5.1 Calcular el factorial de un número ingresado por teclado utilizando la


estructura lógica repetitiva Mientras que – Hacer

109 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Análisis: El factorial de un número entero positivo es el producto de todos los


Índice
números enteros positivos desde 1 hasta n. Se define matemáticamente como
n!, que equivale a n! = 1 * 2 * 3 * 4 * 5 * … * (n – 1) * n. Por ejemplo, se solicita
Preliminares
obtener el factorial de 6, el resultado quedaría:
Primer
bimestre
6! = (1 * 2 * 3 * 4 * 5 * 6) = 720
Segundo
bimestre
A continuación se presenta el algoritmo, miniespecificación y diagrama de flujo

Solucionario
Nro Algoritmo Diagrama de flujo
1 Inicio
2 //declaración de variables Glosario

3 cont, i[0 - n] //contador del ciclo


4 repetitivo Referencias
bibliográficas
5 num, i[0 - n] //número a obtener el
6 factorial
Anexos
7 factorial, i[0 - n] //almacena el factorial
8 //inicialización de variables
9 cont ← 1, num ← 0, factorial ← 1 V
10 //se ingresa el número para obtener su
11 factorial F
12 Leer num
13 //calcula el factorial
F
14 Si (num ≤ 0) entonces
15 Escriba "El número no es un
V
16 entero positivo"
17 Sino
18 Mientras (cont ≤ num) entonces
19 factorial ← factorial * cont
20 cont ← cont + 1
21 Fin_Mientras
22 Fin Si
23 //presenta el factorial del número
24 ingresado
25 Escribir factorial
26 Fin

110 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Nro Miniespecificación
Índice
1 Inicio
2 //declaración de variables
Preliminares
3 cont, i[0 - n] //contador del ciclo repetitivo
4 num, i[0 - n] //número a obtener el factorial
Primer
5 factorial, i[0 - n] //variable que almacena el factorial bimestre

6 //inicialización de variables
Segundo
7 cont ← 1, num ← 0, factorial ← 1 bimestre

8 //se solicita que se ingrese el número para obtener su factorial


9 << "Ingrese el número a obtener el factorial" Solucionario

10 >> num
11 //calcula el factorial Glosario

12 Si (num ≤ 0) entonces
Referencias
13 Escriba "El número no es un entero positivo" bibliográficas
14 Sino
15 Mientras (cont ≤ num) entonces Anexos

16 factorial ← factorial * cont


17 cont ← cont + 1
18 Fin_Mientras
19 Fin Si
20 //presenta el factorial del número ingresado
21 << “El factorial de”, +num, “es”, +factorial
22 Fin

Prueba de escritorio

Variables
num cont factorial
6 1 1
1
2 2
Valores
3 6
4 24
5 120
6 720

111 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Codificación
Índice

Ingresar al siguiente enlace para ver la codificación en un


Preliminares
lenguaje de programación del ejercicio propuesto:
http://purl.org/taw-sbc-utpl/algorithm/unit5/coding Primer
bimestre

Recuerde:
Segundo
Cuando no se conoce el número de veces que tiene que repetirse bimestre

el ciclo repetitivo, este se convierte en un dato de entrada y


se tiene que pedir al usuario que lo ingrese. Además se debe Solucionario

considerar que las condición debe llegar en algún momento a ser


Falsa sino se convertiría en un LOOP (ciclo repetitivo infinito, es Glosario
decir que nunca termina).
¿Qué le pareció la temática?. Ahora bien, para reforzar su Referencias
bibliográficas
aprendizaje sobre el ciclo repetitivo Mientras que – Hacer, lo
invitamos a estudiar la sección 3.7 – Estructura lógica repetitiva
Anexos
Mientras que, del texto básico. Avanzamos con la estructura lógica
repetitiva Hacer – Hasta.

5.2. Estructura lógica repetitiva Hacer - Hasta

La estructura Hacer – Hasta es una estructura lógica repetitiva de comparación


al final. Las instrucciones se realizan siempre y cuando la expresión lógica sea
verdadera, caso contrario el ciclo repetitivo terminará.

112 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Sintaxis: Diagrama de flujo


Índice
Inicializa el contador
Hacer
Preliminares
Instrucción 1
Instrucción 2 …
Primer
Instrucción n bimestre

incremento del contador


Segundo
Hasta (condición) bimestre

Ejemplo:
sum ← 0 Solucionario

i←0
Hacer Glosario

suma ← suma + i
Referencias
<< i bibliográficas
i ← i +1
Hasta (i > 7) Anexos

<< suma
Salida
i→0123456
suma → 21

Recuerde:
La estructura lógica repetitiva Hacer – Hasta se ejecuta al menos
una vez, aunque la condición no se cumpla.

A continuación, lo invitamos a analizar el siguiente ejercicio.

Ejemplo 5.2 Calcular el factorial de un número ingresado por teclado utilizando la


estructura lógica repetitiva Hacer – Hasta

Análisis: Revisar el análisis del Ejemplo 5.1. A continuación se presenta el


algoritmo, miniespecificación y diagrama de flujo.

113 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Nro Algoritmo Diagrama de flujo


Índice
1 Inicio
2 //declaración de variables
Preliminares
3 cont, i[0 - n] //contador del ciclo
4 repetitivo
Primer
5 num, i[0 - n] //número a obtener el bimestre

6 factorial
Segundo
7 factorial, i[0 - n] //almacena el factorial bimestre

8 //inicialización de variables
9 cont ← 1, num ← 0, factorial ← 1 Solucionario

10 //se ingresa el número para obtener su


11 factorial Glosario

12 Leer num
13 //calcula el factorial Referencias
bibliográficas
14 Si (num ≤ 0) entonces
15 Escriba "El número no es un Anexos
16 entero positivo"
17 Sino
18 Hacer
19 factorial ← factorial * cont
20 cont ← cont + 1
21 Hasta (cont > num)
22 Fin Si
23 //presenta el factorial del número
24 ingresado
25 Escribir factorial
26 Fin

114 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Nro Miniespecificación
Índice
1 Inicio
2 //declaración de variables
Preliminares
3 cont, i[0 - n] //contador del ciclo repetitivo
4 num, i[0 - n] //número a obtener el factorial
Primer
5 factorial, i[0 - n] //variable que almacena el factorial bimestre

6 //inicialización de variables
Segundo
7 cont ← 1, num ← 0, factorial ← 1 bimestre

8 //se solicita que se ingrese el número para obtener su factorial


9 << "Ingrese el número a obtener el factorial" Solucionario

10 >> num
11 //calcula el factorial Glosario

12 Si (num ≤ 0) entonces
Referencias
13 Escriba "El número no es un entero positivo" bibliográficas
14 Sino
15 Hacer Anexos

16 factorial ← factorial * cont


17 cont ← cont + 1
18 Hasta (cont > num)
19 Fin Si
20 //presenta el factorial del número ingresado
21 << “El factorial de”, +num, “es”, +factorial
22 Fin

Prueba de escritorio

Variables
num cont factorial
6 1 1
1
2 2
Valores
3 6
4 24
5 120
6 720

115 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Codificación
Índice

Ingresar al siguiente enlace para ver la codificación en un


Preliminares
lenguaje de programación del ejercicio propuesto:
• http://purl.org/taw-sbc-utpl/algorithm/unit5/coding Primer
bimestre

Recuerde:
Segundo
Cuando el contador es inicializado en 1 la condición en la bimestre

estructura repetitiva Mientras debe ser menor e igual (≤) que el


límite. Y cuando el contador es inicializado en 0 la condición de la Solucionario

estructura repetitiva Mientras debe ser únicamente menor (<) al


límite. Glosario

¿Cómo le fue con el análisis del ejercicio planteado?. Para solventar alguna duda Referencias
bibliográficas
revisar la sección 3.8 – Estructura lógica repetitiva Hacer – Hasta, del texto base.
Una vez comprendida la temática, podemos pasar al siguiente tema de estudio: Anexos

estructura lógica repetitiva Para.

5.3. Estructura lógica repetitiva Para

La estructura repetitiva Para permite la ejecución de un conjunto de estructuras


de control de una forma repetitiva que se ubican dentro del Para. A diferencia de
los otros ciclos repetitivos, la estructura Para tiene primitivas internas como la
inicialización del contador, la condición lógica y el incremento del contador.

116 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Sintaxis: Diagrama de flujo


Índice
Para (contador, condición, incremento) Hacer
Instrucción 1
Preliminares
Instrucción 2

Primer
Instrucción n bimestre

Fin_Para
Segundo
Ejemplo: bimestre

sum ← 0
Para (i←1, i <= 7, 1) Solucionario

suma ← suma + i
<< i Glosario

Fin_Para
Referencias
<< suma bibliográficas
Salida
i→1234567 Anexos

suma → 28

A continuación se presenta un ejemplo utilizando la estructura repetitiva Para.

Ejemplo 5.3 Calcular el factorial de un número ingresado por teclado utilizando la


estructura lógica repetitiva Para.

Análisis: Revisar el análisis del Ejemplo 5.1 A continuación se presenta el


algoritmo, miniespecificación y diagrama de flujo.

117 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Nro Algoritmo Diagrama de flujo


Índice
1 Inicio
2 //declaración de variables
Preliminares
3 cont, i[0 - n] //contador del
4 ciclo repetitivo
Primer
5 num, i[0 - n] //número a bimestre

6 obtener el factorial
Segundo
7 factorial, i[0 - n] //almacena el V bimestre

8 factorial
F
9 //inicialización de variables Solucionario

10 num ← 0, factorial ← 1 F

11 //se ingresa el número para V


Glosario

12 obtener su factorial
13 Leer num
V Referencias
bibliográficas
14 Si (num ≤ 0) entonces //
15 calcula el factorial Anexos
16 Escriba "El número no es
17 un entero positivo"
18 Sino
19 Para (cont ← 0, num, 1)
20 factorial = factorial *
21 cont
22 Fin Para
23 Fin Si
24 //presenta el factorial del
25 número ingresado
26 Escribir factorial
27 Fin

118 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Nro Miniespecificación
Índice
1 Inicio
2 //declaración de variables
Preliminares
3 cont, i[0 - n] //contador del ciclo repetitivo
4 num, i[0 - n] //número a obtener el factorial
Primer
5 factorial, i[0 - n] //variable que almacena el factorial bimestre
6 cont ← 1, num ← 0, factorial ← 1 //inicialización de variables
7 << "Ingrese el número a obtener el factorial" // se ingrese el número para obtener Segundo
bimestre
8 su factorial
9 >> num
Solucionario
10 Si (num <= 0) entonces
11 Escriba "El número no es un entero positivo"
Glosario
12 Sino
13 Para (cont ← 1, cont <= num, cont++) entonces
Referencias
14 factorial ← factorial * cont //calcula el factorial bibliográficas
15 Fin_Para
16 Fin Si Anexos
17 << “El factorial de”, +num, “es”, +factorial //presenta el factorial del número
18 ingresado
19 Fin

Prueba de escritorio

Variables
num cont Factorial
6 1 1
1
2 2
Valores
3 6
4 24
5 120
6 720

Codificación

Ingresar al siguiente enlace para ver la codificación en un


lenguaje de programación del ejercicio propuesto:
• http://purl.org/taw-sbc-utpl/algorithm/unit5/coding

119 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

¿Qué le pareció la temática?. Si aún tiene inquietudes sobre esta estructura,


Índice
revisar la sección 3.6 – Estructura lógica repetitiva Para, del texto básico. Ahora
bien, iniciamos el es estudio de las estructuras lógicas repetitivas anidadas.
Preliminares

5.4. Estructuras lógicas repetitivas anidadas Primer


bimestre

Se conoce como estructuras anidadas cuando una estructura está dentro de otra Segundo
bimestre
estructura. Se pueden anidar estructuras lógicas de decisión así como estructuras
lógicas de repetición. Para una mayor comprensión de esta sección, se desarrolla Solucionario

el siguiente ejercicio.
Glosario

Ejemplo 5.4 Diseñe un algoritmo que sume todos los número primos que hay
Referencias
entre 1 a N. El límite de números a verificar lo ingresa el usuario. bibliográficas

A continuación se presenta el algoritmo, miniespecificación y diagrama de flujo Anexos

120 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Nro Miniespecificación
Índice
1 Inicio
2 //declaración de variables
Preliminares
3 cont, i[0 - n] //contador del primer ciclo repetitivo
4 cont1, i[0 - n] //contador del segundo ciclo repetitivo
Primer
5 lim, i[0 - n] //limite de número a verificar bimestre
6 num, i[0 - n] //número a verificar si es primo
Segundo
7 divisor, i[0 - n] //variable que almacena el número de divisores bimestre
8 suma, i[0 - n] //variable que almacena la suma de los números primos
9 cont ← 1, cont1 ← 1, num ← 0, divisor ← 1, suma ← 0 //inicialización de variables Solucionario

10 // se ingrese el limite de números


11 Escribir "Ingrese el límite de los números a verificar si son primos" Glosario
12 Leer lim
13 Mientras (cont ≤ lim) entonces Referencias
bibliográficas
14 num ← cont
15 Si (num = = 1) entonces
Anexos
16 Escribir "El número", +num, "es primo"
17 suma ← suma + num
18 Sino
19 Mientras (cont1 ≤ num) entonces
20 Si ((num % cont1) == 0) entonces
21 divisor ← divisor + 1
22 Fin_Si
23 cont1 ← cont1 + 1
24 Fin_Mientras
25 Si (divisor == 2) entonces
26 Escribir "El número", +num, "es primo"
27 suma ← suma + num
28 Sino
29 Escribir "El número", +num, "no es primo"
30 Fin_Si
31 cont1 ← 1, divisor ← 0
32 Fin_Si
33 cont ← cont + 1
34 Fin_Mientras //presenta la suma de los primos
35 Escribir "El suma de los números primos entre 1 y", +lim, "es:", +suma
36 Fin

121 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Diagrama de flujo
Índice

Preliminares

Primer
bimestre

Segundo
bimestre

Solucionario

Glosario

V
Referencias
bibliográficas

F V Anexos

122 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Nro Miniespecificación
Índice
1 Inicio
2 //declaración de variables
Preliminares
3 cont, i[0 - n] //contador del primer ciclo repetitivo
4 cont1, i[0 - n] //contador del segundo ciclo repetitivo
Primer
5 lim, i[0 - n] //limite de número a verificar bimestre
6 num, i[0 - n] //número a verificar si es primo
7 divisor, i[0 - n] //variable que almacena el número de divisores Segundo
bimestre
8 suma, i[0 - n] //variable que almacena la suma de los números primos
9 cont ← 1, cont1 ← 1, num ← 0, divisor ← 1, suma ← 0 //inicialización de variables Solucionario
10 // se ingrese el limite de números
11 << "Ingrese el límite de los números a verificar si son primos"
Glosario
12 >> lim
13 Mientras (cont ≤ lim) entonces
Referencias
14 num ← cont bibliográficas
15 Si (num = = 1) entonces
16 << "El número", +num, "es primo" Anexos
17 suma ← suma + num
18 Sino
19 Mientras (cont1 ≤ num) entonces
20 Si ((num % cont1) == 0) entonces
21 divisor ← divisor + 1
22 Fin_Si
23 cont1 ← cont1 + 1
24 Fin_Mientras
25 Si (divisor == 2) entonces
26 << "El número", +num, "es primo"
27 suma ← suma + num
28 Sino
29 << "El número", +num, "no es primo"
30 Fin_Si
31 cont1 ← 1
32 divisor ← 0
33 Fin_Si
34 cont ← cont + 1
35 Fin_Mientras
36 << "El suma de los números primos entre 1 y", +lim, "es:", +suma //presenta la
37 suma de los primos
38 Fin

123 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Prueba de escritorio
Índice

Variables
lim cont num cont1 divisor suma salida Preliminares

7 1 1 1 0 1 “El 1 es primo”
Primer
bimestre
2 2 2 1
2
Segundo
0 3 “El 2 es primo” bimestre

3 3 1 1 Solucionario
2 -
3 2
Glosario
4 0 6 “El 3 es primo”

Referencias
4 4 1 1 bibliográficas
2 2
3 -
Anexos
4 3
Valores 5 0 - “El 4 no es primo”

5 5 1 1
2 -
3 -
4 -
5 2
6 0 11 “El 5 es primo”

6 6 1 1
2 2
3 3
4 -
5 -
6 4
7 0 - “El 6 no es primo”

124 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Variables
Índice
7 7 1 1
2 -
3 - Preliminares

4 -
Valores
5 - Primer
bimestre
6 -
7 2
Segundo
8 0 18 “El 7 es primo” bimestre

Solucionario
Codificación

Glosario
Ingresar al siguiente enlace para ver la codificación en un
lenguaje de programación del ejercicio propuesto: Referencias
bibliográficas
• http://purl.org/taw-sbc-utpl/algorithm/unit5/coding

Anexos
Ejemplo 5.5 Resolver la siguiente serie y obtener la sumatoria total utilizando la
estructura repetitiva Mientras - Hacer:

1 + 2 + 4 + 3 + 7 + 4 + 10 + 5 + … + n

Análisis: Para resolver el problema planteado, como primer paso se debe


identificar la secuencia de la serie. Se observa que los términos ubicados en la
posición impar de la serie van incrementando en 3 y los términos en la posición
par de la serie incrementan en 1. Para esto, es recomendable definir dos variables
que vayan generando cada término. Además, no se da un límite establecido de la
serie, por lo cual el limite será un dato de entrada. Considerar también que en una
sumatoria, se debe definir una variable que acumule la suma de cada término. A
continuación se presenta el algoritmo, miniespecificación y diagrama de flujo

125 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Nro Algoritmo
Índice
1 Inicio
2 //declaración de variables
Preliminares
3 Entero: cont, lim, t_par, t_imp, s_par, s_imp, suma
4 //inicialización de variables
Primer
5 cont ← 1, t_par ← 1, t_imp ← -2, s_par ← 0, s_imp ← 0, suma ← 0 bimestre

6 //entrada de datos
Segundo
7 Escribir “Ingrese el limite de la serie” bimestre

8 Leer lim
9 Mientras (cont ≤ lim) entonces //proceso Solucionario

10 Si (cont % 2 == 0) entonces
11 Calcular: t_par ← t_par + 1 Glosario

12 Calcular: s_par ← s_par + t_par


Referencias
13 Sino bibliográficas
14 Calcular: t_imp ← t_imp + 3
15 Calcular: s_imp ← s_imp + t_imp Anexos

16 Fin_Si
17 cont ← cont + 1
18 Fin_Mientras
19 Calcular: suma ← s_par + s_imp
20 //salida
21 Escribir “La suma total de la serie es:”, +suma
22 Fin

126 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Diagrama de flujo
Índice

Preliminares

Primer
bimestre

Segundo
bimestre

Solucionario

Glosario

Referencias
bibliográficas

F
Anexos

127 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Nro Miniespecificación
Índice
1 Inicio
2 //declaración de variables
3 cont, i[0 - n] //contador del ciclo repetitivo Preliminares

4 lim, i[0 - n] //limite de la serie


5 t_par, i[0 - n] //término par de la serie Primer
bimestre
6 t_imp, i[0 - n] //término impar de la serie
7 s_par, i[0 - n] //suma de los términos pares
Segundo
8 s_imp, i[0 - n] //suma de los términos impares bimestre
9 suma, i[0 - n] //suma total de la serie
10 //inicialización de variables Solucionario
11 cont ← 1, t_par ← 1, t_imp ← -2, s_par ← 0, s_imp ← 0, suma ← 0
12 //entrada de datos
Glosario
13 << “Ingrese el limite de la serie”
14 >> lim
Referencias
15 //proceso bibliográficas
16 Mientras (cont ≤ lim) entonces
17 Si (cont % 2 == 0) entonces Anexos
18 t_par ← t_par + 1
19 s_par ← s_par + t_par
20 Sino
21 t_imp ← t_imp + 3
22 s_imp ← s_imp + t_imp
23 Fin_Si
24 cont ← cont + 1
25 Fin_Mientras
26 suma ← s_par + s_imp
27 //salida
28 << “La suma total de la serie es:”, +suma
29 Fin

Prueba de escritorio
Variables
lim cont t_par s_par t_impar s_imp suma
5 1 1 0 -2 0 0
1 1
2 2 2
Valores
3 4 5
4 3 5
5 7 12
6 17

128 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Codificación
Índice

Ingresar al siguiente enlace para ver la codificación en un


Preliminares
lenguaje de programación del ejercicio propuesto:
http://purl.org/taw-sbc-utpl/algorithm/unit5/coding Primer
bimestre

A continuación se presentan algunos ejercicios propuestos y recursos de apoyo Segundo


bimestre
que le ayudarán a fortalecer los ciclos repetitivos aprendidos.

Solucionario
Ejercicios propuestos
• Desarrolle de los ejercicios propuestos 3.10.2 del texto Glosario
básico, los ejercicios pares entre el 22 al 40.
Referencias
bibliográficas

Para revisar la resolución de los ejercicios propuestos


Anexos
ingresar al siguiente enlace: http://purl.org/taw-sbc-utpl/
algorithm/unit5/solutions

Si todavía tiene inquietudes respecto a la temática y para fortalecer lo aprendido,


a continuación lo invitamos a revisar los siguientes recursos de apoyo sobre las
estructuras lógicas repetitivas.

Recursos de apoyo
Revisar los siguientes recursos:
• http://purl.org/taw-sbc-utpl/algorithm/unit5/v1_mientras-hacer
• http://purl.org/taw-sbc-utpl/algorithm/unit5/v2_bucles
• http://purl.org/taw-sbc-utpl/algorithm/unit5/v3_estructuras-control

¿Ya revisó los recursos de apoyo?. ¡Muy bien!. Ahora lo invitamos a


responder las siguientes interrogantes, ¿para qué me sirven las estructuras
lógicas repetitivas?, ¿se puede anidar y combinar varias estructuras lógicas
repetitivas?. Como apoyo para responder estas interrogantes, debemos
considerar que las estructuras lógicas repetitivas, también llamadas ciclos

129 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

repetitivos o bucles, nos permiten repetir una instrucción o una secuencia


Índice
de instrucciones, un número determinado de veces mientras se cumpla una
condición. Y dependiendo del problema podemos utilizar la estructura que se
Preliminares
adapte y nos dé una solución más eficiente.
Primer
Estimado estudiante es importante realizar las actividades bimestre

planteadas como interacción en el Entorno Virtual de Aprendizaje.


Segundo
Recuerde que con ello además de afirmar sus conocimientos bimestre
obtendrá retroalimentación de sus tutores y demás compañeros.
Solucionario

A continuación lo invitamos a realizar la siguiente autoevaluación para medir sus


conocimientos. Glosario

Referencias
bibliográficas

Anexos

130 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

AA Autoevaluación 5 Índice

Preliminares

Analice las siguientes preguntas de opción múltiple y seleccione la respuesta


Primer
correcta. bimestre

Segundo
1. Un contador da un seguimiento al número de: bimestre

a. Estructuras de ciclo dentro de un programa Solucionario

b. Veces que se acumula una variable


Glosario
c. Ciclos de máquina requeridos para un segmento de un programa

Referencias
2. Agregar el valor de 1 a una variable también se llama: bibliográficas

Anexos
a. Reiniciar
b. Incrementar
c. Decrementar

3. Por lo común, el valor agregado a una variable acumuladora es:

a. El mismo para cada iteración


b. El valor de 1
c. Diferente por cada iteración

4. Cuáles de las siguientes afirmaciones son verdaderas sobre las estructuras


Mientras que, y Hacer Hasta

a. La estructura mientras se ejecuta siempre y cuando se cumpla la


condición
b. La estructura hacer-hasta nunca se ejecuta si la condición no se
cumple
c. La estructura mientras se ejecuta independiente de la condición

131 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

d. La estructura hacer-hasta se ejecuta al menos una vez así la condición


Índice
no se cumpla

Preliminares
5. De las siguientes ideas presentadas, cuál es el concepto apropiado para
describir una estructuras de control anidadas? Primer
bimestre

a. Cuando se coloca una estructura de control fuera de otra Segundo


bimestre
b. Cuando se coloca una variable dentro de otra
c. Cuando se coloca una estructura de control dentro de otra Solucionario

6. En base a la siguiente miniespecificación, determine cuál es el valor Glosario


resultante de i?
Referencias
bibliográficas
i←0
limite ← 5 Anexos

Mientras i <= limite hacer


I←i+1
Fin_Mientras
<< i
a. 4
b. 5
c. 6

7. De la siguiente lista de estructuras de control. ¿Cuál es la que posee la


característica que permite que el proceso se ejecute al menos una vez?

a. Bucle de comparación al inicio


b. Bucle de comparación al final
c. Bucle de comparación ilimitado

132 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

8. Si se ejecuta la siguiente miniespecificación y se desarrolla las pruebas de


Índice
escritorio ¿Qué secuencia de números se genera?

Preliminares
i←0
limite ← 24 Primer
bimestre
Mientras i < limite hacer
Si i%6 == 0 entonces Segundo
bimestre
<< i
Fin Si Solucionario
i=i+3
Fin mientras Glosario

a. 0, 6, 12, 18, 24
Referencias
b. 6, 12, 18, 24 bibliográficas
c. 0, 6, 12, 18
Anexos

9. Las siguientes sentencias imprimen los numero del 1 al 20. ¿Qué se


necesita cambiar en la estructura Mientras del mismo para que se convierta
en un ciclo infinito?

1 Inicio
2 numero1, i[1 – n]
3 numero1 ← 1
4 Mientras numero1 <= 20 hacer
5 << numero1
6 numero1 ← numero1 + 1
7 Fin_Mientras
8 Fin

a. En la línea 6 cambiar por: numero1 ← numero1 + 20


b. Eliminar la línea 6
c. En la línea 6 cambiar por: numero1 ← numero1 * 20

133 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

10. Cuál es el concepto apropiado para describir una estructura lógica repetitivas
Índice
o bucle?

Preliminares
a. Permite realizar la evaluación de expresiones lógicas, para controlar la
ejecución de una o más instrucciones Primer
bimestre
b. Permite realizar la ejecución de un conjunto de instrucciones de
manera repetitiva mediante la evaluación de una o más expresiones Segundo
bimestre
lógicas
c. Permite realizar la evaluación de expresiones lógicas, para controlar la Solucionario
ejecución de una o más instrucciones
Glosario
Estimado estudiante para comprobar sus respuesta puede ir al
SOLUCIONARIO que se encuentra al final de la guía. Si sus Referencias
bibliográficas
respuestas han sido correctas, Felicidades!!, podemos avanzar a
la siguiente unidad. De no ser así, lo invitamos a revisar
Anexos
nuevamente los contenidos para que pueda solventar sus dudas y
reforzar su aprendizaje.

Finalmente, para culminar con las temáticas planificadas para la


presente asignatura vamos a dar inicio con la Unidad 6.

134 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

UNIDAD 6. ESTRUCTURAS DE DATOS Índice

Lo único que se interpone entre tú y tu sueño es Preliminares

la voluntad de intentarlo y la creencia de que es


Primer
posible conseguirlo. bimestre

Joel Brown.
Segundo
bimestre
Estimado estudiante, estamos en la última unidad de la asignatura.
¡Felicitaciones!, ahora lo invitamos a estudiar la presente unidad Solucionario
en la que podremos aprender temas importantes como vectores
unidimensionales, bidimensionales y multidimensionales.
Glosario

Continuemos con perseverancia, que la meta está muy cerca! Referencias


bibliográficas

En esta unidad es importante tener presente que un arreglo son estructuras


Anexos
de datos (variable) consistentes en un conjunto de datos del mismo tipo. Los
arreglos poseen un tamaño que es la cantidad de objetos del mismo tipo que
puede almacenar. Es conocido como arreglo o array indistintamente.

La Figura 19 muestra un definición de un arreglo, sus componentes y tipos de


arreglos.

Figura 19. Componentes y tipos de arreglos


Fuente: Mancilla, (2014)

135 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

La Figura 19 presenta los atributos que tiene un arreglo, entre ellos el tamaño n, el
Índice
índice j, de igual forma, como toda variable un arreglo tiene características cómo
Nombre, tipo, dirección y contenido.
Preliminares

Tamaño: indica el número de elementos que se almacenan en el arreglo. Primer


bimestre

Subíndice: es un puntero que permite acceder a un elemento específico del Segundo


bimestre
arreglo. Recuerde que el subíndice es un valor numérico.

Solucionario
Los arreglos se almacenan de forma interna, en la memoria del computador, de
manera secuencial como muestra a continuación: Glosario

A: a1 a2 … Ai-1 ai ai+1 … ak-1 ak Referencias


bibliográficas

Clasificación de arreglos, según su dimensión:


Anexos
• Unidimensionales
• Bidimensionales

6.1. Arreglos unidimensionales

Ahora bien, para reforzar su aprendizaje en esta sección arreglos


unidimensionales lo invitamos a estudiar la sección 4.1 – Concepto de vector
unidimensional del texto básico desde la página 212. Esto nos ayudará a
comprender de mejor manera. ¡Avancemos!

Un arreglo o array, también denominado vector o fila, vector es un tipo de


datos estructurados compuesta por un conjunto de elementos, de tamaño fijo y
elementos homogéneos (del mismo tipo), los cuales son direccionados por un
único subíndice, el cual está organizado linealmente, con el fin de almacenar
un arreglo de informaciones que se disponen secuencialmente de una forma
contigua dentro del vector.

Por su organización, el vector recibe también el nombre de arreglo


unidimensional. Los vectores de una sola dimensión (o arreglos unidimensionales)
son la base para el concepto de arreglo bidimensional.

136 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Componentes de vector unidimensional


Índice

La Figura 20 detalla cada uno de los componentes de vector o arreglo


Preliminares
unidimensional, además a continuación se detalla cada uno que son:

Primer
bimestre
• Nombre del vector, que identifica la estructura de datos llamada vector,
arreglo lineal o unidimensional. Segundo
bimestre
• El subíndice, que direcciona los contenidos de la información del vector.
• Las informaciones contenidas en las direcciones ubicadas por el Solucionario
subíndice del vector.
• Rango de almacenamiento del vector, desde el punto inicial hasta un Glosario

punto final o tope del vector.


Referencias
bibliográficas
La figura 20 muestra el esquema del vector A
Anexos

Figura 20. Representación esquemática de un vector.


Tomada de: Mancilla (2014)

El nombre del vector es A, lo que identifica la totalidad de la estructura como un


arreglo unidimensional.

Las direcciones, o posiciones, del vector son subíndices, para este caso
dispuestos de una forma lineal, o sea, unos a continuación de otros, denotados
por 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 para este caso. Los subíndices son totalmente
diferentes a los contenidos de informaciones, los cuales se identifican así: A [1]

137 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

= 10; en la primera (1) dirección del vector se encuentra la información 10, en


Índice
tanto que en la quinta (5) dirección del vector se encuentra la información 50. Se
recalca que en la dirección siete (7) del vector o A [7] se encuentra la información
Preliminares
7, pero su semántica es diferente, porque un concepto es el subíndice y otro
concepto totalmente diferente es la información que direcciona el subíndice del Primer
bimestre
vector.
Segundo
bimestre
El rango de almacenamiento del vector A parte de una posición inicial subíndice
uno (1) y llega una posición de dirección final (10). Solucionario

Los subíndices dispuestos de una forma lineal 1, 2, 3, . . ., 10, permiten la Glosario

organización en secuencia de las informaciones contenidas en el vector A;


Referencias
secuencia de informaciones que conducen a identificar que en la organización bibliográficas
presentada la información 78 precede a la información 50, pero la información 78
es sucesora de la información 56; por esta razón, si 4 es el subíndice del vector Anexos

en análisis, entonces A[4] = 78, y el subíndice sucesor de 4 es el 5, luego A[5] =


50, de lo cual se puede inferir correctamente que 78 precede a 50; ahora bien,
estando en A[4] = 78, el subíndice predecesor de 4 es 3 y A[3] = 56, de lo cual se
puede concluir que la información 78 es sucesora de la información 56 para este
caso. Se identifica el vector en su conjunto como estructura organizada por su
nombre (A), en tanto que las informaciones contenidas en el vector se denotan
por A[i], variando el subíndice i en el rango desde el valor 1 hasta el valor 10 para
este ejemplo.

Recuerde:
En base a la identidad del vector y teniendo en cuenta su
subíndice asociado, las estructuras de control lógicas Mientras
que, Para o Haga Hasta se utilizan para controlar los subíndices
del vector desde el contenido de la posición inicial hasta la
posición final del contenido almacenado dentro del vector.

Sintaxis: < tipo ><variable> [N]

Se declara un arreglo de nombre <variable > con N elementos de tipo <tipo>, (N


es una constante). Ejemplo int B [20].

138 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

A continuación vamos a revisar el ejemplo 6.1 propuesto lo que permitirá poner en


Índice
práctica lo aprendido.

Preliminares
Ejemplo 6.1 Diseñe un algoritmo que rellene un vector A con los números pares
comprendidos entre 1 y 20 y los muestre en pantalla en ascendente. Primer
bimestre

Análisis: La cantidad de pares que existen entre 1 y 20 son 10 elementos, se Segundo


bimestre
determina que un número es par cuando la división entre un número entre 2 su
residuo es 0. Se debe rellenar el arreglo con números pares y luego presentar el Solucionario
arreglo con sus elementos pares.
Glosario
Nro Algoritmo
1 Inicio Referencias
2 // Declarar de variables bibliográficas

3 (A[10]) // Declarar el arreglo A con 10 elementos debido que si ingresamos números


4 pares de del 1 a 20 van a existir 10 números pares. Anexos

5 (i, i[0..n]) // Declarar el arreglo A


6 i<-0; // Inicializa i=0, será utilizado como contador
7 (x, i[1..n]) // Declarar variable x que genera lo números de 1 al 20
8 Para (x ← 1, x ≤ 20, x++) // Inicia bucle para, que trabaja con variable x inicia en
9 1 hasta 20
10 Si((x mod 2)==0) // Condición que evalué si el valor de x es par
11 A[i] = x; // Si es par entonces el valor de x se almacena en el arreglo A[i],
12 cuando i inicia en la posición o
13 i = i + 1; // Cada vez que se repite una interacción de número par i se
14 incrementa
15 fin Si // Finaliza la condición
16 fin Para // Finaliza bucle para,
17 // Finaliza el ciclo ya que gira hasta llegar a x=20 y tendrá almacenados
18 // Imprimir en pantalla en orden ascendente al arreglo A
19 Para(x ← 0, (x = i - 1), x++) // Inicia bucle para, con la variable x que inicia desde 0
20 hasta (i-1) por qué? Debido que i tienen la contabilización exacta de cuantos números
21 pares existen, necesita repetir la cantidad de veces el iterador para que imprima todos
22 los números que se encuentran dentro del arreglo A
23 << presentar “A[x]”; //Imprimir en pantalla en orden ascendente al arreglo A
24 Fin_para // Finaliza bucle para
25 Fin

139 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Miniespecificación
Índice

Nro Miniespecificación
Preliminares
1 Inicio
2 // Declarar de variables
Primer
3 (A[10]) // Declarar el arreglo A con 10 elementos debido que si ingresamos números bimestre

4 pares de del 1 a 20 van a existir 10 números pares.


Segundo
bimestre
5 (i, i[0..n]) // Declarar el arreglo A
6 i=0; // Inicializa i=0, será utilizado como contador
Solucionario
7 (x, i[1..n]) // Declarar variable x que genera lo números de 1 al 20
8 Para (x=1 hasta 20) // Inicia bucle para, que trabaja con variable x inicia en 1 hasta 20
Glosario
9 Si((x mod 2)==0) // Condición que evalué si el valor de x es par
10 A[i]=x; // Si es par entonces el valor de x se almacena en el arreglo A[i], cuando Referencias
bibliográficas
11 i inicia en la posición o

12 i=i+1; // Cada vez que se repite una interacción de número par i se incrementa Anexos
13 finSi // Finaliza la condición
14 fin_para // Finaliza bucle para,
15 // Finaliza el ciclo ya que gira hasta llegar a x=20 y tendrá almacenados

16 // Imprimir en pantalla en orden ascendente al arreglo A

17 Para(x=0 hasta (x=i-1)) // Inicia bucle para, con la variable x que inicia desde 0 hasta
18 (i-1) por qué? Debido que i tienen la contabilización exacta de cuantos números pares

19 existen, necesita repetir la cantidad de veces el iterador para que imprima todos los

20 números que se encuentran dentro del arreglo A

21 << presentar “A[x]”; / Imprimir en pantalla en orden ascendente al arreglo A


22 Fin_para // Finaliza bucle para
23 Fin

140 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Prueba de escritorio
Índice

Variables
Preliminares
A[10] i x
0 1 (1 mod 2)==0 no
A[0] = 2 1 2 (2 mod 2)==0 si Primer
bimestre
3 (3 mod 2)==0 no
A[1]=4 2 4 (4 mod 2)==0 si Segundo
5 (5 mod 2)==0 no bimestre
A[2]=6 3 6 (6 mod 2)==0 si
7 (7 mod 2)==0 no Solucionario
A[3]=8 4 8 (8 mod 2)==0 si
9 (9 mod 2)==0 no
Glosario
Valores A[4]=10 5 10 (10 mod 2)==0 si
11 (11 mod 2)==0 no
A[5]=12 6 12 (12 mod 2)==0 si Referencias
bibliográficas
13 (13 mod 2)==0 no
A[6]=14 7 14 (14 mod 2)==0 si
Anexos
15 (15 mod 2)==0 no
A[7]=16 8 16 (16 mod 2)==0 si
17 (17 mod 2)==0 no
A[8]=18 9 18 (18 mod 2)==0 si
19 (19 mod 2)==0 no
A[9]=20 10 20 (20 mod 2)==0 si

¿Cómo le fue con los ejercicios propuestos?. Si todavía tiene inquietudes respecto
a la temática, a continuación lo invitamos a revisar el siguiente recurso de apoyo.

Codificación

Ingresar al siguiente enlace para ver la codificación en un


lenguaje de programación del ejercicio propuesto:
• http://purl.org/taw-sbc-utpl/algorithm/unit6/coding

Es importante que revise y desarrolle los ejercicios propuestos que


se encuentran en capítulo 4 del texto básico, con esto puede
apoyarse para consolidar más su aprendizaje en este tema. ¡
Adelante !

141 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

6.2. Arreglos bidimensionales o matrices


Índice

Estimado estudiante, previo al inicio de la presente temática, es


importante que revise los contenidos del Capítulo 4, sección 4.2: Preliminares

Arreglos bidimensionales, del texto básico.


Primer
bimestre

A continuación se realiza la explicación de la temática y el desarrollo de ejercicios


Segundo
para su mejor comprensión. bimestre

Solucionario
Los arreglos bidimensionales o también llamados matrices, son estructura
de datos organizadas en forma de tabla, es decir, en filas y columnas. Cada
Glosario
elemento tiene una posición que se identifica mediante dos índices: el de su
fila y el de su columna. Referencias
bibliográficas

Un arreglo bidimensional tiene los siguientes elementos:


Anexos

• Nombre del arreglo, identifica la estructura de datos.


• Un primer subíndice, representa las filas del arreglo.
• Un segundo subíndice, representa las columnas del arreglo.
• La intersección entre las filas y columnas, que genera un espacio de
almacenamiento para almacenar un elemento de información o valor.

A continuación se presenta la sintaxis que se va a utilizar para definir arreglos


bidimensionales ya sea al momento de desarrollar algoritmos, miniespecificación
o diagramas de flujo.

Algoritmo Miniespecificación Diagrama de flujo


Declaración A [50, 50] A (50, 50), i [1 – n]

Asignación A [i, j] ← 10 A (i, j) ← 10

142 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

En la Figura 21 se puede observar los elementos que conforman un arreglo


Índice
bidimensional o matriz.

Preliminares
Donde, i es el subíndice para la filas y j el subíndice para las columnas.

Primer
bimestre
Columna 1 Columna 2 Columna 4 Columna 5
Fila 1 11 12 13 14
Segundo
3 24 63 34 bimestre
Fila 2 21 22 23 24
113 44 7 56
Solucionario
Fila 3 31 32 33 34
58 12 79 77
Fila 4 41 42 43 44 Glosario
43 201 303 91
Referencias
bibliográficas

i, j
Anexos

Figura 21. Elementos de un arreglo bidimensional


Fuente: Mancilla, (2014)
Elaboración: Cabrera, M.; Tenesaca, G., (2018)

Importante:
Para leer, realizar operaciones y recorrer un arreglo bidimensional
se requiere de estructuras de control repetitivas que permitan
avanzar por cada una de las posiciones de la matriz. Se puede
utilizar las estructuras de control: Para, Mientras que o Hacer
Hasta.

Luego de haber analizado los componentes de un arreglo bidimensional,


continuamos con el desarrollo de ejercicios para fortalecer lo aprendido.

Ejemplo 6.1 Leer las matrices A y B, obtener la suma en una nueva matriz C y
presentar la matriz C.

143 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Análisis:
Índice

Dadas dos matrices A y B de n elementos se solicita realizar la suma de las dos


Preliminares
matrices y obtener una nueva matriz C. La suma de matrices sobre la matriz C se
obtiene C = A + B. Primer
bimestre

Supongamos que el tamaño de las matrices es n = 3, entonces el resultado de la Segundo


bimestre
suma sería:

Solucionario
C = A + B
3 6 14 2 3 9 1 3 5
Glosario
19 12 24 = 12 7 15 + 7 6 9
10 8 21 8 0 11 2 8 10 Referencias
bibliográficas

Figura 22. Suma de matrices Anexos


Elaboración: Cabrera, M.; Tenesaca, G., (2018)

Cada elemento de la matriz C es el resultado de la suma del elemento de la matriz


A con el elemento de la matriz B, en la misma posición, esto se representa:

C (i, j) = A(i, j) + B(i, j), donde i y j son menor o igual a n. En el ejemplo, para
obtener las filas de la matriz C se realiza lo siguiente:

Fila 1

C (1, 1) = A(1, 1) + B(1, 1) → C (1, 1) = 2 + 1 → C (1, 1) = 3


C (1, 2) = A(1, 2) + B(1, 2) → C (1, 2) = 3 + 3 → C (1, 2) = 6
C (1, 3) = A(1, 1) + B(1, 1) → C (1, 1) = 2 + 1 → C (1, 1) = 14

Fila 2

C (2, 1) = A(2, 1) + B(2, 1) → C (2, 1) = 2 + 1 → C (2, 1) = 3


C (2, 2) = A(2, 2) + B(2, 2) → C (2, 2) = 3 + 3 → C (2, 2) = 6
C (2, 3) = A(2, 1) + B(2, 1) → C (2, 1) = 2 + 1 → C (2, 1) = 3

144 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Fila 3
Índice

C (3, 1) = A(3, 1) + B(1, 1) → C (3, 1) = 2 + 1 → C (3, 1) = 3


Preliminares
C (3, 2) = A(3, 2) + B(1, 2) → C (3, 2) = 3 + 3 → C (3, 2) = 6
C (3, 3) = A(3, 1) + B(1, 1) → C (3, 1) = 2 + 1 → C (3, 1) = 3 Primer
bimestre

Entendido el problema planteado, se debe encontrar la lógica para automatizar el Segundo


bimestre
proceso realizado. Para esto, consideremos los siguientes puntos:

Solucionario
• Se requiere el tamaño de las matrices a sumar, el mismo puede ser
definido dentro del algoritmo o como dato de entrada solicitado al Glosario
usuario. En el caso de las matrices cuadradas es suficiente con solicitar
una vez el tamaño (n). Caso contrario se deberá solicitar tanto el Referencias
bibliográficas
número de filas (n) como el número de columnas (m).
Anexos

• Se requiere dos variables de tipo contador, que serán los subíndices


de la matriz, en este caso i para recorrer las filas y j para recorrer las
columnas.

• Se requiere estructuras repetitivas anidadas, la primera estructura


recorrerá las filas y la otra estructura las columnas. Recuerde que por
cada fila que se recorra se recorrerá todas las columnas.

• Finalmente se debe considerar las operaciones necesarias para


resolver el problema, para el ejemplo planteado sería la suma de
matrices.

A continuación se presenta el algoritmo, miniespecificación y diagrama de flujo de


ejercicio planteado.

145 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Algoritmo
Índice
Inicio
//declaración de variables
Preliminares
Entero: A [100, 100], b [100, 100], C [100, 100] //declaración de matrices
Entero: n //tamaño de las matrices
Primer
Entero: i //subíndice para las filas bimestre

Entero: j // subíndice para las columnas


Segundo
//inicialización de variables bimestre

i ← 1, j ← 1, n ← 0
//se solicita el tamaño de las matrices Solucionario

Escribir "Ingrese el tamaño para las matrices A, B y C"


Leer n Glosario

//Ingreso de la matriz A
Referencias
Para (i ← 1, n, 1) entonces bibliográficas
Escribir “Ingrese los elementos de la fila”, i
Para (j← 1, n, 1) entonces Anexos

Leer A[i,j]
Fin_Para
Fin_Para
//Ingreso de la matriz B → Con la estructura Para no es necesario reiniciar el contador
Para (i ← 1, n, 1) entonces
Escribir “Ingrese los elementos de la fila”, i
Para (j← 1, n, 1) entonces
Leer B[i,j]
Fin_Para
Fin_Para
//Calcular la suma de las matrices A y B en una matriz resultante C
Para (i ← 1, n, 1) entonces
Para (j← 1, n, 1) entonces
Calcular: C[i,j] ← A[i,j] + B[i,j]
Fin_Para
Fin_Para
//Presentar la matriz resultante C
Para (i ← 1, n, 1) entonces
Para (j← 1, n, 1) entonces
Escribir “El elemento de la matriz C en”, i, “,”, j, “es”, C[i, j]
Fin_Para

146 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Algoritmo
Índice
Fin_Para
Fin
Preliminares
Diagrama de flujo

Primer
bimestre

Segundo
bimestre

Solucionario

Glosario
F

V
Referencias
bibliográficas

Anexos
F
V V

F V

147 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Nro Miniespecificación
Índice
1 Inicio
2 //declaración de variables
3 A [100, 100], i [1 – n] //declaración de matriz A Preliminares

4 B [100, 100], i [1 – n] //declaración de matriz B


5 C [100, 100] , i [1 – n] //declaración de matriz C Primer
bimestre
6 n, i[1 - n] //tamaño de las matrices
7 i, i[1 - n] //subíndice para las filas Segundo
8 j, i[1 - n] //subíndice para las columnas bimestre

9 //inicialización de variables
10 i ← 1, j ← 1, n ← 0 Solucionario

11 //se solicita el tamaño de las matrices


12 << "Ingrese el tamaño para las matrices A, B y C" Glosario
13 >> n
14 //Ingreso de la matriz A Referencias
15 Para (i ← 1, n, 1) entonces bibliográficas

16 Escribir “Ingrese los elementos de la fila”, i


17 Para (j← 1, n, 1) entonces Anexos

18 >> A[i, j]
19 Fin_Para
20 Fin_Para
21 //Ingreso de la matriz B → Con la estructura Para no es necesario reiniciar el contador
22 Para (i ← 1, n, 1) entonces
23 Escribir “Ingrese los elementos de la fila”, i
24 Para (j← 1, n, 1) entonces
25 >> B[i,j]
26 Fin_Para
27 Fin_Para
28 //Calcular la suma de las matrices A y B en una matriz resultante C
29 Para (i ← 1, n, 1) entonces
30 Para (j← 1, n, 1) entonces
31 C[i,j] ← A[i,j] + B[i,j]
32 Fin_Para
33 Fin_Para
34 //Presentar la matriz resultante C
35 Para (i ← 1, n, 1) entonces
36 Para (j← 1, n, 1) entonces
37 << “El elemento de la matriz C en”, +i, “,”, +j, “es”, +C[i, j]
38 Fin_Para
39 Fin_Para
40 Fin

148 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

Prueba de escritorio
Índice

Variables
n i j A [i, j] B [i, j] C [i, j] Preliminares

3 1 1 2
2 3 Primer
bimestre
3 5
2 1 12
Segundo
2 7 bimestre
3 15
3 1 8 Solucionario
2 0
3 11
Glosario

1 1 1
Referencias
2 3 bibliográficas
3 5
2 1 7
Valores Anexos
2 6
3 9
3 1 2
2 8
3 10

1 1 3
2 6
3 14
2 1 19
2 13
3 24
3 1 10
2 8
3 21

Codificación

Ingresar al siguiente enlace para ver la codificación en un


lenguaje de programación del ejercicio propuesto:
http://purl.org/taw-sbc-utpl/algorithm/unit6/coding

149 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

¿Qué le pareció la temática sobre arreglos bidimensionales?. Si aún quedan


Índice
dudas pendientes, es conveniente que nuevamente revise la sección 4.3
del texto básico – Algoritmos resueltos, así como los recursos bibliográficos
Preliminares
complementarios.
Primer
bimestre
A continuación se presentan algunos ejercicios propuestos para poner en práctica
lo aprendido. Segundo
bimestre

Ejercicios propuestos Solucionario


De los ejercicios propuestos en la sección 4.4 – Ejercicios
propuestos, del texto básico, desarrolle los ejercicios Glosario

impares entre el 1 al 20.


Referencias
Para revisar la resolución de los ejercicios propuestos bibliográficas

ingresar al siguiente enlace: http://purl.org/taw-sbc-utpl/


Anexos
algorithm/unit6/solutions

¿Ha desarrollado con éxito los ejercicios propuestos?. Si tiene alguna inquietud
todavía, los siguientes recursos de apoyo sobre estructuras de datos le ayudarán
a fortalecer las temáticas planteadas en esta unidad.

Recursos de apoyo
Revisar el siguiente recurso:
http://purl.org/taw-sbc-utpl/algorithm/unit6/v1_matrices

Luego de revisar el recurso de apoyo, conocemos con mayor seguridad


la importancia de las estructuras de datos. Ahora nos podemos hacer una
pregunta fundamental, ¿Cuál es la función de una estructura de datos?. Como
observamos en el recurso de apoyo, las estructuras de datos nos permiten
almacenar un conjunto de valores en la memoria de la computador, es decir
que si necesitamos recuperar un valor que ha sido ingresado y almacenado
en un arreglo, unidimensional o bidimensional, podemos acceder fácilmente,
únicamente debemos conocer la ubicación en la que se encuentra el elemento.

Llevando esto a la vida real, imagine que usted guarda carpetas de

150 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

documentación en un archivador, y cada carpeta es etiquetada con una letra.


Índice
Si queremos acceder a cierta información, debemos ir al archivador que sería
el equivalente al arreglo o matriz, y buscamos la letra donde se encuentra
Preliminares
la carpeta con la documentación, que sería equivalente a la ubicación del
elemento en el arreglo. Una vez ahí únicamente extraemos la información que Primer
bimestre
necesitamos.
Segundo
bimestre
¡Mucho más claro, verdad!. Continuemos con la siguiente actividad.

Solucionario
Estimado estudiante ¿Ya realizó los ejercicios propuestos? ¡Qué
bien!. A continuación lo invitamos a realizar la siguiente
Glosario
autoevaluación para medir sus conocimientos.

Referencias
Recuerde también que es importante realizar las actividades bibliográficas
planteadas como interacción en el Entorno Virtual de Aprendizaje
para afirmar sus conocimientos obtendrá retroalimentación de sus Anexos
tutores y demás compañeros.

151 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

AA Autoevaluación 6 Índice

Preliminares

Analice las siguientes preguntas de opción múltiple y seleccione la respuesta


Primer
correcta. bimestre

Segundo
1. Un subíndice es: bimestre

a. Un elemento del arreglo Solucionario

b. Nombre alterno de un arreglo


Glosario
c. Número que indica la posición de un elemento en un arreglo

Referencias
2. Cada valor de datos en un arreglo se llama: bibliográficas

Anexos
a. Tipo de dato
b. Subíndice
c. Elemento

3. Es un tipo de datos estructurados compuesta por un conjunto de elementos,


de tamaño fijo y elementos homogéneos (del mismo tipo), los cuales son
direccionados por un único subíndice

a. Arreglo bidimensional
b. Arreglo unidimensional
c. multidimensional

152 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

4. Cuál de las siguientes opciones es correcta para presentar los elementos de


Índice
un arreglo bidimensional (A).

Preliminares
a. Para (i ← 1, n, 1) entonces
Para (j← 1, n, 1) entonces Primer
bimestre
<< A[i, j]
Fin_Para Segundo
bimestre
Fin_Para
b. i←1 Solucionario
Para (j← 1, n, 1) entonces
A[i, j] ← 0 Glosario

Fin_Para
Referencias
c. Para (i ← 1, n, 1) entonces bibliográficas
j← 1
<< A[i, j] Anexos

Fin_Para

5. ¿Cuál es el resultado de la siguiente miniespecificación?

1. Inicio
2. A [100, 100], i [1 – n]
3. n, i, j, i[1 – n]
4. n ← 3
5. Para (i ← 1, n, 1) entonces
6. Para (j← 1, n, 1) entonces
7. A[i, j] ← 0
8. Fin_Para
9. Fin_Para
10. Fin

a. Asigna a la primera fila y primera columna el valore de 0.


b. Asigna a la última fila y última columna el valore de 0.
c. Asigna a todos los elemento de la matriz el valor de 0

153 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SEGUNDO BIMESTRE

6. Con la siguiente miniespecificación identifique a qué elementos de la matriz


Índice
se les asigna el valor de 1.

Preliminares
1. Inicio
2. n, i, j, i[1 – n], A [100, 100] Primer
bimestre
3. n←3
4. Para (i ← 1, n, 1) entonces Segundo
bimestre
5. Para (j← 1, n, 1) entonces
6. Si (i + j) == (n + 1) entonces Solucionario
7. A[i, j] ← 1
8. Fin_Si Glosario

9. Fin_Para
Referencias
10. Fin_Para bibliográficas
11. Fin
Anexos

a. Los elementos de la diagonal principal


b. Los elementos de la triangular inferior
c. Los elementos de la diagonal secundaria

Estimado estudiante al final de la guía se encuentra el


SOLUCIONARIO, para solventar alguna duda lo invitamos a
revisar nuevamente los contenidos para que pueda reforzar su
aprendizaje.

Felicidades!! Hemos culminado los contenidos planificados en la


asignatura. Este es un gran paso en el inicio de su carrera
profesional, esperamos que el aprendizaje obtenido en la materia
sea de gran ayuda en el siguiente ciclo.

Le deseamos muchos éxitos en el transcurso de su vida


universitaria.

154 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

7 Solucionario Índice

Preliminares
Autoevaluación 1
Pregunta Respuesta Retroalimentación Primer
bimestre
1 (b) La opción correcta es la b, dado que la Informática como
ciencia estudia el tratamiento de la información a través de Segundo
máquinas de procesamiento electrónico de datos al servicio bimestre

de una sociedad digital y global, se basa tanto en la tecnología


Solucionario
como en la capacidad racional humana.

Glosario
Revisar el texto básico, sección 1.1 – Concepto de lógica.
2 (a) La opción correcta es la a, el símbolo conector. Este es un
Referencias
símbolo especial dentro de los diagramas de flujo y tiene como bibliográficas
función trasladar el control del programa a otra parte dentro
del mismo diagrama. Cada conector deberá contar con un Anexos

identificador único.

Revisar la guía didáctica, sección 1.7.2 – Estándar ANSI/ISO


5807 – 1985 para diagramas de flujo.
3 (c) La opción correcta es la c porque un algoritmo es un conjunto
finito de reglas bien definidas en su lógica de control que
permiten la solución de un problema en una cantidad finita
de tiempo. En la resolución del problema con las reglas
mencionadas, el algoritmo realiza un conjunto de pasos
cuya ejecución para dar la solución del problema puede ser
ejecutada manualmente, mecánicamente o utilizando una
máquina de procesamiento electrónico de datos.
Revisar el texto básico, sección 1.2.2 – Algoritmos.

155 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 1
Índice
Pregunta Respuesta Retroalimentación
4 (a) Esta ventaja corresponde a los diagramas de flujo, debido
Preliminares
a que un diagrama de flujo es uno de los entregables más
comunes en la fase de análisis de un programa y sirven como
Primer
referencia para que sean interpretados por los programadores. bimestre

Por lo tanto la opción correcta es la a.


Segundo
bimestre
Revisar la guía didáctica, sección 1.7.1 – Ventajas de los
diagramas de flujo. Solucionario

5 (b) La opción correcta es la b, debido a que una computadora es


un dispositivo electrónico, utilizado para procesar información Glosario
y obtener resultados, capaz de ejecutar cálculos y tomar
decisiones a velocidades millones o cientos de millones más Referencias
bibliográficas
rápidas que puedan hacerlo los seres humanos.

Anexos
Revisar el texto básico, sección 1.5 – Máquinas de
procesamiento electrónico de datos.
6 (c) Esta definición corresponde a los símbolos especiales, la
opción c. A la categoría de símbolos especiales pertenecen
típicamente los operadores aritméticos (+,-,*, /) y de
comparación (<,>, <>,=).

Revisar la guía didáctica, sección 1.6 – Lenguajes de


programación – sintaxis básicas.
7 (a) Los diagramas de flujo es uno de los entregables en la fases
de análisis y diseño en el ciclo de desarrollo de un programa,
dado que facilitan la comunicación entre los desarrolladores y
los clientes. Por lo tanto la opción correcta es la a.

Revisar la guía didáctica, sección 1.7 – Diagramas de flujo y su


representación

156 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 1
Índice
Pregunta Respuesta Retroalimentación
8 (a) La opción a es la correcta dado que un paralelogramo es un
Preliminares
símbolo de datos que representa los datos de entrada y salida.
Y soporta las operaciones de petición y muestra de datos.
Primer
bimestre

Revisar la guía didáctica, sección 1.7.3 – Símbolos utilizados


Segundo
en los diagramas de flujo. bimestre
9 (b) La relación de los términos con su símbolos quedaría:
Solucionario

Glosario

Referencias
bibliográficas

Anexos

Por consiguiente la opción b es la correcta.


Revisar sección la guía didáctica, sección 1.7.3 – Símbolos
utilizados en los diagramas de flujo.

157 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 1
Índice
Pregunta Respuesta Retroalimentación
10 (a) Los pasos a seguir para resolver el problema son:
Preliminares
1. Mostrar en pantalla un mensaje donde se solicite que el
usuario ingrese el mensaje a mostrar.
Primer
2. Se lee el mensaje ingresado por el usuario bimestre

3. Se presenta el mensaje en pantalla.


Segundo
El algoritmo para resolver el problema es: bimestre
1. Inicio
2. Escribir “Ingresar el mensaje a mostrar en pantalla” Solucionario

3. Leer mensaje
4. Escribir mensaje Glosario

5. Fin
A continuación se presenta la solución en diagrama de flujo, Referencias
bibliográficas
por lo tanto la opción correcta es la a:
Anexos

158 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 2
Índice
Pregunta Respuesta Retroalimentación
1 (c) La opción correcta es c porque el Nibble es conocido como
Preliminares
“cuarteto o semiocteto”, que permite representar un número
binario de cuatro dígitos. Estos números van desde el 0000
Primer
(016) al 1111 (F16) y corresponden a un carácter del sistema bimestre

numérico hexadecimal.
Segundo
Las opciones a y b son incorrectas. bimestre

Revisar la guía didáctica, sección 2.3 – Múltiplos y Solucionario

submúltiplos del byte. Y del texto básico, la sección 2.2


Múltiplos y submúltiplos. Glosario
2 (b) La opción correcta es b porque el tipo de dato que se puede
usar es decimal porque debe almacenar el valor de un Referencias
bibliográficas
producto y puede contener valores de 0 a 10; la opción a no
es correcta, byte por que recuerde solo almacena un conjunto Anexos
de ocho bits; la opción c es un tipo de variable que admite
todos.

Revisar el sección 2.2 – Múltiplos y submútiblos del byte. de


la guía didáctica. Y del texto básico, la sección 2.2 Múltiplos y
submúltiplos.
3 (b) La opción b es correcta debido que 7 >= 7 retorna valor True
porque haciendo razonamiento sabemos que 7 es mayor
igual a 7; la opción a no es correcta ya que el carácter C
(mayúscula) no es igual c (minúscula); la opción c no es
correcta ya que desarrollando las operaciones matemáticas 9
no es igual 8.

Revisar la guía didáctica, sección 2.5 – Expresiones. Y el texto


básico, sección 2.5 – Expresiones.

159 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 2
Índice
Pregunta Respuesta Retroalimentación
4 (a) La opción a es correcta, porque la edad de una persona es de
Preliminares
0 hasta 110 años de edad; la opción b no puede ser ya que el
rango de edad es muy bajo desde de 0 a 10; la opción c no
Primer
es correcta, una persona no puede tener edad desde los 18 bimestre

hasta los 100 años de edad.


Segundo
bimestre
Revisar la guía didáctica, sección 2.6.2 – Naturaleza de los
datos. Y la bibliografía complementaria (Ramírez, 2007), Solucionario

capítulo 4 – Naturaleza de los datos.


5 (c) La opción correcta es c, precedencia explícita se provoca Glosario
mediante el uso de paréntesis, aquello que se encierra en
un paréntesis en una expresión es obligado a resolverse sin Referencias
bibliográficas
respetar otras reglas de precedencia respecto a lo que está
afuera de los paréntesis; la opción a no es correcta porque Anexos
la procedencia posicional se presenta cuando tiene varias
expresiones; la opción b no es correcta porque la precedencia
implícita es aquella inherente a los operadores y la categoría a
la que pertenecen.

Revisar la guía didáctica, sección 2.4.5 Reglas de


precedencia. Y la bibliografía complementaria (Ramírez,
2007), capítulo 4.
6 (b) La expresión (a - b < 3 - c) and (c * 1 == a - b) es Falso,
porque reemplazando los valores de a = 2 , b = 4 , c = 6
genera en la primera parte (-2 <4 == -2), lo cual genera
inconsistencia de valor. Por lo tanto la opción b es la correcta.

160 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 2
Índice
Pregunta Respuesta Retroalimentación
7 (a) La reglas para definir correctamente el nombre de una
Preliminares
variable son las numerales:
1) Siempre iniciar con letra, 5) Máximo 32 caracteres de
Primer
longitud, y 6) Representativo al valor que guarda. bimestre

Además se debe considerar las siguientes: Se recomienda


Segundo
que debe componerse de letras y números, No contener bimestre
espacios en blanco ni caracteres generales (incluyendo letras
acentuadas y signos regionales) a excepción del guión bajo ( Solucionario

_ ).
Glosario

Revisar la guía didáctica, sección 2.6.1 – Variables. Y el texto


Referencias
básico, sección 2.3 – Variables y tipos predefinidos. bibliográficas
8 (c) La opción correcta es c porque la clave formada por una letra
“Z” y 5 números con regla de ningún número puede ser 0 es Anexos
X(6) [1 {Z}, 5 {1-9}], debido qué solicita una sola letra Z, 5
números no puede haber 0 entonces el rango es de 1 a 9.
La opción a no es correcta porque en el rango de números
incluye el valor de 0 y la opción b no es correcta por que el
rango de letras incluye más de una letra todo el alfabeto de
A-Z solo necesita 1 letra ”Z”.

Revisar la guía didáctica, sección 2.6.2 – Naturaleza de los


datos. Y la bibliografía complementaria (Ramírez, 2007),
capítulo 4 – Naturaleza de los datos.
9 (c) No describe el tipo de dato de una variable opción c porque
indica un contexto ambiguo sin relación a tipo de dato.
Revisar la guía didáctica, sección 2.6.2 – Naturaleza de los
datos. Y la bibliografía complementaria (Ramírez, 2007),
capítulo 4 – Naturaleza de los datos.

161 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 2
Índice
Pregunta Respuesta Retroalimentación
10 (b) No es una declaración válida la opción b porque la variable
Preliminares
precioProducto es una variable numérica y se le esta
asignando el valor ”24.95” que es una cadena.
Primer
La opción a es una declaración válida porque costoProducto bimestre

=100 variable y valor de asignación correcto. Y la opción


Segundo
c es también una declaración válida porque a la variable bimestre
costoProducto le asigna precioProducto -10 que son del
mismo tipo numérico. Solucionario

Revisar la guía didáctica, sección 2.6.1 – Variables. Y el texto Glosario

básico, sección 2.3 – Variables y tipos predefinidos.


Referencias
bibliográficas

Anexos

162 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 3
Índice
Pregunta Respuesta Retroalimentación
1 (c) La opción c es la correcta, dado que el ciclo de desarrollo de
Preliminares
un programa nos proporciona cuatro fases que nos permiten
dar solución a un problema de forma más precisa. Estas fases
Primer
se siguen de acuerdo al siguiente orden. bimestre

1. Fase de análisis
Segundo
2. Fase de diseño bimestre
3. Fase de codificación
4. Fase de pruebas e implementación. Solucionario

Revisar la guía didáctica, sección 3.1 – Ciclo de desarrollo


de un programa. Y la bibliografía complementaria (Ramírez, Glosario

2007), capítulo 6 – Algoritmos para el análisis de casos reales.


2 (c) La fase de análisis consiste en descomponer el todo en sus Referencias
bibliográficas
partes, con el fin de comprender y dar solución a problemas de
la vida real. El objetivo es analizar detalladamente el problema Anexos
planteado para determinar las posibles soluciones y levantar
los requerimientos necesarios para resolver el mismo. Por lo
tanto la opción c es la correcta.

Revisar la guía didáctica, sección 3.1.1 – Fase de análisis. Y


la bibliografía complementaria (Ramírez, 2007), capítulo 6 –
Algoritmos para el análisis de casos reales.
3 (a) La opción correcta es la a, debido a que en el ciclo de
desarrollo de un programa, el cliente se involucra en la fase de
pruebas e implementación. En esta fase el cliente puede medir
si el programa cumple con todos los requerimientos solicitados
desde el inicio en la fase de análisis. De no ser así, se debe
revisar nuevamente las fases previas.

Revisar la guía didáctica, sección 3.1.4 – Fase de pruebas e


implementación. Y la bibliografía complementaria (Ramírez,
2007), capítulo 6 – Algoritmos para el análisis de casos reales.

163 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 3
Índice
Pregunta Respuesta Retroalimentación
4 (a) La opción a es la correcta porque en la fase de diseño se
Preliminares
da respuesta a esta pregunta, y el objetivo de esta fase es
traducir técnicamente los requerimientos del cliente obtenidos
Primer
en la fase de análisis a una forma abstracta y estandarizada. bimestre

Segundo
Revisar la guía didáctica, sección 3.1.2 – Fase de diseño. Y bimestre
la bibliografía complementaria (Ramírez, 2007), capítulo 6 –
Algoritmos para el análisis de casos reales. Solucionario

5 (a) Un algoritmo es un conjunto ordenado y finito de asignaciones,


procesos, cálculos y decisiones que permiten a un programa Glosario
satisfacer una unidad de funcionalidad dada.
Un algoritmo no puede estar sin orden, ya que para la Referencias
bibliográficas
resolución de problemas se necesita seguir una secuencia
lógica de pasos. Y no puede ser infinito dado que nunca se Anexos
llegaría a resolver el problema planteado. Por lo tanto la opción
a es la correcta.

Revisar la guía didáctica, sección 3.2 – Primitivas algorítmicas.


Y el texto básico, capítulo 3 – Primitivas algorítmicas.
6 (c) La opción c es la correcta, dado que la aceptación del
programa se realiza en la fase pruebas e implementación. Es
en esta fase donde el cliente valida si el programa cumple con
los requerimientos solicitados, de ser así acepta el programa,
caso contrario se debe evaluar en las fases anterior porque no
se cumplen todos los requerimientos dados.

Revisar la guía didáctica, sección 3.1.4 – Fase de pruebas e


implementación. Y la bibliografía complementaria (Ramírez,
2007), capítulo 6 – Algoritmos para el análisis de casos reales.

164 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 3
Índice
Pregunta Respuesta Retroalimentación
7 (b) Para resolver el problema planteado se debe identificar los
Preliminares
datos de entrada, los del proceso y los de salida.
Los datos de entrada son: largo, ancho y costo por metro
Primer
cuadrado. bimestre

Segundo
Los procesos a realizarse son: calcular el área del terreno, bimestre
calcular el valor del terreno y calcular el descuento.
Solucionario

La salida a obtener: Costo total del terreno.


Glosario

Como se puede observar en los datos de entrada, en el


Referencias
algoritmos dado el dato faltante para resolver el problema es el bibliográficas
costo por metro cuadrado.
Por lo tanto la opción correcta es la b. Anexos
8 (a) En base al problema planteado, la opción a es la opción
correcta debido a que cumple con las especificaciones dadas
al inicio por el cliente.
La opción b no cumple con el rango dado. Y la opción c no
cumple debido a que la salida presentada no es la solicitada
por el cliente.

165 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 4
Índice
Pregunta Respuesta Retroalimentación
1 (b) La opción correcta es b Condicional compuesta por que solo
Preliminares
ejecuta las primitivas de control cuando es verdadera y cuando
la condición es falsa; la opción a no es correcta porque solo
Primer
ejecuta la condición solo cuando es verdadera; la opción c es bimestre

un ciclo repetitivo.
Segundo
bimestre
Revisar la guía didáctica, sección 4.2 – Estructura lógica
condicional compuesta. Y el texto básico, sección 3.4 – Solucionario

Estructura lógica condicional compuesta.


2 (c) La opción c es correcta ya que Dependiendo_De es una Glosario
estructura condicional compuesta que permite la ejecución
de un conjunto de primitivas de control(pi), en la que el Referencias
bibliográficas
cumplimiento de la condición de la estructura en mención
hace posible la ejecución de las instrucciones entre muchas Anexos
alternativas no solo por el cumplimiento verdadero de la
condición, punto por el cual se ejecutan las primitivas p1..
pn sino el cumplimento de la condición cuando es falsa; la
opción a no es correcta porque condicional simple permite
ejecuciones de las primitivas p1…pn si las condición es
verdadera o se cumple; la opción b no es correcta porque solo
ejecuta las primitivas de control cuando es verdadera y cuando
la condición es falsa

Revisar la guía didáctica, sección 4.2 – Estructura lógica


condicional compuesta. Y el texto básico, sección 3.5 –
Estructura lógica Dependiendo De.

166 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 4
Índice
Pregunta Respuesta Retroalimentación
3 (b) La respuesta correcta es opción b alternativa 2 porque el
Preliminares
problema requiere solucionar el incremento del salario de un
empleado en un 25% siempre y cuando gane 750 dólares o
Primer
más, por ello, se aplica una condición simple en la que controla bimestre

si el salario es mayor o igual a 750 entonces a la variable


Segundo
salario se le asigna el valor de salario + (salario *0.25); la bimestre
opción a no es correcta porque en la condición simple indica
que si el salario es mayor o igual a 750 entonces a la variable Solucionario

salario le asigna el valor de (salario *0.25) sin embargo no


almacena el valor de salario; la opción c no es correcta porque Glosario

si la condición simple salario es mayor a 750 entonces a


la variable salario le almacena salario +(salario *0.25) y no Referencias
bibliográficas
almacenaría cuando la variable salario sea igual a 750.
Anexos
Revisar la sección 4.1 – Estructura lógica condicional, de la
guía didáctica y el texto básico en la sección 3.2 – Concepto
de primitivas básicas.
4 (c) Respuesta correcta opción c porque en la condición simple Si
la edad es mayor o igual a 18 presenta la edad, caso contrario
presentar incorrecto, la opción a no es correcto porque la
condición indica si la edad es mayor a 18 años presentar
la edad, caso contrario ingresar “incorrecto”, lo que aquí no
realizaría la solución adecuada ya que solo evalúa edad mayor
a 18 o sea puede ser desde 18.1 y no desde igual a 18 y es
cuando también es mayor de edad; la opción b no es correcta
porque la condición indica si la edad es mayor o igual a 18
años presentar la edad, caso contrario ingresar “incorrecto”,
lo que aquí no realizaría la solución adecuada porque lo que
debe hacer es presentar la palabra incorrecto y no ingresar.
Tomar en cuenta los operadores >>, <<.

Revisar la sección 4.1 – Estructura lógica condicional, de la


guía didáctica y el texto básico en la sección 3.2 – Concepto
de primitivas básicas.

167 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 4
Índice
Pregunta Respuesta Retroalimentación
5 (b) La respuesta correcta es b porque se solicita resolver el
Preliminares
siguiente problema si un usuario que adquiere 3 productos su
costo final es mayor a 200 dólares se realiza un descuento
Primer
de 15%, el algoritmo debe mostrar el total, descuento y el bimestre

algoritmo los que hace es primero ingresar los 3 productos y


Segundo
los almacena en 3 variables diferentes, luego a variable total le bimestre
asigna la suma de los 3 productos (total= prod1+prod2+prod3)
con ello con la condición simple Si controla (total es mayor a Solucionario

200) entonces a la variable descuento le asigna total * 15%


de descuento, finalizado el control a la variable total asigna Glosario

la suma de total y descuento total=(Total+desc), finalmente


presental los valores de total y descuento. Referencias
bibliográficas

Las opciones a y c no son correctas. Anexos


Revisar la sección 4.1 – Estructura lógica condicional, de la
guía didáctica y el texto básico en la sección 3.2 – Concepto
de primitivas básicas.
6 ( V, F ) El primer enunciado es V porque en efecto la condición se
refiere a una decisión que se debe tomar en la lógica de
control y el segundo enunciado es F porque La “decisión”
implica la solución a una pregunta que se estructura en la
condición, no en un ciclo repetitivo.

Revisar la sección 4.1 – Estructura lógica condicional, de la


guía didáctica y el texto básico en la sección 3.3 – Estructura
lógica condicional simple.
7 (c) La opción correcta es c porque la condición controla el área
según su expresión y presenta el área y sale del ciclo de
control, por tanto es una condicional simple; la opción a no es
correcta; la opción b no es correcta.

Revisar la sección 4.1 – Estructura lógica condicional, de la


guía didáctica y el texto básico en la sección 3.3 – Estructura
lógica condicional simple.

168 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 4
Índice
Pregunta Respuesta Retroalimentación
8 (b) La opción correcta es b porque se desea resolver un programa
Preliminares
que permite obtener y presentar el cubo de un número,
siempre y cuando el número sea menor a 60, caso contrario
Primer
debería obtener y presentar el cuadrado del número indicado, bimestre

por ello, la condición simple con la variable número controla


Segundo
si numero es menor a 60 entonces a la variable cuadrado le bimestre
asigna numero elevado a 3(cuadrado <-- numero ^ 3), luego
presentar el valor de cuadrado, sino se cumple la condición Solucionario

a la variable cubo le asigna numero elevado a 2 (cubo <--


numero ^ 2) y presentar el valor de cubo y finalizar; la opción a Glosario

no es correcta; la opción c no es correcta.


Referencias
bibliográficas
Revisar la sección 4.1 – Estructura lógica condicional, de la
guía didáctica y el texto básico en la sección 3.4 – Estructura Anexos
lógica condicional compuesta.
9 (c) La opción de respuesta correcta es c porque se desea dar
solución a un programa que permita determinar si alguien
tiene la edad para entrar a la universidad en un país (el
país tiene como ley que los estudiantes pueden ingresar a
la universidad sólo si tienen 20 años, en ningún otro caso).
Si la persona cumple con la edad presentar un mensaje de
“ingreso exitoso”, en caso que no tenga la de edad presentar
un mensaje de “edad incorrecta”, por ello la solución correcta
es con la condicional simple en la variable edad controla si la
edad es igual a 20 (Si edad == 20 entonces) presentar el texto
“ingreso exitoso” sino se cumple entonces presentar “edad
incorrecta” y finalizar el ciclo de control.
La opción a y b es incorrecta.

Revisar la sección 4.2 – Estructura lógica condicional


compuesta, de la guía didáctica y el texto básico en la sección
3.4 – Estructura lógica condicional compuesta.

169 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 4
Índice
Pregunta Respuesta Retroalimentación
10 (b) La respuesta correcta es opción b, condicional DD
Preliminares
(Dependiendo_De) compuesta que permite la ejecución de un
conjunto de primitivas de control(pi), en la que el cumplimiento
Primer
de la condición de la estructura en mención hace posible la bimestre

ejecución de las instrucciones entre muchas alternativas no


Segundo
solo por el cumplimiento verdadero de la condición, punto por bimestre
el cual se ejecutan las primitivas p1..pn sino el cumplimento de
la condición cuando es falsa. Solucionario

La opción a y c es incorrecta. Glosario

Referencias
Revisar la sección 4.3 – Estructura lógica Dependiendo De, de bibliográficas
la guía didáctica y el texto básico en la sección 3.5 – Estructura
lógica Dependiendo De. Anexos

170 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 5
Índice
Pregunta Respuesta Retroalimentación
1 (c) La opción c es la correcta dado que un contador es una
Preliminares
variable cuyo valor se incrementa o decrementa en una
cantidad constante con la finalidad de contar sucesos o
Primer
acciones internas de un ciclo repetitivo. Por lo general un bimestre

contador es inicializado desde 0 o 1 y va incrementado de uno


Segundo
en uno. bimestre

Revisar la guía didáctica, unidad 5 – Estructuras lógicas Solucionario

repetitivas.
2 (b) Se llama incrementar al proceso de agregar el valor de 1 a Glosario
una variable denominada contador. Generalmente se utiliza
para trabajar con estructuras lógicas repetitivas. Por lo tanto la Referencias
bibliográficas
opción b es la correcta.

Anexos
Revisar la guía didáctica, unidad 5 – Estructuras lógicas
repetitivas.
3 (c) La opción c es la correcta debido a que un acumulador es una
variable que suma sobre sí misma un conjunto de valores,
para de esta forma almacenar la suma de todos ellos en una
sola variable. Los valores a almacenar varían en base a los
procesos y operaciones.
Revisar la unidad 5 de la guía didáctica.
4 ( a, d ) La diferencia entre la estructura Mientras que – Hacer y la
estructura lógica repetitiva Hacer – Hasta, es que la primera se
ejecuta únicamente si se cumple la condición, mientras que la
segunda se ejecuta al menos una vez, aunque la condición no
se cumpla.

Revisar la sección 5.1 y 5.2 de la guía didáctica. Y la sección


3.7 y 3.8 del texto básico.

171 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 5
Índice
Pregunta Respuesta Retroalimentación
5 (c) La opción c es la correcta, dado que se conoce como
Preliminares
estructuras anidadas cuando una estructura está dentro de otra
estructura. Se pueden anidar estructuras lógicas de decisión
Primer
así como estructuras lógicas de repetición. bimestre

Segundo
Revisar la guía didáctica, la sección 5.4 – Estructuras lógicas bimestre
repetitivas anidadas.
6 (c) Para obtener el valor de la variable i de la miniespecificación se Solucionario

debe realizar una prueba de escritorio.


1 i ← 0 Glosario
2 limite ← 5
3 Mientras i <= lim hacer Referencias
bibliográficas
4 I ← i + 1
5 Fin_Mientras Anexos
6 << i

Variables
limite i
5 1
2
Valores 3
4
5
6

La salida de i = 6. Por lo tanto la opción c es la correcta.


7 (b) El bucle de comparación al final es la estructura lógica que
permite que el proceso se ejecute al menos una vez. La
estructura Hacer–Hasta es un bucle de comparación al final.
Por lo tanto la opción correcta es la b.

Revisar la sección 5.2 – Estructuras lógicas repetitivas Hacer –


Hasta, de la guía didáctica.

172 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 5
Índice
Pregunta Respuesta Retroalimentación
8 (c) Para obtener la serie de la siguiente miniespecificación se
Preliminares
realiza la prueba de escritorio correspondiente.
1 i ← 0
Primer
2 limite ← 24 bimestre

3 Mientras i < 24 hacer


Segundo
4 Si i%6 == 0 entonces bimestre
5 << i
6 Fin Si Solucionario

7 i=i+3
8 Fin mientras Glosario

Prueba de escritorio
Referencias
Variables Salida bibliográficas

limite i << i
24 3 0 Anexos
6
9 6
Valores 12
15 12
18
21 18
24

La serie resultante es: 0, 6, 12, 18. Por lo tanto la opción c es la


correcta.

173 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 5
Índice
Pregunta Respuesta Retroalimentación
9 (b) Para que la estructura Mientras de la siguiente
Preliminares
miniespecificación se convierta en un bucle infinito, se debe
eliminar la línea 6. Para verificar esto se realiza la prueba de
Primer
escritorio. bimestre

1 Inicio
Segundo
2 numero1, i[1 – n] bimestre
3 numero1 ← 1
4 Mientras numero1 <= 20 hacer Solucionario

5 << numero1
6 numero1 ← numero1 + 1 //Eliminar esta línea Glosario

7 Fin_Mientras
8 Fin Referencias
bibliográficas
Prueba de escritorio
Anexos
Variables Salida
limite numero1 numero1 <= 20 <<numero1
20 1 1 <= 20 → Si 1
1 <= 20 → Si 1
1 <= 20 → Si 1
Valores 1 <= 20 → Si 1
1 <= 20 → Si 1

1 <= 20 → Si 1

Como se puede observar en la prueba de escritorio, el valor


de la variable numero1 nunca incrementa, por lo que siempre
se va a cumplir la condición de que numero1 va a ser menor o
igual que el límite(20). Es por ello, que la opción correcta es la
b.
10 (b) La opción correcta es la b, debido a que las estructuras lógicas
repetitivas son aquellas que permiten realizar la ejecución de
un conjunto de instrucciones de manera repetitiva mediante la
evaluación de una o más expresiones lógicas.
Revisar la guía didáctica, unidad 5 – Estructuras lógicas
repetitivas.

174 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 6
Índice
Pregunta Respuesta Retroalimentación
1 (c) Un subíndice es el número que indica la posición de un
Preliminares
elemento dentro de un arreglo.
En los arreglos unidimensionales se utiliza un solo subíndice
Primer
→ A[i], donde i es el subíndice. Y en los bidimensionales se bimestre

utilizan dos A[i, j], donde i y j son los subíndices.


Segundo
bimestre
Revisar la guía didáctica, sección 6.1 – Arreglos
unidimensionales y la sección 6.2 – Arreglos bidimensionales o Solucionario

matrices.
2 (c) Uno de los componentes de un arreglo es el elemento, que Glosario
es el valor de dato en una posición específica. Por lo tanto la
opción correcta es la c. Referencias
bibliográficas

Revisar la guía didáctica, sección 6.2 – Arreglos Anexos


bidimensionales o matrices.
3 (b) La opción b es la correcta debido que un arreglo
unidimensional es un tipo de estructura de datos compuesta
por un conjunto de elementos, de tamaño fijo y homogéneos
(del mismo tipo), los cuales son direccionados por un único
subíndice. Caso contrario de los arreglos bidimensionales y
multidimensionales que están dirigidos por 2 o más índices.

Revisar la guía didáctica, sección 6.2 – Arreglos


bidimensionales o matrices.
4 (a) La opción correcta para presentar los elementos de una matriz
es la opción a.
Para (i ← 1, n, 1) entonces
Para (j← 1, n, 1) entonces
<< A[i, j]
Fin_Para
Fin_Para
La opción b es incorrecta debido a qué únicamente recorre
y presenta los elementos de la primera fila. Y la opción c,
únicamente recorre y presenta los elementos de la primera
columna.

175 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 6
Índice
Pregunta Respuesta Retroalimentación
5 (c) Para identificar la opción de respuesta correcta se debe realizar la
prueba de escritorio de la miniespecificación. Preliminares

1Inicio
2 A [100, 100], i [1 – n] Primer
bimestre
3 n, i, j, i[1 – n]
4 n ← 3 Segundo
bimestre
5 Para (i ← 1, n, 1) entonces
6 Para (j← 1, n, 1) entonces
Solucionario
7 A[i, j] ← 0
8 Fin_Para
9 Fin_Para Glosario

0Fin
Prueba de escritorio Referencias
bibliográficas

Variables Salida
n i j A [i, j] Anexos
3 1 1 0
2 0
3 0
Valores 2 1 0
2 0
3 0
3 1 0
2 0

Como se puede observar la miniespecificación planteada asigna el


valor de cero a todos los elementos de la matriz A. Por lo tanto la
opción c es la correcta.

0 0 0
0 0 0
0 0 0

176 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas SOLUCIONARIO

Autoevaluación 6
Índice
Pregunta Respuesta Retroalimentación
6 (c) Para identificar a qué elementos de la matriz A se esta
Preliminares
asignando el valor de 1, se debe realizar la prueba de
escritorio de la siguiente miniespecificación
Primer
1 Inicio bimestre

2 n, i[1 – n]
Segundo
3 n ← 3 bimestre
4 Para (i ← 1, n, 1) entonces
5 Para (j← 1, n, 1) entonces Solucionario

6 Si (i + j) == (n + 1) entonces
7 A[i, j] ← 1 Glosario

8 Fin_Si
9 Fin_Para Referencias
bibliográficas
10 Fin_Para
11 Fin Anexos

Variables
n i j (i + j) (n + 1) A [i, j]
3 1 1 2 4 --
2 3 4 --
3 4 4 1
2 1 3 4 --
Valores
2 4 4 1
3 5 4 --
3 1 4 4 1
2 5 4 --
3 6 4 --

Una vez terminada la prueba de escritorio observamos que se


ha asignado el valor de 1 a los elementos que conforman la
diagonal secundaria.

-- -- 1
-- 1 --
1 -- --

Finalmente se determina que la opción c es la correcta.

177 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas GLOSARIO

8 Glosario Índice

Preliminares

A continuación se presentan los términos utilizados en la guía didáctica (Farrell,


Primer
2013): bimestre

Segundo
acumulador: Variable que se usa para recopilar o acumular valores. bimestre

algoritmo: Secuencia de pasos necesarios para resolver cualquier problema. Solucionario

Glosario
anidar estructuras: Colocar una estructura dentro de otra.

Referencias
arreglo: Serie o lista de variables en la memoria de una computadora, todas ellas bibliográficas

tienen el mismo nombre pero se distinguen con subíndices.


Anexos

bit: Dígito binario; unidad de almacenamiento igual a un octavo de byte.

byte: Una unidad de almacenamiento en computadora; puede contener


cualquiera de 256 combinaciones de 0 y 1 que a menudo representan un carácter.

cadena: Describe datos que no son numéricos.

carácter: Una letra, número o símbolo especial como A, 7 o $.

ciclo: Estructura que repite acciones mientras continúa una condición.

ciclo anidado: Estructura de ciclo dentro de otra; son ciclos dentro de ciclos.

ciclo de desarrollo del programa: Pasos que ocurren durante la vida de un pro-
grama, entre los que se encuentran: planeación, codificación, traducción, prueba,
producción y mantenimiento del programa.

ciclo definido: Aquel para el cual el número de repeticiones es un valor


predeterminado.

178 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas GLOSARIO

ciclo hacer – hasta: Ciclo después de la prueba que itera hasta que la pregunta
Índice
que lo con- trola es falsa.

Preliminares
ciclo mientras – hacer: Un ciclo en el que un proceso continúa mientras alguna
condición sigue siendo verdadera. Primer
bimestre

ciclo externo: Ciclo que contiene un ciclo anidado. Segundo


bimestre

ciclo indefinido: Aquel para el que no es posible predecir el número de Solucionario


ejecuciones cuando se escribe el programa.

Glosario
ciclo infinito: Flujo de lógica que se repite sin fin.
Referencias
bibliográficas
ciclo interno: Cuando los ciclos están anidados, el ciclo que está contenido
dentro del otro. Anexos

cláusula si – sino: Parte de una decisión que contiene la acción o acciones que
se ejecutan sólo cuando la expresión booleana en la decisión es falsa.

cláusula si-entonces: Parte de una decisión que mantiene la acción resultante


cuando la expresión booleana en la decisión es verdadera.

codificar del programa: Acto de escribir las declaraciones de un programa en un


lenguaje de programación.

código de programa: El conjunto de instrucciones que escribe un programador


en un lenguaje de programación.

código fuente: Declaraciones legibles
de un programa, escritas en un lenguaje


de programación.

comentario del programa: Declaración no ejecutable que colocan los programa-


dores dentro del código para explicar las declaraciones del programa en inglés.
Véase también documentación interna.

179 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas GLOSARIO

compilador: Software que traduce un lenguaje de alto nivel en lenguaje de


Índice
máquina
e identifica los errores de sintaxis. Un compilador es parecido a un
intérprete; sin embargo, traduce todas las declaraciones en un programa antes de
Preliminares
ejecutarlas.
Primer
bimestre
constante numérica: Valor numérico específico.
Segundo
bimestre
contador: Cualquier variable numérica que se usa para contar el número de
veces
que un evento ha ocurrido. Solucionario

declaración: Exposición que nombra una variable y su tipo de datos. Glosario

declaración de asignación: Aquella que almacena el resultado de cualquier Referencias


bibliográficas
cálculo ejecutado en su lado derecho en la ubicación nombrada en su lado
izquierdo. Anexos

declaración de variables El proceso de nombrar variables del programa y


asignarles un tipo.

declaración fin de estructura: Aquella que designa el final de una estructura de


seudocódigo.

declaración Para: Declaración que puede usarse para codificar ciclos definidos;
también llamada ciclo para. La declaración contiene una variable de control de
ciclo que se inicializa, evalúa y altera en forma automática.

decrementar: Cambiar una variable al disminuirla por un valor constante, con


frecuencia 1.

diagrama de flujo: Representación gráfica de los pasos lógicos que se requieren


para resolver un problema.

elemento: Variable individual de un arreglo.

180 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas GLOSARIO

estructura: Unidad básica de lógica de programación; cada estructura es una


Índice
secuencia, selección o ciclo.

Preliminares
estructura dependiendo de: Aquella que evalúa una sola variable contra
múltiples valores, proporcionando acciones separadas para cada ruta lógica. Primer
bimestre

estructura de ciclo: Aquella que repite acciones mientras una condición de Segundo
bimestre
prueba se mantiene verdadera.

Solucionario
estructura de decisión: Estructura de programa en la que se hace una pregunta
y, dependiendo de la respuesta, se emprende uno de dos cursos de acción. Glosario
Luego, sin importar cuál ruta se siga, las rutas se unen y se ejecuta la siguiente
tarea. Referencias
bibliográficas

estructura de secuencia: Estructura de programa que contiene pasos que se Anexos

ejecutan en orden. Una secuencia puede contener cualquier cantidad de tareas,


pero no hay posibilidad de desviarse y de saltarse cual- quiera de las tareas.

estructura de selección: Estructura de programa que contiene una pregunta y


toma uno de dos cursos de acción dependiendo de la respuesta. Entonces, sin
importar cuál ruta se siga, la lógica del programa continúa con la siguiente tarea.

gigabyte: Mil millones de bytes.

incrementar: Cambiar una variable agregándole un valor constante, con


frecuencia

inicializar una variable: Acto de asignar el primer valor a una variable, a menudo
al mismo tiempo en que ésta se crea.

iteración: Otro nombre para una estructura de ciclo.

kilobyte: Aproximadamente 1000 bytes.

181 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas GLOSARIO

lenguaje de programación: Lenguaje como Visual Basic, C#, C++, Java o


Índice
COBOL, que se usa para escribir programas.

Preliminares
línea de comandos: La ubicación en una pantalla de computadora donde
se mecanografían entradas para comunicarse con el sistema operativo de la Primer
bimestre
máquina.
Segundo
bimestre
línea de flujo: Flecha que conecta los pasos en un diagrama de flujo.

Solucionario
lógica: Instrucciones que se dan a la computadora en una secuencia específica,
sin omitir ninguna ni agregar superfluas. Glosario

megabyte: Un millón de bytes. Referencias


bibliográficas

memoria de acceso aleatorio (RAM): Almacenamiento interno temporal de la Anexos

computadora.

memoria de computadora: Almacena- miento interno temporal dentro de una


computadora.

nibble: Medida de almacenamiento igual a cuatro bits o medio byte.

numérico: Término que describe datos que consisten en números.

números reales: Números de punto flotante.

operador de asignación: Signo de igual; siempre requiere el nombre de una


ubicación de memoria en su lado izquierdo.

operador de comparación relacional: Símbolo que expresa comparaciones


lógicas (booleanas). Algunos ejemplos incluyen =, >, <, >=, <= y <>.

precedencia: Cualidad de una operación que determina el orden en el que se


evalúa.

182 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas GLOSARIO

programa principal: Aquel que se ejecuta de principio a fin y llama a otros


Índice
módulos; también se le conoce como método de pro- grama principal.

Preliminares
prueba de escritorio: Proceso de recorrer una solución de programa en papel.

Primer
bimestre
repetición: Otro nombre para una estructura de ciclo.
Segundo
bimestre
salida: Describe la operación de recuperar información de la memoria y enviarla
a
un dispositivo, como un monitor o una impresora, de modo que las personas Solucionario
puedan ver, interpretar y trabajar con los resultados.

Glosario
seudocódigo: Representación en inglés de los pasos lógicos que se requieren
para resolver un problema. Referencias
bibliográficas

símbolo de decisión: Aquel que representa una decisión en un diagrama de Anexos

flujo; tiene forma de diamante.

símbolo de entrada: Símbolo que indica una operación de entrada y se


representa en los diagramas de flujo como un paralelogramo.

símbolo de entrada/salida: Paralelogramo en los diagramas de flujo.

símbolo de procesamiento: Aquel que se representa como un rectángulo en los


diagramas de flujo.

símbolo de salida: Aquel que indica una operación de salida y se representa


como un paralelogramo en los diagramas de flujo.

símbolo I/O: Símbolo de entrada/salida.

símbolo terminal: Aquel que se usa en cada extremo de un diagrama de flujo; su


forma es una pastilla. También se le llama símbolo inicio/fin.

sintaxis: Reglas de un lenguaje.

183 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas GLOSARIO

sistema de cómputo: Combinación de todos los componentes requeridos para


Índice
procesar y almacenar datos usando una computadora.

Preliminares
subíndice: Número que indica la posición de un elemento particular dentro de un
arreglo. Primer
bimestre

tamaño del arreglo: Número de elementos que puede contener un arreglo. Segundo
bimestre

tipo de datos: La característica de una variable que describe la clase de Solucionario


valores que puede contener una variable y los tipos de operaciones que pueden
ejecutarse con ella. Glosario

unidad central de procesamiento (CPU): Pieza de hardware que procesa datos. Referencias
bibliográficas

unión de archivos: Acto de combinar dos o más archivos mientras se mantiene Anexos

el orden secuencial.

usuarios (o usuarios finales): Personas que trabajan con los programas de


computadora y se benefician de ellos.

valores alfanuméricos: Conjunto de valores que incluyen caracteres alfabéticos,


números y puntuación.

variable: Ubicación de memoria nombrada de un tipo de datos específico, cuyo


contenido puede variar o diferir con el tiempo.

variable de cadena: Aquella que puede contener texto que incluya letras, dígitos
y caracteres especiales como signos de puntuación.

variable de control de ciclo: Aquella que determina si un ciclo continuará.

variable numérica: Aquella que contiene valores numéricos.

184 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas REFERENCIAS BIBLIOGRÁFICAS

9 Referencias bibliográficas Índice

Preliminares

• Lógica para Computación. http://ocw.uned.ac.cr/eduCommons/ciencias-


Primer
exactas-y- naturales/logica-para-computacion. bimestre

Segundo
Iconografía bimestre

• https://commons.wikimedia.org/wiki/File:Crystal_Clear_app_kedit_ Solucionario

green-pencil.svg
Glosario
• https://commons.wikimedia.org/wiki/File:Nlyl_reading_man_with_
glasses.svg
Referencias
• https://commons.wikimedia.org/wiki/File:Stop_hand_orange.svg bibliográficas

• https://commons.wikimedia.org/wiki/File:Stop_hand_nuvola_blue.svg
Anexos
• https://commons.wikimedia.org/wiki/File:Start_hand.svg
• https://commons.wikimedia.org/wiki/File:Antu_istanbul.svg
• http://aminfotrix.com/wp-content/uploads/2016/12/software.png
• https://upload.wikimedia.org/wikipedia/commons/thumb/4/4d/External-
link-02-12x12.svg/2000px-External-link-02-12x12.svg.png
• https://gregschiller.files.wordpress.com/2015/06/imagebot-
com-2012042714194724316.png

185 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas ANEXOS

10 Anexos Índice

Preliminares

Anexo # 1 Unidad I: Ejercicios resueltos de la sección 1.7 Diagramas de


Primer
flujo. bimestre

Ejercicio 1: Lo que el programa debe hacer es preguntar por un mensaje de


Segundo
saludo, para posteriormente mostrar el mensaje que se le proporcionó. bimestre

Solucionario
Miniespecificación:

Glosario
1 Inicio
2 (Mensaje, x(30))
Referencias
3 <<”Escribir el texto que desea mostrar” bibliográficas

4 >>”Soy UTPL”
Anexos
5 Fin

Diagrama de flujo

186 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas ANEXOS

Ejercicio 2: Muestra el mayor de dos números num1 y num2 y si son iguales los
Índice
muestra a ambos.

Preliminares
Miniespecificación:

Primer
bimestre
1 Inicio
2 (num1, i([0-n]) Segundo
bimestre
3 (num2, i([0-n])
4 <<”<Ingrese el primer número” Solucionario
5 >>num1
6 <<”<Ingrese el segundo número” Glosario

7 >>num2
Referencias
8 Si(num1 = num2) entonces bibliográficas
9 << “Primer número es igual a número 2”
10 Sino Anexos

11 Si(num1>num2)
12 << “Primer número es mayor”
13 Sino
14 <<”Segundo número es mayor”
15 Fin si
16 Fin

187 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas ANEXOS

Diagrama de Flujo
Índice

Preliminares

Primer
bimestre

Segundo
bimestre

Solucionario

Glosario

Referencias
bibliográficas

Anexos

188 MODALIDAD ABIERTA Y A DISTANCIA


Guía Didáctica: Algoritmos y Resolución de Problemas ANEXOS

Anexo # 2 Unidad II: Ejercicios resueltos de la sección 2.4 Operadores


Índice

Determine la solución correcta para las siguientes expresiones aritméticas


Preliminares
planteadas.

Primer
bimestre
((“A”=”aA”) or (2*5*40 < 40) and (1^2=2*1))
Tabla 19. Solución del problema Segundo
bimestre

Expresión Solución
Solucionario
((“A”=”aA”) or (2*5*40 < 40) and (1^2=2*1)) Se resuelve primero las expresiones que
tiene prioridad como la multiplicación.
Glosario
((“A”=”aA”) or (400 < 40) and (1^2=2)) Se realiza la multiplicación, se resuelve la
potencia
Referencias
((“A”=”aA”) or (400 < 40) and (1=2)) Se resuelve el contenido de paréntesis bibliográficas
((“A”=”aA”) or (400 < 40) and (1=2)) Se resuelve los valores booleanos,
F F F primer operador or Anexos
Se resuelve los valores booleanos,
F and F operador and Finalmente queda F or F
que realmente pretendemos
F Expresión resuelta

not((“D”==”D”) and (-1 * 3 * 40 >= 2 * -40))


Tabla 20. Solución del problema

Expresión Solución
not((“D”==”D”) and (-1 * 3 * 40 >= 2 * -40)) Se resuelve primero las expresiones que
tiene prioridad como la multiplicación.
((“A”=”aA”) or (400 < 40) and (1^2=2)) Se realiza la multiplicación, se resuelve la
potencia
((“A”=”aA”) or (400 < 40) and (1=2)) Se resuelve el contenido de paréntesis
((“A”=”aA”) or (400 < 40) and (1=2)) Se resuelve los valores booleanos, primer
F F F operador or
Se resuelve los valores booleanos,
F and F operador and Finalmente queda F or F que
realmente pretendemos
F Expresión resuelta

189 MODALIDAD ABIERTA Y A DISTANCIA

Vous aimerez peut-être aussi