J'ai une logique métier compliquée et je crois que l'algèbre booléenne ce genre de choses devrait avoir la capacité de simplifier la logique. Quelqu'un peut-il me dire comment le faire en résolvant le problème suivant?Comment simplifier la déclaration conditionnelle compliquée par des connaissances mathématiques
Le problème vient d'un jeu X3: Réunion. Here is the universe map, si aide.
Dans l'univers il y a des secteurs liés entre eux par des portes de chaîne. Pour aller d'un secteur à l'autre, vous pouvez vous y rendre ou y sauter (ce qui est plus rapide). Si vous sautez dans un autre secteur, vous devez vous assurer qu'il n'y a pas trop de foule près de la porte Warp (sinon vous allez planter sur d'autres personnes). Vous devez avoir un appareil de saut et assez d'énergie pour sauter.
Il existe des secteurs isolés qui ne peuvent être atteints qu'en sautant. La question est de savoir comment un navire et son secteur de secteur et de destination actuel déterminent comment le navire devrait se rendre dans le secteur (en sautant ou en volant). De plus, si les deux secteurs sont adjacents, ne vous embêtez pas à sauter.
Let 'set:
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
Pouvez-vous convertir les déclarations ci-dessus si fin à if-else si -... instruction else-end? Et j'aimerais savoir ce que signifie le "else" final. J'ai besoin non seulement du résultat mais aussi de la procédure qui approche le résultat.
Merci beaucoup!