Vector not updating in while loop
显示 更早的评论
The user will enter the length of several pipes as a vector (all positive integers). You must cut all the pipes into pieces using as few cuts as possible, but you can only make cuts the length of the smallest pipe left.
It only subtracts the minimum value from the original vector once and then it just continues counting without updating my vector.
pipe = input('Enter pipe lengths in []: ');
cut = 0;
while max(pipe) > 0
pipe = pipe - min(pipe);
cut = cut + 1;
end
fprintf('%g cuts are needed!',cut);
回答(1 个)
Cris LaPierre
2021-10-13
0 个投票
It is replacing the current value of pipe with the new value. It sounds like you instead want to create a vector. See Ch 13 of MATLAB Onramp for you to create a vector using a for loop.
类别
在 帮助中心 和 File Exchange 中查找有关 General Applications 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!