Está en la página 1de 13

Resolucin de Ejercicios

Ejercicio 1 y 2

Estructuras de Control
Las sentencias de control permiten ejecutar bloque de cdigos dependiendo de unas condiciones. if: permite ejecutar un bloque de instrucciones si la condicin es Verdadera y otro bloque de instrucciones si sta es Falsa. Es importante tener en cuenta que la condicin que evaluemos ha de estar encerrada entre parntesis (esto es aplicable a todas la sentencias de control). if...elseif...else: permite ejecutar varias condiciones en cascada. switch...case...default: evala y compara cada expresin de la sentencia case con la expresin que evaluamos. Si encontramos una condicin verdadera debemos ejecutar un break para que la sentencia switch no siga buscando en la lista de case. while: La sentencia while ejecuta un bloque de cdigo mientras se cumpla una determinada condicin. do...while: Esta sentencia es similar a while, salvo que con esta sentencia primero ejecutamos el bloque de cdigo y despus se evala la condicin, por lo que el bloque de cdigo se ejecuta siempre al menos una vez. For: el ciclo for resulta muy til cuando debemos ejecutar un bloque de cdigo a condicin de que una variable se encuentre entre un valor mnimo y otro mximo.

Generar un valor aleatorio (es decir lo elige la mquina al azar, como extraer una bolilla de un bolillero de lotera) comprendido entre 1 y 10. Luego mostraremos un mensaje si es menor o igual a 5 o si es mayor a 5.
<?php $valor=rand(1,10); echo "El valor sorteado es $valor<br>"; if ($valor<=5) { echo "Es menor o igual a 5"; } else { echo "Es mayor a 5"; } ?> NOTA: El valor aleatorio lo generamos llamando a la funcin random pasndole el valor mnimo y mximo: $valor=rand(1,10);

El bucle for esta compuesto de 3 partes: - Inicializacin: Se ejecuta tan solo al iniciar por primera vez el bucle. En esta parte se suele colocar la variable que contara el numero de veces que se repite el bucle. - Condicin: Es la condicin que se evaluara cada vez que se inicie el bucle. Esta condicin es la que determina la duracin del bucle. - Actualizacin: Sirve para indicar los cambios que queremos ejecutar en las variables cada vez que se ejecuta el bucle.

Sentencia foreach
Existe un tipo de sentencia repetitiva especialmente diseada para recorrer las propiedades de un objeto o los elementos de una matriz. Debe tener presente que esta instruccin debe ser utilizada nicamente con matrices u objetos, nunca con otro tipo de dato. Obtendr un error si intenta utilizarlo con otro tipo de dato. Esta sentencia se incluy a partir de la versin 4 de PHP.

$arr = array( perro , gato , ornitorrinco ); foreach ($arr as $elem) { // En cada vuelta, elem guarda uno de los strings echo ( <p>El elemento es: .$elem. </p> ); }

Sentencias para control de ciclos o lazos


PHP soporta el uso de dos sentencias especiales con las que se puede modificar el flujo en la ejecucin del bloque de instrucciones dentro de un ciclo, lazo o bucle. Estas instrucciones son break y continue.

Sentencia break
La sentencia break ya se haba mencionado cuando se explic la sentencia switch. En un ciclo o lazo se utiliza de la misma forma; es decir, permite terminar prematuramente la ejecucin del bloque de instrucciones dentro de cualquiera de las sentencias repetitivas: while, do-while, for o foreach.

Normalmente una sentencia break se incluir con una condicin que de cumplirse debe producir la terminacin temprana del bloque de instrucciones, aun y cuando la expresin condicional, que determina si el lazo se continuar ejecutando, siga siendo evaluada con un valor verdadero. Realmente cuando se ejecuta la sentencia break, el control del flujo de programa pasa directamente a la siguiente instruccin despus del ciclo repetitivo. La expresin condicional no se evala.

Sentencia continue
Una sentencia continue permite que en la ejecucin de uno o varios ciclos en particular no se completen todas las instrucciones del bloque, sino que en determinada situacin, que debe evaluarse mediante una condicin dentro del ciclo repetitivo, el flujo del programa regrese a la expresin condicional de la estructura repetitiva a evaluar si se ejecuta o no, una nueva iteracin.

Gracias por su atencin