Sei sulla pagina 1di 6

La Programacin: Iniciate en un mundo apasionante

2. Estructuras de control

Mdulo 2. Estructuras de control

Las estructuras de control nos sirven para controlar qu instrucciones de nuestro programa queremos ejecutar y
en qu orden. Vamos a ver dos tipos: estructuras de seleccin y de iteracin.

Estructuras de seleccin
Hasta ahora hemos visto instrucciones en un orden secuencial, es

Para eso los lenguajes de programacin utilizan las estructuras de

decir, una detrs de otra. Por ejemplo:

seleccin. Usndolas, podemos indicar las instrucciones a ejecutar


dada una determinada condicin lgica. Una condicin lgica es una

var carta = '1c'

pregunta cuya respuesta es verdadero o falso. Por ejemplo, tenemos

var valor = carta[0]

nuestra baraja, sacamos una carta y hacemos la pregunta: es de

var palo = carta[1]

picas o treboles? En caso afirmativo (if), llevamos la carta al montn


de carta negras. En caso contrario (else), llevamos la carta al montn

Pero habr veces que queramos ejecutar instrucciones slo bajo

de cartas rojas.

algunas condiciones. Por ejemplo, volviendo a nuestra baraja de


cartas, querremos llevar al montn de cartas de corazones una carta
slo si es de corazones.

Mdulo 2. Estructuras de control

Adems, estas preguntas lgicas que hacemos con if

else

pueden anidarse. Por ejemplo, dada una carta de la baraja, pregunto

Nota: Usamos console.log para escribir texto y datos en la consola


JavaScript del navegador.

si es de picas. En caso afirmativo, la paso al montn de picas. En


caso contrario, hago una nueva pregunta: es de corazones? En caso

Nota: Como estamos escribiendo varias sentencias en nuestro

afirmativo, la llevo al montn de corazones. En caso contrario hago

programa, una buena prctica en JavaScript es escribir un punto y

una nueva pregunta, y as sucesivamente hasta que compruebo si es

coma (;) al final de cada sentencia. En nuestro ejemplo, las lneas con

de un palo determinado.

if/else son estructuras de seleccin no son sentencias y por tanto


no llevan ; al final.

Ejemplo 1: if
var carta = "3c";

Nota: Indentar consiste en poner espacios a la izquierda del cdigo,

if (carta[1] === "c"){

de forma que cuando anidamos un bloque (cdigo entre { y }) queda

console.log("Es un 3 de corazones");
}

visualmente ms a la derecha. De esta forma, veremos visualmente el


nivel de anidamiento de nuestro cdigo. As, nuestro cdigo ser ms
legible y ordenado.

Comenzamos la estructura de seleccin con la palabra if seguida de


la condicin lgica (pregunta) entre parntesis y luego un bloque de
cdigo entre { y } que ser lo que nuestro programa ejecute en caso
de cumplirse la condicin lgica.

Mdulo 2. Estructuras de control

Ejemplo 2: else

Ejemplo 3: anidamiento

var carta = "3c";

var carta = "3p";

if (carta[1] === "c"){

if (carta[1] === "c"){

console.log("Es un 3 de corazones");
} else {

console.log("Es un 3 de corazones");
} else {

console.log("No es un 3 de corazones");

if(carta[1] === "p"){

console.log("Es un 3 de picas");
}

Como el ejemplo anterior, pero en este caso usamos la palabra else

para indicar un bloque de cdigo a ejecutar en caso de que no se


cumpla la condicin del if.

Podemos anidar, es decir, encadenar unas preguntas dentro de otras.

Nota: Cuando no formamos bien el cdigo, la consola de JavaScript


de nuestro navegador nos dar un error de sintaxis (syntax error).
Para evitarlo, tenemos que colocar las llaves y los parntesis en su
lugar adecuado.

Mdulo 2. Estructuras de control

Estructuras de iteracin
Son tambin llamadas de repeticin o bucles. Nos permiten repetir

Ejemplo 1: for

la ejecucin de un bloque de cdigo tantas veces como queramos,

for (var i=1; i<= 12; i=i+1){


console.log(i + " de picas");

hasta que se cumpla una condicin lgica, que en este caso llamamos
condicin de parada.

Por ejemplo, si vamos a nuestro montn de cartas, sacamos una carta


y preguntamos si es el uno de corazones. En caso contrario, tomamos

En este bucle for iteramos con el ndice i desde el valor 1 hasta el 12,

una nueva carta y comprobamos si es el uno de corazones. As de

aumentando +1 en cada iteracin. En el bloque de cdigo imprimimos

forma continua hasta que lo encontramos, cumplindose nuestra

con console.log el valor de i seguido de la cadena " de picas", de

condicin de parada.

forma que como resultado tenemos "1 de picas", "2 de picas", y as

La estructura de iteracin ms comn es el bucle for, que consta de 3

sucesivamente hasta 12.

parmetros entre parntesis y el bloque de cdigo a repetir. El primer


parmetro es un ndice que declaramos para controlar las iteraciones
del bucle; el segundo es la condicin de parada; y el tercero es la
actualizacin, que es una instruccin que ejecuta nuestro programa al
final del bloque de cdigo.

Mdulo 2. Estructuras de control

Ejemplo 2: do while
var i = 1;
do {
console.log( i + " de picas");
i = i + 1;
}while(i <= 12);

En este caso hemos construido un bucle do/while con la misma


funcionalidad que el for del ejemplo anterior. En este caso, tenemos
que incluir la inicializacin del ndice al comienzo del programa. Y
tambin el bloque de actualizacin ponerlo explcitamente como ltima
sentencia del bloque a repetir.

Potrebbero piacerti anche