[C con Clase] Bucles

Juan Antonio jalr43 en hotmail.com
Vie Ene 26 00:23:28 CET 2007


Hola Santiago,

evidentemente los dos bucles hacen lo mismo. Lo que se hace con while se puede hacer for y do-while. El do-while tiene la salvedad que al menos siempre se ejecuta una vez por evalua la condición después de hacer lo que haya en el cuerpo del do, en cambio while evalua primero la condición y si es falsa no hace nada.

Fijate que para crear un bucle infinito puedes hacer for(;;) o también while(1). Como puedes ver en for no hay que especificar todos los parámetros por lo que se puede emular un bucle while con for sin problemas.

Usar uno o otro es cuestión de gustos, pero cuando se trabaja con datos que siguen una sucesión de paso conocido (índices de un array, obtener el valor de una función cada segundo, etc) se suele usar for. En cambio cuando se tiene que ejecutar un grupo de funciones mientrás se cumpla una determinada condición se usar while o do-while (para que se realice al menos una vez). Piensa que esa condición no tiene porque ser modificada obligatoriamente dentro del bucle, puede haber más de un hilo en una aplicación y que otro hilo modifique su valor.

Un saludo,
Juan Antonio.
  ----- Original Message ----- 
  From: Santiago García 
  To: C++ Preguntas 
  Sent: Thursday, January 25, 2007 4:53 PM
  Subject: [C con Clase] Bucles


  Hola, ¿alguien me puede explicar la diferencia entre los tres tipos de bucles. Porque es igual esto:

  #include<iostream>
  using namespace std;

  int main()
  {
      int x;

      for(x = 0; x < 10; x ++)
      {
          cout << x;
      }

      cin.get();
      return 0;
  }

  Que esto:

  #include<iostream>
  using namespace std;

  int main()
  {
      int x = 0;

      while(x < 10)
      {
          cout << x;
          x ++;
      }

      cin.get();
      return 0;
  }

  Un saludo y gracias, Alejandro y Santiago.


------------------------------------------------------------------------------

  LLama Gratis a cualquier PC del Mundo.
  Llamadas a fijos y móviles desde 1 céntimo por minuto.
  http://es.voice.yahoo.com


------------------------------------------------------------------------------


  _______________________________________________
  Lista de correo Cconclase Cconclase en listas.conclase.net
  http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
  Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20070126/d1decc0a/attachment.html>


Más información sobre la lista de distribución Cconclase