31 Temmuz 2013 Çarşamba

C# Pascal Üçgeni Yapımı

C# Hakkında Konu

Daha fazlası için :  http://programderslerim.blogspot.com/

Hoşgeldiniz arkadaşlar bu dersimde sizlere C# 'Da Paskal Üçgeni yapımını göstereceğim.Visual Studio 'da C# Bölümünden yeni bir 'Console Application' oluşturuyoruz.Ve tüm kodları silip bu kodları yazıyoruz ;


using System;
using System.Collections.Generic;
using System.Text;

namespace pasgalucgen
{
    class Program
    {
        static void Main(string[] args)
        {
            int x, y;  // x ve y adlı integer tipinde değişken tanımlıyoruz.

            string k = "", h = ""; // buradada boşukları yazdırmak için k ve h adında değişken tanımlaması yapıyoruz.

            Console.Write("Basamak sayısını girin:"); // pascal üçgenini dışarıdan girilecek basamak sayısına göre oluşturmak için dışarıdan bir sayı girişi istiyoruz.

            x = Convert.ToInt32(Console.ReadLine()); // x değişkenine dışarıdan girilen değeri atadık.

            int[] m = new int[x]; // daha sonra m adında int tipinde bir dizi tanımlayıp bunun boyutunu x'e eşitliyoruz.

            for (int g = 1; g <= x; g++) k += " ";  // ilk olarak üçgenin kaçtane satırı yazılacak, yani kaç basamaklı ise o kadar döngümüzü çalıştırıyoruz.

            if (x == 1) Console.Write("{0} 1", k); // eğer girilen değer dışarıdan 1 ise sadece 1 yazacak

            if (x == 2) Console.Write("{0}1n 1 1", k); //girilen değer 2 ise 1 -1 1 yazacak bir nevi 1 ve 2 için kontrol yaptık

            k = "";  

            if (x > 2) // 2 den büyükse eğer basamak sayısı o zaman hesaplamaları yapacağız.
            {

                for (int g = x; g >= 0; g--) h += " "; // döngünün başlanğıç değeri x den başlar 0'a kadar azalarak 1 yazar tabi üçgenin en baş tarafı dikkat ettiysek hep 1 rakamı ile başlıyor onun için. dizinin 0.indisi

                Console.WriteLine("{0}1", h); // dışarıdan girilen basamak sayısı 5 ise 5 tane alt alta 1 yazar.

                h = "";  
                 
                for (int g = x; g >= 1; g--) h += " "; // buradada 0 indise gene 1 1 değerini atıyoruz ikinci satır.

                Console.WriteLine("{0}1 1", h);

                h = "";

                m[0] = 1;   // m dizisinin 0.ve 1.indir değerlerini 1'e eşitliyoruz.

                m[1] = 1;

                for (int i = 2; i < x; i++) // 2den başlayıp basamak sayısına kadar işleyen döngü.
                {  

                    int[] m1 = new int[i]; // döngüdeki her i degerini m1 dizisine aktar.

                    for (y = 1; y < i; y++) // 1 den başlayıp i nin o andaki değerine kadar dön
                    {

                        m1[y] = m[y] + m[y - 1]; // ve burada gerekli işlemi yap. yani kendi değeri ile kendinden bir önceki değeri toplayıp m1 dizisindeki y indisinin yeni değeri olmuş oluyor.

                        k = k + " " + m1[y].ToString(); // k nın yeni değeri de yeni hesaplanan y değeri ile k nın bir önceki değeri, tabi en başında boşluk bırakarak yaz.

                    }

                    for (y = 1; y < i; y++) // Döngü 1 den başlayıp i nin değerine kadar döner amaç m dizisine m1 dizisinin değerini yüklemek
                    {  

                        m[y] = m1[y]; // burada m dizisindeki y nin yeni değeri m1 dizisindeki değere eşit oluyor.

                    }

                    m[i] = 1; // i nin dizideki değerini 1'e eşitle son indis için yazarken.

                    for (int g = x; g >= i; g--) h += " "; // ve bu döngü ilede hesaplanan değerleri ekrana yazdıralım

                    Console.WriteLine("{1}1{0} 1", k, h); 

                    h = "";

                    k = "";  

                }

            }

            Console.ReadKey();  // burada consol ekranının kapanmaması için 
        }
    }
}



Şimdi bir deniyelim olmuşmu acaba ?

C# Pascal Üçgeni






C# Pascal Üçgeni







Sizin için uğraştık oldu :) İyi bloglar dilerim..















0 yorum:

Yorum Gönder

Reklamlar