Está en la página 1de 90

z

ALGORITMOS Y DIAGRAMAS DE FLUJO


GUÍA DE ESTUDIOS
2 Créditos

Profesor Autor:
Ing. Freddy Fabricio Malla García

UNIDAD No. 1

GUÍA DE ESTUDIO PARA EL APRENDIZAJE

PERÍODO ACADÉMICO
2022-P1

Importante: La presente guía de estudio incorpora contenidos sintetizados sobre los


ejes temáticos correspondientes a la Unidad No. 1. Este documento servirá como
referente conceptual y teórico para las actividades, evaluaciones parciales y final de
esta asignatura.

1
UNIDAD No. 1
EL COMPUTADOR Y LOS ALGORITMOS
Resultado de aprendizaje de la unidad: Definir los conceptos básicos relacionados con
los programas y su aplicación en la computadora, entender sobre las acciones que se
necesitan de usted para desarrollar la secuencia lógica de los diversos eventos, así como
las técnicas que se pueden utilizar para plasmar de forma inicial el orden lógico de
sucesos aplicados al desarrollo de un programa, entender la forma en que la
computadora realiza los cálculos y cómo aplicar la jerarquía de los mismos en el
desarrollo en los diferentes procedimientos matemáticos.

Ejes Temáticos

DEFINICIONES
BÁSICAS

OPERADORES PREÁMBULO DE
DE COMPARACIÓN LA LÓGICA
Y LOGICOS PROGRAMABLE
Y LOS
ALGORITMOS

EL COMPUTADOR Y
LOS ALGORITMOS

VARIABLES ALGORITMOS
NARURALES

OPERADORES
ARITMÉTICOS Y
SU JERARQUÍA

2
Índice

Tabla de contenidos

UNIDAD No. 1 4
1.1. DEFINICIONES BÁSICAS 4
1.1.1. ¿Qué es el hardware? 4
1.1.2. ¿Qué es el software? 5
1.1.3. ¿Qué es el firmware? 5
1.2. PREÁMBULO DE LA LÓGICA PROGRAMABLE Y LOS ALGORITMOS 6
1.2.1. Unidades de entrada 7
1.2.2. Unidades de salida 7
1.2.3. Unidad Central de Procesos (CPU) 7
1.2.4. ¿Qué es un programa de computadora? 8
1.2.5. ¿Qué es la lógica? 9
1.3. Algoritmos Naturales 10
1.4. Operadores aritméticos y su jerarquía 13
1.5. Variables 17
1.6. Reglas para crear nombres de variables 18
1.7. Operadores de Comparación y Lógicos 20
1.7.1. Operadores de Comparación 21
1.7.2. Operadores lógicos 22
Bibliografía Básica 25
Directrices Generales de Unidad 26
Actividades a desarrollar en la unidad 26

3
COMPENDIO DE CONTENIDOS

UNIDAD 1: EL COMPUTADOR Y LOS ALGORITMOS

Las computadoras son máquinas que resuelven los problemas mediante la ejecución de
órdenes que la máquina obedece instrucción por instrucción de acuerdo a lo que el
programador haya desarrollado, así, un programa es un documento lleno de
instrucciones con capacidad de resolver las diferentes necesidades de cálculo o de
automatización; para que una persona pueda desarrollar habilidades de programación
aplicadas a las computadoras, necesita cumplir varias etapas de aprendizaje, que parten
de la formalización el pensamiento lógico, aplica la identificación de problemas explícitos
e implícitos y propone soluciones confiables.

1.1 DEFINICIONES BÁSICAS

Es importante entender, cómo funcionan todos los equipos electrónicos digitales que
existen en el mercado en la actualidad, tales como: computadores, tabletas, teléfonos y
electrodomésticos inteligentes, vehículos con controles electrónico, equipos de control
de comunicaciones, entre muchos otros dispositivos que se ofrecen en la actualidad;
considere que todos ellos tienen en común tres componentes principales: hardware,
software y firmware.

1.1.1. ¿Qué es el hardware?

Este término describe la parte física de cualquier equipo; se identifica por los
componentes electrónicos, piezas de soporte, cubierta protectora, entre otros elementos,
que se pueden observar y tocar; considere que estos equipos inteligentes tienen un
elemento clave en común, este elemento permite ampliar las posibilidades físicas y de
utilidad a todo hardware electrónico, ha transformado realmente las

4
posibilidades tecnológicas que se disfrutan en la actualidad, el componente se llama
microprocesador y es capaz de entender y cumplir las instrucciones dadas por el
programador.

1.1.2. ¿Qué es el software?

Este término describe la parte lógica de cualquier equipo, se constituye en la base que
permite el funcionamiento del hardware, así también en aplicativos o programas de
utilidad que poseen los diferentes dispositivos para ampliar la utilidad de cualquier equipo
electrónico inteligente, otras manifestaciones del software, se da en los programas de
configuración, programas de utilidad como los procesadores de texto, programas de
entretenimiento como lectores de video, musicales, juegos, entre otros tipos de
programas.

El software se constituye en los programas o las instrucciones dadas por el programador


para que el equipo esté operando, en sí son las ideas plasmadas en ordenes inteligentes
que el equipo obedece para administrar el hardware, es decir, es el componente
importante que permite la existencia y utilidad extra que tiene todo equipo inteligente que
utiliza un microprocesador.

1.1.3. ¿Qué es el firmware?

El firmware es una combinación entre el hardware y el software, son instrucciones o


programas que tienen un propósito específico y que están contenidos en una memoria
de solo lectura, estos programas permiten controlar los circuitos electrónicos de un
dispositivo cualquiera, normalmente estos programas son desarrollados por el fabricante
del componente.

Es importante entender que como futuro programador usted podrá realizar aplicaciones
o programas que permitan administrar el hardware de cualquier dispositivo inteligente,
podrá construir programas aplicativos para empresas de cualquier naturaleza comercial,
aplicativos para áreas de investigación o programas de entretenimiento en
5
general; estas afirmaciones están basadas en la utilidad importante que tiene la
tecnología sobre la sociedad, y en las definiciones conceptuales que explican la utilidad
imprescindible del software sobre el hardware; en importante resaltar que, en el campo
comercial, los precios del software son mayores que los precios ofertados por el
hardware.

1.2. PREÁMBULO DE LA LÓGICA PROGRAMABLE Y LOS


ALGORITMOS
Se considera al computador como un equipo electrónico digital multipropósito, esto
quiere decir que se lo puede utilizar en todas las áreas del conocimiento humano, ya que
puede desarrollar grandes cantidades de procesos, intercambios de datos, cálculos de
mayor precisión entre otras posibilidades mediante el uso de los diferentes programas,
considerando que, el computador entiende y cumple sin omitir instrucciones estipuladas
por el programador, la estructura básica de un computador se detalla en la siguiente
gráfica:

Los cuadros de la figura 1.1., detallan los diferentes orígenes o fuentes que proveen
datos para que el procesador, aplique el programa correspondiente y cumpla los fines o
propósitos para lo cual fue desarrollado, así:

6
1.2.1. Unidades de entrada

Son todos los equipos, periféricos, dispositivos o aparatos, que permiten la entrada de
datos para que la Unidad Central de Proceso (CPU) pueda procesarlos y generar un
resultado, estos dispositivos son utilizados para alimentar de información a los diferentes
programas que ejecuta la computadora para darle aplicabilidad y funcionalidad al
ordenador.

1.2.2. Unidades de salida

Son todos los equipos, periféricos, dispositivos o aparatos, que permiten la salida de
datos procesados por la CPU, estos dispositivos son utilizados para mostrar o plasmar
las acciones o la información que los diferentes programas gestionan junto al computador
para exponer y evaluar resultados y su utilidad en el mercado y la ciencia.

1.2.3. Unidad Central de Procesos (CPU)

Es la integración de componentes elementales del computador, está compuesta por la


Unidad de Aritmética y Lógica (UAL) que sirve para realizar los procesos de comparación
y los cálculos aritméticos; complementaria a la UAL es la Unidad de Control (UC) que
sirve para controlar los flujos o circulación de datos, tanto de entrada, de proceso y de
salida, con la firme intención de que los datos se trasladen de forma correcta; estos dos
elementos se encuentran integrados en un solo chip llamado microprocesador.

El otro elemento que compone la CPU es la memoria principal, este recurso importante
del computador está compuesto por dos partes principales: ROM Read Only Memory
(memoria de solo lectura), sirve para mantener almacenada la información física del
computador (configuración), para entender la utilidad de este recurso, considere que
existen muchos dispositivos que se conectan a la CPU con diferentes proveedores y

7
características propias de cada equipo y fabricante, esto complica el encendido del
equipo a que la CPU debe conocer con que elementos va a trabajar y cómo se
comunicarán entre sí, la memoria ROM evita tener que configurar el computador al
indicarle que elementos tiene conectado cada vez que se enciende el ordenador, por su
importancia la información no se borra, al contrario se mantiene aun cuando el
computador se encuentra apagado.

El otro elemento importante de la memoria principal es la memoria RAM Ramdom Accecs


Memory (memoria de lectura y escritura o de acceso aleatorio), se constituye en el
complemento ideal para el microprocesador, se encarga de almacenar toda la
información con la que está trabajando el computador, incluida parte de la información
que posee la memoria ROM, cada instrucción de los programas que están ejecutando
en el computador, es contenida antes y después de ser procesada por la CPU en la
memoria RAM, es importante considerar que la información contenida, se borrará
automáticamente, cada vez que finalice el programa o al momento de apagar el
computador.

1.2.4. ¿Qué es un programa de computadora?

Se podría definir que un programa es una secuencia de órdenes o instrucciones con un


propósito lógico que una computadora necesita para realizar una o varias tareas (resolver
problemas), es decir son instrucciones dadas y almacenadas en forma de documentos
que el computador ejecuta o cumple instrucción por instrucción hasta finalizar el
documento.

Un programa es la respuesta de solución programable a un problema planteado, estas


órdenes se las escribe en un lenguaje de programación, este lenguaje define las reglas
de escritura (sintaxis), la lista de instrucciones disponibles y las normas de cooperación
con el sistema operativo (software principal que administra el computador), el hardware
y otros lenguajes de programación.

8
1.2.5. ¿Qué es la lógica?

La lógica se constituye como un pensamiento razonado que cumple un propósito, es


importante reconocer que los pensamientos son tan diversos como lo son los seres
humanos, por lo tanto, para usted lo que es lógico, para otra persona no lo es; esta
diversidad de pensamientos y de lógica deben pulirse en el programador, de tal forma
que genere resultados estandarizados (todos deben entenderlo), coordinarse y
desarrollarse de forma que permita dar solución a una diversidad de problemas.

Así, un programa es el resultado de escribir instrucción por instrucción de forma


secuencial la solución a un determinado problema, el programador con su lógica decidirá
qué acciones debe hacer el computador para resolver un problema; para que el
programador pueda desarrollar documentos de instrucciones, necesitará entender reglas
y normas de redacción de instrucciones.

El libro (Gabriel et al., 2018) propone una cronología de aprendizaje, que permitirá al
lector conocer cómo resolver un problema mediante el desarrollo de una propuesta de
pensamiento lógico; considere que la preparación de un programador requiere del
cumplimiento de etapas que perfilan la mecánica y la aplicación de las diferentes
metodologías orientadoras que facilitan el uso de herramientas desarrolladas para este
propósito, así se propone cumplir con las siguientes etapas:

1 Uso de algoritmos naturales y pseudocodificados.


2 Uso de diagramas de flujo para el desarrollo de propuestas algorítmicas.
3 Uso de un lenguaje de programación para generar aplicaciones básicas.

Es importante considerar que las dos primeras etapas, son básicamente de aprendizaje
que consisten en aplicar técnicas de control para resolver problemas propuestos, una
vez finalizadas y definidas las habilidades de aplicación de las diferentes técnicas y
procedimientos lógicos, se estará en capacidad de hacer uso directo de un lenguaje de
programación.

9
1.3. ALGORITMOS NATURALES

A esta técnica se la define como el conjunto de pasos redactados en un lenguaje natural,


que tiene una secuencia ordenada de instrucciones, que permiten alcanzar un
determinado objetivo.

El término secuencial implica que se redacta de forma ordenada, es decir se debe escribir
una instrucción después de otra, las instrucciones deben describir los pasos que
solucionan el problema, por ejemplo, suponga que se le pide redactar los pasos para
sumar dos números, una posible solución al problema sería el siguiente algoritmo:

Algoritmo 1:
Iniciamos
1. Recibir los dos números que desea sumar.
2. Sumar los dos números (como este proceso es un cálculo, considere que todo
cálculo siempre generará un resultado).
3. Entregar/escribir o mostrar el resultado.
Finalizamos

Observe, que en el ejemplo los pasos están numerados, estos definen el orden o la
secuencia lógica de cómo sumar dos números; si se analizan los pasos detallados, no
sería lógico “entregar/escribir o mostrar el resultado” antes de realizar el cálculo “verdad”;
considere que, el aplicar la lógica programable para resolver problemas cotidianos,
consistirá en detallar y ordenar eventos que normalmente omitimos por la práctica directa
y sobre entendida de los pormenores; expertos en esta área definen a la lógica
algorítmica, como los pasos normales que aprendimos cuando atravesamos la niñez, en
la cual “una cosa lleva o va después de otra” para cumplir una tarea, ¿será por esto que
a los niños se les hace más fácil comprender esto?, esta definición procedimental de
proponer soluciones debe ser considerada como una técnica que el lector y el
computador entenderán para realizar procesos adecuados en la resolución de
problemas.

10
Ahora considere aplicar un ejemplo lógico de la vida real, en la que se desea un algoritmo
para ponerse cualquier camisa; una posible solución pormenorizada podría ser:

Algoritmo 2:
Iniciamos
1. Dirigirnos al lugar donde tenemos la camisa.
2. Si su ubicación es el closet o el cajonero, entonces se abre y coger la camisa.
3. Si la camisa tiene los botones abrochados, entonces se debe desabrochar los
botones.
4. Abrir la camisa.
5. Meter uno de los brazos por su manga correspondiente.
6. Meter el otro brazo por la otra manga.
7. Acomodar la camisa a su tronco.
8. Abrochar (botón a botón) y ajustarla a su cuerpo.
Finalizamos.

Este algoritmo propone la solución en ocho pasos lógicos, pero de seguro usted podría
optar por resolverlo de otra forma en más o en menos pasos, ya que las soluciones
dependen del pensamiento lógico de cada ser humano y su realidad cercana. Un
principio básico que debe tener claro, es que las soluciones lógicas no son únicas, esto
quiere decir que pueden tener diferentes formas de solución y que estará sujeta al
pensamiento lógico y a la realidad de cada ser humano.

Este libro (Gabriel et al., 2018) propone estandarizar (de forma entendible para todos)
los pensamientos lógicos, empezará aplicando algoritmos de tres pasos, que consisten
en:

1. Recibir/obtener/pedir datos,
2. procesarlos y
3. entregar/escribir o mostrar el resultado solicitado por el problema.

11
Esta propuesta de algoritmos estandarizados son ideales para resolver problemas de
cálculo, tome en cuenta que siempre se piden los datos necesarios para ser procesados
o calculados antes de mostrar los resultados, es importante conocer cómo se aplican los
cálculos y cómo se resuelven; es decir, si el programador no posee los conocimientos
necesarios de cómo se aplican los cálculos, será difícil desarrollar una propuesta de
algoritmo que ofrezca una solución a dicho problema, ante este tipo de dificultades, el
libro propone desarrollar en cada ejercicio un análisis, que permita conocer la forma de
aplicar las instrucciones necesarias y los procedimientos adecuados antes de desarrollar
una propuesta de algoritmo.

Para ilustrar lo detallado hasta ahora, considere el siguiente ejemplo; suponga que se le
pide el algoritmo que calcule el área de un rectángulo, parte del análisis consistiría en
conocer cómo se encuentra el resultado, si existe o no una fórmula de cálculo, para este
caso, los cálculos se aplican mediante la fórmula:

a=bxh

Donde (a) representa el resultado requerido “área”, (b) representa el valor de “base” y
(h) representa el valor de “altura”, fíjese que el cálculo de la fórmula consiste en una
simple multiplicación; para resolver la fórmula y encontrar el área, necesitará recibir los
valores de base y de altura; aplicar el cálculo y obtener el resultado; por lo tanto, la
propuesta algorítmica para resolver el problema, quedaría de la siguiente forma:

Algoritmo 3:

Iniciamos
1. Recibir los valores de base y altura.
2. Multiplicar base por altura y obtener el resultado.
3. Entregar o escribir el resultado.
Finalizamos

12
1.4 OPERADORES ARITMÉTICOS Y SU JERARQUÍA

Básicamente los operadores aritméticos son símbolos que el programador debe utilizar
para realizar operaciones aritméticas, como sumas, restas, multiplicaciones, divisiones
entre otras, es importante conocer que las operaciones se realizan de izquierda a
derecha respetando la jerarquía de cada operación; la siguiente tabla define los
símbolos aritméticos y su jerarquía de cálculo:

Es importante recordar una vez más, que las operaciones aritméticas se resuelven de
izquierda a derecha, respetando la jerarquía descrita en la tabla 1.1, esto significa que
primero se resolverá lo que está entre paréntesis, después se resolverán los cálculos
que tienen potencias, después las multiplicaciones y divisiones con la misma jerarquía,
después la división de módulo (devuelve el residuo de la división), y por último se
resolverán las sumas y restas con la misma jerarquía. Como detalle destacable, observe
que en esta tabla se utiliza nueva simbología, las mismas que reemplazan algunos signos
aritméticos como la multiplicación y la división; para describir la importancia de la
jerarquía considere el siguiente ejemplo de cálculo:

2+2*2

Normalmente se podría pensar que el resultado es (8) pero eso es incorrecto, el resultado
respetando la jerarquía es 6, ya que primero por jerarquía se realiza la multiplicación 2*2
y luego se realiza la suma 2+4; los siguientes ejercicios, son ejemplos que aplican
jerarquía con estos operadores:
13
● Ejemplo de agrupamiento de cálculos con paréntesis ():

El ejemplo tiene cuatro operaciones de cálculos, aplicando


jerarquía: el primer cálculo a realizar es la suma que esta entre
paréntesis 3+5, el segundo cálculo es la división 80/8 ya que está
ubicada a la izquierda con mayor jerarquía, el tercer cálculo es la
multiplicación 10*4 y el último cálculo es la suma 2+40.

● Ejemplo utilizando exponente como parte de la expresión:

El ejemplo tiene tres operaciones de cálculos, aplicando jerarquía: el


primer cálculo a realizar es la potencia que 3 ^ 2, el segundo cálculo
con mayor jerarquía es la división 10/5, el ultimo cálculo es la suma
9+2.

● En este ejemplo al igual que el anterior se aplica el exponente que también puede
ser expresado con el doble asterisco (**)

● Ejemplo utilizando la división con la


simbología / y MOD:
Sí tenemos la división:

El cociente será 3 y el residuo es 1, el primer cálculo obtiene


el residuo de dividir 7 para 2, en el segundo cálculo realiza la
14
multiplicación 8*5 y después la división 40 para 10, recuerde que los cálculos son
de izquierda a derecha, y por último se realiza la suma 1+4.

Considerando los ejemplos descritos y teniendo en cuenta la importancia de las


jerarquías aplicadas a las operaciones aritméticas, suponga que le han solicitado un
algoritmo, que calcule el promedio de tres notas de un estudiante cualquiera, el análisis
previo consistiría en aplicar la suma de las notas y el resultado dividirlo para tres, por lo
tanto, se aplicaría la siguiente fórmula:

Promedio = (nota1 + nota2 + nota3) / 3

Al desarrollar una propuesta de algoritmo natural, quedaría de la siguiente forma:

Algoritmo 4:

Iniciamos
1. Recibir los valores que corresponden a las tres notas: nota1, nota2 y nota3.
2. Calcular: sumando las tres notas y el resultado se lo divide para 3.
3. Entregar o escribir el resultado.
Finalizamos

Este algoritmo ejemplificado, define lo importante de establecer la secuencia y jerarquía


de los cálculos, ya que, al no especificar los detalles como el agrupamiento, se podría
incurrir en un error, por ejemplo: “Promedio = nota1 + nota2 + nota3 / 3”, al aplicar el
cálculo de esta forma, solo la nota3 se dividiría para 3 y después se sumarían las otras
dos notas, lo cual no está correcto.

Considere las siguientes interrogantes técnicas para describir la propuesta del algoritmo:

¿Qué datos se necesitaron para realizar el proceso?

Para este proceso se necesitó los valores que corresponden a las tres notas del
estudiante.

¿Qué resultado se muestra?

15
Como resultado el algoritmo mostrará el promedio de las tres notas.

En ejemplos anteriores, se han planteado problemas donde el proceso es solicitado de


forma explícita (describiendo el cálculo que se aplicará), pero es recomendable aplicar
ejemplos que permitan desarrollar un análisis, dando la posibilidad de razonar las
diferentes formas de resolver un problema. Para ejemplificar este concepto, se propone
elaborar un algoritmo que permite calcular el salario de un jornalero que gana por horas
de trabajo.

Análisis: si una persona trabaja 8 horas y se le paga 3 dólares por cada hora, significa
que como salario recibirá 24 dólares, este resultado se obtuvo mediante la multiplicación
de 8 por 3, ya que se paga 3 dólares por cada hora de trabajo y laboró 8 horas; una
propuesta de solución algorítmica al problema quedaría de la siguiente forma:

Algoritmo 5:

Iniciamos
1. Recibir el número de horas trabajadas y el valor que se le paga por cada hora.
2. Multiplicamos horas trabajadas por el valor de cada hora.
3. Entregar o escribir el resultado de la multiplicación, es decir el salario del
jornalero.
Finalizamos

Importante: Todos los temas del libro proponen actividades de refuerzo, estos permiten
al lector realizar ejercicios de práctica aplicando los temas tratados en cada apartado con
la finalidad de identificar debilidades de comprensión y/o reafirmar los conocimientos
tratados y adquiridos; para esto se recomienda desarrollar los ejercicios y en caso de
presentarse dificultades o confusión, se puede recurrir a la verificación del ejercicio que
se encuentra desarrollado en el solucionario de cada capítulo; por otro lado el libro
incluye actividades extras, se los considera retos de desarrollo que el programador debe
realizar por su propia cuenta, ya que las soluciones

16
de los mismos no se encuentran incluidos en el libro; por último, se presentan actividades
de autoevaluación que permiten al programador realizar una evaluación personal, estas
actividades se diseñaron con la finalidad de medir el nivel de comprensión logrado en
cada una de las actividades propuestas.

1.5. Variables

En su forma más básica, una variable es un nombre que representa un dato o valor, este
nombre es utilizado en el algoritmo como sinónimo de dicho valor, y podrá utilizar este
nombre, como si se tratara del mismo dato o valor, un ejemplo de nombres aplicados a
las variables podrían ser: al representar una nota (N, nota, n1, etc.), un valor que
representa una edad podría llamarse (e, ed, edad, etc.), también se puede aplicar el
nombre de una variable, al resultado de una operación aritmética, en este caso se le
puede llamar (a, área, salario, suma, resta, etc.), así, existen muchas posibilidades de
utilizar nombres representativos como variables, observe que el término variable tiene su
significado en que, el nombre utilizado para representar un dato, puede cambiar de valor
a conveniencia de los procesos que se realizan en un programa, para ilustrar la definición
de una variable, considere el ejemplo del primer algoritmo, que consistía en sumar dos
números, se podría indicar que el primer número tiene como nombre “A” o “numero1” o
“N1” o “Num1” o cualquier otro nombre, considerando que para el programador el nombre
utilizado representa dicho valor; en fin, se puede utilizar cualquier nombre para
representar cualquier valor o dato que se necesite para desarrollar un determinado
proceso o cálculo cualquiera.

17
1.6. Reglas para crear nombres de variables
Para crear variables y utilizarlas en los algoritmos se deben cumplir varios tipos de reglas,
estas se analizarán y emplearan conforme se profundice en el aprendizaje en el lenguaje
de programación, por ahora solo se exponen las reglas que deben aplicarse al momento
de crear el nombre de la variable, entre las básicas se tienen:

● En un programa no puede existir dos variables con el mismo nombre.


● Los nombres de variables no pueden contener como parte del nombre el espacio, es
decir el siguiente nombre estaría incorrecto “horas trabajadas”, ya que no se puede
considerar como parte del nombre de la variable el uso del espacio, lo correcto sería
“horas_trabajadas”.
● No está permitido que los nombres de variables empiecen con un número o un
símbolo o que incluya en cualquier parte del nombre símbolos no permitidos como
letras tildadas, uso de símbolos diferentes del guión bajo ( _ ), por ejemplo los
siguientes nombres estarían incorrectos: “1A”, “mes&dia”, “a-b”, etc., utilizando los
mismos ejemplos, lo correcto sería “A1”, “mesydia” y “a_b”.
● Es recomendable no utilizar nombres de variables extensos, ya que podrían generar
confusión y contrariedad al utilizarlos.

Antes de ejemplificar el uso de las variables, es necesario explicar qué es una asignación
de datos o asignación de valores; básicamente consiste en conocer que las variables
pueden intercambiar valores y/o datos, es decir pueden recibir valores tales como el
resultado de un cálculo, o el valor que desee asignar el programador como parte de la
solución al problema planteado, para lograrlo es necesario utilizar el signo igual (=) y
cumplir con la única regla de asignación:

Destino = Origen;

18
Este formato explica, que la variable destino siempre se ubicará a la izquierda del igual
(=), y el contenido a pasar siempre se ubicará a la derecha del signo igual (=); así al tener
una variable llamada “Sueldo” y desear pasarle el valor de 340, lo correcto sería:
“Sueldo=340;”, observe que la instrucción de asignación termina con el punto y coma.

De igual forma el origen puede ser el resultado de un cálculo cualquiera, para ilustrar esta
definición asuma que la variable “Sueldo” tomará un valor que consiste en el resultado de
calcular 40 horas de trabajo con un pago de 8 dólares la hora, así tendríamos:
“Sueldo=40*8;”

Las asignaciones y las variables están íntimamente ligadas entre sí, esto se debe a que
los valores como los resultados de cálculos, entre otros, deben estar contenidas o
almacenadas en variables para su representación y la forma de transferir datos o valores
de un lugar a otro es mediante el uso de la asignación, para ejemplificar el uso de variables
y de las asignaciones, considere los tres siguientes algoritmos en donde, el primer ejemplo
muestra las instrucciones necesarias para sumar dos números cualquiera, el segundo
ejemplo calcula el promedio de tres notas y el tercer ejemplo calcula el área de un
rectángulo; como un detalle adicional considere que estos algoritmos ya se analizaron y
desarrollaron anteriormente como algoritmos naturales:

Algoritmo 14:
Secuencia lógica que calcula la suma de 2 números:
Iniciamos
1. Recibir N1 , N2;
2. Suma=N1 + N2;
3. Escribir Suma;
Finalizamos

19
Explicación: “N1” representa uno de los dos números, “N2” representa el segundo
número, “Suma” representa el valor que como resultado de la operación de la suma
contiene el resultado de sumar N1 y N2, considere que en el tercer paso se especifica el
resultado a entregar mediante la variable “Suma”.

Algoritmo 15:
Secuencia lógica que calcula el promedio de 3 notas:
Iniciamos
1. Recibir Nota1, Nota2, Nota3;
2. Promedio=(Nota1+Nota2+Nota3) /3;
3. Escribir Promedio;
Finalizamos

Explicación: Las variables “Nota1, Nota2 y Nota3” representan las 3 notas involucradas
en el cálculo del promedio, la variable “Promedio” contendrá el resultado de esta operación
aritmética, y será utilizada para mostrar el resultado en el tercer paso.

Algoritmo 16:
Este algoritmo muestra como calcular el Área de un rectángulo.
Iniciamos
1. Recibir Base, Altura;
2. Area= Base * Altura;
3. Escribir Area;
Finalizamos

Explicación: Las variables “Base” y “Altura” representan los valores utilizados en la


formula (a=bxh) para calcular el área de un rectángulo, la variable “Area” contendrá el
resultado de esta operación aritmética, y será utilizada para mostrar el resultado en el
tercer paso.

1.7. Operadores de comparación y lógicos

Estos operadores son utilizados para el control de condiciones, son símbolos que permiten
al programador realizar operaciones lógicas, es decir se utilizan para crear condiciones
cuyo resultado se manifiesta en cumplir una de dos posibles acciones (verdadero o falso),

20
por su naturaleza aplicativa se clasifican en operadores de comparación y operadores
lógicos; es importante destacar que en este grupo se incluyen los operadores aritméticos,
estos operadores descritos de forma natural ya se analizaron en los apartados anteriores.

1.7.1. Operadores de comparación


