C# Console Application ile kullanıcının girmiş olduğu cümlede her harften ya da karakterden kaçar tane olduğunu bulan program

Posted by KODLAR KOŞESİ on Mart 08, 2018 with No comments


C# Console Application ile kullanıcının girmiş olduğu cümlede her harften ya da karakterden kaçar tane olduğunu bulan programı ele alacağız .



Örnek :
kullanıcı AHMED ÇILDIR  diye bir cümle girdiğini farz edelim .
Programımız bu cümleyi nasıl analiz edebilir algoritma olarak düşünürsek aklımıza ilk gelen şey bizim karakter sayısını ala bilmemiz için bu cümleyi bir diziye almamız gerek bu sayede her bir karakteri diğeriyle karşılaştırıp kaçar tane olduğunu öğrene biliriz .

Bunun için Substring() metodunu kulana biliriz .

KODUN İŞLEYİŞİ :

1. kullanıcıdan girdi alıyoruz
2. Length ile kullanıcının girdiği cümle uzunluğunu alıyoruz ki dizimizin uzunluğunu belirleye bilelim .
3. d isminde String bir dizi tanımlıyoruz ve uzunluğunu 2 adımda aldığımız cümle uzunluğu olarak veriyoruz.
4. üst taraf bahis ettiğimiz gibi Substring() metodu kullanarak cümleden her bir harfi diziye yerleştiriyoruz. dizimimz aşağdaki şekilde olacak .

5. if ile kontrol ediyoruz ikinci for döngümüz dizi uzunluğu kadar dönecek ve if sayesinde dizideki karakterleri teker teker kontrol edecek .
6. dizideki kontrol ettiğimiz karakter yerine ** ile değiştiriyoruz ki karakterleri bir daha saymayalım .
7. ve son olarak (1) for döngümüz her dönmesinde sonucu ekrana yazacak.



KOD ÖRNEĞİ :

           string m = Console.ReadLine();//1
            int u =m.Length;//2
            string[] d = new string[u];//3
            for (int i = 0; i < u; i++)
            {
                d[i] = m.Substring(i, 1);//4
            }
            int x = 1;
            for (int i = 0; i < u; i++)
            {
                for (int j = i+1; j < u; j++)
                {
                    if (d[i]==d[j])//5
                    {
                        x++;
                        d[j] = "**";//6
                    }
                    
                }
                if (d[i].Length==1)
                {
                    Console.WriteLine(d[i]+": "+x);//7
                }
               
                    x = 1;
            }

            Console.ReadLine();