C#

C# Cümleyi Tersten Yazma

Merhabalar, C# derslerimize kaldığımız yerden devam ediyoruz. Bu dersimizde cümleyi tersten yazmayı anlatacağım. Hadi başlayalım !
Öncelikle kullanıcıdan bir tane yazı girmesini isteyelim ve girilen bu yazıyı string bir değişkene atayalım.
Console.Write("Cümle Giriniz: ");
string cumle = Console.ReadLine();
Cümleyi tersten yazdırmanın 2 tane yolu var ve ben her ikisinden de bahsedeceğim, artık hangisini kullanacağınıza kendiniz karar verirsiniz 🙂Birinci yol; string metodlarından olan Substring() ile girilen metinden parçalar alacağız fakat hem tersten hemde birer birer parça alacağız ki, bu parçaları birleştirip cümleyi tersten yazmış olabilelim.
Böyle deyince biraz kafa karışıklığı olmuş olabilir fakat kodunu yazınca kolay olduğunu göreceksiniz 🙂
string ters = "";
for (int i = 1; i <= cumle.Length; i++)
    ters += cumle.Substring(cumle.Length - i, 1);
cumle değişkeni bir string olduğu ve stringler de char dizileri olduğu için döngü içinde dönebiliyoruz ve her döngüde bir sonraki karakteri alıyoruz.
Substring() fonksiyonu başlangıç index numarası ve adet sayısı olmak üzere 2 tane parametre alıyor ve bizde ilk parametrede cumle.Length – 1 ile tersten kaçıncı karakterde olduğumuzu buluyoruz ve ikinci parametreylede 1 karakter gidileceğini belirtiyoruz.
Son olarak ters değişkenine atanan değeri ekrana yazdıralım ki kullanıcıya girdiği metnin tersini bildirebilelim;
Console.WriteLine("Girdiğiniz Metnin Tersi: " + ters);

İkinci yol ise C#’ın en güzel nimetlerinden biri olan Linq kullanarak sadece ve sadece 1 satırda yapacağız.
Peki nasıl derseniz de, string metodlarından biri olan Reverse() fonksiyonu ile kullanıcının girdiği metni tersine çevireceğiz fakat bu fonksiyon geriye Enumerable tipinde bir nesne döndürüyor ve bizim bunu stringe çevirmemiz gerekiyor çünkü nesneyi doğrudan ekrana yazdıramaz yada kullanamayız.
String’e çevirmek içinde yeni bir string nesnesi oluşturacak ve Reverse() fonksiyonundan geri dönen değeri constructor metoda parametre olarak göndereceğiz. Fakat constructor metod parametre olarak char dizisi istiyor, ama bizim elimizde Enumerable nesnesi var. Peki ne yapıcaz ?
Burada yine Linq’nun nimetlerinden faydalanacak ve Enumerable tipinde olan ters çevrilmiş cümleyi ToArray() fonksiyonunu kullanarak diziye çevireceğiz. String constructoruna char dizisini gönderdiğimizde zaten elimizde ters çevrilmiş cümle olacaktır, direk kullanıcıya bildirebiliriz.
Console.WriteLine("Girdiğiniz Metnin Tersi: " + new string(cumle.Reverse().ToArray()));
Şu Linq ne güze birşey değil mi ? :)Evet bu dersimizde bu kadardı, tüm C# derslerimize buraya tıklayarak ulaşabilirsiniz. Herkese hayırlı günler.
Skorumuz:
Oy Vermek İçin Tıklayın
[Toplam: 1 Ortalama: 5]

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu