Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Propedeutico PDF
Propedeutico PDF
Pág.
1. INTRODUCCIÓN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
2. INTRODUCCIÓN A LOS ALGORITMOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.1. Algoritmos cotidianos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.1.1. Torta. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.1.2. Orden de enchiladas (quesadillas). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.1.3. Cambiar un foco. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2. Definición de problemas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2.1. Leer y comprender el problema. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2.2. Identificar entradas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2.3. Identificar salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.2.4. Identificar proceso. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.2.5. Identificar datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. EXPRESIONES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.1. Operadores aritméticos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2. Expresiones matemáticas simples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.3. Jerarquía de operadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.4. Funciones matemáticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.5. Expresiones matemáticas combinadas con funciones matemáticas . . . . . . . . . . . . 9
3.6. Ejercicios de evaluación de expresiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
4. ALGORITMIA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
4.1. Definición de algoritmo y características. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
4.2. Diseño del algoritmos con pseudocódigos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
4.3. Proceso de un programa en la computadora. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
4.4. Ejercicios sencillos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
5. MEMORIA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
5.1. Localidades (tamaño y dirección) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
5.2. Tipos de datos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
5.3. Asignación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
6. DECISIONES. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
6.1. Operadores relacionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
6.2. Operadores lógicos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
6.3. Decisiones simples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
6.4. Decisiones anidadas (complejas) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
6.5. Decisiones múltiples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
6.6. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
7. CICLOS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
7.1. Ciclos contados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
7.2. Ciclos condicionados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
8. Anexo A. Sintaxis para el Pseudocódigo utilizado en el diseño de algoritmos. . . 34
1
1. INTRODUCCIÓN
Para cursar la Ingeniería en Sistemas Computacionales es necesario que el aspirante tenga
habilidad lógico-matemática, que generalmente ha ido adquiriendo conforme avanzó en sus
estudios de nivel medio superior.
Por otra parte, independientemente del antecedente académico que haya adquirido el aspirante,
es necesario que conozca aspectos básicos del desarrollo de algoritmos y de una manera
general, que aplique sus habilidades del pensamiento para encontrar lo esencial de un
problema y lo resuelva utilizando la computadora sin importar que tenga conocimientos o no
de algún lenguaje de programación
Como puede leerse en el objetivo del curso, se desea que el aspirante desarrolle su capacidad
de razonamiento lógico para resolver problemas usando la computadora. Para ellos se dividió
su contenido de acuerdo a lo que se indica enseguida.
El capítulo 5 cubre el tema de memoria, que sin incluir conocimientos técnicos de electrónica
digital, se aprenderá a relacionar lo que físicamente es la memoria, con los datos que maneja
un programa cuando se ejecuta.
En el capítulo 7 se aprenderá a identificar los diversos tipos de ciclos para elegir el apropiado
y codificarlo en el algoritmo que representa la solución del problema.
El capítulo 8 incluye diversos problemas que el aspirante puede resolver por su cuenta
aplicando los conocimientos y habilidades que ha ido adquiriendo en el presente curso.
1
2. INTRODUCCIÓN A LOS ALGORITMOS
2.1. Algoritmos cotidianos
2.1.1. Torta
1. Tomar el pan.
2. Partirlo a la mitad.
3. Untarle la mayonesa.
4. Poner una rebanada de jamón.
5. Rebanar un jitomate.
6. Poner el jitomate encima del jamón.
7. Rebanar una cebolla.
8. Poner la cebolla encima del jitomate.
9. Tapar la torta.
10. Comerla.
¿De qué nos damos cuenta en este pequeño ejemplo? Si reflexionamos un poco, muchas de las
actividades que realizamos diariamente pueden ser traducidas a pasos, ¿Cómo? Sí, para
realizar actividades como vestirse, peinarse, comer, ir a la escuela o cualquier otra podemos
escribirlas en pasos consecutivos. Piensa en qué actividades realizas cotidianamente y que las
puedes describir en una serie de pasos a seguir.
Los pasos necesarios para preparar unas quesadillas, pueden ser los siguientes:
2
2.1.3. Cambiar un foco
Se pueden identificar las entradas: foco nuevo y escalera, así como la serie de pasos que lo
componen. Se puede decir, que se tiene un orden lógico hasta llegar al final. El elemento de
salida en este caso es la luz prendida. Eso es lo que se espera al final del algoritmo.
¿Qué sucede cuando se cambia alguno de los pasos?, ¿qué sucede si se omiten pasos?, ¿cómo
empezar un algoritmo y cómo terminarlo?, ¿cuáles serían los resultados y cómo seguir los
pasos?
Para resolver un problema se requiere seguir una serie de pasos que comienza con la
definición y comprensión del problema y conduce a la resolución de mismo, hasta llegar a la
implantación del programa.
Este proceso inicia cuando surge la necesidad de resolver algún problema mediante la
computadora. Se debe identificar el problema y comprender la utilidad de la solución que se
pretende alcanzar. Se debe tener una visión general del problema estableciendo las
condiciones iniciales (datos de entrada) y además los límites del problema, es decir, donde
empieza y donde termina (el proceso a seguir). Así como también la salida y resultado
esperado (datos de salida).
Es necesario entender en detalle el problema para obtener una radiografía en término de los
datos disponibles como materia prima, es decir, los datos de entrada y así definir el proceso
necesario para convertir los datos en la información requerida. Identificar los datos de entrada
3
requiere que se analice a fondo qué se necesita para poder encontrar una solución al problema
y cuáles son los datos indispensables que se requieren como datos iniciales.
Las salidas o datos de salida se presentan una vez que ha finalizado el proceso y se ha llegado
a la solución del problema, se requiere desde el principio saber cuáles son esos datos de salida
para poder verificar en el proceso que no se vaya a perder o cambiar alguno de estos datos.
Una vez que se tienen identificados tanto los datos de entrada como de salida se requiere
conocer cuál es el proceso que se debe seguir para solucionar el problema. Consiste en una
serie de pasos que permitirán llegar al resultado esperado. Estos pasos no deben omitirse o de
lo contrario se perderá la solución esperada.
Ejercicios:
Desarrolla un algoritmo para realizar una llamada telefónica desde un teléfono público.
Desarrolla un algoritmo para hacer palomitas de maíz en un horno de microondas.
4
3. EXPRESIONES
Las operaciones aritméticas fundamentales permiten modificar la apariencia de los datos para
generar información; en otras palabras, procesar los datos que entran como materia prima para
convertirlos en información que saldrá de la computadora.
La tabla 3.1 muestra los operadores aritméticos que se pueden utilizar para realizar
operaciones aritméticas:
Nota:
Ejemplos:
5
En donde:
Las expresiones aritméticas deben escribirse en una línea para que puedan introducirse a la
computadora. La forma en que se escribe una expresión determina la forma en que será
evaluada. Por ejemplo, la expresión matemática:
𝑥+𝑦
𝑁=
𝑦−1
n = (x+y) / (y-1)
1. Operaciones entre paréntesis. Primero busca lo que está entre paréntesis y lo evalúa.
En caso de haber paréntesis anidados, evalúa primero los más internos y luego
prosigue con los externos.
2. Operaciones Unarias. A continuación se evalúan las operaciones unarias, es decir, de
cambio de signo. Ejemplo a -4 le cambia el signo a 4.
3. Multiplicación y división. Posteriormente evalúa las operaciones de multiplicación y
división, las cuales tienen el mismo nivel de precedencia.
4. Suma y resta. Estas operaciones se evalúan al final, ya que tienen el más bajo nivel de
precedencia.
Nota 1: Cuando existen varias operaciones de un mismo nivel, se evalúan en orden de
izquierda a derecha.
Nota 2: en el ejemplo se encerraron entre paréntesis las operaciones (x+y) y (y-1) para
cerciorarse de que se hiciera primero la suma, luego la resta y por último la división. Si la
expresión se hubiera escrito n = x+y / y-1, estaría incorrecta, porque la computadora
primero haría la división de y/y, luego la suma y después la resta, lo que arrojaría un
resultado incorrecto.
6
Ejemplos de evaluación de expresiones:
14
4. ( 9 + 3 ) * 5 / 4 mod 7 + 1 paréntesis
12 * 5 / 4 mod 7 + 1 multiplicación
60 / 4 mod 7 + 1 división
15 mod 7 + 1 módulo
1+1 suma
2
5. x – ( A + B / 2) + y * z
En la tabla 3.2 se muestran algunos ejemplos de cómo escribir una fórmula matemática a una
expresión aritmética, considerando la jerarquía de los operadores.
7
Fórmulas matemáticas Expresión aritmética
𝑎 = 𝑏𝑐 a=b*c
𝑏 2 – 4𝑎𝑐 b*b–4*a*c
𝑦2 − 𝑦1 m = (y2 – y1) / (x2 – x1)
𝑚=
𝑥2 − 𝑥1
𝑥+𝑦−𝑧 x+y-z
𝑥+𝑦 (x + y) / (z + w)
𝑧+𝑤
5 5 / (1 + x * x)
1+ 𝑥 2
𝑌 x=a+b–y/z
𝑋 =𝐴+𝐵−
𝑍
𝐴𝐶 𝐵 w=(a*c/d)+b/c
𝑊= +
𝐷 𝐶
𝑇 𝑌−2 +𝑅 z=(t*(y–2)+r)/s
𝑍=
𝑆
𝐶𝐸 − 𝐵𝐹 x = (c*e - b*f) / (a*e - b*d)
𝑋=
𝐴𝐸 − 𝐵𝐷
9 f = 9 / 5 * c + 32
𝐹 = 𝐶 + 32
5
Tabla 3.2 Conversión de funciones matemáticas a expresiones aritméticas
Función Significado
SEN(X) Seno de X
COS(X) Coseno de X
ATAN(X) Arcotangente de X
8
Ejemplos:
𝑎=𝑏− 𝑐 a = b – RC(c)
𝑏 =|𝑎| b = ABS(a)
𝑦 = 𝑠𝑒𝑛(𝑥) y = SEN ( X )
Los operadores matemáticos pueden combinarse con las funciones matemáticas, cómo puede
apreciarse en los siguientes ejemplos:
9−4 e = RC(9 - 4) / 3
e= 3
1 − cos 𝑎 v = (1 – cos(a)) / 2
𝑣=
2
𝑎 = 𝜋𝑛2 a = 3.1416 * n * n
a. 15 * 14 – 3 * 7 b. –4*5*2
c. (24 + 2 * 6) / 4 d. a * b + 7 * 8 donde a = 5 y b = 8
e. 3 + 4 * (8 * (4 – (9 + 3) / 6)) f. 4*3*5+8*4*2-5
g. 4 – 40 / 5 h. (- 5) / (- 2)
𝑥 𝑏 𝑥𝑦
a. + 1 b. c.
𝑦 𝑐+𝑑 1−4𝑍𝑥
𝑥+𝑦 𝑐 𝑥𝑦
d. e. 𝑎+𝑏 f.
𝑥−𝑦 𝑑 𝑚𝑛
𝑦 2 2
𝑥+
𝑧 h. [(𝑎 + 𝑏 )] i. (𝑥 + 𝑦)2 (𝑎 − 𝑏)
g. 𝑦
𝑥−
𝑧
9
4. ALGORITMIA
“La Algoritmia es la ciencia que estudia técnicas para diseñar algoritmos eficientes y
evaluar la eficacia de un algoritmo”.
Ver anexo A.
El proceso de resolución del problema, incluye el análisis del problema así como el
diseño y verificación del algoritmo.
10
4.4 Ejercicios sencillos
1. Diseñar algoritmo que lea cinco números y calcule e imprima el producto, su suma
y media aritmética.
Proceso Producto_Suma_Media
Definir a, b ,c, d, e, Producto, Suma como Entero;
Definir media como Real;
Leer a, b, c, d, e;
Producto = a * b * c * d * e;
Suma = a + b + c + d + e;
Media = (a + b + c + d + e) / 5;
Escribir Producto, Suma, Media;
FinPoceso
2. Diseñar un algoritmo que calcule la distancia recorrida (m) por un automóvil, que
tiene una velocidad constante (m/s) durante un Tiempo (seg.).
Proceso Distancia_Recorrida
Definir Tiempo, Velocidad, Distancia como Entero;
Leer Velocidad, Tiempo;
Distancia = Velocidad * Tiempo;
Escribir Distancia;
FinProceso
Proceso salario
Definir nombre como Cadena;
Definir SalarioxHora, SMes como
Definir HorasT como Flotante;
Leer nombre, SalarioxHora, HorasT;
SMes = SalarioxHora * HorasT;
Escribir nombre, SMes;
FinPeoceso
4. Diseñar un algoritmo que lea el peso de una persona en libras e imprima su peso en
kilogramos y gramos (una libra equivale a 0.454 kilogramos).
11
7. Diseñar un algoritmo que permita convertir grados a radianes y diseñar otro
algoritmo que convierta de radianes a grados. Dar a conocer el resultado de dichas
conversiones.
Radianes = ¶/180 X grados Grados = 180/¶ X radianes
10. Diseñar un algoritmo que lea la cantidad de dólares que se va a comprar y el tipo
de cambio en pesos (costo de un dólar en pesos). Calcular e imprimir la cantidad
que se debe pagar en pesos por la cantidad de dólares indicada.
[2] Luis Joyanes Aguilar, Luis Rodríguez Baena y Matilde Fernández Azuela. Fundamentos
de Programación. Mc. Graw Hill.
12
5. MEMORIA
Sin perder de vista el objetivo principal del curso, en este tema se tocará la memoria de la
computadora y la relación que existe entre ella y los datos que puede manejar cualquier
programa que se ejecutará en dicha computadora.
La memoria es una de las partes internas más importantes de la computadora. Está formada
por un conjunto de circuitos electrónicos en la cual se almacena el programa que está en
ejecución, los datos que requiere para trabajar así como los resultados obtenidos. Dado que
está formada por circuitos electrónicos, éstos requieren energía eléctrica para trabajar, por lo
tanto, cuando la energía se desconecta (o se apaga la computadora) lo almacenado en la
memoria desaparece. A lo anterior se le llama memoria volátil.
La memoria está compuesta por localidades, todas ellas del mismo tamaño. Una localidad es
un espacio físico de la memoria para almacenar un byte (mas adelante en una materia del plan
de estudios se aprenderá todo lo relacionado con el byte).
La figura 5.1 representa un esquema de la memoria. Como puede observarse, cada rectángulo
representa una posición de memoria y cada uno de ellos su tamaño es idéntico a los demás.
localidad dirección
n
n-1
n-2
9
8
7
6
5
4
3
2
1
0
Figura 5.1. Esquema de la memoria
13
En cada posición de memoria se puede almacenar un dato. En la parte derecha del dibujo
existe una serie de números consecutivos que inician en 0 y concluyen en n. Dicho número se
utiliza para identificar cada una de las posiciones de memoria y diferenciarla de las demás. A
dicho número se le denomina dirección. Así por ejemplo: la posición marcada con 9 es la
dirección 9 en la cual se puede almacenar un dato, 5 es otra y n-2 es otra dirección de
memoria. La capacidad de memoria de una computadora está limitada por los circuitos
electrónicos que conforman dicha memoria. Es obvio pensar que una computadora que tiene
más capacidad de memoria es más costosa que otra que tenga menos, debido que posee más
circuitos electrónicos para conformarla. Por ello la capacidad de memoria es en sí la cantidad
de localidades que pueda tener. Dado por N (ver la figura) que representa la dirección
máxima. Así por ejemplo, si una computadora tiene 230 localidades de memoria
(1073‟741,824) en realidad tiene una capacidad de 1 Gigabyte. Dicha capacidad, en la
actualidad es suficiente para una computadora portátil pequeña.
Como se mencionó, un programa de computadora, para trabajar con sus datos y obtener
resultados utiliza direcciones de memoria (números) para almacenar dichos datos. Para las
personas es más difícil aprender números que aprender nombres. Por esa razón en los
programas de computadora no será necesario utilizar direcciones de memoria tales como son
(números), en su lugar se utilizan variables. Esa es la importancia de las variables, manejan los
datos de una forma sencilla dentro de los programas sin utilizar de manera directa las
direcciones de memoria. Dichas variables las utiliza el programador en las líneas de código del
programa para hacer referencia a los datos almacenados en la memoria.
Para cualquier programa, existen diversos tipos de datos, entre los cuales los más utilizados
son numéricos, caracteres y cadenas. Otros mas que se utilizan con menos frecuencia pero que
son muy importantes son los lógicos y punteros entre otros (también estos datos se aprenderán
en una materia de primer semestre). Para efectos de facilitar la comprensión de estos temas
solamente se hará mención de números sin fracción (todos enteros).
Los datos numéricos, como su nombre lo dice son números, mismos que pueden ser de varios
tipos.
Si se habla de la edad de una persona, pues se utiliza un número que puede estar en un rango
de 0 a 150 (dado que se está afirmando que no hay personas que puedan tener edad mayor a
150). Otro ejemplo puede ser si consideramos un taller mecánico, en el cual para facilitar la
administración del propio taller a cada empleado que trabaja ahí se le asigna un número, si el
taller tiene muy pocos empleados (menos de 100), pueden usarse números de 1 a 99.
Si ahora se considera el dinero que maneja el propio taller mecánico para cobro de las
reparaciones, es posible que una reparación llegue cerca de los 100,000 pesos, entonces aquí
se utilizan números más grandes, que quizás puedan llegar a ser hasta 99,999 pesos.
Otro ejemplo diferente puede ser para aplicaciones de los astrónomos que manejan distancias
de millones de kilómetros. En este caso se usarán número más grandes.
14
Existen datos considerados como tipo carácter, mismo que se explican aquí. Haciendo
referencia al taller mecánico de un ejemplo anterior, y suponiendo que para llevar el control
administrativo de dicho taller, es necesario considerar datos de los empleados (mismos que
tienen un puesto a desempeñar, como pueden ser velador, recepcionista, contador, mecánico,
etc.) Si se registra el sexo de cada persona se puede usar una letra, para tal efecto por ejemplo
M para masculino y F para femenino. En este caso un dato que puede ser manejado por una
sola letra, se le denomina dato tipo caracter.
En conclusión, dependiendo del problema se identifican los datos y para cada dato debe
identificarse que tipo es, según sus valores posibles.
Ahora surge la pregunta, ¿Cómo es que una variable representa un dato?. Suponiendo que el
programa requiere manejar el dato sexo una letra), entonces se utiliza una variable, que en este
ejemplo se le llama s. Entonces, cada vez que en el programa se use la variable s, se hace
referencia a una dirección de memoria en la cual estará almacenada el valor (que como se
mencionó puede ser F o M). Cuando un programa se ejecuta, ya se asignó usan dirección de
memoria para la variable s, en este caso se supone que es la dirección 8. El programador no
necesita saber que en la dirección 8 está almacenada la letra que representa el sexo, para él,
solo es importante saber que la variable es s y cada vez que se utilice dicha variable está
haciendo referencia a la dirección 9. Entonces significa que no es necesario que el
programador conozca que en la dirección 9 (posición 9) se almacena la letra correspondiente
al sexo.
En conclusión, para cada tipo de datos que maneja el programa se utiliza una variable y cada
variable representa una posición de memoria en la cual se almacena el dato.
5.3. Asignación
El hecho de que esas tres variables se utilicen en un programa que haga el cálculo, significa
que hay una dirección de memoria en la cual se almacenará el valor de b, en otra el valor de h
y una más (para la variable a ) para almacenar el resultado, sin embargo en el programa se
usarán las variables que pueden tener valores diferentes cada vez que se ejecute el programa.
15
La expresión que calcula el área es la siguiente:
b*h/2
Esa expresión se interpreta de la siguiente forma: el valor que tenga b se multiplica por h y el
resultado se divide entre 2. El resultado final obtenido de la expresión es necesario
almacenarlo en la memoria mientras el programa sigue en ejecución. La necesidad de
almacenarlo es para usarlo posteriormente, por ello se definió una localidad de memoria
llamada a. la ecuación queda de la siguiente manera:
a = b*h/2
X = Y
L = 18
16
6. DECISIONES
Las estructuras lógicas selectivas se encuentran en la solución algorítmica de casi todo tipo de
problemas. Se utilizan cuando en el desarrollo de la solución de un problema se debe tomar
una decisión, para establecer un proceso o señalar un camino alternativo a seguir.
Esta toma de decisión se basa en la evaluación de una o más condiciones que señalarán como
alternativa o consecuencia la rama a seguir. Para reconocer esta toma de decisiones en la vida
diaria, se pueden hacer los siguientes ejercicios:
1. Resuelve los siguientes laberintos, mostrados en las figuras 6.1 y 6.2, pensando en las
decisiones que se tomaron para ir por un camino u otro.
17
Figura 6.2 Laberinto 2
2. Describe las opciones y las decisiones que realizas a diario para llegar desde tu casa al
curso de Inducción en el Tecnológico.
18
6.1. Operadores relacionales
Los operadores relacionales son operadores que permiten comparar dos operandos. Los
operandos pueden ser números, alfanuméricos, constantes o variables. Las constantes o
variables a su vez, pueden ser de tipo entero, real, carácter o cadena de caracteres. El resultado
de una expresión con operandos relacionales es verdadero o falso.
En la tabla 6.1 se presentan los operadores relacionales, la operación que pueden realizar, un
ejemplo de su uso y el resultado de dicho ejemplo.
Tec = H < 3 da lugar a que la variable Tec adquiera valor verdadero si H es menor que tres, o
falso si H no es menor que tres.
EXPRESIÓN EVALUACIÓN
A>B Falso
A<B Verdadero
A >= B Falso
A <= B Verdadero
B>A Verdadero
A–B>0 Falso
A+B>0 Verdadero
Res = A > B Falso es almacenado en la variable Res
(A / B) * B <> A No es factible de evaluar
A <> B Verdadero
A==B Falso
Si se piensa en que una computadora, a efectos matemáticos, funciona como una calculadora,
se puede hacer en la casa la siguiente experiencia:
1. Con una calculadora no científica, dividir 2 entre 7. Una calculadora con 8 dígitos
devuelve el resultado con 7 decimales como 0,2857142. A continuación se multiplica el
resultado por 7 y se obtiene 1,9999994.
2. Con una calculadora más avanzada se puede obtener un resultado de 2/7 con más
decimales y un valor final igual a 2. Pero con esta misma calculadora se puede dividir 1
entre 3, obtener un valor 0,3 periódico y luego multiplicar por 3 para obtener
0,999999999.
En definitiva, una computadora no trabaja con infinitos decimales y puede dar lugar a
resultados inesperados. Estos casos habrán de ser previstos por el programador, que tomará las
medidas que estime convenientes. La forma de operar de las computadoras o las características
del lenguaje que se esté utilizando en un momento dado pueden dar lugar a aparentes fallos o
resultados inesperados. No son muy habituales pero conviene tener en cuenta que pueden
aparecer. A estos “resultados inesperados” se les llama paradojas. El caso de (A / B) * B <> A
se le denomina “paradoja de los decimales finitos”. Conocer las paradojas de un lenguaje y
manejarlas a su antojo es un hobby para muchos programadores.
Ejemplos
20
2. Si se evalúa una expresión más larga quedaría de la siguiente manera:
A = 10
B = 5
(A * 2 – 4) >= (B * 3 + 6)
(10 * 2 – 4) >= (5 * 3 + 6)
(20 – 4) >= (15 + 6)
16 >= 21
FALSO
3. (6 * 5 + 20 / 4) <= (6 ^ 3 div 7)
(30 + 20 / 4) <= (216 div 7)
(50 / 4) <= 30
12.5 <= 30
VERDADERO
Los operadores lógicos son operadores que permiten formular condiciones complejas a partir
de condiciones simples. Los operadores lógicos son de conjunción (y), disyunción (o) y
negación (no). En la tabla 6.3 se presenta el operador lógico, la expresión lógica y significado
de dicha expresión, teniendo en cuenta la jerarquía correspondiente.
OPERADOR EXPRESIÓN
JERARQUÍA SIGNIFICADO
LÓGICO LÓGICA
NO P
No P No es cierto que P
NO (mayor)
Es FALSO que P
PoQ
(menor)
PoQ o P o Q o ambas
O
Mínimo P o Q
P Q ~P ~Q PoQ PyQ
VERDADERO VERDADERO FALSO FALSO VERDADERO VERDADERO
VERDADERO FALSO FALSO VERDADERO VERDADERO FALSO
FALSO VERDADERO VERDADERO FALSO VERDADERO FALSO
FALSO FALSO VERDADERO VERDADERO FALSO FALSO
21
En resumen:
Los operadores lógicos combinan condiciones, según el tipo de operador se deberá cumplir
una u otra función. En la tabla 6.5 se describe el significado de los operadores.
OPERADOR SIGNIFICADO
AND Almacenara True, sólo si todos las condiciones son verdaderas
OR Almacenara True, sólo si alguna de las condiciones es verdadera
NOT Cambia el valor al contrario
Tabla 6.5 Significado de los operadores lógicos
Ejemplos
Para entender mejor el para qué sirven estos operadores se presentan unos ejemplos y su
resolución:
(5 > 3) y (8 < 4)
VERDADERO y FALSO
Resultado: FALSO
(5 > 3) y (4 < 8)
VERDADERO y VERDADERO
Resultado: VERDADERO
(5 > 3) o (8 < 4)
VERDADERO o FALSO
Resultado: VERDADERO
(5 < 3) o (8 < 4)
FALSO o FALSO
Resultado: FALSO
NO (5 < 3)
NO FALSO
Resultado: VERDADERO
2. NO (15 > 7 * 2)
NO (15 > 14)
NO VERDADERO
Resultado: FALSO
3. (7 + 5 – 6) > (9 + 7 * 8 – 36 / 5)
(12 – 6) > (9 + 56 – 36 / 5)
6 > (9 + 56 – 7.2)
6 > (65 – 7.2)
6 > 57.8
Resultado: FALSO
22
4. ((9+4 * (5-3)) < (10/2+20)) O (((8 * 3+12) –5 * 4) > (7 * 4/2))
((9 + 4 * 2) < (5 + 20)) O (((24 + 12) – 20) > (28 / 2))
((9 + 8) < 25) O ((36 – 20) > 14)
(17 < 25) O (16 > 14)
VERDADERO O VERDADERO
Resultado: VERDADERO
Una decisión simple tiene una rama de entrada con una sola entrada y dos ramas de salida con
una salida cada una. Cuando se ejecuta el proceso, el flujo del proceso toma una rama de
salida si una determinada condición es verdadera y la otra rama si la misma condición es falsa.
La decisión selecciona la salida según los datos de entrada.
Ejemplos
Proceso Calificaciones
Leercal;
Sical> 6 Entonces
Escribir “Aprobado”;
FinSi
FinProceso
2. Dado como dato el sueldo de un trabajador, aplíquele un aumento del 15% si su sueldo es
inferior a $1000. Imprima en este caso, el nuevo sueldo del trabajador.
Proceso Sueldo
LeerSue;
SiSue< 1000 Entonces
Aum = Sue * 0.15;
Nsue = Sue + Aum;
EscribirNsue;
FinSi
FinProceso
23
Ejercicios propuestos:
Las decisiones a veces tienen más de un camino, es decir cuando se tienen dos opciones de
alternativas de acción y por la naturaleza de éstas, se debe ejecutar una o la otra pero no ambas
a la vez, es decir son mutuamente excluyentes.
Por ejemplo:
Proceso Compara
A=5;
B=10;
Si (A>B) Entonces
Escribir “A es el mayor”;
Sino
Escribir “B es el mayor”;
FinSi
FinProceso
Pero a veces se necesitan seguir otros caminos una vez que ya se ha tomado uno de los dos
caminos principales, es decir, ya se tomó una alternativa, pero se deben tomar otras decisiones.
Ejemplo:
Se necesita calcular el sueldo de un empleado tomando en cuenta que las horas trabajadas
deben ser de 8 horas diarias de lunes a viernes. Además se debe tomar en cuenta que a la
semana son 40 horas. Una cantidad mayor, esta se calcula como horas extra, donde cada hora
extra se paga doble, pero si se trabajan más de 50 horas, las horas se deben pagar triple.
horastrabajadas, sueldoporhora
24
Como datos de salida:
Proceso Horas
Si (horastrabajadas<= 40) Entonces
sueldo = horastrabajadas * sueldoporhora;
Sino
Si (horastrabajadas<= 50) Entonces
sueldodoble = (40 * sueldoporhora) +
((horastrabajadas - 40) * (sueldoporhora *
2));
Sino
sueldotriple = (40 * sueldoporhora) +
((horastrabajadas – 50) * (sueldoporhora *
3));
FinSi
FinSi
FinProceso
Las decisiones anidadas se utilizan cuando se tienen dos alternativas para solucionar el
problema y además de cada vía posible se tienen otras posibles soluciones u opciones para
elegir una sola alternativa para resolver el problema.
Ejercicios propuestos:
25
6.5. Decisiones múltiples
Cuando se tienen más de dos opciones alternativas de acción, se debe tomar un solo camino
para resolver el problema. En este tipo de decisiones se tienen diversas alternativas y un solo
camino es el que debe tomarse. Esta estructura funciona de la siguiente manera: se presentan
varios caminos y se debe seleccionar uno solo de todos los posibles, se realiza la acción o
acciones correspondientes y se finaliza con la selección.
Ejemplo: leer el número de día y presentar el día correspondiente.
Proceso DiaSemana
Definir dia como entero;
Leer dia;
Según dia Hacer
1: Escribir “Domingo”;
2: Escribir “Lunes”;
3: Escribir “Martes”;
4: Escribir “Miércoles”;
5: Escribir “Jueves”;
6: Escribir “Viernes”;
7: Escribir “Sábado”;
De otro modo: Escribir “Dato erróneo”;
FinSegun
FinProceso
Ejercicios propuestos:
26
6.6. Ejercicios
1. A = 5 y B =1 6
(A ^ 2) > (B * 2)
2. ((5 * 4 - 8) + (18 / 3)) > ((4 * 6 - 7) + (2 * 5 + 6 /(3 * 3 - 7) ))
3. X=6
Y=7
(1580 mod X * 2 ^ Y) > (Y + 8 * X + (Y div 3))
4. Escribir si una persona es mayor de edad (mayor de 18), tomando como base la edad
proporcionada.
5. Escribir sólo el número mayor de dos números leídos.
6. Escribir si un estudiante es admitido en la Universidad o no con base a los promedios
que tenga en la preparatoria y del examen de admisión. El promedio mínimo es de 85.
Ejemplo: Promedio de la Preparatoria 85, calificación del examen de admisión 80, el
promedio es 82.5000 por lo tanto NO es admitido.
7. Presionar una tecla y escribir que tipo de tecla es, mayúscula, minúscula, dígito o
carácter especial.
8. Introducir los segundos y escribir a cuantas horas, minutos y segundos equivale.
9. Escribir a qué mes corresponde en número. Por ejemplo: número de mes 3 y equivale
al mes de Marzo.
10. Escribir qué tipo de alumno es según su calificación, considerando que si el alumno
tiene 100 se escriba EXCELENTE. Si tiene entre:
a. 90 y 99 MUY BUENO
b. 80 y 89 BUENO
c. 70 y 79 REGULAR
d. 60 y 69 MALO
e. 0 y 59 REPROBADO
27
7. CICLOS
Ciclo PARA
Este ciclo es uno de los más usados para repetir una instrucción o conjunto de instrucciones,
sobre todo cuando se conoce la cantidad exacta de veces que se quiere que se ejecute una o
más instrucciones.
<Instrucción(es)>
FinPara
Las instrucciones dentro de un ciclo resuelve el problema de repetir todo el programa o cierta
parte del programa más de una vez, ya que estas instrucciones se repiten cada vez en cada
pasada del ciclo.
Con el buen uso de este ciclo Para logramos que nuestros programas sean de una menor
cantidad de líneas y el tamaño del mismo al guardarlo sea también menor, por ejemplo si
necesitamos pedir el nombre dirección y teléfono de 45 personas tendríamos que poner 45
instrucciones para leer el nombre, otras 45 para pedir la dirección, y otro tanto igual para pedir
el teléfono, si hacemos uso de este ciclo solamente ponemos tres instrucciones que se repitan
45 veces y nuestro programa es mucho menor que el que resultaría de repetir las 3
instrucciones para cada una de las 45 personas.
28
Ejemplos del ciclo Para
Ejemplo Uno:
Proceso Promedio
acum=0
prom = acum/n
FinProceso
Ejemplo Dos:
Proceso Sumatoria
FinProceso
29
Ejercicio a desarrollar:
Anotar las líneas de código necesarias para obtener el valor factorial de un x número.
Valor del x = 5
5-1=4 y se multiplican
5x4=20
20*3=60
60 * 2 =120
Obsérvese que el valor de x se multiplica por x-1,x-2,x-3 y así consecutivamente, o sea las
veces que se multiplica es el valor de x-1.
Ciclo Mientras
La instrucción Mientras ejecuta una secuencia de instrucciones mientras una condición sea
verdadera.
Mientras<condición>Hacer
<instrucciones>
FinMientras
<condicion>: Permite que se realicen las instrucciones mientras que la condición sea
verdadera.
<instrucciones>: Representa el conjunto de actividades a realizar.
30
Ejemplo 1
Proceso refresco
Definircontador como entero
Inicializarcontador= 0
Elegir refresco
Mientrascontador< 9 Hacer
Depositar moneda
Incrementar contador en uno (contador=contador+1)
FinMientras
Tomar el refresco
FinProceso
Ejemplo 2
Se requiere enviar un mensaje de texto a través del celular, considera que ya se eligió el
contacto y que se presenta el cuadro de texto donde se escribirá el mensaje.
Proceso EnviarMensaje
Definir salida como entero
Inicializar salida= 0
Mientrassalida<> enviar Hacer
Entrar salida= caracter
Escribir salida
FinMientras
FinProceso
Ejemplo 3
Se quiere sumar los números comprendidos entre el 1 y el 100, es decir, el resultado de
1+2+3…+100
31
Proceso Suma
Definir s,i como entero
Inicializar s= 0
Inicializar i = 1
Mientrasi<= 100 Hacer
s = s+i
i = i+1
FinMientras
Escribir s
FinProceso
Ejercicios
o Hacer el cálculo de la suma de los números impares comprendidos entre el 0 y el 100
o Se requiere mostrar y contar los múltiplos de 7 que hay entre 1 y 700
o Mostrar la tabla de multiplicar del 1 al 10, elegida por el usuario.
Ejemplo: si el usuario elige la tabla 3, se debe representar 3 x 1 = 3, 3 x 2 = 6, etc.
32
En el cuerpo de las instrucciones debe haber alguna acción que cambie el estado de los
elementos que se evalúan en la Condición, para asegurar que el ciclo se terminará en algún
momento, de lo contrario se entraría en un ciclo infinito.
Ejemplo: Si un atleta va a hacer ejercicio en una pista de atletismo hasta que se canse, la
secuencia de instrucciones sería:
Repetir
Dar una vuelta a la pista trotando
Hasta que
Esté suficientemente cansado
Ejercicios:
Diseñar un código para sumar los números naturales consecutivos a partir del número
n dado por el usuario, hasta que la suma alcance al menos el valor k, también dado por
el usuario, para k > n.
Diseñar un código de un programa que permita leer una cadena de caracteres hasta que
se introduzca un espacio en blanco.
Diseñar un código que permita a una estación de gasolina, bombear el combustible
hasta que se alcance la cantidad de litros ordenada por el cliente.
Diseñar un código para un guardia de seguridad en la puerta de un antro, que permita
el acceso de clientes hasta que se alcance el límite de clientes permitido por protección
civil.
1
En este caso el atleta deberá dar una vuelta a la pista aun cuando al llegar al campo de entrenamiento ya esté
suficientemente cansado.
33
8. Anexo A. Sintaxis para el Pseudocódigo utilizado en el diseño de
algoritmos
Para que una computadora pueda resolver un problema es necesario que se le indiquen las
instrucciones para ello. Estas instrucciones es lo que constituye el programa de la
computadora, y definen los pasos que debe de seguir la computadora para obtener el resultado
que se está solicitando. Estos pasos son los que conformarán el algoritmo de solución y que es
necesario diseñar para garantizar que el resultado sea el esperado.
Existen diversas formas de describir y diseñar un algoritmo, partiendo de una simple narración
de paso o yéndonos al uso de palabras prediseñadas (pseudopalabras) que se asocien con las
instrucciones de la computadora llamadas pseudocódigos, aunque de manera gráfica también
podemos diseñar un algoritmo haciendo uso de diagramas de flujo, diagramas de N-S (Nassi-
Schneiderman), Diagramas de Warnier, diagramas de actividades entre otros.
En este curso se tocará sólo el uso de pseudocódigo para el diseño de un algoritmo. Parte de su
sintaxis estará basada en herramienta PSeInt, la cual se puede encontrar en la página:
http://pseint.sourceforge.net/, y en el libro Metodología de la programación orientada a
objetos, segunda edición, de Leobardo López Román, de la editorial AlfaOmega.
Estructura básica
Caso PSeInt
Proceso NombreProceso
accion 1;
accion 1;
.
.
.
accion n;
FinProceso
Comienza con la palabra clave Proceso seguida del nombre del programa, luego le sigue una
secuencia de instrucciones y finaliza con la palabra FinProceso. Una secuencia de
instrucciones es una lista de una o más instrucciones, cada una terminada en punto y coma.
Cabe mencionar que en lugar de utilizarse la palabra proceso, es más común y general la
palabra algoritmo, pero respetando sintaxis de la herramienta PSeInt se trabajará bajo el
nombre de proceso para indicar el nombre e inicio del algoritmo a diseñar. A continuación se
tiene la estructura general de un algoritmo sin seguir herramienta alguna:
34
Caso general
Inicio
accion 1;
accion 1;
.
.
.
accion n;
FinAlgoritmo
Operadores y Funciones
Se dispone de un conjunto básico de operadores y funciones que pueden ser utilizados para la
construcción de expresiones más o menos complejas. Y las cuales se presentan en la tabla A.1
y en la tabla A.2.
35
La jerarquía de los operadores matemáticos es igual a la del álgebra, aunque puede alterarse
mediante el uso de paréntesis.
Función Significado
RC(X) Raíz Cuadrada de X
ABS(X) Valor Absoluto de X
LN(X) Logaritmo Natural de X
EXP(X) Función Exponencial de X
SEN(X) Seno de X
COS(X) Coseno de X
ATAN(X) Arcotangente de X
TRUNC(X) Parte entera de X
REDON(X) Entero más cercano a X
AZAR(X) Entero aleatorio entre 0 y X-1
Tabla A.2 Relación de funciones matemáticas
Comentarios
Dentro de un algoritmo también se pueden poner comentarios, lo que nos permite de alguna
manera ir documentando internamente nuestro pseudocódigo, para ello se utilizarán dos
diagonales juntas //.
Los comentarios se pueden introducir luego de una instrucción, o en líneas separadas. Todo lo
que precede a //, hasta el fin de la línea, no será tomado en cuenta al interpretar el algoritmo.
Dado que al momento de solucionar un problema es necesario contar con una serie de datos de
entrada, y en ocasiones de datos generados a partir de otros datos durante el proceso para
obtener algún resultado es necesario definir variables que contendrán dichos datos, los cuales
pueden ser a su vez de diversos tipos de datos, para que sean reconocidos por el programa es
necesario hacer una declaración o definición antes de ser utilizadas dichas variables, para ello
se seguirá el formato siguiente:
36
Ejemplo:
Los tipos de datos más comunes son: numéricos (enteros, y reales), cadenas (delimitadas por
comilla), caracteres (delimitados por apostrofes), booleanos (verdadero y falso).
Asignación
La instrucción de asignación permite almacenar un valor en una variable. Es común utilizar
una flecha dirigida hacia a la izquierda para denotar la asignación como lo muestra tanto el
símbolo de la figura A.1 como la instrucción, pero para nuestro caso utilizaremos el símbolo
de igual (=).
<variable> =<expresión> ;
<variable> = <valor> ;
Ejemplo:
a=10;
b=3.2;
res=12+2-b;
var = Expresión
37
Entradas
Ejemplo:
Leer altura;
Esta instrucción lee N valores desde el ambiente (en este caso el teclado) y los asigna a las N
variables mencionadas. Pueden incluirse una o más variables, por lo tanto el comando leerá
uno o más valores. La figura A.2 ilustra el símbolo que puede ser utilizado para la entrada de
datos.
Salidas
Ejemplo:
Escribir “Dame tu nombre”;
Escribir “Esta es una impresión”;
Esta instrucción imprime al ambiente (en este caso en la pantalla) los valores obtenidos de
evaluar N expresiones. Dado que puede incluir una o más expresiones, mostrará uno o más
valores.
La figura A.3 ilustra el símbolo que puede ser utilizado para la salida de datos.
38
Estructuras condicionales
Condicional Si-Entonces
La secuencia de instrucciones ejecutadas por la instrucción Si-Entonces-Sino depende del
valor de una condición lógica.
Si <condición>
Entonces
<instrucciones>
Sino
<instrucciones>
FinSi
La cláusula Entonces debe aparecer siempre, pero la cláusula Sino puede no estar. En ese caso,
si la condición es falsa no se ejecuta ninguna instrucción y la ejecución del programa continúa
con la instrucción siguiente.
Ejemplo:
Si a<b
Entonces
Escribir a, “es menor que ”, b;
Sino
Escribir a, “no es menor que “, b;
FinSi
La figura A.4 ilustra el símbolo que puede ser utilizado para definir una instrucción
condicional del tipo si-entonces-sino.
39
Selección Múltiple
La secuencia de instrucciones ejecutada por una instrucción Segun depende del valor de una
variable numérica.
Esta instrucción permite ejecutar opcionalmente varias acciones posibles, dependiendo del
valor almacenado en una variable de tipo numérico. Al ejecutarse, se evalúa el contenido de la
variable y se ejecuta la secuencia de instrucciones asociada con dicho valor.
Cada opción está formada por uno o más números separados por comas, dos puntos y una
secuencia de instrucciones. Si una opción incluye varios números, la secuencia de
instrucciones asociada se debe ejecutar cuando el valor de la variable es uno de esos números.
Opcionalmente, se puede agregar una opción final, denominada De Otro Modo, cuya
secuencia de instrucciones asociada se ejecutará sólo si el valor almacenado en la variable no
coincide con ninguna de las opciones anteriores.
Ejemplo:
Proceso DiasSemana
Definir dia como entero;
Escribe “Escribe el número que corresponde al día de la semana”;
Leer dia;
Según dia Hacer
1: Escribir “Lunes”;
2: Escribir “Martes”;
3: Escribir “Miércoles”;
7: Escribir “Domingo”;
FinSegun
FinProceso
40
La figura A.5 ilustra el símbolo que puede ser utilizado para definir una instrucción de
selección o condición múltiple.
Estructuras cíclicas
Ciclo Mientras
La instrucción Mientras ejecuta una secuencia de instrucciones mientras una condición sea
verdadera.
Ejemplo:
Proceso EjemploMientras
Definir i como entero;
i=1;
Mientras i<=5 Hacer
Escribir “El valor de i=”, i;
I=i+1;
FinMientras
FinProceso
41
Algo importante mencionar es que las instrucciones del cuerpo del ciclo pueden no ejecutarse
nunca, si al evaluar por primera vez la condición resulta ser falsa.
Hay que tener cuidado con lo siguiente: si la condición siempre es verdadera, al ejecutar esta
instrucción se produce un ciclo infinito. A fin de evitarlo, las instrucciones del cuerpo del ciclo
deben contener alguna instrucción que modifique la o las variables involucradas en la
condición, de modo que ésta sea falsificada en algún momento y así finalice la ejecución del
ciclo.
Ejemplo:
La figura A.6 ilustra el símbolo que puede ser utilizado para definir una instrucción de tipo
cíclica, para este caso del ciclo Mientras.
Ciclo Repetir
Repetir
<instrucciones>
Al ejecutarse esta instrucción, la secuencia de instrucciones que forma el cuerpo del ciclo se
ejecuta una vez y luego se evalúa la condición. Si la condición es falsa, el cuerpo del ciclo se
ejecuta nuevamente y se vuelve a evaluar la condición. Esto se repite hasta que la condición
sea verdadera.
42
Ejemplo:
Proceso EjemploRepetir
Definir i como entero;
i=1;
Repetir
Escribir “El valor de i=”, i;
I=i+1;
Hasta Que i>5;
FinProceso
Cabe mencionar que dado que la condición se evalúa al final, las instrucciones del cuerpo del
ciclo serán ejecutadas al menos una vez.
Además, a fin de evitar ciclos infinitos, el cuerpo del ciclo debe contener alguna instrucción
que modifique la o las variables involucradas en la condición de modo que en algún momento
la condición sea verdadera y se finalice la ejecución del ciclo.
La figura A.7 ilustra el símbolo que puede ser utilizado para definir una instrucción de tipo
cíclica, para este caso del ciclo Repetir.
Ciclo Para
43
Al ingresar al bloque, la variable <variable> recibe el valor <inicial> y se ejecuta la secuencia
de instrucciones que forma el cuerpo del ciclo. Luego se incrementa la variable <variable> en
<paso> unidades y se evalúa si el valor almacenado en <variable> superó al valor <final>. Si
esto es falso se repite hasta que <variable> supere a <final>. Si se omite la cláusula Con
Paso <paso>, la variable <variable> se incrementará en 1.
Ejemplo:
Proceso EjemploPara
Definir i como entero;
i=1;
Para i=1 Hasta i=5 Hacer
Escribir “El valor de i=”, i;
FinPara
FinProceso
La figura A.7 ilustra el símbolo que puede ser utilizado para definir una instrucción de tipo
cíclica, para este caso del ciclo Para.
44