console etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
console etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

4 Ağustos 2013 Pazar

C# : Metoda Diziden Veri Alma


          Metotlarda dışarıdan dizi alınarak işlem yapılması gerekebilir. Fakat gerek metot yazımında gerekse bu metodun kullanımında kullanılacak dizinin yazımı normal veri türlerinin yazımına göre farklılık gösterecektir.

         Öncelikle metot üzerinde dizinin kullanımına bakacak olursak metotta kullanılacak diziyi normalde kod kısmında hangi veri türünde olacağını belirterek tanımlıyorsak aynısını burada da yapacağız.


          İçinde dizi içeren metotların kullanımında da sadece dışarıdan alınacak dizinin ismi yazılır.


          Örnek üzerinde bunu göstermemiz anlaşılması bakımında daha verimli olacaktır.

          Öncelikle bir dizinin içerisindeki elemanları karıştıran yani yer değiştiren bir metot yazıyoruz.


İpucu: Dizilerimizi metot içerisinde yer alan for döngüsündeki kullanımı ile karıştırabiliriz. Öncelikle dizi içerisinde var olan değerimizi bir a değişkende tutuyoruz. Ardından bu değişkenimize dizi boyutu neyse o sayıya göre rastgele bir indeks seçecek ve dizimiz o indeksteki diziyi öncesinde atama yaptığımız belirli indeksteki aynı diziye atıyoruz. Tabi seçilen bu rastgele sayımızı da farklı bir b değişkeninde tutuyoruz. b değişkenimize atadığımız sayıyı dizimizin indeksi olarak kullanacağız ve b indeksli dizimize a değişkenimizdeki değeri atayarak takas işlemi yani belirli aynı iki dizin değerinin yer değiştirmesi sağlanacaktır.

          Daha sonra konsol ile kullanıcının 5 tane sayı girmesini istiyoruz ve bu sayıları oluşturduğumuz int türünde bir diziye aktarıyoruz.. Oluşturduğumuz metodu yazarak bu metodun parametresini de girdiğimiz sayıların dizisinin adını kullanacağız. foreach döngüsü ile de karıştırdığımız dizideki değerleri görmek için konsol ekranına yazdırıyoruz.

Kodun Tamamı


Ekran Çıktısı


C# : foreach Kullanımı


         Yazdığımız programlarda yaptırdığımız işlemlerden dolayı dizilerde tuttuğumuz verilerin tümünü kullanıcıya aktarma gereği duyabiliriz. Bu yüzden dizilerdeki tüm verileri sıralamak için foreach kullanılmaktadır. foreach komutu kullanmadan da verilerin ekrana ya da farklı nesnelere aktarılarak sıralanması da mümkündür. Çeşitli program dillerinde sık yapılan işlemler gerek metot gerekse farklı bir özellik olarak sınıflarına eklenmiştir. foreach ise dizelerdeki verilerin sıralanması için geliştirilmiş bir döngüdür.

         foreach yapısının karşımıza çıkan aşağıdaki şekilde bir yapısı vardır:


          var: Yazdıracağımız dizinin hangi veri türünde olursa olsun yazdırılması için kullanılır fakat kullandığımız dizinin türü biliniyorsa var yerine onu belirtmek daha doğru olacaktır.
          collection: Kullanacağımız dizinin adını yazarak kullanılacak dizi belirtilir.
          item: Kullanacağımız dizinin foreach döngüsü içerisinde kullanımında temsili bir isim vermemiz gerekmektedir. 

Örnek Kod Parçası:

          Bu örnek kullanımında string türünde sehir dizinindeki verilerin console üzerinde alt alta yazılmasını sağlayacaktır.

Örnek Kullanımı:


Ekran Çıktısı




28 Temmuz 2013 Pazar

C# : Küçük - Büyük Harf Kontrolü Yapma


          char türünde tanımlanan değişkenlere yalnız tek bir karakteri atayabiliriz. Biz bu değişken türünü klavyeden girilen harfin büyük mü yoksa küçük harf mi olduğunu anlamak için kullanacağız.

          Öncelikle kontrolü metot tanımlayarak yapacağız. Metodumuzun veri türünü belirlemek için metotta yapacağımız işleme bakmak gerek. Metot büyük ya da küçük harf duyarlılığını kontrol edeceği için iki durum olacaktır. Bunun için bool veri türünü kullanacağız. bool türü true-false;1-0 şeklinde değerler geri döndüren veri tipidir.


          Ardından da kullanıcıdan konsol üzerine kontrol için tek bir karakter girmesini sağlayacak bir mesaj yazdırıp metodun çalışmasını sağlıyoruz. Metodun döndürdüğü değere göre de if yapısını kullanarak küçük mü yoksa büyük harf mi girdiğini gösteren bir mesaj yazdırıyoruz.

Ekran Görüntüsü


Kodun Sayfası





17 Temmuz 2013 Çarşamba

C de Bankamatik Para Ayrıştırma Programı

Bu programdaki amacımız; kullanıcının ATM den para çektiğini varsayarak paranın en az kağıt kullanacak şekilde kişiye ödemenin yapılmasını sağlamaktır.

