C Sharp Dizi İçinde Hangi Sayıdan Kaç Adet Var ?

  1. Üzeyir
    4
    554
    3/4/2019 11:56:00 PM

    aşağıdaki gibi bir dizide , her bir elemanı bir defa ve her elemandan kaç tane olduğunu listeleyen programı nasıl yazabilirim ,

    int [] sayilar= new int[15]  {1,3,2,1,7,9,6,4,6,5,4,4,3,1,7};
    

    çıktı:

    1 -- 3 adet

    2 -- 1 adet

    3 -- 2 adet

    4 -- 3 adet

    ...vs

    c# .net 14 gün önce 36 Görüntüleme

( 1 ) Cevap

  1. koraydrk
    3
    1094
    3/5/2019 11:25:00 PM

    benim ilk aklıma gelen yol Linq ile ve GroupBy kullanarak ;

    //dizide bir sayıdan kaç tane var
    class Program
    {
        static void Main(string[] args)
        {
            int[] sayilar = new int[15] { 1, 3, 2, 1, 7, 9, 6, 4, 6, 5, 4, 4, 3, 1, 7 };
    
            var sayiAdetGrup = sayilar.GroupBy(s => s)
            .Select(s => new
            {
                Sayi = s.Key,
                Adet = s.Count()
            }).ToList();
    
            foreach (var item in sayiAdetGrup)
            {
                Console.WriteLine(item.Sayi+ " den " +item.Adet +" tane var");
            }
    
            Console.ReadLine();
        }
    }
    

    Çıktı:

    c-sharp-dizide-sayidan-kactane-var-groupby.

Cevabınız