Foro de elhacker.net

Programación => Programación General => Mensaje iniciado por: dark_headhunter en 4 Diciembre 2010, 03:24 am



Título: Duda de conceptos
Publicado por: dark_headhunter en 4 Diciembre 2010, 03:24 am
Hola amigos: Hoy tras una intensa discusión con un amigo de clase debatíamos si los bucles while y for sirven para todo tipo de situaciones, es decir, con un while haces todas las cosas que  puedo hacer con un for, y viceversa.

Por algún motivo pienso que el while es más completo, y es el típico debate en el que me vendría bien un contra-ejemplo. Hablo de programación en gerenal, pero por si sirve de algo, ciñámoslo a C++.

¿Es posible?


Título: Re: Duda de conceptos
Publicado por: [D4N93R] en 4 Diciembre 2010, 04:03 am
Depende todo de tu implementación y de la forma que le quieras dar, yo personalmente, uso "for" cuando se la cantidad de ciclos, y while cuando no se el número de éstos, idependientemente de la cantidad que sean. De esta forma queda mucho más entendible para terceros que lean tu código, y obviamente para depurar.

Un saludo!


Título: Re: Duda de conceptos
Publicado por: pucheto en 4 Diciembre 2010, 04:14 am
No siempre convienen para lo mismo, pero sirven para lo mismo...
por ejemplo:

Citar
while(!list.empty()){
//hago cosas
}

con un for quedaria:
Citar
for(;!list.empty(); ){
//hago cosas
}

El for queda elegante cuando tenes un iterador sobre algo o un rango...


Título: Re: Duda de conceptos
Publicado por: skapunky en 8 Diciembre 2010, 12:54 pm
Tampoco sirve para lo mismo, while es para esperar una situacion que puede llegar en X momento o como bien dicen arriba crear una estructura repetitiva sin saber el valor final. El FOR siempre es para crear repeticiónes hasta un valor conocido.