Foros del Web » Programación para mayores de 30 ;) » Java »

bucle infinito

Estas en el tema de bucle infinito en el foro de Java en Foros del Web. Este bucle evalua infinitamente y no se por qué: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código C++: Ver original int he ; boolean evaluation ; for ( int e ...
  #1 (permalink)  
Antiguo 14/11/2010, 17:02
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 7 meses
Puntos: 101
bucle infinito

Este bucle evalua infinitamente y no se por qué:

Código C++:
Ver original
  1. int he;
  2. boolean evaluation;
  3. for (int e = 0; e < eAmount*2; ++e)            
  4. {          
  5.     if ( e == eAmount ) continue; // skip the new index.
  6.     he = 0;
  7.     evaluation = true;                     
  8.     do             
  9.     {
  10.         if ( newMeshEdges[e].vertex == newMeshEdges[he].vertex )
  11.             {
  12.             //new MessageDialog(theWindow, "oldNext:" + newMeshEdges[e].next + " / newNext:" + newMeshEdges[he].hedge);
  13.             newMeshEdges[e].next = newMeshEdges[he].hedge;
  14.             evaluation = false;
  15.             }
  16.         else he++; 
  17.     } while( (evaluation) || (he < eAmount*2) );
  18.    
  19. }

eAmount vale 94. Por qué no su rompe la condición? Se me cuelga la aplicación!

Originalmente tenía:
Código Javascript:
Ver original
  1. ...
  2. while ( ( newMeshEdges[e].vertex != newMeshEdges[he].vertex) || (he < eAmount*2) )

Y ahora lo cambié por un booleano para detenerlo de otra manera, pero no me funciona tampoco :o(
  #2 (permalink)  
Antiguo 14/11/2010, 17:22
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 7 meses
Puntos: 101
Respuesta: bucle infinito

Puse un break y funcionó :o)

Para los bucles for también es valido usar el break?

Etiquetas: bucle, infinito
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:56.