c# piramit çizdirme logo

Merhaba arkadaşlar, bu yazımızda önceki konularda işlediğimiz fonksiyonlar ve for döngüsüne örnek olabilecek piramit yapmayı anlatacağım.

Özellikle ilk yazılıma(programlamaya) başlayanlara sorulan piramit çizdirme işlemini biz fonksiyon kullanarak yapacağız. işaret olarak (*) kullanacağım. Siz isterseniz + kullanabilirsiniz.

piramitCiz fonksiyonu oluşturup içerisine piramit yüksekliği göndereceğiz. Daha sonra for ile döndürüp piramit şeklini vereceğiz. Buyurun kodlar.

static void piramitCiz(int yukseklik)
{
  for (int i = 1; i <= yukseklik; i++)
  {
    for (int j = i; j <= yukseklik; j++)
    {
      Console.Write("  "); //sol boşluk oluşturma
    }
    for (int k = 1; k <= 2 * i - 1; k++) //burada genişliği dengeli olması için 2*(i-1) 
//formülü kullanılmıştır..
    {
      Console.Write("*" + " "); //burada * yerine + da koyabilirsiniz.
    }
    Console.WriteLine();
  }
}

    static void Main(string[] args)
    {
      piramitCiz(5); // buraya yükseklik girişi yapınız..
    }

“+” olarak değiştilmiş kodu ve çıktısını görmek için tıklayınız..

Bir de kullanıcıdan değer alarak baklava dilimi oluşturalım. Bunun için baklava isimli bir fonksiyon oluşturup içerisine yükseklik değeri alalım yine.

[the_ad id=”441″]

static void Main(string[] args)
        {
            byte yukseklik;  

            Console.Write("Baklava diliminin yukseklik değerini giriniz = ");

            yukseklik = byte.Parse(Console.ReadLine()); 


            for (byte i = 0; i <= yukseklik; i++)

            {

                for (byte j = 0; j <= (yukseklik + 1) - i; j++)

                    Console.Write(" "); // sol boşluk



                for (byte k = 0; k <= 2 * i - 2; k++)

                    Console.Write("*"); //desen dilerseniz + . gibi karakterler kullanabilirsiniz.

                Console.WriteLine(); 
            }
// buraya kadar olan yer üst kısım buranın altındaki kodlar baklavanın alt kısmını oluşturur..
            for (byte m = 0; m <= yukseklik; m++)
            {  
                for (byte n = 0; n <= m; n++)
                {
                    Console.Write(" ");
                }
                    

                for (int z = m * 2; z <= yukseklik * 2; z++)
                {
                    Console.Write("*");
                }
                      
                Console.WriteLine();

            }

            Console.ReadLine(); 
        }

Yukarıda değişken tiplerini byte aldım. Çünkü 50 ve üzerinde baklava deseni güzel görünmüyor. İnt veri tipi 65536 kadar değer alabilmesi güzel görünsede bellek de tasarruf için şimdiden byte gibi veri tipleri kullanmaya çalışın. byte veri tipi 255’e kadar değer alabilmektedir.

Ekran çıktısı aşağıdaki gibi olacaktır..

baklava dilimi C#

Umarım anlaşılır olmuştur.

 

Bunlara Göz Atmak İsteyebilirsiniz

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir