文字列配列の値を文字列と整数として結合するための解決策を確認する

完了

次のコードは、前のユニットの課題に対して考えられる解決策の 1 つです。

手記

この演習のコード サンプルは、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}");

この課題を解決する方法は複数ある可能性があるため、このコードは単に "考えられる解決策の 1 つ" にすぎません。 提案されたソリューションは TryParse()に依存していますが、同様に機能する別のアプローチがある可能性があります。 結果が次の出力と一致することを確認してください。

Message: ABCDEF
Total: 68.3

成功した場合は、おめでとうございます。

大事な

この課題を完了できない場合は、先に進む前に前のユニットを確認する必要があります。