infix-notation

    0热度

    1回答

    我想从中缀转换为后缀(我还有更多要做),但我甚至无法继续工作,因为我得到一个错误。 这里就是错误在于: //infix input is "1 + 2 * 3 - 4" //tokens = {"1", "+", "2", "*", "3", "-", "4") for(int i = 0; i < tokens.size(); i++) { if(isOperand(tokens

    0热度

    1回答

    我有以下代码来评估我的表达式树。但问题是它给了我错误的答案。我已经测试过,并发现当我的代码 double left = (double) Character.digit((char) evaluateTree(t.left), 10); 左值等于-1,我相信'+'的双倍值。当我调用root.left(它是'+')并尝试使用Character.digit(char)来获得它的d

    0热度

    1回答

    我想弄清楚如何将中缀表达式转换为Scheme中的前缀。 我发现this后,这是我想要的,但在相反的方向。从中缀 - >前缀代替前缀 - >中缀时会发生什么变化? 编辑:我忘了提及我需要考虑和处理变量。例如,输入 '(2 + 3 * a^5 + b)

    -1热度

    1回答

    我能够将中缀转换为后缀并用一位数进行计算,但我无法转换为后缀并使用N位数进行计算。 PLz任何人都可以帮助我!谢谢!! 这里是我的代码以个位数 #include<iostream> #include<stdio.h> #include<string.h> #include<math.h> #include<stdlib.h> using namespace std; class i

    0热度

    2回答

    我一直在试图找出我的代码的错误无济于事。除了评估后缀表达式之外,我应该为中缀翻译器编写一个中缀。我的代码运行,但不幸的是它不会返回正确的值。 我有一个计算器GUI,只要等号被按下,就会调用下面显示的代码。计算器将一个由空格分隔的字符串作为参数传递。然后我在这个空格分隔的字符串上使用String Tokenizer并从那里开始工作。如果有帮助,我可以提供计算器GUI的代码。 我的问题在于计算器提供的

    0热度

    1回答

    我正在尝试将中缀表达式转换为后缀表达式的代码。目前,如果我输入例如“5 + 6”,程序将正常工作,它将输出正确的答案,即“5 6 +”。当我输入多于一个运算符(例如“5 + 6-3”)时,会出现问题,输出错误答案“+ 3-”。有人可以指出我犯的错误吗?提前致谢 ! void main(){ Stack *s = new Stack; string input; cout <<"Ente

    1热度

    2回答

    #include <stdio.h> #include <stdlib.h> #include <ctype.h> #include <string.h> #include "stack.h" #define MAX_EQU_LEN 100 static int prec(char operator) { switch (operator) { c

    1热度

    3回答

    我正在阅读关于advanced operators的swift。 基本功能: func add(a: Unicorn, b: Unicorn) -> Unicorn { return a + b } add(u1, u2) // two unicorns are added 中缀运算符: func + (a: Unicorn, b: Unicorn) -> Unicorn { return

    0热度

    1回答

    我编写了以下方法将中缀表达式转换为后缀表达式。如果注释代码被删除,程序将返回给定单个数字整数的有效结果; 11 + 2将导致1 1 2 +而不是11 2 +,但1 + 2 - 3会返回1 2 + 3 - 。为了包含n位数字,如果相邻字符不是数字,我实现了一个将空格连接到后缀字符串的if语句。然而,在执行期间产生以下错误: 异常在线程 “主” java.lang.StringIndexOutOfBo

    12热度

    1回答

    为什么f <$> g <$> x等于(f . g) <$> x,尽管<$>不是正确关联? (这种等价的是a popular idiom有效使用普通$,但目前$是右结合!) <*>具有相同的关联性和优先级为<$>,但表现不同! 例子: Prelude Control.Applicative> (show . show) <$> Just 3 Just "\"3\"" Prelude Contro