VS || Teema lehele

Ülesanne 4071, punkte 3, teema: Operaatorid ehk tehted

Ava ülesanne nr
Kirjuta C# konsoolirakendus, mis vahetaks sisestatud tekstis mingi antud sõna teise ette antud sõnaga nii, et kui vahetatav sõna algab suurtähega, siis peab ka vahetus algama, kui kõik tähed on suured, siis olgu ka vahetuse järel, kui kõik tähed on väikesed, siis nii jäägu ka vahetuse järel. Seejuures suur- ja väiketähtede kasutust vahetatavas sõnas ei arvestata.
Näiteks tekst:
Ta ütles Jah, jah, JAH,
Jah, jah, JAH!!

peaks muutuma tekstiks
Ta ütles Ei, ei, EI,
Ei, ei, EI!

Selgitus ja lahendamisjuhised

Selle ülesande puhul on õpetlik tähele panna, et lisaks väiketähtedele (lowercase) ja suurtähetedele (uppercase) võib tekst olla ka TitleCase vormis, mis tähendab sõnade suurt algustähte. .NET raamistik sisaldab selle teisendamiseks meetodit CultureInfo.CurrentCulture.TextInfo.ToTitleCase(textToChange).
Tasub tähele panna, et konsoolile kirjutatud tekst loetakse muutujaks sisestusklahvi (Enter) vajutamisel.
Teiseks, kuna hea lahendus võimaldab töödelda mitmerealist teksti, siis ei saa töödeldava teksti sisestuse lõpetamiseks kasutada sisestusklahvi. Küll aga sobib mõni muu klahvivajutus, mida tekstis ei ole, näiteks Esc.
Pane tähele, et see ülesanne näeb ette vaid kolme suurtähe kasutamise varianti: kõik tähed sõnas on väiketähed, kõik tähed sõnas on suurtähed, sõna esimene täht on suurtäht.

Koodi alguses võiks teksti sisestus olla umbes järgmiste käskudega:
Console.WriteLine("Sisesta sõna, mis tuleb vahetada.");
Console.WriteLine("Sisesta sõna, mille vastu vahetada.");
Console.WriteLine("Sisesta tekst, milles tuleb sõnu vahetada, lõpetamiseks vajuta Esc ja Enter.");
Vastamiseks ning teiste saadetud ja andmebaasis oleva vastuse vaatamiseks tuleb selle ainega seotud kasutajana sisse logida.