IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   C# (https://www.ircforumlari.net/c/)
-   -   C(Sharp) - Console Yazılı-Görsel Eğitim (https://www.ircforumlari.net/c/537165-csharp-console-yazili-gorsel-egitim.html)

SeckiN 13 Temmuz 2013 20:53

C(Sharp) - Console Yazılı-Görsel Eğitim
 
C# - Console Dersleri

Değişken Tanımlama

Örneğin;

int i; //i adında bellekte 4 bytelık bir bölge aç.;

i = 5; //i adının temsil ettiği bellek bölgesine 5 değerini yaz.;

Değişken Tanımlarken ;

==> Bir değişkene değer atama işlemi tanımlarken yapılabilir.

==> Bir değişkene değer atama işlemi yukardaki örnekte olduğu gibi program içinde herhangi bir satırda yapılabilir.

==> Bir veri tipi altında birden fazla isimle farklı değişkenler tanımlanabilir.

Değişken İsimlendirme Kuralları

==> Değişkenlerin isimleri alfabede bulunan karakterlerle veya _(alt çizgi) ile başlamalıdır. Ama ilk harf hariç diğer karakterler sayı olabilir.

==> Bazı programlama dilleri büyük ve küçük harf duyarlıdır. Yani Sayi, sayi ve SAYI hepsi ayrı değişken olarak algınalır.

==> Değişken isimleri birden fazla kelime olduğu zaman; kelimelerin arasına boşluk konmaz. Bu tür değişkenleri ya kelimeleri birleştirerek veya kelimeler arasına _(alt çizgi) karakteri koyararak isimlendiririz.

==> Değişkenlerin isimleri !, ?, {, ] gibi karakterler içeremez.

==> Programlama dili için tanımlanmış anahtar kelimelerini de değişken isimleri olarak kullanamayız.

Atama İşlemi

= operatörü : Genel Atama İşlemlerinde Kullanılır.Eşitliğin Sağındaki Değer Eşitliğin Solundaki Değişkene Atanır.

Örnek ;
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

+ operatörü : Eşitliğin Sağındaki Değerle Eşitliğin Solundaki Değişken Değerini Toplayıp Tekrar Eşitliğin Solundaki Değişkene Atar.
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Not: Bir bir artırma işlemi için x+=1 (veya x=x+1) yerine x++ işlemi kullanılabilir.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

++ değişkenden sonra kullanılırsa önce atama işlemi yapılır sonra artırma yapılır.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

++ değişkenden önce kullanılırsa önce artırım yapılır daha sonra atama işlemi yapılır.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

-= operatörü: Eşitliğin sağındaki değeri eşitliğin solundaki değişken değerinden eksilterek tekrar eşitliğin solundaki değişkene atar.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Not: Bir bir azaltma işlemi için x-=1 (veya x=x-1) yerine x-- işlemi kullanılabilir.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

-- değişkenden sonra kullanılırsa önce atama işlemi yapılır, sonra azaltma yapılır.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

-- değişkenden önce kullanılırsa önce azaltma yapılır daha sonra atama işlemi yapılır.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

*= operatörü: Eşitliğin sağındaki değerle eşitliğin solundaki değişken değeri çarpılıp tekrar eşitliğin solundaki değişkene atar.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

/= operatörü: Eşitliğin solundaki değişken değerini eşitliğin sağındaki değere bölerek tekrar eşitliğin solundaki değişkene atar.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Başlangıç Ekranına Geliyoruz.

1-) New Project... Diyoruz.

2-) İnstalled Templates - Visual C# Diyoruz.(Burada Genel Kodlama Dilleride Olabilir.Örneğin Visual Basic)

3-) Visual C#’a Tıkladıktan Sonra Console Application Çalışma Alanımızı Seçiyoruz.

4-) Name Kısmına İstersek Projemiz Hakkında Belirgin Bir İsim Yazabiliriz.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Console Application’u Seçtikten Sonra Karşımıza Çıkan Ekranda ;

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Console.Write(""); ==> Metodu Ekrana Yazı Yazmamızı Sağlar.Fakat , Yazı Yazıldıktan Sonra İmleç Yazının Hemen Yanındadır.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Peki Bu İmleç Yanında Olunca Ne Oluyor ? ;

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Console.WriteLine(""); ==> Console.Write Metodunun Tam Tersine Ekranan Yazıyı Yazdırır.Fakat , Yazı Yazıldıktan Sonra İmleç Aşağıdadır.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Peki Bu İmleç Aşağıda Olunca Ne Oluyor ? ;

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Yazılan Yazılar Arasında Boşluk Bırakma

