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