Estos símbolos son utilizados para expresar condiciones mediante la aplicación de
comparaciones definidas como preguntas, las preguntas o comparaciones se pueden
aplicar a diferentes tipos de datos como valores constantes o contenidos de variables, así
como también a resultados de un determinado cálculo, estos símbolos son los únicos
utilizados por el computador para plantear preguntas o condiciones en el desarrollo de
algoritmos y programas, considere la siguiente tabla que muestra los símbolos que se
utilizarán de aquí en adelante.

En apartados anteriores se ha tratado el uso de las comparaciones expresadas en forma


narrada, a partir de ahora las comparaciones aplicadas en el libro, utilizarán estos
símbolos para detallar las comparaciones en preguntas o condiciones con la finalidad de
afianzar el aprendizaje y el uso de los mismos; a continuación, se detallan algunos
ejemplos de comparaciones con valores constantes y contenidos de variables, así como
el resultado que producirían los mismos al utilizarlos en un algoritmo; es importante
observar cómo se utilizan estos operadores de comparación y el resultado que arrojan:

21
Como conocimiento general es importante reconocer que el uso de los operadores de
comparación provoca matemáticamente un cálculo binario (ceros y unos), que dará
como resultado el valor de 1 (uno) cuyo significado es verdadero o el valor de 0 (cero)
que significa falso.

1.7.2. Operadores lógicos


Estos operadores permiten unir varias comparaciones en una sola condición, en sí
devuelve una sola respuesta entre “falso o verdadero”, el uso de este operador se basa
en la aplicación lógica de cómo unir varias comparaciones en una sola condición, para
entender el propósito de cómo funciona la unión de comparaciones considere las
siguientes tablas de la verdad que orientan sobre el resultado que producen al utilizar los
operadores AND, OR y un inversor de respuesta NOT como operador lógico para obtener
solo un resultado entre varias comparaciones.

22
● Operador lógico AND
Este operador exige que todas las preguntas o comparaciones sean verdaderas para que
su respuesta sea verdadera, aplicando esta premisa a la vida real suponga que desea
cobrar un cheque, las dos condiciones básicas que le permitiría cobrar el cheque sería:
tener el cheque (y) tener la identificación del cobrador, si usted tiene el cheque y no su
identificación no podrá cobrarlo (en término lógico el resultado sería falso) ya que no
cumple con las dos condiciones básicas, bajo esta premisa se plantea la siguiente tabla
asumiendo que se tienen dos comparaciones:

Aritméticamente se podría decir que, el uso de un operador lógico AND es definido como
una multiplicación, para explicarlo con mayor detalle, considere que el resultado de la
comparación 1 es verdadero (es decir devolverá como respuesta el binario 1) y de la
comparación 2 es falso (es decir devolverá como respuesta el binario 0), al aplicar el
cálculo aritmético se tendría “1 x 0”, así el resultado será “0”, resultado lógico que significa
falso.

● Operador lógico OR
El uso y aplicación de este operador, exige que al menos una de las comparaciones sea
verdadera para que su respuesta sea verdadero, por ejemplo, suponga que una persona
presenta temperatura alta de fiebre, para estabilizar la temperatura corporal tendría dos
alternativas a la mano, bañarse (o) tratarla con medicamento, considere que cualquiera
de las dos opciones o aplicarlas ambas, le permitirá estabilizar la temperatura corporal,
bajo esta premisa lógica se plantea la siguiente tabla de la verdad asumiendo que se
23
tienen dos comparaciones:

Al observar el resultado de la tabla, notará que al menos una de las comparaciones debe
tener como resultado verdadero para que la respuesta lógica de las dos comparaciones
sea verdadera. Aritméticamente el uso de un operador lógico OR es definido como la
aplicación de una suma, por ejemplo, considere que el resultado de la comparación 1 es
verdadero (1) y de la comparación 2 es falso (0), matemáticamente se tendría el cálculo
“1+0” y por ende el resultado sería “1” que técnicamente significa verdadero.

● Operador lógico inversor NOT


Este operador lógico solo invierte el resultado de una condición, es decir, si como
respuesta a una comparación el resultado es verdadero, este operador lo convierte en
falso y viceversa, bajo esta premisa se plantea la siguiente tabla de la verdad:

Para aplicar y entender cómo utilizar estos operadores se propone el desarrollo de los
siguientes ejercicios que incluyen expresiones lógicas, estos permitirán identificar los

24
resultados al usar los operadores descritos en este apartado, considere las siguientes
variables y sus respectivos valores asignados: W = 20 X = 17 Y = 25 Z = 10

Falso

Bibliografía Básica

Gabriel, D., Maricela, P., Rodolfo, G., Miguel, R., & Darwin, L. (2018). Desarrollo práctico
de la Programación (N. Pelegrín & F. Henry (eds.); Diana Zava). Ediciones UTM-
Universidad Técnica de Manabí.
https://www.utm.edu.ec/ediciones_utm/component/content/article/24-libros/709-
desarrollo-practico-de-la-programacion?Itemid=101

25
DIRECTICES GENERALES DE UNIDAD*
La siguiente tabla muestra las actividades a realizar en la Unidad 1 y las fechas máximas
(cierre) para el cumplimiento. Las actividades de aprendizajes autónomo no se incluyen
en la tabla, pero se detallan en la guía.

CRONOGRAMA DE ACTIVIDADES – PRIMERA UNIDAD


FECHA/HORA PUNTAJE
ACTIVIDADES APERTURA CIERRE CADA
00H00M 23H55M ACTIVIDAD
PRUEBA DE DIAGNÓSTICO 20/06/2022 24/06/2022 0 PUNTOS
APRENDIZAJE FORO DE
20/06/2022 17/07/2022 0 PUNTOS
COMPONENTE DE ASISTIDO PRESENTACIÓN
DOCENCIA APRENDIZAJE TEST DE LA
27/06/2022 10/07/2022 3 PUNTOS
COLABORATIVO UNIDAD No. 1

COMPONENTE DE PRÁCTICAS DE CRUCIGRAMA


27/06/2022 10/07/2022 6 PUNTOS
APLICACIÓN Y EXPERIMENTACIÓN UNIDAD No. 1

ACTIVIDADES A DESARROLLAR EN LA UNIDAD

La presente guía de estudio plantea el desarrollo de actividades que contribuirán al


aprendizaje integral de los contenidos propuestos en cada uno de los ejes temáticos que
corresponden a la presente unidad. Ante lo expuesto, los estudiantes deberán:

COMPONENTE: DOCENCIA

ACTIVIDAD No. 1 (No Calificada)

Prueba de Diagnóstico:

Esta prueba permitirá al docente determinar el nivel de conocimiento que posee el


aspirante previo al inicio del curso regular:

Fecha de inicio: 20 de junio 2022.

Fecha de cierre: 24 de junio 2022.

26
ACTIVIDAD No. 2 (No Calificada)

Foro de presentación:

Redactar un texto en el cual se debe incluir la siguiente información:

1 Presentación general (apellidos, nombres, edad, estado civil, lugar de residencia,


celular, correo electrónico y otros datos personales de interés que deseen
compartir).

2 ¿Por qué cree necesario el curso de Algoritmos y diagrama de flujos?

3 ¿Qué expectativas tengo respecto a esta asignatura?

4 ¿Qué conocimientos posee con relación a los contenidos propuestos?

5
¿Cómo cree usted que esta asignatura contribuirá a mi crecimiento profesional?

La realización de la presentación en el foro no tiene calificación, sin embargo, es


un requisito previo para poder realizar las posteriores actividades calificadas en
las diferentes unidades.

Fecha de inicio: 20 de junio 2022.

Fecha de cierre: 17 de julio 2022.

COMPONENTE: APRENDIZAJE AUTÓNOMO

ACTIVIDAD No. 3 (Autoaprendizaje)


Revisión de material didáctico
Desarrollar lectura comprensiva e inferencial, observación y escucha de resolución de
ejercicios resueltos y de aplicación activa de documentos y materiales audiovisuales a
los cuales podrán acceder mediante enlaces compartidos en la parte final de esta
descripción. Los contenidos expuestos en cada uno de estos elementos serán
considerados en el Test y el Crucigrama de la Unidad 1.

27
RECURSOS
https://www.youtube.com/watch?v=gVaE2F0jOJs
1. Definiciones Básicas
https://www.youtube.com/watch?v=xwf3lGo7T-U

https://www.youtube.com/watch?v=JEj8xpBHLds
2. Preámbulo de la lógica https://www.youtube.com/watch?v=T1abc6Qtzvw
programable y los
algoritmos https://www.youtube.com/watch?v=XMPDfxYIj88

https://www.youtube.com/watch?v=8CfnPapC0kc

3. Algoritmos Naturales https://www.youtube.com/watch?v=U3CGMyjzlvM


4. Operadores aritméticos,
lógicos y de comparación https://www.youtube.com/watch?v=hnH_IrQ2bjE

5. Variables y constantes. https://www.youtube.com/watch?v=bUcuRRsKmGM

COMPONENTE: DOCENCIA

ACTIVIDAD No. 4 (Calificada)

Test de la Unidad No. 1

Ejecutar la evaluación en la plataforma aula virtual. Serán considerados los contenidos


de la guía de estudio de la Unidad 1 y del material de autoaprendizaje, el test ponderará
con 3 puntos en el parámetro de Docencia.

Fechas de inicio: 27 de junio del 2022

Fecha de cierre: 10 de julio del 2022

Número de preguntas: 10

Puntaje por pregunta: 0.3 ptos.

Tiempo: 20 minutos

28
Número de intentos: 1

COMPONENTE: PRÁCTICAS DE APLICACIÓN Y EXPERIMENTACIÓN

ACTIVIDAD No. 5 (Calificada)

Juego: Crucigrama de la Unidad No. 1

Realizar el crucigrama presente en la plataforma aula virtual dentro del plazo establecido.
Serán considerados los contenidos de la guía de estudio de la Unidad 1 y de las
actividades; el crucigrama ponderará con 6 puntos en Prácticas de Aplicación y
Experimentación.

Fechas de inicio: 27 de junio del 2022

Fecha de cierre: 10 de julio del 2022

Número de palabras: 6

Tiempo: 12 minutos

Número de intentos:

29
ALGORITMOS Y DIAGRAMAS DE FLUJO
GUÍA DE ESTUDIOS

2 Créditos
Profesor Autor:
Ing. Freddy Fabricio Malla García

UNIDAD No. 2

GUÍA DIDÁCTICA PARA EL APRENDIZAJE

PERÍODO ACADÉMICO
2022-P1
Importante: La presente guía de estudio incorpora contenidos sintetizados sobre los ejes
temáticos correspondientes a la Unidad No. 2. Este documento servirá como referente
conceptual y teórico para las actividades, evaluaciones parciales y final de esta
asignatura.

1
UNIDAD No. 2
DIAGRAMAS DE FLUJO

Resultado de aprendizaje de la unidad: Conocer en qué consiste la diagramación de


instrucciones lógicas; aplicar las instrucciones de los algoritmos en secuencia de pasos
con simbología gráfica; desarrollar ejercicios más complejos con la ayuda de los
elementos gráficos.

Ejes Temáticos

PREÁMBULO DE
LOS DIAGRAMAS
DE FLUJO

FORMATO
DIAGRAMAS DE UTILIZADO PARA
FLUJO CON EXPRESAR
CONDICIONES CONDICIONES
DE CASO EN LOS
DIAGRAMAS DE

DIAGRAMA DE
FLUJO

EJERCICIOS
FORMATOS
APLICANDO
UTILIZADOS PARA
CONDICIONES Y
EXPRESAR CICLOS
CONTROLES DE
REPETITIVOS EN
CICLOS
LOS DIAGRAMAS
REPETITIVOS
DE FLUJO

FUNCIONES
MATEMÁTICAS
QUE SE
PUEDEN
INCLUIR EN LOS
ALGORITMOS

2
Índice

Tabla de contenidos

UNIDAD 2: Diagramas de Flujo 4


2.1. Preámbulo de los diagramas de flujo. 4
2.1.1. Características a tomar en cuenta para crear un diagrama 6
2.2. Formato utilizado para expresar condiciones en los diagramas de flujo 9
2.3. Formatos utilizados para expresar ciclos repetitivos en los diagramas de flujo 13
2.4. Funciones matemáticas que se pueden incluir en los algoritmos 15
2.5. Ejercicios aplicando condiciones y controles de ciclos repetitivos 18
2.6. Diagramas de flujo con condiciones de caso 20
2.7. Secuencias repetitivas controladas con “repetir … hasta que” 23
2.8. Secuencias repetitivas controladas con “hacer … mientras” de flujo 26
2.9. Secuencias repetitivas controladas con “para” y uso de autocontadores 30
Bibliografía 33
DIRECTICES GENERALES DE UNIDAD 34
ACTIVIDADES A DESARROLLAR EN LA UNIDAD 34

3
COMPENDIO DE CONTENIDOS

UNIDAD 2: Diagramas de Flujo

Cuando los algoritmos pseudocodificados proponen soluciones complejas o extensas,


resulta difícil entender o dar a entender los procedimientos lógicos que resuelven ese
problema; este capítulo ofrece la posibilidad de desarrollar soluciones algorítmicas
mediante el uso de graficas geométricas llamadas diagramas de flujo, esta técnica
consiste en representar gráficamente las diversas instrucciones dadas por el programador
en los algoritmos pseudocodificados.

Para desarrollar los algoritmos mediante el uso de los diagramas de flujo, este capítulo
incluye la explicación y la ejemplificación de los diferentes símbolos gráficos utilizados por
esta técnica, como el rombo, el rectángulo, la circunferencia, flechas direccionales, entre
otras figuras; la simbología gráfica utilizada en los diagramas de flujo, son descritos y
utilizados conforme a la estructura de control que representan, así se desarrollan y
proponen diagramas de flujo con simbología que aplican controles condiciones,
estructuras de control para ciclos repetitivos, validaciones, entre otras posibilidades de
control.

La estructura general de este capítulo, ejemplifica los diagramas de flujo utilizando como
base introductoria los algoritmos básicos de tres pasos que detallan la resolución de
problemas de cálculos, propone y explica el uso de diagramas con algoritmos que aplican
condiciones simples, condiciones múltiples y condiciones de casos, continúa describiendo
y ejemplificando el uso de herramientas de control de procesos repetitivos, como los
utilizados en el capítulo 2, es decir define los procedimientos mecánicos y lógicos de las
estructuras como: Mientras, Para, Hacer…Mientras y Repetir…Hasta que.

2.1. Preámbulo de los diagramas de flujo.

El diagrama de flujo es una herramienta de diseño para la creación de programas, permite


