如何将运算符存储在数组中?

时间:2019-01-19 15:39:30

标签: c++ arrays operation

我正在尝试将3个随机运算符之一(+或-或组合列表中的前面和后面的条目)存储在数组中,然后稍后将其调出以执行操作。最终,我希望程序能够由随机运算符添加,减去或合并一组整数列表,然后返回总数,但现在我只想解决存储和调用“ +”和数组中的“-”。

我创建了一个输出0、1或2的随机化器。根据随机化器的输出,它在我的数组中将一个条目设置为等于字符串“ +”,“-”或“ _” (用于合并)。然后,我设置了一个将字符串存储为整数的变量(数组中设置的数字列表是字符串,这就是为什么我首先这样做的原因),这当然不适用于“ +”,“- “, 要么 ” _”。我现在完全陷入困境,不知道该怎么办。

#include <iostream>
#include <string>

std::string oldlist[17];

int operationrandomizer;

int total;

std::string plus;
std::string minus;
std::string combine;

int oldlistint0;
int oldlistint1;
int oldlistint2;

int newlistint;

int main() {
   srand((unsigned)time(0));

    plus = "+";
    minus = "-";
    combine = "_";

    operationrandomizer = (rand()%3);

    if (operationrandomizer == 0) {
    oldlist[1] = combine;
     }

    else if (operationrandomizer == 1) {
        oldlist[1] = plus;
    }

    else if (operationrandomizer == 2) {
       oldlist[1] = minus;
    }

    oldlist[0] = "1";
    oldlist[1];
    oldlist[2] = "2";

    oldlistint0 = stoi(oldlist[0]);
   // oldlistint1 = stoi(oldlist[1]); // cant convert "+" to an int     bc + has no int value
    oldlistint2 = stoi(oldlist[2]);

    total = oldlistint0 + oldlistint1 + oldlistint2;
    std::cout << total << "\n";

    return 0;
}

我相对确定随机化器和数组可以正常工作。我只需要一种将运算符存储在数组中然后再次将其拉出的方法。

0 个答案:

没有答案