Heim >Backend-Entwicklung >C++ >Wie kann ich Zahlen in Wörter in C#konvertieren?
Zahlen-zu-Text-Konvertierung in C#
Das Konvertieren numerischer Werte in ihre entsprechende Literalform ist eine häufige Aufgabe in der Programmierung. Besonders nützlich ist diese Konvertierung in verschiedenen Szenarien, etwa bei der Erstellung von Rechnungen, der Automatisierung von Sprachansagen oder der Verarbeitung von Sprachbefehlen.
Ein Ansatz besteht darin, eine Kombination aus modularer Arithmetik, bedingten Anweisungen und vordefinierten Arrays oder Wörterbüchern zu verwenden, um Zahlen und Zahlengruppen ihren entsprechenden Literaldarstellungen zuzuordnen. Hier ist ein in C# implementiertes Beispiel:
<code class="language-csharp">public static string NumberToWords(int number) { // 处理零和负数的特殊情况 if (number == 0) return "zero"; else if (number < 0) return "minus " + NumberToWords(-number); string words = ""; // 处理百万 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[] units = { "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten", "eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen" }; string[] tens = { "zero", "ten", "twenty", "thirty", "forty", "fifty", "sixty", "seventy", "eighty", "ninety" }; if (number < 20) words += units[number]; else { words += tens[number / 10]; if (number % 10 > 0) words += "-" + units[number % 10]; } } return words.Trim(); }</code>
Um diese Methode zu verwenden, geben Sie einfach eine Ganzzahl als Parameter an und es wird das wörtliche Äquivalent dieser Zahl zurückgegeben. Beispielsweise gibt NumberToWords(123)
„einhundertdreiundzwanzig“ zurück und NumberToWords(-543)
„minus fünfhundertdreiundvierzig“. Der Code wurde verbessert, um die Verwendung des verbindenden „und“ und eine klarere Handhabung negativer Zahlen und Nullen zu ermöglichen. Die Trim()
-Methode wird verwendet, um zusätzliche Leerzeichen zu entfernen.
Das obige ist der detaillierte Inhalt vonWie kann ich Zahlen in Wörter in C#konvertieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!