sábado, 28 de abril de 2012

Estructuras Lógicas Repetitivas en PHP - Parte 2/3

Continuando con el artículo sobre estructuras repetitivas o cíclicas, esta vez veremos conceptos y ejemplos prácticos sobre la estructura Mientras. Los algoritmos aquí descritos pueden ser mejorados, pero lo importante es aprender a usar las estructuras, de ahí la sencillez tanto de los ejemplos usados como de la solución algorítmica empleada.

2. Estructura Mientras.

Es muy similar a la anterior (Hacer...Mientras), solo que en este caso primero evaluamos la condición y luego evaluamos el bloque de código.

En la estructura mientras se distinguen dos partes:

- Proceso: Conjunto de instrucciones que se ejecutarán repetidamente.
- Condición de terminación: La evaluación de esta condición permite decidir cuando finalizará la ejecución del ciclo. La condición se evalúa al inicio del mismo.

Esta estructura se ejecuta mientras la condición es verdadera, en caso contrario terminará el ciclo.

Debe existir también un enunciado dentro del ciclo que afecte la condición, para evitar que el ciclo se ejecute indefinidamente. En lenguaje algorítmico esta estructura la expresamos de esta forma:

Mientras Condición
{PROCESO}
Fin_Mientras



2.1. Ejemplo 4: Obtener el total de sueldo de 10 obreros.

Escriba un pseudocódigo, donde ingresando los sueldos de 20 obreros de una fábrica, obtenga el total de los sueldos de solo 10 obreros y muestre el sueldo por cada obrero.

Pseudocódigo:
Iniciar proceso
Declarar Variables
    NUM: Entero
    SUELDO: Real
    TOTAL: Real
NUM = 1
Leer SUELDO
Mientras NUM < 20
    Calcular TOTAL = TOTAL + SUELDO
    Escribir NUM, SUELDO
    Si NUM = 10 entonces
         break
    Fin_si
    NUM = NUM + 1
Fin_Mientras
Escribir TOTAL
Terminar proceso
Codificación en PHP
<?php
$NUM = 1;
$SUELDO = 3500;

while ($NUM < 20) {
$TOTAL = $TOTAL + $SUELDO;
echo "$NUM = $SUELDO <br>";
if ($NUM == 10) {
break;
}
$NUM++;
}
echo "Total de sueldos a la mitad: $TOTAL";
?>
Diagrama de flujo
Resultado PHP en WEB
Explicación PHP

PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las variables le anteponemos el signo "$" y luego ingresamos el valor de cada variable y finalizamos con ";", ejemplo:

$NUM = 1;
$SUELDO = 3500;

El echo permite imprimir los valores o comentarios encerrados entre comillas, que desea mostrar en la pantalla, ejemplo:

echo "$NUM = $SUELDO <br>"
echo "Total de sueldos a la mitad: $TOTAL";

la etiqueta html <br> es para dar un salto de línea y de esta manera evitará que se vea todo en una línea.

El while permite repetir una secuencia mientras $NUM sea menor que < 20, dentro de este bucle sumará los sueldos de 20 trabajadores y los irá mostrando echo "$NUM = $SUELDO <br>". Note que solo debe mostrar hasta 10 trabajadores y para esto utilizamos $NUM == 10, para cuando cumpla la condición automáticamente se detendrá con break, y mostrará la suma $TOTAL de sueldos. El $NUM++ es igual que $NUM = $NUM + 1.

2.2. Ejemplo 5: Lista los años del 2000 al 2010.

Escriba un pseudocódigo, que muestre la lista de años desde 2005 hasta 2015, y que se detenga cuando en la lista encuentre el año actual.

Pseudocódigo:
Iniciar proceso
Declarar Variables
    NUM: Entero
    ANIO: Real
NUM = 1
ANIO = 2004;
Mientras NUM < 10
    Calcular ANIO = ANIO + 1
    Escribir ANIO
    Si ANIO = YEAR entonces
         break
    Fin_si
    NUM = NUM + 1
Fin_Mientras
Terminar proceso
Codificación en PHP
<?php
$NUM = 1;
$ANIO = 2004;

while ($NUM <10) {
$ANIO = $ANIO + 1;
echo "$ANIO <br>";
if ($ANIO == date("Y")) {
break;
}
$NUM++
}

?>
Diagrama de flujo
Resultado PHP en WEB
Explicación PHP

PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las variables le anteponemos el signo "$" y luego ingresamos el valor para cada variable y finalizamos con ";", ejemplo:

$NUM = 1;
$ANIO = 2004;

El echo permite imprimir los valores o comentarios encerrados entre comillas, que desea mostrar en la pantalla, ejemplo:

echo "$ANIO <br>";

la etiqueta html <br> es para dar un salto de línea y de esta manera evitará que se vea todo en una línea.

El while permite repetir una secuencia mientras $NUM sea menor que < 10, dentro de este bucle sumará los años y los irá mostrando echo "$ANIO <br>", note que solo debe mostrar hasta el año actual y para esto utilizamos $ANIO == date("Y"), para cuando cumpla la condición automáticamente se detendrá con break.

2.3. Ejemplo 6: Mostrar cuántos números NO son divisibles entre 2.

Escriba un pseudocódigo, que cuente del 1 al 20 cuántos números NO son divisibles entre 2 y muestre cuáles son los números, y al finalizar debe sumar todos los números y mostrar un Total.

Pseudocódigo:
Iniciar proceso
Declarar Variables
    I: Entero
    N: Entero
    SUM: Real
I = 0
N = 1
Mientras I < 20
    Si N MOD % 2 <> 0 entonces
         Escribir N
         Calcular SUM = SUM + N
    Fin_si
    N = N +1
    I = I + 1
Fin_Mientras
Escribir Suma de números NO divisibles entre 2: SUM
Terminar proceso
Codificación en PHP
<?php
$I = 0;
$N = 1;

while ($I < 20) {
if ($N % 2 <> 0) {
    echo "$N <br>";
    $NUM = $NUM + $N;
}

$I++;
$N++;
}
echo "Suma de números NO divisibles entre 2: $NUM";
?>
Diagrama de flujo
Resultado PHP en WEB
Explicación PHP

PHP inicia con la etiqueta <?PHP y termina con ?>, cuando escribimos las variables le anteponemos el signo "$" y luego ingresamos el valor de cada variable y finalizamos con ";", ejemplo:

$I = 0;
$N = 1;

El echo permite imprimir los valores o comentarios encerrados entre comillas, que desea mostrar en la pantalla, ejemplo:

echo "$N <br>";

la etiqueta html <br> es para dar un salto de línea y de esta manera evitará que se vea todo en una línea.

El while permite repetir una secuencia mientras $I sea menor que < 20, dentro de este bucle sumará los N números 20 veces y los irá mostrando echo "$N <br>", solo los números NO divisibles entre 2.

Para esto utilizamos un $N % 2 <> 0, que cuando cumpla la condición muestre el número NO divisible y cuente $N++, también contamos $I++ el cual permitirá indicarle al while que se detenga cuando este sea menor <20, si no se define el $I, el bucle se repetirá indefinidamente.

Eso es todo por hoy en el próximo artículo aprenderemos cómo utilizar la estructura cíclica Desde o Para, con lo que estaríamos terminando con todo lo que son estructuras cíclicas o repetitivas.

No hay comentarios :

Publicar un comentario

Encuesta: ¿Quién es el mejor catedrático de la carrera de Ing. Informática de la UAGRM?