Heim > Backend-Entwicklung > C++ > Wie konvertiere ich Zahlen in Wörter in C#?

Wie konvertiere ich Zahlen in Wörter in C#?

Susan Sarandon
Freigeben: 2025-01-24 14:17:10
Original
906 Leute haben es durchsucht

How to Convert Numbers to Words in C#?

Detaillierte Erläuterung der Konvertierung von C#-Zahlen in Text

Das Konvertieren von Zahlen in Text ist eine häufige Aufgabe in der Programmierung, und C# bietet eine einfache Möglichkeit, diese Funktionalität auszuführen. Als Ausgangspunkt können folgende Codebeispiele dienen:

<code class="language-csharp">public static string NumberToWords(int number)
{
    string words = "";

    if (number < 0)
    {
        words += "minus ";
        number = -number;
    }

    if (number == 0)
        return "zero";

    if (number >= 1000000)
    {
        words += NumberToWords(number / 1000000) + " million ";
        number %= 1000000;
    }

    if (number >= 1000)
    {
        words += NumberToWords(number / 1000) + " thousand ";
        number %= 1000;
    }

    if (number >= 100)
    {
        words += NumberToWords(number / 100) + " hundred ";
        number %= 100;
    }

    if (number > 0)
    {
        if (words != "")
            words += "and ";

        string[] unitsMap = { "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten", "eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen" };
        string[] tensMap = { "zero", "ten", "twenty", "thirty", "forty", "fifty", "sixty", "seventy", "eighty", "ninety" };

        if (number < 20)
            words += unitsMap[number];
        else
        {
            words += tensMap[number / 10];
            if (number % 10 > 0)
                words += "-" + unitsMap[number % 10];
        }
    }

    return words.Trim();
}</code>
Nach dem Login kopieren

Codepunkte:

  • NumberToWords Die Funktion akzeptiert eine Ganzzahl als Eingabe und gibt eine Zeichenfolgendarstellung ihrer Literaldarstellung zurück.
  • Diese Funktion verarbeitet negative Zahlen und fügt „Minus“ vor dem konvertierten positiven Literal hinzu.
  • Die Funktion gruppiert Zahlen in Millionen, Tausender, Hunderter und Einer. Für jede Gruppe werden die Zahlen durchlaufen und unter Verwendung der Arrays unitsMap und tensMap in Literale umgewandelt.
  • Die Funktion fügt entsprechende Verknüpfungen („Million“, „Tausend“, „Hundert“ und „und“) hinzu, um die endgültige Zeichenfolge zu bilden.

Dieser Code kann als Ausgangspunkt für die Behandlung komplexerer Szenarien verwendet werden, z. B. für die Behandlung von Zahlen außerhalb des Bereichs (-1000, 1000) oder Zahlen, die Kommas enthalten.

Das obige ist der detaillierte Inhalt vonWie konvertiere ich Zahlen in Wörter in C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage