Showing posts with label c#. Show all posts
Showing posts with label c#. Show all posts

Friday, July 13, 2012

String işlemleri, Substring (C#)


String türü char(karekter) türlerinin birleşmesiyle oluşan bir türdür. string türündeki her ifade aynı zamanda char türündendir.
string ifadelerinin indexleri(sıralamaları) 0'dan başlar. merhaba kelimesinin 0. indexi m, 6. indexi ise a'dır.
string türünden bir değişken string x= "merhaba" şeklinde tanımlanır.

Substring Kullanımı:

string ifadeler charlardan oluşuyor demiştik. her char bir indexte yer tutar. string türündeki bir değişkenin içersindeki char elemanlara
ulaşmak için Substring methodundan yararlanırız.
Substring methodu, değişkenadı.Substring(değişkenin almak istediğimiz kısmının başlangıç indexi, başlangıç indexinden itibaren alınacak index sayisi)
yani;
string x= "merhaba";
x.Substring(2,2);

işlemi bize "rh" çıktısını verecektir.

String[] Kullanımı;


string[] ifadesi ile [] içersindeki index numarasını yazdıgımız elemana ulaşırız. elde ettiğimiz elemanın türü char türünden olacaktır.
[] içersine sadece 1 adet index numarası girebiliriz.

string x= "merhaba";
x[0];

işlemi bize "m" çıktısını verir.

string.Lenght Kullanımı;

string.Lenght ile değişkenimizin uzunluğunu bulabiliriz. Lenght ifadesi ile uzunluğu alınan string ifadelerinin başlangıç indexi 1 olarak alınır.

string x= "merhaba";
x.Lenght;

işlemi bize 7 sonucunu verecektir.

örnek: bir kelimenin ilk olarak uzunluğunu bulan, ardından bu kelimeyi tersten ve düzden yazılışını ekrana yazdıran program;

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

namespace stringkullanimi
{
    class Program
    {
        static void Main(string[] args)
        {
            string x;
            int i,a;

            x = "galatasaray";   /* string türünden tanımladığımız x değişkenine galatasaray değerini verdik.*/
            a = x.Length;        /* galatasay kelimesinin uzunluğunu Lenght methodu a değişkenine atadık. */

            for (i = a-1; i>=0; i--)  /* açtığımız for döngüsünü string ifadeler 0.indexten başladığı için uzunluk - 1 
                                               den başlattık(11-1). değer 0 olasıya kadar birer birer azalttık. döngü değeri 
                                                 10-9-..0 olarak dönecek.*/
            {
                Console.Write(x[i]);  /* ekrana string türünden x değişkenin 10. indexinden itabaren 0. indexe 
                                                   kadar yazdırmaya başladık. */
            }

            Console.Write("\n" + x.Substring(0, a));  /* arada boş bi satır olması için \n komutunu kullandık. ve 
                                                                           substring methodu ile galatasaray değerinin 0. indexinden 
                                                                            11. indexe kadar yazdırmasını söyledik. */
            Console.ReadLine();
        }
    }
}

For döngüsü (C#)


For döngüsü içinde bulunduğu deyimleri belirli bir başlangıç değerinden başlatarak belirlenen koşulun sağlandığu sürece değerin artırım değeri baz alınarak
döndürülmesini sağlar. For döngüsünün yapısı  for(baslangıc_degeri; kosul; artırım değeri) { ..deyimler... } şeklindedir.

1.örnek;  1-100e kadar olan sayıların toplamını bulan program;
using System;  
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Fordongusu
{
    class Program
    {
        static void Main(string[] args)
        {
            int sayi, toplam = 0;

            for (sayi = 1; sayi < 100; sayi++)
            {                          /*1-100e kadar olan sayıları toplatacağımız için sayi değerini 1den
                                      başlattık, sayı değer 100e kadar dönücek  her döndüğünde sayı bir 
                                      artırılacak. (1 + 2 + 3 .. + 99). */

                toplam = toplam + sayi;   /*1-100e kadar dönücek olan döngü içersinde toplam değeri 0 iken 
                                                      döngü  her döndüğünde sayının 1 artırılmış değeri toplam  değerine     
                                                      eklenecek. ( toplam = 0+ 1) ikincide (toplam = 1 + 2) üçüncüde
                                                       (toplam  = 3 + 3) sonuncuda (toplam = 4851 + 99). */
            }
            Console.Write("sonuc: "+toplam);
            Console.ReadLine();



        }
    }

}

2.örnek; klavyeden girilen sayıyın üssünü bulan program;

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

namespace usalma
{
    class Program
    {
        static void Main(string[] args)
        {
            int us, taban, i, sonuc= 1; //sonuc değişkenini çarpımda kullanacağımız için 1 değerini verdik.
           Console.Write("tabani giriniz: ");
           taban=Convert.ToInt32(Console.ReadLine());

           Console.Write("ussu giriniz: ");
           us = Convert.ToInt32(Console.ReadLine());
 
    for (i=1; i<=us; i++){     /*i başlangıç değerinini 1 olarak atadık, döngü klavyeden girilen us değerinden 
                                 küçük ve eşit olduğu sürece dönecek.  döngü her döndüğün 1 olan başlangıç 
                                 değeri 1 artırılacak. böylece tabanı 2 üssü   5 olan işlemde 2 değeri 1den 5e 
                                 kadar olan sayılarla çarpılarak sonuc elde edilecek. */
       
     
        sonuc= sonuc * taban;  /*başlangıçta 1 olan sonuc değeri döngü her döndüğünde taban ile çarpılarak 
                                 yeni bir değer elde edecek. 2 üssü 4için; 1.(taban= 1 * 2) 2.(taban= 2 * 2) 
                                 3.(taban= 4 * 2) 4.(taban= 8 * 2)  sonuc = 16. */
        }
           Console.WriteLine("sonuc: "+sonuc);
           Console.ReadLine();
        }
    }

}


3.örnek ; klaveyeden girilen sayının faktoriyelini bulan program;

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

namespace faktoriyel
{
    class Program
    {
        static void Main(string[] args)
        {
             int sayi, faktoriyel=1, i;

   Console.Write("sayiyi giriniz: ");
   sayi = Convert.ToInt32(Console.ReadLine());

   for (i= sayi; i>0; i--){      /* i başlangıç değerini klavyeden girilen faktoriyeli alınacak sayıya eşitledik. 
                                    döngü sayı 0dan büyük olduğu sürece dönecek  ve her döngü her döndüğünde 
                                     i değerine atanan sayı 1 azaltacak. sayı 4 ise 4 3 2 1 olarak devam edicek. */

     faktoriyel= faktoriyel * i;  /* başlangıç değeri 1 olan faktoriyel döngü her döndüğünde birer azaltılan sayı 
                                     (i) değeri ile çarpılacak. ( 5*4*3*2*1 ) */
           }
 
           Console.WriteLine("sonuc= "+ faktoriyel);
           Console.ReadLine();
        }
    }

}

Do while döngüsü (C#)


Do while döngüsünde while döngüsünden farklı olarak program koşul sağlansa da sağlanmasa da bir kez döngüye girer. do while döngüsünün kullanımı while den farklı
olarak do(){  .... }  while(); şeklinde olur.  program ilk çalıştırıldığında do bölümündeki deyimler okunur ardından while'ın içindeki koşul kontrol edilir koşul
sağlanıyorsa do ' nun içine tekrar dönülür koşul sağlanmıyorsa döngüden çıkılır.

1.örnek; 1-100 arasındaki tek sayıların toplamı:

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

namespace dowhile
{
    class Program
    {
        static void Main(string[] args)
        {

       int sayi=1;      //tek sayıların toplamı alınacağı için sayıyı 1den başlattık.
       int toplam=0;  //toplam değerini başta 0 olarak atadık.
       do{                 //do while döngüsünü açtık. program ilk olarak bu kısmı bir kez çalıştıracaktır.
           toplam=toplam+sayi;    //sayi her döngü her döndüğünde bir önceki toplam değerine eklenecek.
           sayi=sayi+2;     /*sadece tek sayıların toplanması için 1den başlattığımız sayıyı 2 ile toplattık böylece 
                              toplam 1 + 3+ 5 şeklinde ilerleyecek. */
           Console.WriteLine(sayi);
         
         
           }while(sayi<=100);  /*while kısmının içine sayı 100den küçük oluncaya kadar koşulunu ekledik. do-
                                 while döngüsünde while kısmı while(koşul); şeklinde kullanılır. */
         
           Console.Write("1-100 arasindaki tek sayilarin toplami : " + toplam);    /* 1-100e kadar olan sayıların
                                                                                     toplamını ekrana yazdırdık.*/

    Console.ReadLine();

        }
    }
}


2.örnek; kullanıcı veri giricek, istediğinde programdan çıkabilicek.

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

namespace dowhile
{
    class Program
    {
        static void Main(string[] args)
        {

       string a;   //isim girilmesini istediğimiz için string türünden a tanımladık.
 
          do {            /* do kısmında kullanıcan isim girmesini istedik , döngüden çıkması için C ye basmasını  
                              söyledik. */
          Console.WriteLine("isim giriniz giriniz: ");
          a=Console.ReadLine();
          Console.WriteLine("(cikmak icin C'ye basiniz)");

          }while(a!="c");   /* kullanıcının klavyeden girdiği değer c değil ise do bloğundaki deyimler tekrar 
                                çalıştırılacak. eğer girilen değer c ise döngüden çıkılacak. */
        }
    }
}

While döngüsü (C#)


While döngüsü

while döngüsü içerdiği bloğun koşul sağlandığı sürece çalışmasını sağlar. mesela bloğun şartı sayı<10 ise döngü sayı 10dan küçük olduğu müddetçe çalışacaktır.
if döngüsünden farkı olarak, if döngüsü kullanıyor olsaydık if(sayı<10) sayı 10'dan kücüktür yazdır deseydik if döngüsü ekrana 1 kez sayı 10'dan küçüktür
yazacaktır ancak while döngüsünde while(sayı<10) sayı 10'dan kücüktür yazdır deseydik sayı 10'dan küçük olduğu sürece ekrana sayı 10'dan küçüktür yazdırıcaktır.

1. Örnek; 1'den 100'e kadar sayıların toplamını yazan program.

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

namespace Ifelse
{
    class Program
    {
        static void Main(string[] args)
        {
           

     int toplam=0, x=1;
 
      while(x<100){                // x 100den küçük olduğu sürece bloğun içindeki deyimler çalıştırılacaktır.
               
       toplam=toplam + x;        /* toplam değeri ve x başta 0 dır. daha sonra okunacak x=x+1 deyimi ile x 1er 
                                    kez artılarak tekrardan döngü çalışacaktır bu durum  x 100den küçük olduğu  
                                       sürece devam edecektir. */
    Console.Write(toplam + "..");
             x=x+1;                //x değerini 100den küçük olduğu sürece her okumada 1 sayı artıracaktır.
                }
    Console.WriteLine("1'den 100e kadar sayilarin toplami  " +toplam + " olarak bulundu.");  /*yapılan  
                                                                                                       işlemleri  ve sonucu ekrana yazdırır.*/
    Console.ReadLine();

        }
    }
}

2.Örnek; Klaveyeden girelen 2 sayıyı karşılaştıran ve durumlarına göre bu sayıları eşitleyen program

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

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {


    int a, b;
 
    Console.Write("1.sayiyi giriniz: ");
    a= Convert.ToInt32(Console.ReadLine());
    Console.Write("2.sayiyi giriniz: ");
    b= Convert.ToInt32(Console.ReadLine());
 
    if (a>b){              // ilk sayının ikinci sayıdan büyük ise,
           
           while (a>b){    // ilk sayı ikinciden büyük olduğu sürece,
             
           Console.WriteLine("ilk sayi: " + a + "  ikinci sayi: " + b );   /*ilk ve ikinci sayının önceki değererini 
                                                                                                    yazdırır.*/
                 a=a-1;           // her seferinde a'yı 1 azalt.
                        }
         
           Console.WriteLine("ilk sayi: " + a + "  ikinci sayi: " + b);    // ilk ve ikinci sayının son değerlerini yaz.  
           Console.WriteLine("sayilar birbirine esitlendi");        /*sayılar birbirine eşit olduğunda döngüden çıkar
                                                                                            ve deyimleri yazar.*/
             }
    if (a<b) {                        // ilk sayi ikinci sayıdan küçük ise,

             while (a<b) {            // ilk sayi ikinciden küçük olduğu sürece,
 
             Console.WriteLine("ilk sayi: " + a +"  ikinci sayi: " + b);  /*ilk ve ikinci sayının önceki değererini 
                                                                                                     yazdır. */
                  a=a+1;                                               // her seferinde a'yı bir arttır.
                         }        
           Console.WriteLine("ilk sayi: " + a +"  ikinci sayi: " + b );    /*sayılar birbirine eşit olduğunda döngüden 
                                                                             çıkar ve deyimleri yazar. */  
           Console.Write("sayilar birbirine esitlendi.");                    
             }

    Console.ReadLine();

        }
    }
}

İf-else kullanımı (C#)


if deyimini içersindeki durumu kontrol etmeye yarar. if( x>y) ise x'değerinin y değerinden büyük olduğu durumda yani koşul sağlandığında program deyimin
içini çalıştırır. Koşul sağlanmıyorsa bir sonra ki koşulu "if else" deyimini kontrol eder.koşul yine sağlanmadıysa else(diğer tüm koşullar sağlanmama durumu)
deyimini çalıştırır.

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

namespace ifelse
{
    class Program
    {
        static void Main(string[] args)
        {
            int x;
   
    Console.Write("bir sayi giriniz: ");     /*kullanıcıdan bir sayı girdirdik. */
    x=Convert.ToInt32(Console.ReadLine());
   
    if(x > 10) {                 /* eğer klavyeden girilen sayı 10dan büyükse*/
        Console.WriteLine("girdiginiz sayi 10'dan buyuk..");  /* girdiğiniz sayı 10dan büyük  yazdırmasını,
                                             (eğer if bloğunun içindeki koşul sağlanmıyorsa aşağıdaki 
                                                koşula geçer.)
                                               (koşul sağlanıyorsa aşağıdaki if else, else durumlarını 
                                                kontrol etmez.) */
          }

        else if (x==10) {               /* yada klavyeden girilen sayı 10a eşit ise; */
         Console.WriteLine("girdiginiz sayi 10'a esit..");  /* girdiğiniz sayı 10a eşit   yazdırmasını, */
         }
    else {                            // diğer koşullar sağlanmazsa;
         Console.WriteLine("girdiginiz sayi 10'dan kucuk"..); /* girdiğiniz sayi 10'dan kucuk
                                                                                          yazdırmasını sağlar. */
         }
       
    Console.ReadLine();     /* klavyeden enter tuşuna basılasıya kadar programın açık kalmasını
                                          sağlar. */
            }
        }
    }

 program kullanıcıdan alınan sayının değerini 10 ile karşılaştırır ve duruma göre büyüktür, eşittir ve küçüktür yazar.

Thursday, July 12, 2012

Switch-Case yapısı (C#)


switch case yapısı programda seçenekler içersinden seçilen işlemi çalıştırmaya yarar.

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

namespace switchcase
{
    class Program
    {
        static void Main(string[] args)
        {

       int a;
       Console.Write(" islem numarasi giriniz: ");  //çalıştırılmasını istediğimiz seçeneğin numarasını isteniyor.
       a= Convert.ToInt32(Console.ReadLine());
   
     switch(a){              /* switch case yapısını açtık. girilen numara (a) değerinin içine atılcak ve yalnızca o 
                                kısım çalıştırılacak. */
           
     case 1:
          Console.WriteLine("1.secenek");        //girilen sayı 1 ise ekrana 1.secenek yazdıracak.
          break;                                 // case bloğundan çıkmak için break ifadesi kullanılır.
     case 2:
          Console.WriteLine("2.secenek");
          break;
     case 3:
          Console.WriteLine("3.secenek");
          break;
     default:
          Console.WriteLine("diger secenek");    //girilen sayı 1,2 veya 3ten biri değil ise diger secenek 
                                                                      yazdıracak.
          break;
              }

    Console.ReadLine();

        }
    }
}

Bool kullanımı (C#)


bool ifadesi yapılan işlemler sonucunda programın doğru(true) veya yanlış(false) sonucunu vermesidir.
bool türünden tanımlanan değişken parentez içersindeki koşulun durumuna göre doğru veya yanlış değerini alır.

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

namespace boolkullanımı
{
    class Program
    {
        static void Main(string[] args)
        {
             bool x;             // bool türüyle bize doğru, true(1) veya yanlış,false(0) değeri üretecek x tanımladık.
             int b;

             Console.Write("bir sayi giriniz: ");
             b= Convert.ToInt32(Console.ReadLine());

              x= ( b> 10 );     /* eğer klavyeden girilen sayı 10dan büyükse x değişkeni doğru (1) değerini 
                                        alacak, klavyeden girilen sayı 10dan küçükse x değişkeni yanlış(0) değerini  
                                        alacak.*/
              Console.WriteLine(x);        /*ekrana b>10 durumuna göre 1 veya 0 yazacak. */

              Console.ReadLine();    // programın açık kalması için klavyeden değer girilmesini bekleyecek.
        }      
    }

}

Toplama işlemi (C#)


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

namespace Toplama
{
    class Program
    {
        static void Main(string[] args)
        {
            int x,y, toplam=0;     /*int türünde x , y ve toplam adında 3   değişken tanımladık. toplam değeri  
                                            üzerinde yeni değişkenler ile işlem yapacağımız için  sıfırladık*/
                       
 
     Console.Write("1nci sayiyi giriniz:  ");   /*ekrana 1.nci sayiyi giriniz yazdırdık. */
     x=Convert.ToInt32(Console.ReadLine()); /* klavyeden girilen değeri int türüne çevirdik ve x değişkenine 
                                                                       atadık */        
   
     Console.Write("2nci sayiyi giriniz:  ");
     y=Convert.ToInt32(Console.ReadLine());                    
 
     toplam= x + y;    /* klavyeden girilen ilk sayiyi(x) ve ikinci 
                                 sayiyi(y) toplatıp toplam adlı değişkenimize atadık. */
 
     Console.WriteLine("toplam= " + toplam);    /* ekrana toplam değişkeninin değerini yazdırdık. sayılar 3
                                                                    ve 8 ise ekrana 11 yazacak. */
 
     Console.ReadLine();   /* klavyeden enter tuşuna basılasıya kadar programın
                                       açık kalmasını sağlar. */

         
        }
    }
}

 
   bu program ekrana kullanıcı tarafından girilen 2 sayının toplamını yazdıracak.

Convert ve ToString ile tür dönüşümü (C#)


Convert.ToInt32() ve ToString() methodları ile değişkenlerin türlerini deşitirebiliriz.
ConverToInt32() parantez içersindeki değişkeni int türüne çevirir. Kullanıcıdan alınan değerler string türünden alındığı için
bu method genellikle kullanıcıdan alınan sayıların int türüne çevrilmesinde kullanır.
x.ToString() methodu ise x değişkenini string türüne çevirir.

örnek olarak;

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

namespace turdonusumu
{
    class Program
    {
        static void Main(string[] args)
        {
            int a;
            string x;

            Console.Write("bir sayi giriniz: "); /* kullanıcıdan girmesi istedigimiz değer string türünden olucaktır */

            a = Convert.ToInt32(Console.ReadLine());  /* kullanıcıdan aldığımız string değerini int türüne 
                                                                                 çevirdik ve a değişkenine atadık. */
            Console.WriteLine("int: "+ a);
             x = a.ToString(); /* int türündeki a değerini string olarak x değişkenine atadık */

            Console.Write("string: " + x); /* string türündeki x i ekrana yazdırdık */
            Console.ReadLine();

         
        }
    }
}

İlk Program (C#)


using System;    /* using ile başlayan kodlar programın kütüphanelerini çağırır */
using System.Collections.Generic;
using System.Linq;
using System.Text;      

namespace Ilkprogram  /* isim uzayı adı verilen bölüm programın ismini barındırır. */
{
    class Program
    {
        static void Main(string[] args)      /* main adlı programı çalıştıran ana methodtur. */
        {
            Console.WriteLine("Merhaba Dunya");  /* Console.WriteLine() methodu parentez içersindeki kısmı 
                                                                          ekrana yazdırır. */
            Console.ReadLine();       /* Console.ReadLine() methodu klavyeden enter tuşuna kadar 
                                               basılan değerleri tutar, programın enter tuşuna kadar açık kalmasına sağlar. */
           
            }    /* açılan her süslü parantez kapatılmalıdır. */
        }
    }