desarrollar una propuesta algorítmica a los problemas planteados, reemplaza las palabras
utilizadas en el algoritmo como recibir, mostrar, escribir, calcular, entre otros,

4
por dibujos geométricos únicos, que expresan de forma gráfica las soluciones
algorítmicas; cada paso lógico se expresa con una figura, cada figura tiene sus propias
reglas, procesos y variables; las numeraciones utilizadas en los algoritmos que indican el
orden de proceso, se reemplazan por flechas que indican la secuencia del siguiente
proceso.

El diagrama de flujo es una técnica que permite una descripción visual de la lógica,
funciona mostrando el orden y secuencia de forma mucho más simple, facilita la rápida
comprensión de cada actividad sin la necesidad de leer o entender la redacción y su
relación con las demás instrucciones.

Para desarrollar un diagrama de flujo, el programador puede utilizar una gran variedad
de gráficas geométricas que permiten representar los diferentes procesos y dispositivos
que utiliza la computadora; por ejemplo para graficar el proceso de recibir datos, hay varias
posibilidades, entre ellas se puede utilizar la gráfica del teclado, de la tarjetas perforadas,
de la cintas magnéticas, u otro dispositivo que grafique la acción de proveer datos a la
computadora; así el proceso de mostrar o escribir datos y/o resultados, se puede
representar con el símbolo de la pantalla o la impresora, entre otras posibilidades de
dispositivos que actualmente se utilizan; por tal razón este libro, utilizará los símbolos
más representativos como metodología de aprendizaje para resolver problemas
planteados, el siguiente cuadro muestra los símbolos gráficos más utilizados y su
propósito en los algoritmos:

5
2.1.1. Características a tomar en cuenta para crear un diagrama

Para crear algoritmos mediante los diagramas de flujo de debe poner en práctica las
siguientes recomendaciones:

6
● Al momento de crear el diagrama de flujo, el sentido de comprensión y desarrollo de
las instrucciones lógicas es de arriba hacia abajo, también es permitido desarrollarlo
de izquierda a derecha, pero lo habitual es desarrollarlo de arriba hacia abajo.
● La definición del siguiente paso o la unión entre un proceso y otro “es decir entre una
figura geométrica y otra”; obligatoriamente debe ser utilizando la flecha, es decir que
el propósito de las flechas es para indicar la secuencia, sentido y orden del siguiente
proceso o instrucción a realizar; es recomendable no crear flechas diagonales, ni
cruzadas entre sí; cuando se necesite unir varias flechas para dar un solo sentido,
se recomienda el uso de conectores (la figura de círculo pequeño).
● No está permitido el uso de flechas sin conexión a otra figura geométrica, ya que no
tendría sentido apuntar a un paso inexistente.
● En general las gráficas geométricas pueden tener un acceso de entrada y una salida,
a excepción de la figura de inicio/fin, además de las figuras que aplican controles
condicionales y controles de repetición.

Para explicar el uso de cómo se utilizan los diagramas de flujo, considere el primer
algoritmo explicado en el primer capítulo, el cual detalla los pasos para sumar dos
números, el diagrama de flujo quedaría así:

¿Qué datos entran a ser procesados?


Dos números cualquiera.

7
¿Qué resultados muestra?
La suma de los dos números.

¿Qué condiciones se presentan en el proceso?


Observe que la lógica aplicada en el diagrama de flujo, indica que los valores a recibir
“Num1” y ”Num2” pueden ser tomados desde cualquier dispositivo de entrada, y el
resultado será contenido en la variable “Suma”, este resultado será mostrado o escrito
utilizando como medio de salida la pantalla.

Para el siguiente ejemplo, se aplica las instrucciones gráficas para calcular el promedio
de tres notas, para la mayor comprensión de las instrucciones, se muestra el algoritmo
pseudocodificado y su respectivo diagrama de flujo:

¿Qué datos entran a ser procesados?


Se reciben tres notas cualesquiera, contenidas en las variables. Nota1, Nota2 y Nota3.

¿Qué resultados muestra?


El promedio de las tres notas.

El diagrama número dos no utiliza controles condicionales (controles que permiten realizar
preguntas mediante el uso de comparaciones), solo propone pedir los datos necesarios,
calcularlos y mostrar el resultado del mismo, es recomendable conocer y

8
aplicar las diversas estructuras de control que ofrecen los diagramas de flujo y que se
analizarán en él.

2.2. Formato utilizado para expresar condiciones en los diagramas


de flujo

Para expresar las condiciones se utiliza la figura de un rombo, en cuyo interior debe incluir
una o varias comparaciones (condición); la figura geométrica debe tener una entrada y
dos salidas que después se unen en un conector, las salidas se utilizan para determinar
la respuesta a la condición “verdadero o falso”, cada alternativa de respuesta puede incluir
cualquier proceso como respuesta a la condición, estas instrucciones gráficas se unen en
un conector para continuar con el siguiente proceso, cada salida del control condicional
debe detallar o estar etiquetada con un verdadero o sus iniciales como (V, SI, S) y con un
falso o sus iniciales (F, NO, N), su formato es el siguiente:

En el siguiente ejemplo se muestra el algoritmo y el diagrama de flujo para verificar si un


valor cualquiera es un número positivo o un número negativo, recuerde que un número es
positivo si su valor es mayor que cero, a su vez es negativo cuando su valor es menor que
cero, para este ejemplo se mostrará su correspondiente mensaje alusivo a la respuesta
de la condición, observe que los mensajes siempre estarán encerrados ente comillas (“”),
ya que el contenido no puede ser confundido con nombres de variables:

9
¿Qué datos entran a ser procesados?
Se recibirá un número cualquiera.

¿Qué resultados muestra?


Mostrará un mensaje indicando si el número recibido es positivo o negativo.

¿Qué condiciones se presentan en el proceso?


Realiza una sola pregunta, la que compara si el número recibido es mayor que cero.

Este ejemplo de diagrama de flujo, muestra cómo aplicar el símbolo del control condicional
(rombo), en cuyo interior se escriben las comparaciones deseadas, por normativa de uso,
las puntas izquierda y derecha se utilizan para graficar las acciones a realizar por
verdadero y/o por falso, es importante indicar que, a la derecha se grafican las acciones
por verdadero y a la izquierda las acciones por falso, pero esto no es una camisa de
fuerza, ya que se lo puede hacer conforme a la comprensión del programador; la condición
obligatoriamente separa las acciones de verdadero y de falso, estas acciones se deben
encontrar en un conector central, y desde este conector parte la flecha al siguiente
proceso lógico.

10
Considere el siguiente ejemplo, que incluye un control condicional en su lógica para
comparar dos números cualesquiera y mostrar como resultado solo el número mayor:

¿Qué datos entran a ser procesados?


Dos números cualesquiera.

¿Qué resultados muestra?


Mostrará el mayor de los dos números.

¿Qué condiciones se presentan en el proceso?


Compara, si uno de los números es mayor que el otro.

La siguiente tabla es una prueba de funcionamiento o prueba de escritorio del algoritmo


que se grafica en el diagrama de flujo, consiste en mostrar el resultado de hacer paso a
paso lo descrito en el algoritmo, para esto considere que se recibe cualquier valor para
las variables Num1 y Num2, la prueba de escritorio o de funcionamiento como resultado
debe mostrar el mayor de los dos números:

11
El siguiente ejercicio que se analizará es un ejemplo claro de la simplificación que ofrece
los diagramas de flujo para problemas cuya narración en algoritmos naturales sería
complicado expresar una solución y mucho más entenderlo desde el punto de vista de
quien lo aplica, se trata de un algoritmo gráfico que solicita tres números cualesquiera y
como resultado muestra el mayor de los tres, es importante destacar que cuando se
presentan problemas complejos, el uso de los diagramas de flujo facilita la comprensión y
simplifica la secuencia lógica al aplicarlo:

¿Qué datos entran a ser procesados?


El algoritmo recibe tres números cualesquiera.

¿Qué resultados muestra?


Mostrará al mayor de los tres números.

¿Qué condiciones se presentan en el proceso?


El diagrama presenta tres condiciones, en la primera condición compara dos variables, y
dependiendo de la respuesta (verdadera o falsa), comparará el valor de la mayor con la
tercera variable, sin importar que dirección toma, las comparaciones utilizadas en la
siguiente pregunta, encontrará el mayor definitivo de los tres valores recibidos.

12
En este ejemplo las variables A, B y C representan tres valores diferentes, el orden de
comparación para encontrar el mayor usted puede decidirlo, para este caso, primero
pregunta si el valor de la variable A es mayor que el valor de la variable B, suponga que
al ser verdadera la respuesta, vuelve a preguntar si el valor de la variable A es mayor que
el valor de la variable C, suponiendo que es verdadera la respuesta, muestra como mayor
el valor de la variable A, caso contrario es mayor el valor de la variable C (no necesita
comparar el valor de la variable B con el valor de la variable C porque el valor de A era
mayor que el valor de B); si retornamos a la primera pregunta (A>B) y suponiendo que la
respuesta es falso, significa que el valor de la variable B es mayor que el valor de la
variable A, por lo tanto pregunta si el valor de B es mayor que el valor de C, suponiendo
que es verdadera la respuesta, muestra el valor de B como mayor, caso contrario muestra
el valor de C como mayor (no es necesario comparar el valor de C con el valor de A porque
el valor de B era mayor).

2.3. Formatos utilizados para expresar ciclos repetitivos en los


diagramas de flujo

Recuerde que los ciclos repetitivos utilizados en los algoritmos pseudocodificados, son
los mismos que se utilizarán en los diagramas de flujo:

13
El siguiente ejercicio ejemplifica los pasos lógicos para mostrar la tabla de multiplicar del
dos, para desarrollarlo se utilizará un contador que empieza en 1 y llegará hasta el 12, por
cada ciclo de repetición este contador se multiplicará por 2 y mostrará el resultado:

14
Observe que el proceso de control de los ciclos repetitivos se ejecuta mientras el Contador
sea menor o igual que 12, en cada repetición calcula la multiplicación del contador por 2
con la finalidad de mostrar el renglón de la tabla que corresponde, cada fila de la tabla se
muestra de la siguiente forma “2 x ”,Contador,” = ”, Result; entienda que lo que está entre
comillas son mensajes que no variarán, los mensajes se separan de las variables
Contador y Result mediante comas (,) cuyos valores cambiarán en cada repetición dando
como resultado la tabla de multiplicar del 2.

2.4. Funciones matemáticas que se pueden incluir en los algoritmos

Los operadores aritméticos son símbolos que permiten al programador desarrollar


diferentes cálculos mediante la combinación ordenada de números y estos símbolos,
lamentablemente existen cálculos que no poseen una simbología de notación por lo que
se hace uso de nombres de cálculos llamadas funciones, a estos nombres se les puede
utilizar para obtener un resultado cuyo valor de cálculo estará contenido entre paréntesis,
existe una gran cantidad de funciones, entre las más populares se tienen: Abs(Num) esta
función devuelve el valor absoluto de cualquier número (Num); la función Arctan(Num)
devuelve el arco tangente de un número; la función Cos(Num) devuelve el

15
coseno de un número; la función Sen(Num) devuelve el seno de un número, entre otras
funciones; para ampliar las posibilidades de creación de algoritmos se utilizarán funciones
matemáticas que realizan cálculos como la raíz cuadrada “SQRT(Num)”, note que se trata
de un nombre seguido por paréntesis, funciona encerrando entre paréntesis un valor o el
contenido de una variable, es decir se puede escribir la instrucción sqrt(9), al realizar este
proceso la función devolverá como resultado 3; ahora suponga que se asigna 25 a una
variable X (X=25), al aplicar la raíz cuadrada del valor de X tendríamos sqrt(X), al realizar
esta instrucción la función devolverá como resultado 5. Para ejemplificar el uso de la
función sqrt(), se utilizará el siguiente ejercicio que resuelve la hipotenusa de un triángulo:

En el ejercicio una vez obtenido los valores de los catetos primero calcula la sumatoria los
cuadrados de los catetos y posterior a esto se calcula la raíz cuadrada de la suma; el
diagrama de reflujo resuelve el problema en dos cálculos, pero es posible unir ambos
cálculos en uno solo y simplificar el proceso de la siguiente forma: H=SQRT(C1^2+C2^2),
ya que la función también puede recibir un cálculo como valor a resolver, en cuyo caso el
computador resuelve primero el cálculo que está entre paréntesis y después pasa el
resultado a la función para encontrar la raíz cuadrada.

Para desarrollar el siguiente ejercicio, suponga que se necesita un diagrama de flujo que
reciba tres números cualquiera, el diagrama debe mostrar el mayor de los tres números,
para diferenciarlo del ejercicio desarrollado al principio del capítulo se utiliza el operador
lógico AND en la condición principal:

16
El uso del operador lógico AND en este ejercicio simplifica y disminuye el número de
condiciones para encontrar el mayor de los tres números.

¿Qué datos entran a ser procesados?


Recibe tres números cualesquiera, representados por las variables A, B y C.

¿Qué resultados muestra?


Antes de finalizar el diagrama mostrará el número mayor de las tres cantidades.

¿Qué condiciones se presentan en el proceso?


Aplica 2 condiciones, la primera chequea si el contenido de la variable A es mayor a los
contenidos de las variables B y C; al suponer verdadero mostrará el valor de la variable A
como mayor, caso contrario la variable A queda descartada, ya que el mayor puede estar
entre las variables B o C; de hecho, esa es la segunda condición, chequea si el valor de
la variable B es mayor que el valor de la variable C, dependiendo del resultado mostrará
al contenido mayor.

17
2.5. Ejercicios aplicando condiciones y controles de ciclos
repetitivos

Para ejemplificar el uso del control de ciclo repetitivo utilizando diagramas de flujo, observe
el siguiente problema: Una empresa que se dedica a la venta de vehículos cuenta con 10
empleados, todos han vendido y no se igualan en ventas, se necesita un diagrama de flujo
que permita encontrar al empleado que más venta registra.

Análisis: para el desarrollo de este ejercicio se necesita una variable contador que será
utilizada para controlar el ingreso de los 10 empleados, otra variable para contener la
cantidad de ventas de cada uno de los 10 vendedores, además se necesita de una tercer
variable para contener la cantidad mayor de todas las ventas ingresadas, para esto se
propone mediante una condición encontrar la venta mayor en cada repetición, antes de
empezar los ciclos repetitivos se debe inicializar esta variable en cero para que sirva de
punto de comparación con cada cantidad de venta que se obtenga, así la primera cantidad
que se ingrese como total en ventas será considerada mayor que cero, esto permitirá fijar
a dicha cantidad como la venta mayor y de ahí en adelante se comparará con las nuevas
cantidades de ventas de los otros empleados.

