caute mam ukol
Továrna expeduje své výrobky v krabicích tvaru krychle. Používá 6 velikostí krabic, a to krabice o hraně velikosti 20 cm, 40 cm, 60 cm, 80 cm, 100 cm a 120 cm. Zabalené výrobky se odvážejí v paletách, které mají tvar krychle o hraně 120 cm.
Na standardním vstupu je zadáno šest kladných celých čísel (z rozsahu typu integer), která představují počty jednotlivých druhů krabic připravených na odvoz v pořadí od nejmenších krabic po největší krabice. Určete, jaký minimální počet palet je třeba použít k odvozu všech těchto krabic s výrobky.
Krabice se při ukládání do palet nesmějí nijak deformovat. Výsledkem výpočtu je jediné celé číslo představující počet potřebných palet, program ho vypíše na standardní výstup.
uses crt;
var b: array [1..6] of longint;
a: array [1..6] of longint;
p,i,j,k,l,V:longint;
begin
clrscr;
a[1]:=20;
a[2] := 40;
a[3] :=60;
a[4] := 80;
a[5]:=100;
a[6] :=120;
V:=1728000;
p:=0;
for i:=1 to 6 do
readln (a[i]);
for i:=1 to 6 do
writeln (a[i], ' ');
p:=b[6];
for j:=5 downto 1 do begin {delam dokud mam krabici}
while (b[j]<>0) do begin
a [j]:=b[j]-1;
p:=p+1;
V:=V-(a[j]*a[j]*a[j] ) ;
k:=j;
if (k>1) then
for k:=j-1 downto 1 do begin
if (V mod (a[k] * a[k]*a[k]) = 0 )then begin
b[k]:= b[k] - (V div (a[k]*a[k]*a[k]) );
V:= V - ( (V div (a[k]*a[k]*a[k] ) ) * (a[k]*a[k]*a[k]) ) end
else
if (k>1) then
for l:=k-1 downto 1 do begin
b[l]:= a[l] - (V div (a[l]*a[l]*a[l]) ) ;
V:= V - ( (V div (a[l]*a[l]*a[l] ) ) * (a[l]*a[l]*a[l]) ) end;end;
V:=1728000;
end; end;
write ('ahoj');
writeln (p);
readln
end.
nechce se mi to pocitat a nevim kam dat pocitadlo popripade nemuzu najit logickou chybu v tom muzete me poradit?