在C ++中将3变量方程拆分为双精度和字符

时间:2017-09-30 17:39:28

标签: c++ parsing equation

我正在研究方程式,但我无法弄清楚如何输入等式的不同部分。

等式始终格式化: [双] [X / Y / Z] [符号] [双] [X / Y / Z] [符号] [双] [X / Y / Z] = [双]。

一个例子:2.5y + 4.7x + 7z = 46

为了实现这一点,我尝试使用四个双变量和六个字符变量。

加倍a,d,g,j;

char b,c,e,f,h,i;

这样,方程式就可以分解为变量a b c d e f g h i,然后我可以对其进行操作。

如果等式中的任何地方都有空格,我可以使用istringstream来分割它们,但是没有。我不允许更改输入文件。

如何将数字放在双打中,字母/符号放在字符中?

1 个答案:

答案 0 :(得分:1)

您可以使用istringstream和out of stream运算符。 例如:

findCategory(fullSlug: string): number {
  return this.getCategories()
    .map(data => data.filter(c => c.fullSlug == fullSlug)[0].id)
}

等式中的符号是相关koefs的符号。