Inicio | Artículos | Cursos Online | Libros | Diccionario | Mapa Web | Enlazar | Contactar | Acerca de


C/C++/C# HTML Java JavaScript Linux PHP Python Swift
CURSO/TUTORIAL DE ALGORITMOS
Introducción
¿Qué es un Algoritmo?
¿Qué es un Ordinograma?
Elementos Básicos
Tipos de Datos
Identificadores
Variables
Constantes
Operadores y Expresiones
Tipos de Datos Definidos por el Programador
Datos de Tipos Enumerados
Datos de Tipos Subrangos
Instrucciones Primitivas
Instrucción de Asignación
Instrucción de Salida
Instrucción de Entrada
Estructura de un Algoritmo
Partes de un Algoritmo
Cabecera
Declaraciones
Cuerpo
Sintaxis de un Algoritmo
Comentarios
Introducción a los Diagramas de Flujo
Asignación
Entrada y Salida
Inicio y Fin
Decisiones
Instrucciones de Control
Instrucciones Alternativas
Instrucciones Repetitivas
Instrucciones De Salto
Llamadas a Subalgoritmos
¿Qué es un Subalgoritmo?
Subprogramas
Procedimientos
Declaraciones Locales y Globales
Parámetros
Funciones
Representación mediante Diagramas de Flujo
CarlosPes.comCurso de Diseño de Algoritmos > Errores en un Bucle Mientras

Errores en un Bucle Mientras

¿Qué errores pueden producirse en un bucle mientras?

En este apartado vamos a ver varios ejemplos de posibles errores que se pueden cometer al escribir un bucle mientras, tomando como referencia el ejemplo del apartado anterior, "Cambios en un Bucle Mientras".

Ejemplo 1: Un pequeño descuido, como por ejemplo, no escribir de forma correcta la condición del bucle, puede producir un bucle infinito:
algoritmo Numeros_del_10_al_1

variables
   entero contador

inicio
   contador ← 10                /* Cambio 1 */
   mientras ( contador <= 10 )  /* Descuido */
      escribir( contador )
      contador ← contador - 1   /* Cambio 3 */
   fin_mientras
fin
Por pantalla se mostrará:
Salida por pantalla de un bucle infinito
Ejemplo 2: Otro error muy frecuente es inicializar mal la variable que participa en la condición del bucle:
algoritmo Numeros_del_10_al_1

variables
   entero contador

inicio
   contador ← 1                 /* Descuido */
   mientras ( contador >= 1 )   /* Cambio 2 */
      escribir( contador )
      contador ← contador - 1   /* Cambio 3 */
   fin_mientras
fin
Por pantalla sólo se mostrará el número 1:
Salida por pantalla del número uno
Ejemplo 3: También es un error muy típico olvidarse de escribir alguna instrucción, como por ejemplo, la instrucción de asignación

contador ← contador - 1

del bloque de instrucciones del bucle:
algoritmo Numeros_del_10_al_1

variables
   entero contador

inicio
   contador ← 10                /* Cambio 1 */
   mientras ( contador >= 1 )   /* Cambio 2 */
      escribir( contador )
                                 /* Descuido */
   fin_mientras
fin
De nuevo, por pantalla, se obtiene la salida de un bucle infinito:
Salida por pantalla del número 10 en un bucle infinito
Ejemplo 4: Como ya se ha dicho, un bucle mientras puede iterar cero o más veces. Así, por ejemplo, en el algoritmo siguiente existe un error lógico que provoca que el bucle no itere ninguna vez.
algoritmo Numeros_del_10_al_1

variables
   entero contador

inicio
   contador ← 0                 /* Descuido */
   mientras ( contador >= 1 )   /* Cambio 2 */
      escribir( contador )
      contador ← contador - 1   /* Cambio 3 */
   fin_mientras
fin
Por pantalla no se mostrará nada:
Salida por pantalla en blanco
En este caso, se ha producido un error lógico, ya que, para que el bucle iterase diez veces, se debería haber asignado a la variable contador el valor 10, en vez del 0. No obstante, bajo determinadas circunstancias, sí puede tener sentido hacer uso de un bucle mientras, el cual pueda no iterar ninguna vez.
Artículos Interesantes
Artículos de Desarrollo Web
Artículos de Informática
Artículos de Programación
Artículos de SEO
Cursos/Tutoriales de Informática
Curso/Tutorial de Algoritmos
Curso/Tutorial de Informática Básica
Curso/Tutorial de Ingeniería del Software
Curso/Tutorial de Lenguaje C
Curso/Tutorial de Marketing en Internet
Curso/Tutorial de Turbo Pascal
Curso/Tutorial de Representación de los Datos
Curso/Tutorial para Webmasters
Curso/Tutorial Web 2.0
Curso de SEO
Libros de Carlos Pes
36 Pasos Básicos para Desarrollar un Sitio Web
Empezar de Cero a Programar en Lenguaje C
Fundamentos del SEO
Libros Recomendados
Libros de Analítica Web
Libros de Desarrollo Web
Libros de Java
Libros de Lenguaje C
Libros de Marketing Online
Libros de Pascal (Turbo Pascal)
Libros de SEO
Libros de Visual Basic
Recursos de Informática
Diccionario de Informática
Ejercicios de Programación
Guías de uso de Software
Sintaxis de Lenguajes de Programación
Biografías
Entrevistas
Frases y Citas
Recursos Educativos
Presentaciones Educativas
Videos Educativos
Enlaces Web
Acerca de Carlos Pes
Bibliotecas
Colaboradores
Contactar
Enlazar
Librerías
Perfiles en Internet
Mapa Web
Blog de Carlos Pes Blog de Carlos Pes
© CarlosPes.com | Privacidad | Condiciones