1 / 69

B TP205 – Görsel Programlama

B TP205 – Görsel Programlama. C# Temelleri. Bugün…. Değişkenler ve İfadeler Yorumlar Değişkenler İfadeler Operat örler Namespace s (Ad alanları) Akış kontrolü if, switch while, do-while, for, foreach İkili operatörler. Temel C# Sözdizimi.

Download Presentation

B TP205 – Görsel Programlama

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. BTP205 – Görsel Programlama C# Temelleri

  2. Bugün… • Değişkenler ve İfadeler • Yorumlar • Değişkenler • İfadeler • Operatörler • Namespaces (Ad alanları) • Akış kontrolü • if, switch • while, do-while, for, foreach • İkili operatörler

  3. Temel C# Sözdizimi • Boşluklar (boşluk, yeni satır, tab) C# derleyicisi tarafından göz ardı edilir • İfadeler noktalı virgül (;) ile sonlandırılır • C# kodları büyük-küçük harf duyarlıdır • C# blok-yapılıbir dildir ve bloklar ayraçlar ile sınırlanır (‘{’ ve ‘}’) • Kodlarınızı yazarken okunabilir olması için • içerden başlamaya dikkat ediniz • yorumlar yazınız

  4. Yorumlar • Tip I /*Tek yorum satırı*/ /*Çoklu-YorumSatırı*/ • Tip II //Başka bir tekli yorum satırı a = 0; //sayacı sıfırla • Tip III /// Dokümantasyon için kullanılan özel yorum satırları

  5. Değişkenler • Değişkenleri, verinin içinde saklandığı kutular olarak düşünebiliriz • Değişkenlerin tipleri, isimleri vedeğerleri vardır intnum = 5; • Burada, intdeğişkenin tipi, numismi ve5‘de değeridir • Bütün değişkenler kullanılmadan önce tanımlanmalıdır

  6. Basit Tipler • Basit tipler sayıları Boolean (doğru ya da yanlış) değerleri kapsar • Sayıları ifade etmek için birçok tip vardır, çünkü her tipi ifade edebilmek için farklı sayıda byte gerekir

  7. Tamsayı Tipleri (integer) u: unsigned-işaretsiz s: signed-işaretli

  8. Noktalı Sayı Tipleri (Floating Point)

  9. Hassasiyet Decimal veri tipi genellikle daha yüksek hassasiyet isteyen para birimleri için kullanılır!

  10. Diğer Basit Tipler Char veri tipinin 2 byte ve Unicodeolarak saklandığına dikkat ediniz!

  11. Değişken Tanımlama, Değer Atama ve Yazdırma Örneği static void Main(string[] args) { intmyInteger; string myString; myInteger = 17; myString = "\"myInteger\" is"; Console.WriteLine("{0} {1}.", myString, myInteger); } Burada iki değişken tanımlanıyor Değişkenlere Değerler atanıyor Değişkenler ekrana yazdırılıyor. "myInteger" is 17.

  12. Değişken Değerlerini Yazdırma • Değişken değerlerini ekrana yazdırmak için Console.Write()veya Console.WriteLine() metodlarını kullanınız • Console.WriteLine() metodu satırın sonuna yeni bir satır ekler • Metodların birçok veri tipini yazdırmak üzere farklı suretleri vardır, en uygun olanı kullanınız

  13. BazıConsole.WriteLine() Suretleri

  14. Ekrana bir int yazdırma • int x = 17, y = 25; • Console.WriteLine(x); • Console.WriteLine(x.ToString()); • Console.Write(“x = ”); • Console.WriteLine(x); • Console.WriteLine(“x = ” + x); • Console.WriteLine(“x = ” + x.ToString()); • Console.WriteLine(“x = {0}, y = {1}.”, x, y); 17 17 x = 17 x = 17 x = 17 x = 17, y = 25.

  15. Değişken İsimlendirme • İlk karakter bir harf ya da altçizgi (_) olmalıdır • Devam eden karakterler harf, altçizgi ya da sayı olabilir • Rezerve edilmiş kelimeler değişken ismi olarak kullanılamaz • Eğer rezerve bir kelimeyi değişken ismi olarak kullanmak isterseniz, başına bir atkarakteri (@) getirebilirsiniz

  16. Örnek: Geçerli Değişken İsimleri • myBigVar • VAR1 • _test • i • myVariable • MyVariable • MYVARIABLE

  17. Örnek: Geçersiz Değişken İsimleri • a+b • 99bottles • namespace • double • my-result

  18. Anahtar Kelimeler

  19. C# Bağlamsal Anahtar Kelimeler Bağlamsal anahtar kelimeler bazı dil yapılandırmalarında kullanılırlar.Bu yapılandırmalarda tanımlayıcı olarak kullanılamazlar. Aksi taktirde, tanımlayıcı olabilirler.

  20. Macar Notasyonu • Değişkenin tipini gösteren bir önek başa eklenir • nAge • iAge • fDelimeter • btnClick • txtName

  21. Deve Stili • İlk kelime küçük harfle başlar, diğerleri byük harfle devam eder • age • firstName • lastName • birthDay

  22. Pascal Stili • Bütün kelimeler büyük harfle başlar • Age • FirstName • LastName • WinterOfDiscontent

  23. Önceleme dizgeleri (Escape Sequences)

  24. Karakter dizileri (string) üzerine… • \u sonrasında Unicode karakterler kullanabilirsiniz • “Karli\’s string” • “Karli\u0027s string” • Eğer bir karakter dizisinin önüne @ işareti koyarsanız bütün önceleme dizgeleri yok sayılır • “C:\\inetpub\\wwwroot\\” • @“C:\inetpub\wwwroot\” • “A short list:\nitem 1\nitem 2” • @“A short list: item 1 item 2”

  25. Değişken Tanımlama ve Değer Atama • int age; • age = 25; • int age = 25; • intxSize, ySize; • intxSize = 4, ySize = 5; • intxSize, ySize = 5;

  26. Operatörler • Toplama, çıkarma vb. işlemler operatörler aracılığıyla yapılır • Üç operatör kategorisi vardır: • Unary (tekli) – tek terim üzerinde işlem yapar • Binary (ikili) – iki terim üzerinde işlem yapar • Tertiary (üçlü) – üç terim üzerinde işlem yapar

  27. MatematikselOperatörler % : mod (bölümünden kalan) operatörü Örnek: 8 % 3 2.

  28. Artırma veAzaltma Operatörleri Önce arttır, sonra atama yap Önce atama yap, sonra arttır

  29. Alıştırma int var1, var2 = 5, var3 = 6; var1 = var2++ * --var3; Console.WriteLine("var1={0}, var2={1}, var3={2}", var1, var2, var3); var1=25, var2=6, var3=5

  30. Değişken Değerlerini Yazdırma int var1 = 3, var2 = 5; Console.WriteLine("var1 = {0}, var2 = {1}", var1, var2); var1 = 3, var2 = 5

  31. Değişken Değerlerini Yazdırma int var1 = 3, var2 = 5; Console.WriteLine("{0}{1}{0}{1}{1}", var1, var2); 35355

  32. Metinleri (string) Okuma string userName; Console.Write("İsminiz: "); userName = Console.ReadLine(); Console.WriteLine("Hoşgeldin {0}!", userName); İsminiz: Bilge Hoş geldin Bilge!

  33. Tamsayıları (int) Okuma • int age; • Console.WriteLine("Yasiniz: "); • age = int.Parse(Console.ReadLine()); • Console.WriteLine("Yasiniz{0}.", age); Eşdeğer kod: Convert.ToInt32(Console.ReadLine());

  34. Double değerleri okuma • double w; • Console.WriteLine("Agirliginiz (kg.): "); • w = double.Parse(Console.ReadLine()); • Console.WriteLine("{0} kilogramsiniz", w); Equivalent code: Convert.ToDouble(Console.ReadLine());

  35. Atama Operatörleri

  36. Operatör Öncelikleri

  37. Ad Alanları (Namespaces) • Hazır kütüphaneleri sağlamanın .NET yolu • C veC++’daki başlık (header) dosyaları • Java’daki paketler • .NET sınıfları ad alanlarında gruplanmıştır • Sin, Cos, Atan, Acos, Pi, Sqrt, vb. Mathad alanı • Int32, Double, vb. Systemad alanı • Windows Forms sınıfları System.Windows.Forms • Kayıt defteri (registry) operasyonlarıMicrosoftad alanı • Programlarınızı ya da DLL’lerinizi ayrı bir ad alanı içinde yazabilirsiniz, örneğin şirketinizin isminde

  38. Akış Kontrolü • Dallanma(if, switch, üçlüoperatörler) • Döngüler(for, while, do-while, foreach)

  39. Karşılaştırma Operatörleri

  40. Boolean Değişkenler • Boolean bir değişken doğru ya da yanlış değerleriniz alabilir • boolisWhite = true; • isWhite = false; • Karşılaştırma sonuçları boolean değişkenlerde tutulabilir • boolisLong = (height > 195); • boolisWhite = (color == Color.White);

  41. Temel Mantık Operatörleri

  42. ‘Eğer’ İfadeleri int height; Console.Write("Boyunuzu giriniz (cm.) "); height = int.Parse(Console.ReadLine()); if (height > 190) Console.WriteLine("Siz uzun bir kişisiniz!"); else Console.WriteLine("Boyunuz normaldir!");

  43. ‘Eğer’ İfadeleri if (koşul) <koşul doğru ise çalıştırılacak ifadeler>; if (koşul) { <ifade 1>; <ifade 2>; }

  44. if..else if(koşul) < koşul doğru ise çalıştırılacak ifadeler>; else < koşul yanlış ise çalıştırılacak ifadeler >; • Birden fazla ifade yer alırsa süslü parantez kullanınız.

  45. ‘if’ üzerine.. • Parantezler (‘(’ and ‘)’) mutlaka gereklidir • Süslü parantezler (‘{’ and ‘}’) birden fazla ifade var ise kullanılmalıdır: if (test) { ifade1; ifade2; } • elsekısmıatılabilir • ififadeleri iç içe yazılabilir

  46. Örnek: 3 sayıdan en küçüğünü bulma int a, b, c, min; Console.WriteLine("3 sayi giriniz:"); Console.Write("a = "); a = int.Parse(Console.ReadLine()); Console.Write("b = "); b = int.Parse(Console.ReadLine()); Console.Write("c = "); c = int.Parse(Console.ReadLine()); if(a < b) { if (a < c) min= a; else min = c; } else { if (b < c) min = b; else min = c; } Console.WriteLine(«En kucuksayi{0}.", min);

  47. Koşulları kontrol etme if (var1 == 1){ // bir şeyler yap. } else{ if(var1 == 2){ // başka bir şeyler yap. } else{ if (var1 == 3 || var1 == 4) { // başka bir şeyler yap. } else{ // başka bir şeyler yap. } } } if (var1 == 1){ // bir şeyler yap. } elseif (var1 == 2){ // başka bir şeyler yap. } elseif (var1 == 3 || var1 == 4) { // başka bir şeyler yap. } else{ // başka bir şeyler yap. }

  48. Sık karşılaşılan hatalar • if (var1 = 1) {…} • if (var1 == 1 || 2) {…}

  49. ‘switch’ İfadeleri switch(<testDegiskeni>) { case<karsilastirmaDegeri1>: <eğer <testDegiskeni> == <karsilastirmaDegeri1> ise calistirilacak ifadeler> break; case<karsilastirmaDegeri2>: <eğer<testDegiskeni> == <karsilastirmaDegeri2> ise calistirilacak ifadeler> break; . . . case<karsilastirmaDegeriN>: <eğer<testDegiskeni> == <karsilastirmaDegeriN> ise calistirilacak ifadeler> break; default: <eğer<testDegiskeni> != karsilastirmaDegerleriise calistirilacak ifadeler> break; }

  50. Örnek 1 switch (var1) { case 1: // Bir şey yap. break; case 2: // Başka bir şey yap. break; case 3: case 4: // Başka bir şey yap. break; default: // Başka bir şey yap. break; }

More Related