Hej!
Utknęłam i nie wiem co zrobić, mam klasę, która zawiera wskaźnik na korzeń drzewa liczb i operatorów arytmetycznych i chciałabym je wyświetlić ale uwzględniając priorytet operatorów. Jak mogłabym to zrobić?
Załóżmy, że mamy, np. taki przypadek:
+
/ \
+ 9
/ \
2 *
/ \
5 4
Chciałabym aby wyrażenie zostało wyświetlone w taki sposób: (2+(5*4))+9).
Pozdrawiam i z góry dziękuję za jakiekolwiek pomysły bo kombinowałam na różne sposoby przenosiłam wyświetlanie w różne miejsca,dawałam różne warunki i nic :(
void Interpreter::printTree(std::unique_ptr<AbstractExpression>& root)
{
if (root)
{
printTree(root->getLeftNode());
std::cout << root->emit();
printTree(root->getRightNode());
}
}