C# :: Aufgabe #389 :: Lösung #4
4 Lösungen

#389
Vokale tauschen (rückwärts ausgeben)
Anfänger - C#
von JKooP
- 16.04.2021 um 21:31 Uhr
Gegeben ist eine Zeichenkette (Wort) welche nur aus Groß- und Kleinbuchstaben gebildet wird.
Ziel ist es, die Zeichen so zu verändern, dass der erste Vokal mit dem letzten, der zweite mit dem vorletzten
und so weiter getauscht wird. Konsonanten werden nicht verändert.
Groß- und Kleinschreibung soll beachtet werden.
Beispiele:
s = Hallo
Lösung: Holla
s = Heidi
Lösung: Hiide (Das "i" in der Mitte bleibt erhalten, da kein Tauschpartner vorhanden!)
s = trAInyOUrprOgrAmmEr
Lösung: trEAnyOUrprOgrImmAr
Erstelle eine Methode/Funktion, die oben beschriebene Aufgabenstellung erledigt.
Viel Spaß
Ziel ist es, die Zeichen so zu verändern, dass der erste Vokal mit dem letzten, der zweite mit dem vorletzten
und so weiter getauscht wird. Konsonanten werden nicht verändert.
Groß- und Kleinschreibung soll beachtet werden.
Beispiele:
s = Hallo
Lösung: Holla
s = Heidi
Lösung: Hiide (Das "i" in der Mitte bleibt erhalten, da kein Tauschpartner vorhanden!)
s = trAInyOUrprOgrAmmEr
Lösung: trEAnyOUrprOgrImmAr
Erstelle eine Methode/Funktion, die oben beschriebene Aufgabenstellung erledigt.
Viel Spaß
#4

von JKooP (18090 Punkte)
- 22.04.2021 um 18:47 Uhr
NET 5.x; C# 9.x; VS-2019
C#-Code

using System.Text.RegularExpressions; using System.Linq; using System.Text; var s = "trAInyOUrprOgrAmmEr"; var sb = new StringBuilder(); var vowels = "AaEeIiOoUu"; var matches = new Regex(@"[" + vowels + "]").Matches(s).Reverse().Select(x => x.Value[0]).ToList(); var k = 0; s.ToList().ForEach(v => sb.Append(vowels.Contains(v) ? matches[k++] : v)); System.Console.WriteLine(sb);
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1