Programación
Módulo configuración de dispositivos activos
Introducción
La presente guía presenta un acercamiento teórico a las bases que permiten desarrollar
las competencias necesarias para crear un algoritmo, y al final presentan ejercicios que
deben ser entregados como muestra de que ha comprendido la temática presentada.
SECCIÓN I
Los computadores, como cualquier máquina, están diseñados para realizar tareas
repetitivas. Es por ello que nuestros programas pueden aprovecharse de este principio
para realizar una determinada secuencia de instrucciones un cierto número de veces.
Para ello, utilizamos las estructuras de control llamadas en ciclos que nos ayudan, usando
unas pocas líneas, a realizar una tarea incluida dentro del ciclo un cierto número de veces
definido por nosotros mismos.
En sí, las estructuras de control nos permiten cambiar el orden de las declaraciones
ejecutadas en nuestros programas, en donde se exige en muchas ocasiones la repetición
de acciones sucesivas o la elección de una determinada secuencia y no de otra
dependiendo de las condiciones específicas de la ejecución. Es por eso que hay dos tipos
de estructuras de control:
1.1.Ciclo while
Sin duda el ciclo más utilizado y el más sencillo. Lo usamos para ejecutar las
instrucciones contenidas en su interior siempre y cuando la condición definida sea
verdadera.
1.2.Ciclo do/while
La diferencia con respecto a los bucles while es que este tipo de bucle evalúa la
condición al final con lo cual, incluso si la condición es falsa desde el principio, éste
se ejecuta al menos una vez.
1.3.Ciclo for
Donde:
• expresión1 es la iniciación del bucle. Sólo se ejecuta una vez, al principio,
cuando el flujo del programa llega al bucle.
• expresión2 es la condición. Mientras que expresión2 se evalúe a cierto, el
bucle estará iterando. Se evalúa al inicio de cada iteración, y si no se
verifica la condición la siguiente iteración ya no se realiza y finaliza el
bucle, continuando la ejecución del programa con el resto del código de
después del for.
• expresión3 es el paso de iteración. Se ejecuta después de cada iteración,
y generalmente modifica el valor de alguna variable (separadas por comas
si hay más de una).
• comandos son todas las instrucciones a ejecutar (terminadas en punto y
coma) cuando se cumple la condición de entrada al ciclo.
Esta es la sintaxis:
2. Estructuras de selección
Esta estructura de base puede complicarse un poco más si tenemos cuenta que
no necesariamente todo es blanco o negro y que muchas posibilidades pueden
darse. En estos casos hablamos por lo tanto de “condiciones anidadas” que
tendrían una estructura del siguiente tipo:
Su sintaxis es:
SECCIÓN II
Símbolo Descripción
Indica el inicio y el final de nuestro diagrama de flujo. También puede ser
un poco más ovalado.
Ejemplos:
SECCIÓN III
Función:
Una función es un conjunto de líneas de código que realizan una tarea específica y puede
retornar un valor. Las funciones pueden tomar parámetros que modifiquen su
funcionamiento. Las funciones son utilizadas para descomponer grandes problemas en
tareas simples y para implementar operaciones que son comúnmente utilizadas durante
un programa y de esta manera reducir la cantidad de código.
A continuación se muestra un algoritmo que asigna ciertos valores a las variables, y cuya
finalidad es solo su entrenamiento en el seguimiento del flujo de un programa
determinado:
var x=4; //declaración de las variables implicadas en el algoritmo y
var y=0; //su inicialización en un valor determinado, este valor se
var z=0; //asigna la primera vez carga el programa
var m=100;
for (i=0; i<=20; i++) //declaración del for: inicia cuando i=0
{ //y continuara ejecutándose hasta que i no sea <=20
x=x+1; //asignación a variable: a x le llevamos el valor de x+1
y=x+10; //note que todas las asignaciones terminan en “;”
z=y-1;
switch (x) //switch que dependerá del valor de la variable x
{
case 8: //cuando x vale 8 tomara hará que
m=10; //m sea 10 y luego buscará¡ la palabra break
break; //cuando encuentra break se sale del caso x=8 y se
//va al final del switch, es decir donde se cierra
case 9: //la llave del switch
y=y-10;
z=y;
break;
case 10:
x=0:
break;
Cada una de las variables tiene un espacio asignado en memoria, el cual irá cambiando
dinámicamente según el flujo del programa. A continuación se muestra una tabla con los
valores de las variables. El valor más a la derecha indica el último asignado.
Variable\Ciclo 0 1 2 3 4 5 6
i 0 0/1 1/2 2/3 3/4 4 /20/21
x 4 5 6 7 8 9
y 0 15 16 17 18 19/9
z 0 14 15 16 17 18/9
m 100 99/109 108/118 117/127 137 137
Observaciones:
La situación más interesante se presenta en la columna del 5° ciclo. En ella la “i” tenia
inicialmente el valor de 4, que se obtuvo al termina el ciclo 4°.
Las primeras instrucciones ejecutadas dentro del for son las asignaciones a las variables
“x”, “y” y “z”, donde se otorgan los valores 9, 29 y 18 respectivamente.
La última estructura incluida en el for es un if, que pregunta si “x” y “y” tienen el mismo
valor. Esta condición es verdadera, pues se acabaron de modificar los valores de “y” y
“z”, por tanto se realiza la instrucción asociada a esta condición: llevarle a “i” el valor 20.
Siguiendo el flujo del programa nos encontramos con la llave que cierra el for, por tanto no
hay nada más para ejecutar.
Pero recuerde que antes de finalizar el ciclo siempre se incrementa la variable
controladora que en este caso en “i”, “i” actualmente vale 20, así que al incrementarla
quedará valiendo 21.
Después de hacer el incremento en la variable controladora del for, el flujo del programa
vuelve a la declaración del for para evaluar la segunda expresión o condición: “i<=20”, ¿se
cumple? ¡Claro que no!,” i “ya ha sobrepasado este valor y una nueva repetición no podrá
darse, el bucle for ha llegado a su fin.
SECCIÓN IV
Ejercicios
• Llene la tabla con los estados de las variables si x=5, y =10, z=0, y m=10. Bajo
estas condiciones, ¿cuántos ciclos tendrá el bucle for?
• Cree un diagrama de flujo para representar el algoritmo que permite multiplicar un
par de números ingresados por un usuario. Los números deben multiplicarse
usando sumas sucesivas. Es decir 2*4=2+2+2+2.
Cuando el resultado ya haya sido calculado mostrarlo en pantalla.
Escriba el programa representado por el diagrama de flujo.
• Cree el diagrama de flujo que permite operar dos números ingresados por el
usuario, y mostrar el resultado. Usted tiene ya las funciones que se encargan de
sumar, restar, multiplicar y dividir. Puede considerar cada una como un bloque de
proceso.
Nota: el usuario sigue la siguiente secuencia para ingresar los datos:
Primer numero
Signo de la operación
Segundo numero
Signo de igual.
Escriba el programa representado por el diagrama de flujo.