postfix-notation

    0熱度

    1回答

    我有我正在寫在那裏我轉換後綴表達式來綴 例 後綴的程序(C++),以中綴二進制表達式樹(括號)轉換爲綴:(A + b)*(C *(d + E)) 您通過遍歷 「inorderly」 通過二進制表達式樹 我打印出表達的recursiving功能做到這一點正確的,但我不能完全弄清楚如何將pativehesis放在正確的位置。 我的最佳嘗試是結果(a + b)*(c *(d + e //,但我不能正確地

    0熱度

    1回答

    所以我目前正在使用Stack for Postfix和Infix表達式的作業。我的問題是,我將如何設置我的堆棧,以便推送和流行字符和雙打。現在我能夠讓Infix到Postfix正常工作,但是當我嘗試計算後綴的總數時,它會發生爆炸。現在我正在使用一個數組來存儲字母A-Z的值。這是我的postFix eval函數。 public double postFix(String infix, double[

    0熱度

    1回答

    我試圖讓我的中綴到後綴代碼,它的工作原理沒有大括號,但是當我試圖包含佔位符的部分時,它崩潰了,這裏是代碼的主要部分: for (i=0; i<characters.length; i++) { if (characters[i]=='*' || characters[i]=='/' || characters[i]=='+' || characters[i]=='-' || chara

    2熱度

    2回答

    我已經編寫了一個將字符串轉換爲數學表達式以進行評估的應用程序。這是通過將字符串轉換爲postfix,然後構建表達式樹並解決它來完成的。 現在我想知道,什麼是最有效的方式來轉換成後綴? 樣品表達 - (2+(3 * 4 +(4 /(3 *(4 + 6)))))或(3 + 4)或3 + 4

    1熱度

    1回答

    我不知道我應該在這裏做什麼,但我認爲我的代碼大部分都很好。我只能編輯Evaluate()方法中的代碼。請幫助。 這裏是我的課我的主要方法 package labs.lab3; import java.util.Scanner; // Needed for the Scanner import java.io.*; // Needed for the File and IOExceptio

    0熱度

    1回答

    我正在用C++編寫程序來將中綴轉換爲後綴。這是我的代碼。 #include<iostream> #include<stack> #include<string.h> using namespace std; int getPrecedence(char tmp) { if(tmp=='+') { return 1; } else

    0熱度

    1回答

    我想編寫一個程序來運行使用反向波蘭表示法的計算器,我遇到了一些問題,我在解釋它們的代碼中有評論,所以如果有人可以伸出援助之手,它會是不勝感激! 我知道它與嘗試在棧中獲取位置-1有關,但我似乎無法解決它。 import java.io.BufferedWriter; import java.io.IOException; public class Calculator {

    -1熱度

    2回答

    每次在Visual Studio中都會收到相同的錯誤消息。我不知道錯誤來自哪裏。基本上我試圖使用堆棧將中綴表達式(A + B-C)轉換爲後綴表達式(AB + C-)。任何幫助將不勝感激 DriverExpression.cpp Expression.obj:錯誤LNK2019:無法解析的外部符號 「公用:__thiscall stackType :: stackType(INT)」?(?? 0 $

    0熱度

    1回答

    Stack<String> s = new Stack<String>(); String[] tokens = infix.split(" "); StringBuilder output = new StringBuilder(); Integer.getInteger("+", 1); Integer.getInteger("-", 1);

    0熱度

    2回答

    Stack<String> s = new Stack<String>(); String[] tokens = infix.split(" "); 現在我正在接受綴串來計算的話一個計算器,但他們必須用空格隔開,我如何讓它在後綴評估人員不能接受任何空格。 I.E.我不得不這樣做 5 + 5 * sin (32) 但我想它接受或 5+5*sin(32)