anidar 3 bucles while
Publicado por Juanma (157 intervenciones) el 26/02/2023 14:07:18
Hola,
Sigo buscando un código capaz de optimizar el corte de perfiles comerciales.
Para eso, creo que una buena solución sería proceder de la siguiente forma:
- ordenar de mayor a menor los trozos a cortar.
- seleccionar todos los trozos que tienen casi la longitud de los perfiles comerciales (5800 a 6000 mm)
- seleccionar los trozos que de 2 en 2, suman una longitud de los perfiles comerciales
- seleccionar los trozos que de 3 en 3, suman una longitud de los perfiles comerciales
- seleccionar los trozos que de 4 en 4, suman una longitud de los perfiles comerciales
- seleccionar los trozos que de 5 en 5, suman una longitud de los perfiles comerciales
- a partir de aquí ya los trozos son lo suficientemente chicos como para hacer un buen encaje simplemente poniéndolos de mayor a menor, y buscando el siguiente que quepa cuando no quepa el que le toca. (esto es lo que tengo implementado, y según el caso, ya hace bastante buen encaje)
También he pensado que la forma de encontrar los elementos que sumen, por ejemplo, de 3 en 3, la longitud del perfil comercial, es mediante bucles while anidados, para recorrer la lista buscando las distintas combinaciones de 3 elementos distintos.
Sigo buscando un código capaz de optimizar el corte de perfiles comerciales.
Para eso, creo que una buena solución sería proceder de la siguiente forma:
- ordenar de mayor a menor los trozos a cortar.
- seleccionar todos los trozos que tienen casi la longitud de los perfiles comerciales (5800 a 6000 mm)
- seleccionar los trozos que de 2 en 2, suman una longitud de los perfiles comerciales
- seleccionar los trozos que de 3 en 3, suman una longitud de los perfiles comerciales
- seleccionar los trozos que de 4 en 4, suman una longitud de los perfiles comerciales
- seleccionar los trozos que de 5 en 5, suman una longitud de los perfiles comerciales
- a partir de aquí ya los trozos son lo suficientemente chicos como para hacer un buen encaje simplemente poniéndolos de mayor a menor, y buscando el siguiente que quepa cuando no quepa el que le toca. (esto es lo que tengo implementado, y según el caso, ya hace bastante buen encaje)
También he pensado que la forma de encontrar los elementos que sumen, por ejemplo, de 3 en 3, la longitud del perfil comercial, es mediante bucles while anidados, para recorrer la lista buscando las distintas combinaciones de 3 elementos distintos.
Valora esta pregunta


0