Öncelikle kullanıcıdan çekmek istediği para miktarını girmesini istiyoruz ve parayı parçalamaya başlıyoruz. Tabi ki parçalamadan önce girilen miktarı kontrol etmemiz gerekiyor. Eğer kullanıcı 10’ un katlarında bir miktar girmezse gerekli bildirimi ekrana yazdırmamız lazım. Kullanıcın 10’un katlarında bir miktar girdiğini varsayarsak; paranın içinde kaç adet 200 TL olduğunu bulmalıyız ilk önce. Bunu yaparken de parayı 200’e bölüp bölüm sayısını tutmalıyız, eğer bölüm sayısı 0-1 arasındaysa 200 lira içermiyordur demektir.200 liranın araştırmasından sonra kalan parayı bulmalıyız. Bunun için de ilk girilen para miktarının 200 liraya göre modunu almalıyız. Kalan miktarı da bulduktan sonra aynı işlemleri sırasıyla 100,50,20 ve 10 TL için yapmalıyız. En son ise paranın nasıl en az kağıt para kullanılarak verilmesi gerektiğini kullanıcıya bildirmeliyiz. 

Programın Kodu:  

Programın Ekran Çıktıları:




C de ikinci dereceden denklemin köklerini bulma

ax^2+bx+c şeklinde olan ikinci dereceden bir denklemin köklerini bulmak için bir kok yazmak istersek hangi yolları izlemeliyiz. Öncelikle denklemin katsayılarını ve sabit terimi kullanıcıdan almalıyız(a,b ve c değerleri). Sırasıyla sayıları aldıktan sonra delta değerini bulmalıyız. Bu delta değeri bize kök için yol gösterecek. Eğer delta değeri sıfırdan küçükse kök bulurken delta değerinin kökü tanımsız olacağı için reel kökü bulunmadığını, delta değeri sıfırsa birbirine eşit iki kökün bulunduğunu, delta değeri sıfırdan büyükse de iki farklı kökün olduğunu anlamamız gerekecek. Delta değerini bulduktan sonra da gerekli ekran bildirimlerini yapıp varsa kökleri ekrana yazdırmamız gerekecek. Kök bulma işlemlerini de kodda göreceğimiz gibi gerekli matematiksel işlemlerle buluyoruz. Ayrıca koda bir while döngüsü kullanarak yeni kök bulma işlemleri için programdan çıkmaktan kurtulmayı ve görsel güzelliği sağlayacağız. 

Programın Kodu:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main(int argc, char *argv[]){
float a,b,c,Dx,kokDelta,devam=1;
char sec;
while(devam==1){
printf("ikinci dereceden terimin katsayisini girin:\n");
scanf("%f",&a);
printf("birinci dereceden terimin katsayisini girin:\n");
scanf("%f",&b);
printf("sabit terimi girin:\n");
scanf("%f",&c);
Dx=b*b-4*a*c;
kokDelta=sqrt(Dx);
  if(Dx<0){
    printf("Denklemin reel koku bulunmamaktadir!\n");
  }
  else{
    if(Dx==0){
      printf("Denklemin esit iki koku vardir!\n");
      printf("Iki kok de  : %f   dir!!\n",(-1*b)/(2*a));
    }
    else{
      printf("Denklemin farkli iki koku vardir!\n");
      printf("Kokler : %f   ve %f  dir!!\n",((-1*b)+kokDelta)/(2*a),((-1*b)-kokDelta)/(2*a));
    }
  }
  printf("\nAna menuye donmek istiyorsaniz 'E' yada 'e' girin\n\n");
  sec=getch();
  if(sec=='E'||sec=='e'){
  }
  else{
    devam=0;
  }
}
system("PAUSE");
return 0;
}





Programın Ekran Çıktısı:

                                  




1 Temmuz 2013 Pazartesi

C# : Fibonacci Dizisi

        Fibonacci dizisi kendinden önce gelen iki sayının toplamını alarak bir sonraki adımı oluşturan sayı dizisidir.
        Örn: 1 – 1 – 2 – 3 – 5 …


        Bu kodu C# ile console üzerinde şu şekilde düzenleyebiliriz:

static void Main(string[] args)
        {
            int a, b, c;
            a = 0;
            b = 1;
            c = 1;
            int bitis;
            Console.Write("Görmek istediğiniz sayı miktarını giriniz :");
            bitis = int.Parse(Console.ReadLine());
            Console.Write("{0} {1} ",a,b);
            for (int i = 1; i <= bitis-2; i++)
            {
                c = a + b;
                a = b;
                b = c;
                Console.Write("{0} ", c);
            }
            Console.ReadKey();
        }


----------

Kullanıcı görmek istediği sayı miktarını girecek ve ardından görmek istediğimiz sayı miktarının 2 eksiği kadar for döngüsü dönmektedir. Çünkü ilk anda 0 ve 1 değerleri consola yazılmaktadır. For döngüsünde de öncelikle 0 ve 1 değerlerini içeren a ve b değişkenleri yani önceki ilk 2 sayıyı toplanarak c değişkeninde tutuyoruz. Bu yeni sayımızla birlikte başta ikinci sayımız olan b değişkeni birinci sayımız, c değişkenine atadığımız yeni sayımız da ikinci sayımız olmaktadır. Bu yeni sayımızı da console’umuza var olan yazılı sayılara yazıyoruz.