私は複雑なビジネス ロジックを持っており、ブール代数にはロジックを単純化する機能が必要であると考えています。次の問題を解く方法を誰か教えてくれませんか?
問題はゲーム X3: Reunion から来ています。役立つ場合は、これがユニバースマップです。
宇宙には、ワープゲートによって互いにリンクされたセクターがあります。あるセクターから別のセクターに移動するには、そこに飛ぶかジャンプします (こちらの方が高速です)。別のセクターにジャンプする場合は、ワープ ゲートの近くに人が多すぎないようにする必要があります (そうしないと、他の人にぶつかってしまいます)。ジャンプするには、ジャンプ デバイスと十分なエネルギーが必要です。
ジャンプでしか到達できない孤立したセクターがいくつかあります。
問題は、船とその現在のセクターと目的地のセクターが与えられた場合、船がそのセクターに到達する方法 (ジャンプまたは飛行) を決定することです。さらに、2 つのセクターが隣接している場合は、わざわざジャンプしないでください。
設定しましょう:
a: two sectors are adjacent
b: have jump device and enough energy
c: destination sector is not isolated
d: not too crowd near the gate of the destination
if(!a && b && d)
jump now
end
if(!a && b && !d)
can jump but wait until there is not too crowd near the gate of the destination.
Should recheck before the jump, because the ship may be losing the energy
that makes it not enough to jump.
end
if(!b && c)
fly to destination
end
上記の if-end ステートメントを if-else if-...else-end ステートメントに変換できますか? そして、最後の「else」が何を意味するのか知りたいです。結果だけでなく、結果に近づく手順も必要です。
どうもありがとう!