C# ile string manipülasyon uygulamalarına biraz daha eğlenceli bir uygulama ile devam edelim. Kullanıcının yazdığı bir yazının karakterlerini rastgele olarak yer değiştirelim ve bir nevi bir bulmaca hazırlama programı kodlayalım.
Daha önce paylaştığım string uygulamalarından bazılarını aşağıdaki linklerden görebilirsiniz.
bkz: C# ile yazıyı tersten yazdırmak
bkz: C# ile String'in ortanca karakterini bulmak
bkz: C# ile String'in ilk karakterini bulmak
bkz: C# ile String'in son karakterini bulmak
bkz: C# ile String'in son karakterini silmek ya da değiştirmek
bkz: C# String'leri Bölmek (substring)
Örnek: Kullanıcının yazacağı bir yazıdaki karakterlerin yerlerini rastgele olarak değiştirerek yazdıran bir C# programı hazırlayın.
Çözüm:
using System;
namespace csharp
{
class Program
{
static void Main(string[] args)
{
System.Console.WriteLine("lütfen bir yazı yazın");
string yazi = System.Console.ReadLine();
System.Console.WriteLine(Karistir(yazi));
}
static string Karistir(string yazi)
{
char[] dizi = yazi.ToCharArray();
Random random = new Random();
int uzunluk = dizi.Length;
while (uzunluk > 1)
{
uzunluk--;
int k = random.Next(uzunluk + 1);
var value = dizi[k];
dizi[k] = dizi[uzunluk];
dizi[uzunluk] = value;
}
return new string(dizi);
}
}
}
Çıktı:
lütfen bir yazı yazın
selam
eamsl