Estructuras de control en PHP Programación de Computadores I Instituto IACC 06-10-2013
Desarrollo
1.- Indique cuáles son – a su parecer - las principales diferencias entre las estructuras de control While. Do-While y for. Establezca una comparación de al menos dos puntos de cada una de ellas, explicándolas de la forma más detallada posible.
La diferencia que existe entre While, Do-While y for son las siguientes: Como sabes While es ciertamente el tipo más sencillo de implementar, ya que se puede utilizar cuando necesitemos ejecutar una cantidad infinitas de veces, la composición de While es de la siguiente manera Un ejemplo de While seria de la siguiente manera. Lo que realiza este código es muy sencillo cuando la condición $i sea igual o menor a 10 se detendrá, obviamente se imprimirá en pantalla de la siguiente manera 12345678910. While esta
considerada como iteración, gracias a While se pueden ejecutar sentencias anidadas en su forma repetida, siempre y cuando While la evalué como verdadera. El valor de esta iteración es evaluada al comienzo y se va repitiendo las veces que el bucle lo considere necesario, aunque el valor cambie durante la ejecución, esta misma no dejara de realizarse hasta el fin de la iteración. Ahora veremos Do While. Al igual que While do While se utiliza cuando no sabemos las veces que se necesita para repetir una ejecución, pero al menos se hará una vez dentro del código. Una diferencia importante es que la condición de verdadero o falso de la expresión es validada al final de cada iteración y no como en While que se evalúa al comienzo. Esa es una diferencia importante entre While y do While. La composición de do While es:
El ejemplo de Do While seria de la siguiente manera
A diferencia el bucle anterior se ejecutara mientras $i igual o menor que 20, en cada iteración los números serán mostrado consecutivos del 0 al 20 o sea 0123456789…..181920 o se ejecutara 21 veces. Y como por ultimo veremos la sentencia for, este bucle es técnicamente el más difícil o complejo al momento de su construcción a diferencia del While y do While, la sentencia for se utiliza generalmente para repetir una secuencia una determinada cantidad de veces. Como lo hemos realizado anteriormente for está compuesto por Lo que significa cada expresión es 1: expresión 1 esto equivale a inicialización 2: expresión 2 esto equivale a condición 3: expresión 3 esto equivale a actualización. A diferencia de While y do While la inicialización se evalúa una sola vez y al principio del bucle, y generalmente este valor siempre está en 0. La condición se evalúa como verdadera o falsa en cada iteración del bucle. También esto se realiza al comienzo de cada iteración y en caso de ser verdadera el bucle continua hasta la próxima iteración. La actualización, es finalmente en cada iteración que tenga la expresión de inicialización para continuar la ejecución del bucle. Y se utiliza para hacer un incremento o decremento de la variable $i ++ o $I--.
Un ejemplo de for seria. php For ($x =0; $x =25; $x++){ Echo $x “ “; } ?> Este código imprime desde el 0 al 25 en pantalla, la inicialización esta en cero, es decir se ejecutara 26 veces hasta tener el resultado en pantalla. Y la forma de hacerlo es 0123456789…202122232425. Ya que revisamos una pequeña reseña la diferencia fundamentales entre While, Do While y For, como vimos anteriormente While se ejecuta al comienzo del bucle y se repite una cantidad determinada de veces en cambio Do While se ejecuta pero no se valida como verdadera al comienzo si no al final y por último la más difícil de todas for se valida al comienzo y la ventaja de esta sintaxis es que se puede hacer todo en una sola línea el inicio, la condición y la actualización en cambio en While y Do While ahí que hacerlo paso a paso.
2.- Solucione el Siguiente problema utilizando las estructuras de control de selección e iteración (al menos una de cada una) que considere más adecuadas.
Pseudocodigo. Inicio Num PS, PC = 173895 LC = 945600 Print (“ Ingrese el número de personas”); Read ps SI (ps =>50) then Tl=Ps * pc*lc Print (“ el valor total que obtienes es,Tl); End if End Esta era la idea general sin iteración ahora lo hare con iteración.
echo "------------------------------------------------------------","
"; echo "Programa para calcular el el valor de cantidad de asistentes","
"; echo "------------------------------------------------------------","
"; echo "Numero de personas, el 04-10-2013 $ps=5; //número de personas $cpp=173.895; // valor de la cuota por asistente $lc=945.600; // valor local con coffe break incluido $iv=19; // IVA para realizar el calculo $b=0; // Variable para calcular el número de personas $cs=0; // constante $t=$i; // incremento
","
", "
", "
";
{ for($i=$cpp;$lc>=$i;$i=$i+$cpp) $b++; $t=$i; } if($ps<$b){ echo "necesitas $b para hacer rentable el negocio."; } elseif($ps==$a){ $dif=$lc-$t; echo "esta completo el local."; }else{ echo "estan $b personas inscritas."; $dp=$ps-$a; echo " faltan $dp personas mas para cubrir el costo del local,"; $gana=($ps*$cpp)-$ls; echo "tienes una ganancia de $gana pesos"; }
El código anterior contiene estructuras de control y de iteración siendo if..elseif else.. de selección y for para repetición. Se adjunta una captura de pantalla con el código funcionando.
Bibliografía IACC 2013
Contenido de la Semana 1 hasta la 7
IACC 2013
Test your PHP code online, right here.