Dos soluciones alternativas (utilizando Pseudocódigo) son los siguientes:.
bucle de pre-test: post- bucle de prueba:
set promedio a promedio de ajuste a cero a cero
set recuento de ajuste a cero el recuento a cero
set total conjunto total cero a cero
Número de leer hacer
mientras (no de fin de datos) leer un número
recuento de la subasta por 1 cargo de la subasta por 1 |
total = total del número total + = total de + número
Número de leer mientras (no de fin de datos)
si (cuenta> 0) entonces si (count> 0) entonces
Media = Total /recuento Media = total de pantalla promedio /recuento
mostrar promedio
Ambos asumen que el ordenador te dirá el programa cuando no hay más números.
Esto se conoce como un fin-de-datos o la prueba de fin de archivo.
Hay una diferencia importante entre los bucles pre-test y post-test. La versión previa a la prueba funcionará incluso si no hay números, la versión post-test asume el cuerpo del código se obedeció al menos una vez. Ambas formas de bucles son adecuados en diferentes circunstancias.
Looping con conmutación y
de Goto
El bucle y la lógica de conmutación por encima de seguir las reglas bien definidas.
De hecho, podemos implementar cualquiera de estas construcciones con una condición y una instrucción (rama incondicional) Goto. Un ejemplo de esta lógica se se ilustra en el diagrama de flujo de bucle mostrado previamente. Los primeros programas fueron escritas de esta manera. A medida que los problemas se hicieron más complejas se hizo imposible seguir la lógica cuando
las cosas van mal
Imagínese tratando de resolver código como este
Paso 01:.
Hacer algo
Paso 02: vaya al paso 16
Paso 03: hacer algo
Paso 04: si se ha producido algún evento vaya al paso 19
...
Paso 16: si algún evento tiene ocurre vuelva al paso 4
Paso 17: vaya al paso 1 |
Paso 18: hacer algo
Paso 19: si algo es mayor que 10 Goto paso 1 |
Paso 20: vaya al paso 1
nació código espagueti! La regla es simple, a evitar sentencias goto, pero utiliza las construcciones de más alto nivel que hemos introducido aquí para cambiar la lógica y la lógica de bucle.
Incluso con e