Gennemse en løsning for at kombinere strengmatrixværdier som strenge og som heltalsudfordring

Fuldført

Følgende kode er en mulig løsning på udfordringen fra det forrige undermodul.

Seddel

Kodeeksempler i denne øvelse er designet på baggrund af en-US kulturindstillinger og bruger et punktum (.) som decimalseparator. Hvis du bygger og kører koden med en kulturindstilling, der bruger en anden decimalseparator (f.eks. et komma ,), kan det give uventede resultater eller fejl. Du kan løse problemet ved at erstatte punktumkommaseparatorerne i kodeeksempler med den lokale decimalseparator (f.eks. ,). Hvis du vil køre et program ved hjælp af indstillingen en-US kultur, kan du føje følgende kode til toppen af programmet: using System.Globalization; og efter andre using-sætninger skal du tilføje 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}");

Denne kode er blot "en mulig løsning", fordi der sandsynligvis er flere måder at løse denne udfordring på. Den foreslåede løsning er afhængig af TryParse(), men det er muligt, at du har en anden tilgang, der fungerer lige så godt. Sørg bare for, at dit resultat stemmer overens med følgende output:

Message: ABCDEF
Total: 68.3

Tillykke, hvis det lykkedes!

Vigtig

Hvis du havde problemer med at fuldføre denne udfordring, skulle du måske gennemse de tidligere enheder, før du fortsætter.