gpt4 book ai didi

可以将复数作为变量的Java数学表达式解析器?

转载 作者:行者123 更新时间:2023-11-30 07:38:48 27 4
gpt4 key购买 nike

我正在 Processing 中编写程序转换复数。但是,我想要一种获取输入字符串并使用复杂变量计算转换的方法。例如:

1/(z+1)
(z^2)/(z/2)

其中 z 是一个复数。现在,我查看了 JEP 和一些 examples ,但我不知道它是否允许您实际输入 z 作为变量(无论如何它都不是免费的)。是否有我可以用来执行此操作的 Java 表达式解析器(在处理中工作,它使用旧版本的 java 并且没有泛型)?

如果没有,有人可以告诉我如何创建一个的基础知识吗?

最佳答案

如 PhiLo 所述,您可以使用泛型。试试这个处理草图:

import java.util.*;
java.util.List<String> list = Arrays.asList("a", "b", "c");
textFont(loadFont("UMingCN-30.vlw"));
for(int i = 0; i < list.size(); i++) {
text(list.get(i), 5, int(i*30)+30);
}

还有一个非商业版本的 JEP 可用 (GPL)。下载here并将其添加到您的处理类路径(导入)。成功后,您可以像这样使用 JEP:

void setup() {
org.nfunk.jep.JEP parser = new org.nfunk.jep.JEP();
parser.addComplex();
try {
parser.parseExpression("(1+2*i) + (3+8*i)");
println(parser.getComplexValue());
} catch(Exception e) {
e.printStackTrace();
}
}

产生(预期的)输出:(4.0, 10.0)

关于可以将复数作为变量的Java数学表达式解析器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1446466/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com