如何在C ++中使用未知数量的变量创建和计算公式

时间:2018-08-30 17:16:52

标签: c++

好的,因此通过文本进行解释将非常复杂,但是我会尽力尝试。

我正在制作一个通用计算器,其中计算器的功能之一是在给定未知数量的变量的情况下处理公式。我已经看到了一些方法可以做到这一点,但是对于我如何尝试使用此计算器,它将无法正常工作。 函数总和的示例:

while (cin >> input) 
    count++; 

通常这是可行的,但问题是我不能让用户一次又一次地为一个公式输入值,例如:Formula Example

(很抱歉让我更容易地解释图片)在其中多次,我不得不一遍又一遍地使用相同的数字。如果您需要它来理解我在说什么,这里是整个过程: Entire problem

问题是,通常我会为每个点图添加另一个浮点数,但我不知道用户要输入的浮点数提前。理想的方法是让程序询问用户可以使用表格中的所有点,也可以使用以下格式输入这些点:“(1,2,(2,4)(3,6)...”

预先考虑,我是否可以创建一个函数,使程序创建一个整数并将该整数动态分配给一个值?但是,如果尚未创建新的整数,那么实际的数学公式将如何与之交互?

谈论这个让我很头疼。...

我实际上想说的更多: 我想在脑海中想出的一个主意是

string VariableName = A [or something]

然后,通过类似VariableName =“ A” +1的值(等于B)将VariableName =“ A”重新分配给VariableName =“ B”。

然后,您将重复该步骤,直到用户输入无效的输入为止。但是显然你不能用字母做数学运算,所以我不知道该怎么做。

1 个答案:

答案 0 :(得分:2)

我认为您对此太想了。这非常简单,不需要存储输入值。

要注意的主要事情是,您需要计算(第2步)X和Y的值之和,它们的乘积之和和X平方的和。要计算许多值的总和,您不需要将所有值加在一起,而一次只需要一个。就像用户提供它们时一样。因此,声明四个变量:sxsysxysxx。将它们初始化为0。得到的X和Y每隔两个,将它们分别添加到sxsy,将它们的乘积添加到sxy,将X与它的乘积添加到{{1 }}。

现在,您已经拥有计算a和b的最终结果所需的一切。

无论如何,一本好的C ++书籍都是有用的。