\\n\\n : Bu Metod Aşağıdaki Resimde Gibi Kullanılır.Kullanıcı Yazılar Arası Boşluk Bırakmak İsterse Bu Metodu Kullanır.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

İlk Değer Atanan Değişken Değerini Ekrana Yazdırma

Değişken tanımlamanın Nasıl Olduğunu Biliyoruz.Şimdi değer atadığımız değişkeni ekrana yazdırma işlemlerini göreceğiz.


[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Veya ;

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

{0} anlamı: Virgülden sonra tanımlanan ilk değişken değerini sıfırın yerine yazınız.

Eğer aynı anda birden fazla değişken değeri ekrana yazdırılmak isteniyorsa {0},{1},{2}… şeklinde devam eder. Değişkenler virgülle ayrılarak tanımlanır.


[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Değişken değerlerini ekrana birlikte yazdırmanın bir diğer yoluda + işaretini kullanmaktır. + işareti ifadeleri birleştirme işlemini gerçekleştirir.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Görüldüğü üzere süslü parantez ile yapılan örnekle artı işareti kullanılarak yapılan örneğin çıktıları aynıdır.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Yapmak istediğimiz işlem aslında x ve y değişken değerlerini toplayıp ekrana yazdırmaktı. Fakat + işaretinin buradaki görevi ifadeleri birleştirmek olduğundan x ve y değişken değerlerini yan yana yazarak yanlış sonuç üretmiştir.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Console.WriteLine("x + y toplamı = " + (x + y)); satırında x + y işlemini parantez içine alınca doğru sonuç elde edilmiştir.


Formatlı Çıkış İşlemleri

Tam sayı tipinde tanımlanmış değişkenler üzerinde uygulanabilecek format biçimleri aşağıdaki tablola belirtilmiştir.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Formatlı yazımda kullanılan parametrelerin açıklaması;

C: Sayıyı para birimi şeklinde gösterir.

D: Tek kullanıldığında bir anlam ifade etmez. Yanına sayı yazılarak kullanılır.Formatı alınacak sayının basamak değeri yanında yazılan sayıdan küçükse arta kalan değer kadar yanına sıfır eklenir.

E: Sayıyı 10 üzeri şeklinde gösterir.

F: Sayıların virgülden sonraki basamak sayısı ayarlamada kullanılır.

N: Sayıyı binlik basamaklara ayırarak yazar.

X: Sayıyı hexdecimal(16’ lık sayı sistemi) olarak yazar.

# işareti: Formatlı yazımda her bir sayı için # işaretini kullanabiliriz.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Tarih Formatlama

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Özel Tarih Formatlama

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]


Giriş İşlemleri

Klavyeden Değişkene Değer Atama

Console.Read(): Console sınıfının Read() metodu kullanıcının klavyeden giriş yapmasını sağlar tek karakter okur ve geriye tam sayı tipinde bir değer döndürür. Bu değer okunan karakterin ‘ascii’ kod karşılığıdır.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Read() metoduyla klavyeden istediğiniz kadar değer okutabiliriz, ama geriye sadece ilk karakterin ascii kod karşılığını döndürecektir. Burda dikkat etmemiz gereken bir başka nokta ise Read() metodu geriye tam sayı bir değer döndürdüğü için atamayı tam sayı tipinde bir değişkene yapmalıyız. Aksi hâlde hata mesajı alırız ( Cannot implicitly convert type ’int’ to ’string’) .

Console.ReadLine(): Console sınıfının ReadLine() metodu kullanıcının klavyeden bir değer girmesini sağlar ve bu değeri metin(string) bir ifade olarak geri döndürür.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

ReadLine() metodu ile geri döndürülen değer metin(string) tipindedir. Dolayısıyla okunan değeri metin(string) tipinde bir değişkene atamalıyız. Eğer ki matematiksel bir işlem yapılacaksa değeri sayısal ifadeye çevirmemiz gerekmetedir. Bu işlem için ‘Convert’ sınıfı veya veri türlerinin ‘Parse’ özelliğinden faydalınır.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Görüldüğü üzere string ifadeler üzerinde matematiksel işlemler yapamıyoruz.Matematiksel işlem yapacaksak değişkenimizin tipini sayısal ifadeye çevirmeliyiz.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

(Convert.ToInt16(x) ve Convert.ToInt16(y) şeklinde tip dönüşümü yapılarak string tipindeki değişken değerlerimizi tam sayı tipine dönüştürüyoruz. Böylelikle üzerinde matematiksel işlemler yapabiliyoruz.

Giriş-Çıkış İşlemleri Hata Mesajları

Hazırlayacağımız programın en önemli özelliklerinden biri de stabil çalışması olmalıdır. Stabil çalışması programımızın hatalara karşı ne kadar hazırlıklı ve kullanıcıya verdiği geri dönütle eş değerdir. Programımızın çalışması sırasında oluşabilecek hatalar genellikle kullanıcı girişlerinden kaynaklanır. Bu yüzden kullanıcı girişlerini kontol altına alarak çalışma zamanında oluşabilecek hataları en aza indirmek ise biz programcıların görevidir. Önce hatalar oluştuğunda programın nasıl sonlandığını görelim daha sonra bunun için bir çözüm arayalım.

Örneğin ;

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Programda istenilen sayı yerine ‘string’ bir ifade girdiğimiz zaman ekran çıktısı aşağıdaki gibi olacaktır. ‘String’ ifade ‘int’ tipine çevrilmede zorlanılacağından program duracaktır. Giriş dizesinin doğru olmadığına dair bir hata verecektir Giriş dizesi doğru biçimde değildi.(Input string was not in a corrent format.) . şeklinde hata vererek program çalışmayı durduracaktır.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Örneğin ;

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Girilen sayılardan biri sıfır olduğu zaman programımız sıfıra bölme hatasıyla karşılaşacağından dolayı duracaktır Sıfır’a bölme girişiminde bulunuldu.(Attempted to divide by zero).

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Yukardaki kodlarda da görüldüğü gibi program esnasında kullanıcılar tarafından yapılan hatalı girişler programın hatayla karşılaşmasına ve durmasına sebep olmaktadır. Biz bu hataları program içinde nasıl yakalarız ve kullanıcıya hata hakkında nasıl mesaj veririz buna bakalım.

.Net programcılıkta biz bu tür hatalara istisnalar(Exception) diyoruz. İstisnalar, programımızın çalışma zamanında yani program çalışırken ortaya çıkan olağan dışı durumlardır. .NET ortamında her şey gibi istisnalar da sınıflar kullanılarak oluşturulmakta ve tüm istisnalar temel System.Exception nesnesinden türetilmektedir.

İstisnaları program esnasında yakalamak ve kullanıcıya hata mesajını vermek için try{} catch{} finally{} bloklarını kullanıyoruz.

try{} bloku: İstisnanın çıkması muhtemel kodların yazıldığı bloktur.

catch{} bloku: Oluşan istisnanın yakalandığı ve kullanıcıya sunulduğu bloktur.

finally{} bloku: Try bloku içinde hata olsa da olmasa da çalışmasını istediğimiz kadoların yazıldığı bloktur. Finally bloğu genellikle bazı kaynakları serbest bırakmak için kullanılır. Kullanılması isteğe bağlı bir bloktur. En sık kullanıldığı yerler açık olan veri tabanı bağlantılarının program kırılsa da kırılmasa da kapatılması durumlarıdır.

Örneğin ;

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Programımızı çalıştırıp yukarıdaki gibi değerleri girdiğimiz zaman herhangi bir hatayla karşılaşılmadığından istediğimiz sonucu üretecektir.

Fakat prgoramımıza aşağıdaki değerleri girdiğimiz zaman hatayla karşılaşılacak ve programımız olduğu yerde durup catch{} blokuna atlayacak ve buradan çalışmaya devam edecektir.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Dikkat ederseniz her iki durumda da finally bloku içine yazdığmız kodlar çalıştırılmaktadır.

Örneğin ;

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Fakat istenilen değer dışında bir değer girdiğimiz zaman program hatayla karşılaşacağından hatanın oluştuğu satırda program durdurulur ve catch blokuna atlanır ve çalışmasına ordan devam eder. Aşağıdaki ekran çıktısında görüldüğü üzere hata x = Convert.ToByte(Console.ReadLine()); satırında oluştuğundan bir sonraki satır icra edilmeden catch blokuna atlanmış ve program buradan devam etmiştir.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Açıklama Satırları

Açıklama satırları programcıya kod içinde tanımlama metinleri yazma imkânı sağlar.Bu sayede kod parçacıklarının ne iş yaptıkları anlatılmış olur. Kodlarımız arasına açıklama satırları eklemek oldukça önemlidir. Az satırlı program kodlarında birşey ifade etmeyebilir fakat büyük programlarda kod bloklarının ne işe yaradıkları yazılarak programcının ileride karşılaşacağı problemleri kolay çözmesinde yardımcı olacaktır. Ayrıca açıklama satırları program derlenirken dosya içerisine alınmadığından oluşan dosyanın boyutunu ya da çalışmasını etkilememektedir.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

// karakterlerinden sonra gelen ve satırın sonuna kadar olan sözcükler yorum satırlarıdır ve programlama dili derleyicisi tarafından görünmez. Aynı zamanda birden fazla satıra yorum eklemek istiyorsak /* */ karakterleri arasına yorum yazarız.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Operatörler

Programlama dillerinde tanımlanmış sabit ve değişkenler üzerinde işlemler yapmamızı sağlayan karakter ya da karakter topluluklarına operatör denir.

Örneğin;

int sayi = 2 + 3;

Yukardaki örnekte + ve =karakterleri birer operatördür. + karakteri 2 ve 3 sabitlerini toplama yapıyor ve =karakeri ise toplanan değeri tanımlanan değişkene atama işlemini gerçekleştiriyor.

Aritmetiksel Operatörler

Aritmetik işlemler yaparken kullandığımız operatörlerdir.

Dört İşlem

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Dört işlemi birkaç örnek yaparak gösterelim.

Örneğin;

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]


Örneğin;

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Aslında sonuç 2.5 olması gerekirken 2 olarak çıktı. Bunun sebebi ise x ve y değişkenleri int yani tam sayı tipinde tanımlandıklarından çıkan sonucun da kesirli kısmı atılıp tam sayı kısmı alınmaktadır.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Birinci çıktı: sonuc = x / y = 10/4 bir tam sayı bölme işlemi olduğundan bölümün tam sayı kısmı alınmıştır.

İkinci çıktı: floatSonuc = (float)x / y = (float)10 / 4 deyiminde, önce 10 sayısı float tipine dönüştürülüyor, sonra 4 sayısına bölünüyor. Bir float tipin bir tam sayıya bölümü yine float tipindendir. Dolayısıyla, (float)10 / 4 = 2.5’tir.

Üçüncü çıktı: Bu çıktı ikinci çıktının simetriğidir. floatSonuc = x / (float)y = 10 / (float)4 deyiminde, önce 4 sayısı float tipine dönüştürülüyor, sonra 10 tam sayısı 4.0 sayısına bölünüyor. Bir tam sayı tipin bir float tipine bölümü yine float tipindendir. Dolayısıyla, 10 / (float)4 = 2.5’tir.

Dördüncü çıktı: İkinci ve üçüncü çıktının birleşimidir. floatSonuc = (float)x / (float)y = (float)10 / (float)4 deyiminde, önce 10 ve 4 sayılarının her ikisi de float tipine donüştürülür. Sonra iki float tipin birbirine bölümü yapılır. Bu işlemin sonucu, doğal olarak bir float tipidir. Dolayısıyla, (float)10 / (float)4 = 2.5’tir.

Beşinci çıktı: floatSonuc = (float)(x / y) = (float)(10/4) deyiminde, önce (10 / 4 ) bölme işlemi yapılır. Bu bir tam sayı bölme işlemi oldugu için birinci çıktıda oldugu gibi çıkan sonuç 2 dir. (float) 2 = 2.0000000 olduğundan çıktı 2’dir.

Mod Alma

Bir sayının başka bir sayıya bölümünden kalan sonucu alma işlemine mod alma denir.Bu işlemi yapmak için %(Yüzde) karakteri kullanılır.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

StanteaR 13 Temmuz 2013 21:07

Cevap: C(Sharp) - Console Yazılı-Görsel Eğitim
 
Emegine Saglık Yararlı Bılgılerı Bızlere Sundugun İçin Teşekkürler.

aSi 13 Temmuz 2013 23:34

Cevap: C(Sharp) - Console Yazılı-Görsel Eğitim
 
Helal sana adamım, bu tarz bilgiler iyi gelir :)


Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 13:38.

Powered by vBulletin® Version 3.8.8 Beta 3
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2024 IRCForumlari.Net