2012-03-15 74 views
1

我試圖寫的Java程序,將採取在一個表達作爲輸入字符串(形式R1 * R2 + R2 * R3),然後顯示相應的電路的形式給定的布爾表達式電路。模擬在使用Java

對於離:輸出應該是這樣的 添加電阻器R1。 最後,加一個電阻R2。

開始一個新的連接。 加一個電阻R2。 最後,加一個電阻R3。

我會想代表它在圖中,但首先我只是想實現它像上面的簡單....請提出的算法!

回答

3

依我之見,這涉及解決兩個相當不平凡的任務:

  1. 您需要解析表達式。我敢打賭,你還想用圓括號表達,比如(R1 + R2)* R3。這需要使用適當的解析器。我建議你看一下解析器生成器,比如JFlex/JavaCup或ANTLR。

  2. 如果你想給它一個合理的方式顯示給用戶,則需要在兩個方面很好地鋪陳組件。這基本上是一個圖表問題,可以通過現有的庫來解決。不過,正如我所說的那樣,實施起來可能並不是微不足道的。