Задача кодирования C # вычислить onetwosum [закрыто]C#

Место общения программистов C#
Ответить
Anonymous
 Задача кодирования C # вычислить onetwosum [закрыто]

Сообщение Anonymous »

При преобразовании строкового ввода типа Один+Один+Три-Четыре+Три в числовое представление, например 1+1+3-4+3, вычислите результат этого выражения.
В этом случае результат должен быть 4.
Мне удалось решить первую часть, используя пару ключ-значение функция/словарь и заменив один на 1, три на 3 и т. д.
Может кто-нибудь подсказать подход к оценке выражения после его преобразования в числовое представление?
Числа предположения могут быть от 0 до 9 и использовать только два оператора + и -
using System;

public class Program
{
public static void Main(string[] args)
{
string input = "one+one+three-four+three";
int result = EvaluateString(input);
Console.WriteLine("Result: " + result);
}

static int EvaluateString(string input)
{
string[] parts = input.Split('+', '-');
int num1 = ParseNumber(parts[0]);
int num2 = ParseNumber(parts[1]);
char operation = input[parts[0].Length];
return operation == '+' ? num1 + num2 : num1 - num2;
}

static int ParseNumber(string numStr)
{
switch (numStr)
{
case "one":
return 1;
case "two":
return 2;
case "three":
return 3;
case "four":
return 4;
default:
throw new ArgumentException("Invalid number: " + numStr);
}
}
}


Подробнее здесь: https://stackoverflow.com/questions/784 ... -onetwosum
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»