private List<string> convertInList(string a)
{
List<string> simvols = new List<string> { "+", "-", "*", "/", "^" };
List<string> primer = new List<string>();
string cifra = "";
int i = 0;
while (i < a.Length)
{
if (simvols.Contains(a[i].ToString()))
{
primer.Add(a[i].ToString());
i++;
}
else
{
while (i < a.Length && !simvols.Contains(a[i].ToString()) && a[i].ToString() != ")" && a[i].ToString() != "(")
{
cifra += a[i];
i++;
}
primer.Add(cifra);
cifra = "";
}
}
Данный метод преобразует строку в лист. Пример: string "30+4" в List {"30", "+", "4"}. Проблема возникает когда вводятся длинные выражения.