18
La estrategia aplicada en este ejercicio, le servirá como referencia para resolver otros
problemas similares, en donde se necesite encontrar el mayor de entre muchos números,
observe que las repeticiones son controladas mediante la variable “Contador”, es decir
repiten mientras contador sea menor que el número de veces que se desea repetir, la
variable “VentaMayor” en la condición, será la encargada de contener el valor mayor
sirviendo de referencia para comparar si la nueva venta es mayor que la encontrada
anteriormente.

Analice el siguiente problema: Una escuela de enseñanza básica necesita que un


diagrama de flujo cumpla con varios requerimientos, primero que le permita calcular el
promedio de 5 notas por cada estudiante, segundo que facilite el cálculo para un curso
que cuenta con 25 niños, además por cada uno de ellos se necesita mostrar en qué
categoría se encuentra considerando su promedio, para esto tome en cuenta la siguiente
tabla que muestra cómo están categorizados los diferentes promedios:

Es importante tomar en cuenta que para desarrollar el ejercicio, necesitará de un contador


que le permita controlar las 25 repeticiones, por cada repe<zaqtición se debe obtener las
5 notas del estudiante, después calcular el promedio y el resultado compararlo con cada
uno de los valores de la tabla, esto con la finalidad de buscar la categoría coincidente y
mostrarla mediante un mensaje; en este ejercicio se puede observar cómo se aplican
controles de procesos repetitivos y condiciones múltiples, el siguiente diagrama de
flujo es una propuesta de solución algorítmica que le permitirá establecer las pautas para
desarrollar ejercicios similares:

19
2.6. Diagramas de flujo con condiciones de caso

El empleo de esta técnica es poco utilizado en el desarrollo de soluciones mediante


diagramas de flujo, los formatos utilizados por los diferentes programadores aún no están
claros, ya que no utiliza una figura geométrica única para las coincidencias de cada caso,
sino que hace uso de etiquetas para identificar la lista de casos, el formato que el libro
propone para desarrollar ejercicios es el siguiente:

20
El formato describe varios elementos que son utilizados para el uso del control, así
Expresión es el contenido que se desea comparar con las coincidencias de cada Etiqueta,
la etiqueta en cada proceso puede incluir uno o varios valores separados por comas, las
coincidencias únicamente se darán por comparaciones de igualdad, “Etiqueta 1:” al igual
que todas las etiquetas deben incluir la palabra “Caso” seguido de una lista de posibles
valores de coincidencia y se cierra o se finaliza la etiqueta con los dos puntos (:), los
procesos de cada caso pueden ser cualquier instrucción que se considere necesaria para
resolver el problema, incluso otra condición de caso.

Para ilustrar el uso de esta herramienta considere el siguiente ejemplo: El bono de


desarrollo humano del gobierno nacional, ha incluido dentro de sus beneficios, subsidiar
una cantidad de kilovatios hora dependiendo de la categoría en la que se encuentra el
beneficiado, para esto ha creado una tabla que define cuatro categorías con su respectivo
beneficio:

Para mostrar los beneficios a la ciudadanía, se ha creado mesas de información para que
los beneficiarios puedan consultar sus ventajas y hacer uso del beneficio de consumo; en
cumplimiento a lo dispuesto por el Estado, se desarrolló un diagrama de flujo que permite
solicitar únicamente la categoría del beneficiado, el programa muestra el número de
kilovatios hora y la cantidad de dinero, que el Estado le subsidiará considerando que el
kilovatio hora tiene un costo de 6 centavos.

21
Análisis utilizado para resolver el problema: asumiendo que la categoría del
beneficiario es 2; para calcular el dinero subsidiado usted debe multiplicar 200 x 0.06, ya
que cada kilovatio hora tiene un costo de 6 centavos y la categoría 2 subsidia 200
Kilovatios hora; considerando este ejemplo, el programa debería mostrar como subsidio
$ 12.00.

Analizando el diagrama de flujo, observe que el valor de la variable Categoría será


comparado con cada caso, si existe coincidencia en uno de los casos se procederá a
realizar el cálculo correspondiente después de los dos puntos (:), terminada la acción
continuará siguiendo la secuencia de las flechas hacia el conector central y de ahí al
siguiente proceso que consistiría en mostrar el total calculado.

Esta técnica de control condicional al igual que los algoritmos pseudocodificados también
posee la alternativa de “caso contrario”, cuyas instrucciones se realizan cuando no hay
coincidencia en ninguno de los casos, para ejemplificar el caso contrario, el siguiente
diagrama de flujo muestra en mensajes, el número de días que posee un mes, para
lograrlo se requiere obtener el número que corresponde al mes, el diagrama de flujo
quedaría de la siguiente forma:

22
El algoritmo expresado en el diagrama de flujo, asume que el ingreso del número que
corresponde al mes estará limitado entre 1 y 12, considere que no existe ningún proceso
que valide en ingreso del mes, considere que puede existir la posibilidad de que se ingrese
cualquier número que no corresponda a lo solicitado, así los procesos de validación de
datos se estudian más adelante en este mismo capítulo.

2.7. Secuencias repetitivas controladas con “repetir … hasta que”

Esta técnica basada en el control condicional es utilizada por algunos lenguajes de


programación, su principal uso se basa en la validación de datos y procesos, esta práctica
de control, al menos ejecuta una vez el proceso antes de volver a repetir, recuerde que
esta estructura de control estudiada en los algoritmos pseudocodificados repite cuando
no se cumple la condición, es decir realiza el siguiente ciclo repetitivo cuando la respuesta
a la condición es falsa, y sale del ciclo repetitivo cuando la respuesta a la condición es
verdadera o dicho de otra forma repite hasta que se cumpla la condición.

Para ilustrar la forma de utilizar este control de repetición considere el siguiente ejemplo:
Suponga que se requiere calcular el perímetro de un triángulo escaleno (figura triangular
que tiene los tres lados desiguales), para lograrlo el diagrama debe validar que la
obtención de los tres lados debe ser desiguales:

23
¿Qué datos entran a ser procesados?
Tres números cualquiera validados para que obligatoriamente sean diferentes.

¿Qué resultados muestra?


Mostrará el perímetro del triángulo, aritméticamente la suma de sus lados.

¿Qué condiciones se presentan en el proceso?


El primer lado se lo recibe sin ninguna restricción, el segundo lado está condicionado a
ser diferente del primer lado y es aquí donde se presenta la primera condición, el tercer
lado está condicionado a ser diferente al primer y segundo lado, por lo que la segunda
condición tiene el operador lógico (And) que obliga a que ambas preguntas cumplan la
condición.

Ahora analice el siguiente problema a desarrollar: Asuma que se necesita un diagrama de


flujo que permita calcular la distancia recorrida en metros por un automóvil, el vehículo se
desplaza a una velocidad constante (metros sobre segundos) durante un
24
tiempo determinado, para resolver el diagrama considere que el movimiento del vehículo
es rectilíneo uniforme; se necesita obligatoriamente que la velocidad no sea menor a 100
m/s y el tiempo no puede pasar los 360 segundos.

Análisis para entender el desarrollo: Debe estar claro que para resolver este problema se
necesita solicitar los datos que intervienen en el cálculo y que son expresados en la
siguiente fórmula (d=v * t); donde la variable “d” representa la distancia, la variable “v”
representa la velocidad, y la variable “t” representa el tiempo; Tome en cuenta que el
problema exige ciertas condiciones que obligan a validar la obtención de los datos como
la velocidad y el tiempo, es decir los requerimientos del problema piden que la velocidad
debe ser mayor o igual que 100 y el valor del tiempo debe ser menor o igual que 360.

¿Qué datos entran a ser procesados?


Dos números cualquiera validados para que obligatoriamente cumplan la condición
propuesta en el problema.

¿Qué resultados muestra?


Mostrará el resultado de multiplicar los dos números (aplicación de la fórmula).
25
¿Qué condiciones se presentan en el proceso?
El primer dato exigido, consiste en pedir la velocidad, condicionada a ser mayor o igual
que 100, el segundo dato está condicionado a ser menor o igual que 360, observe que
volverán a ser pedidos estos datos cuando no se cumplan las condiciones.

2.8. Secuencias repetitivas controladas con “hacer … mientras” de


flujo

Esta técnica basada en el control condicional es ampliamente utilizada por casi todos los
lenguajes de programación, su principal uso al igual que el control “Repetir… hasta que”
se basa en aplicar la validación de datos y de procesos, esta práctica de control al menos
ejecuta una vez el proceso interno antes que se vuelva a repetir, recuerde que la condición
de.

Para ejemplificar el uso de este control de validación se tomará como base de explicación
los mismos ejemplos analizados en el control “Repetir… hasta que”, la intensión está
basada en diferenciar las dos estructuras; en el siguiente ejemplo sé que calcular el
perímetro de un triángulo escaleno, observe como cambia la comparación cuando se
utiliza “Repetir… Hasta que” y cuando se utiliza “Hacer… mientras” para validar que el
ingreso del segundo lado:

En esta validación de ejemplo la propuesta “A” que utiliza el control “Repetir… Hasta que”,
vuelve a pedir hasta que el valor de la variable “LB” sea diferente al valor de la variable
“LA”; en cambio en el ejemplo de la propuesta “B”, vuelve a pedir mientras el valor de la
variable “LB” sea igual al valor de la variable “LA”, observe que son dos comparaciones
diferentes pero una misma validación, es decir al momento de terminar

26
cualquiera de las dos validaciones las variables “LA” y “LB” tendrán dos valores diferentes
cumpliendo con los requerimientos del problema; el diagrama de flujo completo quedaría
de la siguiente forma:

¿Qué datos entran a ser procesados?


Tres números cualquiera validados para que obligatoriamente sean diferentes.

¿Qué resultados muestra?


El perímetro del triángulo, es decir la suma de sus lados.

¿Qué condiciones se presentan en el proceso?


El primer lado “LA” se lo recibe sin ninguna restricción, ya que puede ser cualquier valor,
el segundo lado “LB” está condicionado a repetir mientras primer lado sea igual que el
segundo lado, el tercer lado está condicionado a repetir mientras sea igual que el primer
o segundo lado, por lo que la segunda condición tiene el operador lógico OR que obliga a
repetir si una de las comparaciones cumple la condición.

La clave para deducir la diferencia entre las dos herramientas de control, consiste en
entender y aplicar la redacción natural de los controles, es decir el primer control de
27
validación “Repite… Hasta que la condición sea verdadera” y el segundo control de
validación “Hace… mientras la condición sea verdadera”.

Ahora para el siguiente problema a explicar, se propone un diagrama de flujo que permita
calcular la distancia recorrida en metros por un automóvil, que tiene una velocidad
constante (metros sobre segundos) durante un tiempo determinado, considere que el
movimiento es rectilíneo y uniforme, para resolver el problema, es obligatorio que la
velocidad no pueda ser menor a 100 m/s, y el tiempo no puede pasar los 360 segundos.

Tome en cuenta el siguiente análisis utilizando el control “Hacer… Mientras”: Por


conocimientos general, para resolver el problema se aplica la fórmula (d = v * t); considere
que los datos solicitados para realizar el cálculo deben cumplir con las reglas de validación
para cada dato, por ejemplo, la velocidad debe ser mayor o igual que 100 para ser
considerado un dato válido, esto significa que repetirá mientras el valor ingresado no
cumpla con la condición y saldrá del control cuando el valor se validó:

De forma similar se aplica para validar el tiempo que debe ser menor o igual que 360, el
diagrama completo se muestra a continuación:

28
¿Qué datos entran a ser procesados?
Dos números cualquiera, validados para que cumplan las condiciones del problema.

¿Qué resultados muestra?


La distancia recorrida por un vehículo, es decir la multiplicación de velocidad “V” por
tiempo “T”, es decir la aplicación de la formula analizada en el problema.

¿Qué condiciones se presentan en el proceso?


La primera condición se aplica para repetir mientras la velocidad sea menor que 100, y
la segunda condición se aplica para repetir mientras el tiempo sea mayor que 360.

29
[Escriba aquí]

2.9. Secuencias repetitivas controladas con “para” y uso de


autocontadores

Esta instrucción de control al igual que en los algoritmos pseudocodificados, utilizan la


técnica del “Para o Desde” para facilitar el control de procesos repetitivos, los diagramas
de flujo también ofrecen la herramienta de control automático, comienza definiendo un
valor inicial y llegará hasta un valor final, incrementándose de forma automática por cada
repetición, es decir se establece un número predeterminado de repeticiones entre el valor
inicial y final.

Para ilustrar de mejor forma esta definición, considere el siguiente ejemplo: Se necesita
de un diagrama de flujo, que permita calcular la edad promedio de un grupo de 25
jugadores juveniles, por cada jugador se debe obtener la edad.

Análisis: esta técnica de control permite establecer el número de repeticiones que se


desean, solo se debe indicar el valor inicial y un valor final, para el ejemplo el valor inicial
será de 1 y llegará hasta 25 para generar 25 repeticiones o ciclos, un por cada jugador;
además recuerde que se necesita calcular el promedio de 25 datos, para lograrlo se aplica
la técnica de la acumulación o la sumatoria de todas las edades, esto con la finalidad de
dividirla para 25 y obtener el promedio general.

30
¿Qué datos entran a ser procesados?
Recibe 25 números cualesquiera que representan las edades de cada uno de los
jugadores, el diagrama utiliza la variable edad para tomar una por una, en cada ciclo de
repetición, así la variable acumuladora será utilizada para contener la suma de todas las
edades.

¿Qué resultados muestra?


Antes de finalizar mostrará el promedio de las 25 edades.

¿Qué condiciones se presentan en el proceso?


Solo una implícita, el proceso automático de repetición se cumple cuando Cont es menor
o igual que 25.

Para continuar con las ejemplificaciones analice el siguiente problema: Se necesita un


diagrama de flujo que muestre el producto de una multiplicación entre dos números
cualquiera, la condición radica en NO utilizar el operador aritmético de multiplicación.

31
Análisis: técnicamente al resultado de una multiplicación, se la define como el número
que especifica las veces que otro número debe sumarse, por ejemplo, 5x4 el resultado es
20; podríamos decir que el 4 se suma cinco veces o lo contrario el 5 se suma cuatro veces.

¿Qué datos entran a ser procesados?


Recibe dos números cualesquiera que representan los valores a multiplicar, una variable
“Pro” que se utilizará para acumular la sumatoria de uno de los números, el diagrama
utiliza las variables “A” y “B” para representar los valores a multiplicar, los ciclos repetitivos
empezaran en 1 y llegará mediante conteo automático hasta el valor de “B” en cada ciclo
de repetición, se acumulará el valor de “A”.

