code-neon

C# Metindeki Harf Frekanslarını Bulma

Kullanıcının girdiği cümledeki harf frekanslarını hesaplayan C# programı.

using System;
using System.Collections.Generic;
class Program
{
    static void Main(string[] args)
    {
        Console.Write("Cümleyi girin: ");
        string cumle = Console.ReadLine();

       Dictionary < char , int >  harfFrekanslari = new Dictionary< char, int >();

        foreach (char harf in cumle)
        {
            if (char.IsLetter(harf))
            {
                if (harfFrekanslari.ContainsKey(harf))
                {
                    harfFrekanslari[harf]++;
                }
                else
                {
                    harfFrekanslari[harf] = 1;
                }
            }
        }

        foreach (var entry in harfFrekanslari)
        {
            Console.WriteLine($"{entry.Key}: {entry.Value} adet");
        }

        Console.ReadLine();
    }
}

C# ile Kullanıcıdan bir metin alıyoruz.

        Console.Write("Cümleyi girin: ");
        string cumle = Console.ReadLine();

Harf frekanslarını tutmak için bir sözlük (Dictionary) oluşturuyoruz.

        // Harf (char) anahtar, frekans (int) değer olacak.
       Dictionary < char , int >  harfFrekanslari = new Dictionary< char, int >();

C# ile Cümledeki her bir harfi gezerek frekansları hesaplıyoruz.

        foreach (char harf in cumle)
        {
            //C# ile Sadece harfleri kontrol ediyoruz (noktalama işaretleri, boşluklar vb. hariç).
            if (char.IsLetter(harf))
            {
                // Harf frekanslarını güncelliyoruz:
                // Eğer harf sözlükte yoksa, yeni bir anahtar oluşturuyoruz ve frekansını 1 yapıyoruz.
                // Eğer harf sözlükte varsa, frekansını 1 artırıyoruz.
                if (harfFrekanslari.ContainsKey(harf))
                {
                    harfFrekanslari[harf]++;
                }
                else
                {
                    harfFrekanslari[harf] = 1;
                }
            }
        }

C# ile Sözlükteki her bir harf-frekans çiftini ekrana yazdırıyoruz.

        foreach (var entry in harfFrekanslari)
        {
            Console.WriteLine($"{entry.Key}: {entry.Value} adet");
        }

C# ile Konsolun kapatılmasını engellemek için bekleniyor

        Console.ReadLine();