Ознакомьтесь с решением для объединения значений массива строк в виде строк и целочисленных проблем

Завершено

Следующий код является одним из возможных решений для задачи из предыдущего урока.

Заметка

Примеры кода в этом упражнении предназначены на основе параметров языка и региональных параметров en-US и используют период (.) в качестве десятичного разделителя. Создание и запуск кода с параметром языка и региональных параметров, использующими разные разделители десятичных разделителей (например, запятую ,) могут дать непредвиденные результаты или ошибки. Чтобы устранить эту проблему, замените десятичные разделители периодов в примерах кода локальным разделителем десятичных разрядов (например, ,). Кроме того, чтобы запустить программу с помощью параметра языка и региональных параметров en-US, добавьте следующий код в начало программы: using System.Globalization; и после любых других операторов using добавить CultureInfo.CurrentCulture = new CultureInfo("en-US");.

string[] values = { "12.3", "45", "ABC", "11", "DEF" };

decimal total = 0m;
string message = "";

foreach (var value in values)
{
    decimal number; // stores the TryParse "out" value
    if (decimal.TryParse(value, out number))
    {
        total += number;
    } else
    {
        message += value;
    }
}

Console.WriteLine($"Message: {message}");
Console.WriteLine($"Total: {total}");

Этот код является просто "одним возможным решением", так как существует несколько способов решения этой проблемы. Предлагаемое решение основано на TryParse(), однако возможно, у вас есть другой подход, который работает одинаково хорошо. Просто убедитесь, что результат соответствует следующим выходным данным:

Message: ABCDEF
Total: 68.3

Если вы были успешными, поздравляем!

Важный

Если у вас возникли проблемы с выполнением этой задачи, возможно, вы должны просмотреть предыдущие единицы, прежде чем продолжить работу.