Avatar billede picard Nybegynder
15. marts 2000 - 12:30 Der er 8 kommentarer og
1 løsning

Binpacking, pakning af 3d kasser i en box

Er der nogle der kan svare på hvordan man laver et program der kan udregne hvordan nogle kasser skal ligge i en box for at der kan lægges flest mulige ???

Kasserne kan ligge på deres højde bredde, længde!!!!
alle kasserne har samme størrelse!!!

Et rigtigt svar en sourcekoden til den algoritme der skal bruges !!!!!!!!!!!!!!!!!!
Avatar billede delphidaner Nybegynder
29. marts 2000 - 15:08 #1
Kunne man ikke bare tage de tre dimensioner af den store kasse og dividere med dimensionerne af de små kasser? Altså:
StorLængde / LilleLængde
StorBredde / LilleBredde
StorHøjde / LilleHøjde
og derefter runde det ned til det nærmeste tal, som går op i hver af de tre divisioner, og til sidst gange det sammen?

Hvad med:

function CountBoxes(BigHeight, BigWidth, BigLength, SmallHeight, SMallWidth, SmallLength): LongInt;

var
  L, H, W: Integer;

begin

  L := BigLength div SmallLength; // div er heltalsdivision
  W := BigWidth div SmallWidth;
  H := BigHeight div SmallHeight;

  Result := L * W * H;

end;

Jeg garanterer ikke at det virker, det var bare noget "on the fly" jeg fandt på.

Fortæl endelig hvis det virker!
Avatar billede picard Nybegynder
29. marts 2000 - 15:46 #2
Det var et godt bud, men problemet er en smule mere kompliceret end det !!!!!!!!!!
tror hellere jeg må slette spørgsmålet :)

Avatar billede delphidaner Nybegynder
30. marts 2000 - 13:32 #3
Vent med at slette den... Jeg vil godt prøve at tage udfordringen. :o)
Avatar billede delphidaner Nybegynder
31. marts 2000 - 08:17 #4
Skal den bare regne ud, hvor mange der maksimum kan være i den, eller skal den også vise hvordan de skal lægges i kassen?
Avatar billede psv Nybegynder
31. marts 2000 - 08:58 #5
Jeg tror det er noget sværere end det lyder. Umiddelbart virker det ret simpelt... Hvordan skal de små kasser vendes hvis der skal mases flest muligt ned i en box...
Problemet er bare at de højst sandsynligt ikke skal vende ens. Det kan man vel kun regne med hvis den store kasses sider er et multiplum af de smås.

Glæder mig til at se dit forslag delphidaner
Avatar billede delphidaner Nybegynder
31. marts 2000 - 09:20 #6
Jeg eksperimenterer med det.... Jeg elsker en god udfordring!
Avatar billede picard Nybegynder
31. marts 2000 - 12:17 #7
Ok det lyder godt
Avatar billede picard Nybegynder
31. marts 2000 - 20:02 #8
Delphidaner, hvis du kan få den til at vise hvordan de skal lægges i kassen, så vil det bare være guld !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


Jeg har knoklet med problemet i rigtig lang tid, så held og lykke :)
Avatar billede picard Nybegynder
15. maj 2000 - 19:59 #9
Lukket
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester