我做了一个模型,放在附件中。虽然模块不多,但里面的逻辑有些复杂,主要是这个题目中我们其实需要考虑很多种情况
, r4 \# m0 i" B6 u/ @
4 t* c8 A+ D _4 Q" S' M(1)如果烤箱容量满了怎么办? J; G0 x! e. o2 G0 @
(2)如果成批的两个物件发现烤箱只有最低一层有空位怎么办? & i3 R" S, N4 ~1 T. c5 A8 h! z$ ]
(3)如果只有一个物件,是随便选一个空位放置,还是把优先级给予那些下一层已经被占用无法提供两个相邻位置的空闲位置
+ K& |& q$ L- ]9 V' j& b# a
z2 Z9 d) e( H4 Y: k7 _) c等等。这些只有做起来才发觉很复杂。, @$ \: E: z. K' A) m
6 ^0 H: _/ k$ [- s7 L' T但附件中的模型已经考虑到了这些情况。, _6 A K9 E! U4 _- Y6 C; s
8 ?; h, {6 |9 }% c' E我相信看明白这个例子非常有助于了解ExtendSim 的灵活性。
9 k2 x% d0 o3 J: f/ y5 I2 c( q" Z, k
请注意到 Unbatch 模块 Properties 分页中关于属性的一些选择。: [- y$ F! D5 u3 t" _0 \, h9 r8 U
4 V& Y% s5 a" j3 ~' \- W# Z当然,如果还有其他情况我没有考虑完整,请指出来。
- @4 x- q* g) E, R' z0 o9 o2 _- s
原程序的错误已经修正,请重新下载附件
5 J8 Y, B" U; c9 D: l* C9 Q$ R H6 Y3 Y% M r9 X+ g& |3 [
[ 本帖最后由 iesim 于 2009-3-13 12:08 编辑 ] |