Tekrarlanan ifadeleri kaldırıp, eşsiz isimleri yazdıran program;
Aşağıdaki örnekte noktalı virgül ile “Ali”,Yağmur;Mehtap;Serap;Yağmur;Ali” şekliden girilen ifadelerde tekrar eden isimleri temizleyip, ekrana eşşiz isimleri yazdıran program.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
static void Main(string[] args) { // Kullanıcı girişi için ekrana bilgi verme Console.WriteLine("Lütfen Kullanıcı isimlerini noktalı virgül ile giriniz."); // Kullanıcı isimlerini console ekranından alma string strAd = Console.ReadLine(); // strAd = "Ahmet;Veysel;Mahmut;Ayşe;Nurken;Ahmet;Kamil"; // Noktalı virgül ile girilen isimleri ayrıp bir diziye aktarma string[] isimDizi = strAd.Split(';'); // Distinct() tekrarlayan ifadeleri silen LINQ fonksiyonu string[] essizIsımDizisi = isimDizi.Distinct().ToArray(); // Dizideki değerleri birleştirmek için StringBuilder kullanmak daha etkili olacaktır. StringBuilder essizKullaniciIsımleri = new StringBuilder(); // Tekrar oluşturduğumuz diziyi ; ile birleştiriyoruz. foreach (string isim in essizIsımDizisi) { essizKullaniciIsımleri.Append(isim + ";"); } // en sonda yerleştirilen ; sembolünü kaldıralım. essizKullaniciIsımleri.Remove(essizKullaniciIsımleri.ToString().LastIndexOf(';'), 1); // En güzel olan kısım ekrana yazdıralım. Console.WriteLine(); Console.WriteLine("Tekrarsız Kullanıcı İsimleri Listesi"); Console.WriteLine(essizKullaniciIsımleri.ToString()); Console.ReadLine(); } |