¿Qué resultados muestra?


Antes de finalizar mostrará la acumulación del valor de “A”, en “B” veces.
Ahora suponga que se le plantea el siguiente problema: Desarrolle un diagrama de flujo
que permita mostrar por pantalla: una vez 1, dos veces 2, tres veces 3, cuatro veces 4 y
así sucesivamente hasta nueve veces 9.

32
Análisis: la solución a este problema requiere de utilizar dos controles de repetición,
orientándose de arriba hacia abajo el primer control sería denominado el externo y el
segundo sería denominado el interno, así el control de repetición externo se encargará de
recorrer los valores desde el 1 hasta el 9 (valores que se mostrarán uno a uno), y el
segundo control de repetición se ejecutará dentro del primer control con la finalidad de
repetir desde uno hasta el valor de la variable contador del control externo, por ejemplo si
el contador externo vale 5, el segundo ciclo irá de 1 a 5, lo que significa que mostrará
cinco veces 5.

Bibliografía

Gabriel, D., Maricela, P., Rodolfo, G., Miguel, R., & Darwin, L. (2018). Desarrollo práctico
de la Programación (N. Pelegrín & F. Henry (eds.); Diana Zava). Ediciones UTM-
Universidad Técnica de Manabí.
https://www.utm.edu.ec/ediciones_utm/component/content/article/24-libros/709-
desarrollo-practico-de-la-programacion?Itemid=101

33
DIRECTRICES GENERALES DE UNIDAD
La siguiente tabla muestra las actividades a realizar en la Unidad 2 y las fechas máximas
(cierre) para el cumplimiento. Las actividades de aprendizajes autónomo no se incluyen
en la tabla, pero se detallan en la guía.

CRONOGRAMA DE ACTIVIDADES – TERCERA UNIDAD


FECHA/HORA PUNTAJE
ACTIVIDADES APERTURA CIERRE CADA
00H00M 23H55M ACTIVIDAD

COMPONENTE DE APRENDIZAJE TEST DE LA


01/08/2022 14/08/2022 3 PUNTOS
DOCENCIA COLABORATIVO UNIDAD No. 2

COMPONENTE DE PRÁCTICAS DE SOPA DE LETRA


01/08/2022 14/08/2022 7 PUNTOS
APLICACIÓN Y EXPERIMENTACIÓN UNIDAD No. 2

COMPONENTE DE APRENDIZAJE TAREA


AUTÓNOMO INTEGRADORA 01/08/2022 28/08/2022 20 PUNTOS

ACTIVIDADES A DESARROLLAR EN LA UNIDAD

La presente guía didáctica plantea el desarrollo de actividades que contribuirán al


aprendizaje integral de los contenidos propuestos en cada uno de los ejes temáticos que
corresponden a la presente unidad. Ante lo expuesto, los estudiantes deberán:

COMPONENTE: APRENDIZAJE AUTÓNOMO

ACTIVIDAD No. 1 (Autoaprendizaje)

Revisión de material didáctico

Desarrollar lectura comprensiva e inferencial, observación y escucha de resolución de


ejercicios resueltos y de aplicación activa de documentos y materiales audiovisuales a los
cuales podrán acceder mediante enlaces compartidos en la parte final de esta descripción.
Los contenidos expuestos en cada uno de estos elementos serán considerados en el Test
y el Crucigrama de la Unidad 3

34
RECURSOS
https://www.youtube.com/watch?v=Kucgc6NpGwc&a
b_channel=JorgeCogollo
1. Que es un Diagrama de
flujo, símbolos básicos. https://www.youtube.com/watch?v=HwFPiwWC004&a
Ejemplos en Pseint b_channel=JoseGomez

https://www.youtube.com/watch?v=hqXZYexka6A&ab
_channel=TecnoHobbies
https://www.youtube.com/watch?v=Lae-
2. Condicional, ejemplos de
ZaXKHik&ab_channel=Programaci%C3%B3nATS
condicional simple en
Pseint https://www.youtube.com/watch?v=k1FEDljTmEE&ab_cha
nnel=ArielGuerreroRodriguez
3. Decisiones en Pseint https://www.youtube.com/watch?v=zy4lbP_aAvA&ab_
channel=RaiCarbajal

4. Ciclo o bucle, ejemplo de https://www.youtube.com/watch?v=UjsU4lLNJY0&ab_chan


diagramas repetitivos o nel=Programaci%C3%B3nATS
cíclicos en Pseint
https://www.youtube.com/watch?v=-
BzbdQqRCdI&ab_channel=AntonioDiaz

5. Algoritmo con
operaciones matemáticas https://www.youtube.com/watch?v=fsP2jD8w6FA&ab_cha
en Pseint nnel=FranklinGarc%C3%ADa

6. Operador Mod/residuo –
https://www.youtube.com/watch?v=M3-
Numero par/impar en D56444uE&ab_channel=TecnoHobbies
Pseint

COMPONENTE: DOCENCIA.

ACTIVIDAD No. 2 (Calificada)

Test de la Unidad No. 2

Ejecutar la evaluación en la plataforma aula virtual. Serán considerados los contenidos de


la guía de estudio de la Unidad 2 y del material de autoaprendizaje, el test ponderará con
4 puntos en el parámetro de Aprendizaje Autónomo.

Fechas de inicio: 01 de agosto del 2022


35
Fecha de cierre: 14 de agosto del 2022

Número de preguntas: 10

Puntaje por pregunta: 0.3 ptos.

Tiempo: 20 minutos

Número de intentos: 1

COMPONENTE: PRACTICAS DE APLICACIÓN Y EXPERIMENTACIÓN.

ACTIVIDAD No. 3 (Calificada)

Juego: Sopa de letras de la Unidad No. 2

Realizar la sopa de letras presente en la plataforma aula virtual dentro del plazo
establecido. Serán considerados los contenidos de la guía de estudio de la Unidad 3 y de
las actividades; la sopa de letras ponderará con 7 puntos en Prácticas de Aplicación y
Experimentación.

Fechas de inicio: 01 de agosto del 2022

Fecha de cierre: 14 de agosto del 2022

Número de palabras: 7

Tiempo: 15 minutos

Número de intentos: 1

COMPONENTE: APRENDIZAJE AUTÓNOMO


ACTIVIDAD No. 4. (Calificada)
Tarea Integradora del Saber:

Formar grupos de 4 estudiantes como máximo y elegir un coordinador, los grupos


deben formarse entre los integrantes de un mismo paralelo.

36
Realizar la siguiente tarea integradora: Resolver un ejercicio donde tendrá que poner en
práctica todo lo aprendido en la asignatura (Unidad 1, 2 y 3). El problema para resolver
será de su elección, pero se debe considerar un ejercicio de alta complejidad (como
mínimo debe incluir una estructura de condiciones múltiples o 1 estructura repetitiva o una
combinación de ambas), para ello tendrá que subir a su Driver Institucional el archivo en
un formato PDF con el trabajo; una vez tenga el archivo en el Driver compartirá el link en
el aula virtual de la tarea, el archivo PDF debe incluir lo siguiente:

1. Caratula que contenga los nombres y apellidos completos de todos los


integrantes del grupo y el paralelo.
2. El planteamiento del ejercicio.
3. El diagrama de flujo del ejercicio
4. El Pseudocódigo del ejercicio a detalle
5. Capturas de las pruebas de funcionamiento del Pseudocódigo en Pseint.

Esta actividad estará disponible:

Desde el 1 de agosto 2022 00h00

Hasta el 28 de agosto 20222 23H55

La tarea integradora se calificará sobre 20 puntos en el promedio final.

Observación:

1. El coordinador deberá crear en su drive institucional (ejemplo:


mmendoza4515@utm.edu.ec) una carpeta que contenga el archivo en formato PDF y el
archivo extensión Psc generado en Pseint.

2. El coordinador debe obtener el enlace de la carpeta y ubicarlo en el aula virtual,


indicando los nombres de los integrantes de cada grupo, su carrera y paralelo.

3. El trabajo deberá ser autentico de su propia creación, no se aceptarán plagios o


trabajos duplicados.

4. En caso excepcional de no conformar ningún grupo podrá enviar la tarea de forma


individual, previa autorización del docente.

37
CRITERIOS DE VALORACIÓN:

Criterios de calificación Puntaje


Datos ingresados en el PDF:

- Elaboración de caratula con nombres, apellidos completos y 1,00


paralelo
2,00
- Planteamiento del ejercicio 4,00

- Diagrama de flujo del ejercicio que contenga como mínimo 1 4,00


estructura de condiciones múltiples o una estructura repetitiva o
una combinación de ambas.
4,00
- Seudocódigo del ejercicio a detalle

- Capturas de las pruebas de funcionamiento del


Pseudocódigo realizado en Pseint.
· Archivo extensión Psc realizado en Pseint. 5,00
TOTAL 20,00

Información adicional importante:

Para poder llevar un control de los grupos conformados, ingresar al siguiente link y
registrar Nombres y apellidos completos de los integrantes de los grupos por paralelo

38
PSEUDOCODIGOS
GUÍA DE ESTUDIOS
2 Créditos

Profesor Autor:
Ing. Freddy Fabricio Malla García

UNIDAD No. 3

GUÍA DIDÁCTICA PARA EL APRENDIZAJE

PERÍODO ACADÉMICO
2022-P1

Importante: La presente guía de estudio incorpora contenidos sintetizados sobre los ejes
temáticos correspondientes a la Unidad No. 3. Este documento servirá como referente
conceptual y teórico para las actividades, evaluaciones parciales y final de esta
asignatura.

1
PSEUDOCÓDIGOS
Resultado de aprendizaje de la unidad: Desarrollar habilidades de redacción
simplificada; conocer y aplicar reglas de formato; entender la estandarización de las
instrucciones como elementos universales de comprensión, así como aplicar en los
algoritmos, las variables como elementos representativos de valores y datos.

Ejes Temáticos

PREÁMBULO DEL
PSEUDOCÓDIGO
APLICADO A LOS
ALGORITMOS
NATURALES

APLICACION DE
APLICACIÓN DE CONDICIONES
CONTADORES Y SIMPLES UTILIZANDO
ACUMULADORES PSEUDOCODIGO
COMO TÉCNICAS
DE CONTROL

PSEUDOCÓDIGOS

APLICACIÓN DE USO DE
CONDICIONES CONDICIONES
DE CASO MÚLTIPLES
APLICANDO UTILIZANDO
PSEUDOCÓDIGO PSEUDOCÓDIGO

2
Índice

Tabla de contenidos

UNIDAD 3: PSEUDOCÓDIGOS 4
3.1 Preámbulo del Pseudocódigo aplicado a los algoritmos naturales 4
3.2. Aplicación de condiciones simples utilizando pseudocódigo 6
3.3. Uso de condiciones múltiples utilizando pseudocódigo 9
3.4. Aplicación de condiciones de caso utilizando pseudocódigo 14
3.5. Definiciones generales de control y evaluación de resultados 18
3.5.1. Aplicación de contadores y acumuladores como técnicas de control 19
3.5.2.Pruebas de funcionamiento o pruebas de escritorio 20
Bibliografía 21
DIRECTRICES GENERALES DE UNIDAD 21
ACTIVIDADES A DESARROLLAR EN LA UNIDAD 22

3
COMPENDIO DE CONTENIDOS

UNIDAD 3: PSEUDOCÓDIGOS
El uso de pseudocódigos consiste en una técnica que exige de los algoritmos, reglas muy
similares a los utilizados por los lenguajes de programación, por ejemplo identifica de
forma clara las instrucciones únicas y con acciones precisas, aplica límites a las
instrucciones y a los controles de proceso en general, utiliza variables que representan
datos de forma específica y pueden ser utilizados para reemplazar resultados en los
diferentes procesos, aplica simbología especial para desarrollar cálculos, comparaciones
y operaciones lógicas para grupos de comparaciones; en sí un algoritmo a partir de este
capítulo solo tendrá instrucciones definidas en palabras únicas que denotan una acción
precisa, variables que representan valores y datos, simbología especial para realizar
cálculos, comparaciones y operaciones lógicas, en sí cualquier otro texto escrito en el
algoritmo debe encerrarse entre comillas como mensajes, ya que estos textos pueden ser
confundidos como nombres de variables o instrucciones pseudocodificadas.

3.1. Preámbulo del Pseudocódigo aplicado a los algoritmos


naturales

Cuando se presentan problemas que tienen mayor dificultad, notará que los algoritmos
escritos de forma natural, se vuelven más extensos y difíciles de entender, esto es un
problema que se necesita superar, ya que existe la necesidad de proponer soluciones,
que representen una secuencia de instrucciones fáciles de seguir y de entender;
considere que al momento de redactar soluciones con instrucciones más extensas, se
puede presentar la posibilidad de no ser fácil de entender, esto se hace evidente al
momento de expresar una idea que proponga una solución, además al utilizar una
determinada terminología propia de su entorno, no sea la misma que domine el lector que
desea aplicar dicha solución; así la exposición de ideas que denoten una solución
comprensible para todos, sería muy complicado entenderla y aplicarla descrita de forma
natural, recuerde que este tipo de redacción no se puede dar por la diversidad de

4
pensamientos que existe entre las diferentes personas, es decir lo que está claro para una
persona que propone una solución, para otra persona que desea aplicarla no lo estará.

Ante esta dificultad, los promotores del pensamiento ordenado y aplicado al desarrollo de
la programación, proponen pautas y acuerdos que permitan estandarizar la redacción de
instrucciones mediante el uso de reglas y palabras únicas denominadas, instrucciones
pseudocodificadas; estas reglas permiten expresar una acción sin la necesidad de
redactar la idea o la acción de forma natural, pseudocódigo es una palabra compuesta,
que está dividida en pseudo que significa supuesto o común para todos, y la palabra
código cuyo significado expresa normativas o aplicación de reglas; en sí las palabras
pseudocodificadas son palabras que suponen una acción entendida por todos y están
sometidas a reglas de redacción.

Como propuesta pedagógica de aprendizaje, los autores del libro(Gabriel et al., 2018)
proponen aplicar de forma parcial las reglas de redacción pseudocodificadas ya que su
estudio y entendimiento cubre una amplia variedad de instrucciones similar a un lenguaje
de programación; para aplicarlas de forma general se considerarán las siguientes:

• Identificar y utilizar palabras claves, que su aplicación identificaría una determinada


acción, por ejemplo: la palabra “Recibir”, identificaría la acción de solicitar datos que
se necesitará para realizar los diferentes procesos; para mostrar resultados de los
cálculos, mensajes, cualquier dato o información, se puede utilizar las palabras
“Mostrar o Escribir” como instrucción descriptiva de la acción.
• Los cálculos propuestos deben realizarse directamente utilizando valores constantes
y/o variables, sin la necesidad de redactarlos o explicarlos mediante la redacción
natural.
• Todas y cada una de las instrucciones que se detallan en la redacción del algoritmo,
deben terminar en punto y coma (;).

5
• Para separar los elementos de una misma instrucción, se puede hacer uso de la coma
(,); por ejemplo, se desea solicitar tres notas, la instrucción quedaría así: “Recibir
Nota1, Nota2, Nota3;”.
• Se puede aplicar palabras o grupos de palabras que ayudan a describir y controlar
determinados procesos, estas son únicas y no pueden ser utilizadas como nombres
de variables, por ejemplo: el uso coordinado de las palabras “Si, entonces, caso
contrario”, permitiría incluir en los algoritmos, las instrucciones necesarias para realizar
comparaciones y detallar las acciones convenientes para dividir procesos
condicionales; para aplicar controles a las secuencias repetitivas, se puede aplicar
instrucciones como: “Ir a”, “Repetir … hasta que”, “Mientras … hacer”, “Para … hacer”,
“Hacer … mientras”, cada uno de estos controles se explicarán uno a uno en este
capítulo.

Es importante entender que los algoritmos propuestos en este capítulo, no definen la


redacción formal utilizada por los lenguajes de programación, es decir no aplica
definiciones de encabezados, secciones, declaraciones de variables y/o usos de
comentarios, ya que esta propuesta bibliográfica pretende desarrollar de forma inicial, el
pensamiento y el orden secuencial de instrucciones en la redacción de algoritmos básicos
que definan las pautas esenciales en la creación de instrucciones para la interpretación
universal de las soluciones propuestas.

3.2. Aplicación de condiciones simples utilizando pseudocódigo

Se considera una condición simple, cuando se incluye en un algoritmo una condición o


pregunta, al aplicar esta condición, se entiende que existirá solo una acción o acciones a
desarrollar entre dos alternativas posibles (verdadero o falso); estas alternativas se
producen como respuesta a una comparación y estará desarrollada como las acciones a
tomar en caso de ser verdadero o las acciones a tomar en caso de ser falso, recuerde que
para realizar una pregunta solo se puede utilizar los operadores de comparación como:
mayor que (>),menor que (<), mayor o igual que (>=), menor o igual que (<=), igual que
(=) y diferente que (<>). En caso de aplicar varias comparaciones en la misma condición
6
se debe utilizar los operadores lógicos como método de combinación y generar una
respuesta que satisfaga la necesidad de aplicar la condición al problema.

El formato de cómo aplicar condiciones simples es la siguiente:

Si Condición entonces Instrucciones_por_verdadero;

Caso contrario Instrucciones_por_falso;


Fin si

La palabra formato describe o ejemplifica la forma de cómo crear y aplicar la condición


simple en cualquier propuesta de solución que usted desee, observe que el formato de la
instrucción compuesta por “Si”, “Entonces” y “Caso contrario” utilizada para realizar una o
varias comparaciones, se cierra o finaliza con las palabras “Fin si”, el uso combinado de
estas instrucciones sirven para orientar que acciones se realizarán por verdadero o por
falso, recuerde que cada instrucción sin importar donde se ubica debe finalizar con el uso
del punto y coma, pero la condición finaliza con la instrucción “Fin si”, así la palabra
“Entonces” describe el inicio de las acciones que se realizarán en caso de que la respuesta
a la condición sea verdadera, y el uso de las palabras “Caso contrario” describe el inicio
de las acciones que se realizarán en caso de ser falsa la respuesta de la comparación.

Para ejemplificar el uso de condiciones simples, en este apartado se incluye ejemplos con
propuestas de solución algorítmica que aplican comparaciones como parte de las
instrucciones que solucionan un problema, por ejemplo, el siguiente algoritmo compara
dos números cualquiera y muestra como resultado, solo el número mayor:

Algoritmo 17:

Iniciamos
1. Recibir Num1, Num2;
2. Si Num1 > Num2 Entonces Escribir Num1; Caso contrario Escribir Num2;
Fin si
Finalizamos

Observe que en el segundo paso se considera a la condición como una sola instrucción
completa, ya que las instrucciones que se incluyen tanto por verdadero como por falso

7
pertenecen a la misma condición y por lo tanto dependiendo de la respuesta a la condición
solo aplicará una de ellas, tome en cuenta el siguiente análisis:

¿Qué datos entran a ser procesados?

El algoritmo solicita dos números cualquiera, uno es representado por la variable Num1 y
el otro es representado por la variable Num2.

¿Qué resultados muestra?


El algoritmo mostrará el mayor de los dos números.

¿Qué condiciones se presentan en el proceso?


Verifica si el valor de la primera variable Num1 es mayor que el valor de la segunda
variable Num2.

Es importante destacar que la aplicación de las instrucciones pseudocodificadas


disminuye la redacción y simplifica su comprensión, por la importancia que tiene el uso de
condiciones se vuelve a rescatar que la palabra “Entonces” para indicar las acciones que
se realizan en caso de que la condición sea verdadera y las palabras “Caso contrario”
describirá las acciones a tomar en caso de que el resultado de la pregunta sea falso.

El siguiente ejemplo aplica un algoritmo que, teniendo un valor cualquiera, verifica si es


un número positivo o un número negativo, considere que un número es positivo, si su
valor es mayor que cero, a su vez es negativo, cuando su valor es menor que cero.

Algoritmo 18:
Iniciamos
1. Recibir N;
2. Si N >= 0 Entonces Escribir “Número Positivo”; Caso contrario Escribir “Número
Negativo”;
Fin si
Finalizamos

La aplicación de este ejemplo es muy parecida al ejercicio anterior, pero se diferencia en


8
que la manifestación del resultado es un mensaje y no el contenido de una variable, los
mensajes deben ser encerrados entre comillas, esto para evitar confusión con los
nombres de variables u otras instrucciones pseudocodificadas, considere las siguientes
interrogantes como un elemento complementario para identificar los elementos utilizados
para resolver el problema:

¿Qué datos entran a ser procesados?


El algoritmo solicita un número cualquiera y es contenido o representado por la variable
N.

¿Qué resultados muestra?


Mostrará un mensaje entre “Número Positivo” o “Número Negativo”.

¿Qué condiciones se presentan en el proceso?


Verifica si el valor de la variable N es mayor que 0, para mostrar el mensaje respectivo.

3.5. Uso de condiciones múltiples utilizando pseudocódigo

En algunos problemas se encontrará con la necesidad de utilizar múltiples condiciones


(más de una condición para resolver un problema), para formar cada condición usted
puede hacer uso de las comparaciones simples o agrupadas mediante operadores lógicos
separadas y de forma consecutiva (como respuesta a una condición), por ejemplo, se
plantea la necesidad de un algoritmo que suponga obtener una cantidad positiva menor a
10000, el algoritmo antes de finalizar debe mostrar el número de dígitos que posee dicha
cantidad.

Ejercicios como el planteado se lo puede resolver aplicando conocimientos matemáticos,


pero por ahora se plantea un análisis básico mediante condiciones múltiples. Considere
que:

● Los números de un dígito son los que comprende de 0 a 9.


● Las cantidades de dos dígitos son los que comprende desde 10 a 99.
● Las cantidades de tres dígitos son los que comprende desde 100 a 999.
9
● Las cantidades de cuatro dígitos son los que comprende desde 1000 a 9999.
● Si aplicamos condiciones múltiples para resolver este problema, se tendría la siguiente
propuesta de solución:

● Cuando se realizan estos tipos de ejercicios, es recomendable pero no obligatorio


utilizar los espacios llamados sangrías, recuerde que las sangrías básicamente son
espacios que parten desde el borde izquierdo de la línea de escritura, hasta el inicio
de la escritura de la instrucción, esto visualmente ayuda a entender que dichas
instrucciones pertenecen o son parte de la instrucción superior de control.

● Observe que la propuesta de solución utiliza como estrategia lógica, comparar la


cantidad obtenida desde las posibilidades de coincidencia mayores hasta las
posibilidades de coincidencia menores, este modelo de solución se puede aplicar
a ejercicios de características similares que se presentan posteriormente.
Considere las siguientes interrogantes:

¿Qué datos entran a ser procesados?


El algoritmo solicita una cantidad cualquiera contenida en la variable Cant.

¿Qué resultados muestra?


Mostrará el número de dígitos que tiene la cantidad.

10
¿Qué condiciones se presentan en el proceso?
Se presentan cuatro condiciones o preguntas, la primera condición verifica si la cantidad
es mayor que 9999, según el límite establecido en el problema, esto significa que la
cantidad tendría cinco dígitos, en caso contrario se aplica la segunda condición, que
verifica si la cantidad es mayor que 999, en cuyo caso la cantidad tendría cuatro dígitos,
caso contrario verifica si la cantidad es mayor que 99, en cuyo caso la cantidad tendría
tres dígitos, es importante entender que para que se verifique la segunda condición la
primera debe ser falsa; la cuarta condición se aplica si la tercera es falsa, esta verifica si
la cantidad es mayor que 9, si es verdadero mostrará que la cantidad tiene dos dígitos,
caso contrario por omisión mostrará que la cantidad tiene un dígito.
En el ejercicio anterior se muestra la forma básica de cómo aplicar pasos mediante
condiciones múltiples para encontrar el número de dígitos que posee una cantidad, note
que existen varias las condiciones planteadas, pero solo una de las condiciones dará
como respuesta verdadero y las otras posibilidades no se tomaran en cuenta; es decir al
evaluar la primera condición, si la respuesta es verdadera no se evaluará las otras
condiciones ya que pertenecen al caso contrario (falso) de la primera condición, esta
lógica es mecánica y se aplica así sucesivamente para las otras condiciones anidadas.

Para continuar analizando la aplicación de condiciones múltiples observe y analice el


siguiente ejemplo que aplica un menú para dar la opción de escoger el tipo de cálculo que
desea aplicar a dos números, el algoritmo debe pedir dos números cualquiera, con ellos
ofrece la posibilidad de realizar una de las siguientes operaciones: opción 1 suma, opción
2 resta, opción 3 multiplicación y opción 4 división; tome en cuenta que, aparte de los dos
números se necesitará recibir la opción de cálculo propuesto en el menú:

11
Observe que el nombre de la variable utilizado para contener el resultado de cada cálculo
es el mismo para todas las opciones, es importante que lo considere como una estrategia
de desarrollo algorítmica, ya que al final se utilizará dicho nombre para mostrar el
resultado sin importar la opción escogida, tome en cuenta las siguientes interrogantes
complementarias para analizar el ejercicio:

¿Qué datos entran a ser procesados?


El algoritmo inicialmente solicita dos cantidades cualquiera, después solicita escribir el
número que corresponde a la opción deseada para realizar el cálculo.

¿Qué resultados muestra?


Mostrará el resultado de uno de los cuatro posibles cálculos.

¿Qué condiciones se presentan en el proceso?


Presenta cuatro condiciones o preguntas, la primera condición verifica si el cálculo
deseado es la suma (Opción=1), por el caso contrario se aplica la segunda condición o
pregunta, verifica si el cálculo deseado es la resta (Opción=2), si no es así, el caso

12
contrario de esta pregunta es para aplicar la tercera condición, verifica si el cálculo
deseado es la multiplicación (Opción=3), al no ser verdadero, el caso contrario de esta
aplica la cuarta y última condición, verifica si el cálculo deseado es la división (Opción=4),
al no ser verdadero ninguna de las alternativas, aplica el último caso contrario y define el
resultado como cero.

Analice el siguiente ejemplo que muestra cómo utilizar las condiciones anidadas para
resolver problemas con categorías y valores relacionados entre si: Una empresa textil por
temporada contrata empleados ocasionales, a estos empleados la empresa los clasifica
en cinco categorías de responsabilidades, cada una con sus respectivos valores de pago
por hora, para una mayor comprensión de cómo realizar los cálculos se utilizará en el
algoritmo el siguiente cuadro descriptivo: Ahora considere que se tiene una relación entre
categoría y el valor de la hora, es decir que el valor a pagar dependerá de la categoría
que se obtenga, para desarrollar una solución algorítmica para este problema se deberá
obtener el valor de la categoría y el número de horas trabajadas, la solución mediante
condiciones múltiples buscará que categoría coincidirá con el valor correspondiente
obtenido y una vez localizado realizará el cálculo y mostrar el valor del pago. El siguiente
algoritmo es una propuesta de solución que sin duda alguna resuelve y define paso a paso
como resolver el problema

13
El ejercicio muestra la aplicación de condiciones múltiples para localizar una coincidencia
entre la variable categoría y el valor correspondiente de la tabla, desarrollará el mismo
cálculo, pero dependiendo de la respuesta a las diferentes condiciones lo hará solo una
vez y con el valor de la hora correspondiente, para profundizar aún más considere las
siguientes interrogates y sus respuestas: ¿Qué datos entran a ser procesados? El
algoritmo solicita dos valores, el primer valor representa la categoría y el otro representa
las horas trabajadas Horas_Trab. ¿Qué resultados muestra? Mostrará un sueldo. ¿Qué
condiciones se presentan en el proceso? Presenta cuatro condiciones o preguntas, la
primera condición verifica si la categoría es la primera (Categoría=1) que significa que el
valor de la hora es de $12.78, caso contrario se aplica la segunda condición o pregunta
que verifica si la categoría es la segunda (Categoría=2), lo que significa que el valor de la
hora es de $10.25, en caso de que la condición no se cumpla, aplica el caso contrario
para chequear la tercera condición, esta verifica si la categoría es la tercera (Categoría=3)
lo que significa que el valor de la hora es de $8.78, en el caso contrario de esta, aplica la
cuarta y última condición que verifica si la categoría escogida es la cuarta (Categoría=4)
lo que significa que el valor de la hora es de $6.00, por el caso contrario, a esta última
condición se asumirá como estrategia lógica, que la categoría es la quinta sin necesidad
de preguntarla, lo que significa que el valor de la hora es $4.80

3.6. Aplicación de condiciones de caso utilizando pseudocódigo

La aplicación de condiciones de caso, es una técnica empleada para realizar solo


comparaciones de igualdad con varios posibles casos, su estructura condicional está
desarrollada para realizar varias acciones por cada caso de coincidencia, esta técnica
emplea condiciones de igualdad al comparar el contenido de una variable con una lista de
opciones que se incluyen en cada caso, su aplicación entre otras posibilidades reduce y
facilita la escritura al reemplazar posibles estructuras de condición múltiple, la herramienta
empieza con la instrucción “Según” y finaliza con las palabras “Fin Según”, cada “Caso”
puede incorporar una opción de igualdad o una lista de opciones separados por comas (,)
para finalizar la lista de comparaciones seguido se escribe los dos puntos (:) y por último
se escriben las instrucciones que desee incluir en caso de existir coincidencia; es
importante recalcar que al coincidir con un caso, se realizarán las instrucciones escritas
14
después de los dos puntos no realizará las instrucciones de los otros casos, su formato
es el siguiente:

Según Dato_a_comparar hacer


Caso Lista_de_valores: Instrucciones;
Caso Lista_de_valores: Instrucciones;
………..
Caso Lista_de_valores :
[caso contrario] Instrucciones;
Fin según;

Observe que el formato de la herramienta de control posee un [Caso Contrario] encerrado


entre corchetes, el uso de los corchetes quiere decir que es opcional, en caso de utilizar
el caso contrario este se aplicará cuando ninguno de los elementos de la lista coincida
con el Dato_a_comparar, es decir se realizarán las acciones que incluye esta opción solo
cuando no hay coincidencia con los valores de todos los casos, nuevamente se recalca
que el uso de los corchetes es con la finalidad de recalcar que no es obligatoria su
utilización, por lo tanto si el programador lo desea lo puede incluir o no; el uso del caso
contrario dependerá de la necesidad de solución que el programador proponga.

Para ilustrar el uso de esta definición analice el siguiente ejemplo; se trata de aplicar una
propuesta de solución al problema del menú analizado con condiciones múltiples, el
algoritmo ofrece la posibilidad de realizar solo una de las siguientes operaciones utilizando
dos números cualquiera: opción 1 suma, opción 2 resta, opción 3 multiplicación y opción
4 división. El algoritmo utiliza condiciones de caso en vez de condiciones múltiples para
resolver el problema:

15
Observe que la instrucción de control “Según” es más simple de utilizar y a la vez de
visualizar y comprender, ya que ofrece varias comparaciones implícitas de igualdad al
buscar una coincidencia en cada caso, analice este algoritmo aplicando las siguientes
interrogantes:

¿Qué datos entran a ser procesados?


El algoritmo inicialmente solicita dos cantidades cualquiera, después solicita recibir el
número de la opción para resolver el cálculo deseado.

¿Qué resultados muestra?


Mostrará el resultado de una de las cuatro posibles operaciones aritméticas.

¿Qué condiciones se presentan en el proceso?


Presenta una sola condición implícita de igualdad y cuatro comparaciones que
dependerán del valor que contiene la variable Opción para realizar un determinado
proceso de entre cuatro posibilidades, el proceso consiste en comparar el valor de
“opción” con cada elemento de cada caso (chequeando si es igual), si el caso coincide
16
con uno realiza la operación aritmética y la variable Result tomará la suma de los dos
números; al no ser el primer caso, compara con el segundo caso, verifica si el valor es
dos, realizará la operación y la variable Result tomará la resta de los dos números, al no
ser el segundo caso, compara con el tercer caso, verifica si el valor es tres, después
realizará la operación y la variable Result tomará la multiplicación de los dos números, al
no ser el tercer caso, comparará el cuarto caso, verifica si el valor es cuatro, acción
seguida realizará la operación y la variable Result tomará la división de los dos números,
por último si ningún caso se cumple tomará el caso contrario y el valor de la variable Result
será cero.
El siguiente ejercicio utilizado para ejemplificar el uso de las condiciones de caso modifica
el algoritmo 22 que calcula el salario de un empleado que trabaja en una textilera, recuerde
que el sueldo del mismo dependerá de la categoría de responsabilidad asignada, la idea
de utilizar este ejercicio está basada en efectuar comparaciones entre las condiciones de
caso y su alternativa similar (condiciones múltiples utilizando comparaciones de igualdad),
la propuesta desarrollada tendría el siguiente resultado:

17
Observe que el uso de esta técnica permite simplificar las comparaciones de igualdad
entre un dato y múltiples alternativas coincidentes, analice las siguientes interrogantes
complementarias.

¿Qué datos entran a ser procesados?


El algoritmo solicita dos datos, uno representa la categoría y el otro representa las horas
trabajadas Horas_Trab.

¿Qué resultados muestra?


Mostrará el sueldo del empleado.

¿Qué condiciones se presentan en el proceso?


Presenta una condición general y cuatro comparaciones, la condición verifica el valor de
la categoría con cada caso; funciona verificando de la siguiente forma: si coincide la
comparación con el primer caso (Categoría=1), significa que el valor de la hora es de
$12.78 y lo multiplica por el valor de la variable Horas_Trab; si no se cumple, verifica el
segundo caso o comparación, chequea si la categoría es la segunda (Categoría=2), si
coincide, el valor de la hora es de $10.25 y lo multiplica por el valor de la variable
Horas_Trab, si no se cumple esta comparación, verifica si coincide con el tercer caso
(Categoría=3) lo que significa que el valor de la hora es de $8.78 y lo multiplica por el valor
de la variable Horas_Trab, si no es este el caso, verifica la siguiente comparación, si la
categoría es la cuarta (Categoría=4), significa que el valor de la hora es de $6.00 y lo
multiplica por el valor de la variable Horas_Trab, por el caso contrario asumirá que la
categoría es la quinta sin necesidad de verificar el caso, esto significa que el valor de la
hora es de $4.80 y lo multiplica por el valor de la variable Horas_Trab.

3.3. Definiciones generales de control y evaluación de resultados

La aplicación de instrucciones que necesitan ser repetidas y a la vez controladas en las


diferentes secuencias lógicas que se aplica en los algoritmos y programas en general,
requiere definitivamente de técnicas que ayuden de forma específica a redactarlas e

18
incluirlas de tal forma que se puedan utilizar en cualquier propuesta de algoritmo que se
lo requiera, las siguientes definiciones explican el uso del conteo que ya se aplicó de forma
general en ejercicios desarrollados anteriormente en la sección de los algoritmos
naturales; además se explica el uso de las pruebas de escritorio para entender la lógica
aplicada en los diferentes algoritmos para resolver un problema.

3.4.1.Aplicación de contadores y acumuladores como técnicas de control

El uso de contadores es una técnica que permite incrementar/decrementar de forma


consecutiva el contenido de una variable, de tal forma que se puedan generar secuencias
constates; por ejemplo, suponga que se tiene las variables “turno, paso y tique”, imagine
que a estas variables se les asigna un valor inicial que servirá de base para el
incremento/decremento, al aplicar técnicas de conteo sus valores iniciales cambiarían de
tal forma que su valor base se incrementa/ decrementa, observe los siguiente incrementos
aplicados a las tres variables:

El paso número uno asigna un valor base a cada variable, al momento de aplicar el paso
número dos de cada ejemplo, sus contenidos variarán de la siguiente forma: el valor base
de la variable “turno” será de 2; el valor base de la variable “paso” será de 3 y el valor
base de la variable “tique” será de 5, ahora suponga que se vuelve a repetir las mismas
instrucciones del paso número 2, el contenido variará de la siguiente forma:

● “turno” que actualmente vale 2 al incrementarse en 1, el resultado se almacenará


en la misma variable quedando en 3.
● “paso” que actualmente vale 3 al incrementarse en 2, el resultado se almacenará
en la misma variable quedando en 5.
● “tique” que actualmente vale 5 al incrementarse en 5, el resultado se almacenará
en la misma variable quedando en 10.

Estas instrucciones al utilizarlas en procesos repetitivos, el contenido base de cada


variable se incrementará de forma sucesiva conforme se repitan permitiendo al
19
programador disponer de un dato para controlar el límite de repeticiones en cualquier
algoritmo; es importante recalcar que la secuencia de incremento/decremento también se
la aplica con la misma utilidad a las operaciones aritméticas como la sustracción,
multiplicación o división entendidos como cálculos técnicos para el incremento o
decremento del valor base de la variable, observe los siguientes ejemplos que sirven de
modelo para aplicar incrementos/decrementos:

En el ejemplo 1 se produce un decremento en uno, es decir al ser repetitivo este proceso


el valor base de la variable “turno” disminuirá de uno en uno, en el caso de la variable
“paso” el proceso consistiría duplicarse el valor base de la variable cada vez
que se repitiera, y por último el valor base de la variable “tique” decrementará o se reducirá
a la mitad cada vez que se repite la instrucción.

Como complemento estratégico de estas técnicas de control, se considera el término


acumulador, que técnicamente se aplica igual que un contador, la diferencia radica en la
cantidad utilizada en la operación de incremento, es decir un contador realiza los cálculos
con un valor fijo, que puede ser de uno en uno o de dos en dos o utilizando cualquier otro
número para el incremento/ decremento pero de forma fija; el acumulador se incrementa
utilizando diferentes valores en cada repetición, el uso de acumuladores se lo evidenciará
con mayor detalle en los siguientes algoritmos que se utilizarán como ejemplos.

3.4 .2 Pruebas de funcionamiento o pruebas de escritorio

Está claro que el uso de instrucciones pseudocodificadas al desarrollar algoritmos, ayuda


mucho en la comprensión y análisis de las diferentes secuencias lógicas utilizadas para
resolver un problema, pero a pesar de esto, existen soluciones con propuestas complejas
que necesitan de la experimentación o la prueba escrita (poner en práctica instrucción por
instrucción), esto con la finalidad de dar seguimiento a las instrucciones presentadas en
los diferentes algoritmos, es decir se necesita obedecer o aplicar las instrucciones
20
expuestas una por una, de forma que se pueda concluir si los resultados obtenidos son o
no los que resuelven el problema; para lograr esta práctica se utilizan datos reales o
ficticios en todas las variables que utiliza el algoritmo e ir cambiando los valores bases
conforme las instrucciones así lo disponga, la técnica recomienda crear una tabla, en la
cual las columnas serán los nombres de todas las variables utilizadas en el algoritmo, y
en las filas se escriben los valores base o contenidos que ellas toman conforme a la
secuencia aplicada paso a paso.

Bibliografía

Gabriel, D., Maricela, P., Rodolfo, G., Miguel, R., & Darwin, L. (2018). Desarrollo práctico
de la Programación (N. Pelegrín & F. Henry (eds.); Diana Zava). Ediciones UTM-
Universidad Técnica de Manabí.
https://www.utm.edu.ec/ediciones_utm/compon29ent/content/article/24-
libros/709- desarrollo-practico-de-la-programacion?Itemid=101
Rodríguez, J. S. (2003). Introducción a la programación. España: Club Universitario

DIRECTRICES GENERALES DE UNIDAD


La siguiente tabla muestra las actividades a realizar en la Unidad 2 y las fechas máximas
(cierre) para el cumplimiento. Las actividades de aprendizajes autónomo no se incluyen
en la tabla, pero se detallan en la guía.

CRONOGRAMA DE ACTIVIDADES – SEGUNDA UNIDAD


FECHA/HORA PUNTAJE
ACTIVIDADES APERTURA CIERRE CADA
00H00M 23H55M ACTIVIDAD

COMPONENTE DE APRENDIZAJE TEST DE LA


29/08/2022 11/09/2022 4 PUNTOS
DOCENCIA COLABORATIVO UNIDAD No. 3

COMPONENTE DE PRÁCTICAS DE CRUCIGRAMA


29/08/2022 11/09/2022 7 PUNTOS
APLICACIÓN Y EXPERIMENTACIÓN UNIDAD No. 3

21
ACTIVIDADES A DESARROLLAR EN LA UNIDAD

La presente guía didáctica plantea el desarrollo de actividades que contribuirán al


aprendizaje integral de los contenidos propuestos en cada uno de los ejes temáticos que
corresponden a la presente unidad. Ante lo expuesto, los estudiantes deberán:

COMPONENTE: APRENDIZAJE AUTÓNOMO

ACTIVIDAD No. 1 (Autoaprendizaje)

Revisión de material didáctico

Desarrollar lectura comprensiva e inferencial, observación y escucha de resolución de


ejercicios resueltos y de aplicación activa de documentos y materiales audiovisuales a los
cuales podrán acceder mediante enlaces compartidos en la parte final de esta descripción.
Los contenidos expuestos en cada uno de estos elementos serán considerados en el Test
y el Crucigrama de la Unidad 3.

RECURSOS
1. Preámbulo del
pseudocódigo aplicado a https://www.youtube.com/watch?v=3o1831m0UZI
los algoritmos naturales

https://www.youtube.com/watch?v=K8N0c62_4Wc

2. Aplicación de condiciones https://www.youtube.com/watch?v=gwhDo6L_T4s


simples, múltiples y casos
utilizando https://www.youtube.com/watch?v=af32A8hSUHg
pseudocódigo
https://www.youtube.com/watch?v=94rCixEbEIM

https://www.youtube.com/watch?v=LE_HHcfru6g
3. Aplicación de contadores
y acumuladores como https://www.youtube.com/watch?v=1UWfLd7DccA
técnicas de control

4. Prueba de Escritorio a
https://www.youtube.com/watch?v=p1QOHEn9u4U
programa con Sentencias de
decisión simple
22
COMPONENTE: DOCENCIA.

ACTIVIDAD No. 2 (Calificada)

Test de la Unidad No. 3

Ejecutar la evaluación en la plataforma aula virtual. Serán considerados los contenidos de


la guía de estudio de la Unidad 3 y del material de autoaprendizaje, el test ponderará con
3 puntos en el parámetro de Aprendizaje Autónomo.

Fechas de inicio: 29 de agosto del 2022

Fecha de cierre: 11 de septiembre del 2022

Número de preguntas: 10

Puntaje por pregunta: 0.4 ptos.

Tiempo: 20 minutos

Número de intentos: 1

COMPONENTE: PRACTICAS DE APLICACIÓN Y EXPERIMENTACIÓN.

ACTIVIDAD No. 3 (Calificada). Juego: Crucigrama de la Unidad No. 3

Realizar el crucigrama presente en la plataforma aula virtual dentro del plazo establecido.
Serán considerados los contenidos de la guía de estudio de la Unidad 2 y de las
actividades; el crucigrama ponderará con 7 puntos en Prácticas de Aplicación y
Experimentación.

Fechas de inicio: 29 de agosto del 2022

Fecha de cierre: 11 de septiembre del 2022

Número de palabras: 7

Tiempo: 15 minutos

Número de intentos: 1

23

También podría gustarte