C# İle Veri Yapıları Ve Programlama

Slides:



Advertisements
Benzer bir sunumlar
STRİNG FONKSİYONLARI.
Advertisements

JAVA TEMELLERİ GİRİŞ JAVA TEMELLERİ GİRİŞ signalsec.com & mialkan.com.
Değişken , Veri Türleri ve Operatörler
Değişkenler ve bellek Değişkenler
JavaScript Birinci Hafta.
Programlama-II (Java ile Bilgisayar Programlama)
Bölüm 2 C Dilinin Temelleri
Değişken Tanımlamaları
C Programlama Diline Giriş
Basit Veri Türleri Sayısal Veri Türleri Karakter veri türü
BPR151 ALGORİTMA VE PROGRAMLAMA - I
VERİ TİPLERİ VE DEĞİŞKENLER
3 Sql Veri Tipleri ve Örnek Veritabanı Tasarımı
OOP4 LAB.
SQL SERVER 2008 VERİ TİPLERİ.
BPR152 ALGORİTMA VE PROGRAMLAMA - II
BPR151 ALGORİTMA VE PROGRAMLAMA - I
DEĞİŞKENLER VERİ TÜRLERİ ve OPERATÖRLER
PROGRAMLAMA DİLLERİNE GİRİŞ Ders 4: Diziler
Namespaces and .NET Class Library (İsim Alanları Sınıf Kütüphanesi)
BPR152 ALGORİTMA VE PROGRAMLAMA - II
Bölüm 2 C Dilinin Temelleri Genel Kavramlar
BPR152 ALGORİTMA VE PROGRAMLAMA - II
Diziler.
DİZİLER.
BPR152 ALGORİTMA VE PROGRAMLAMA - II
DELEGATE OOP-UYG.
Erişim Denetimi, Fonksiyon
Veri Yapıları Ve Algoritmalar
JAVADA PROGRAM DENET İ M İ VE OPERATÖRLER. int a ; a=4 ; // do ğ ru bir atama 4=a ; // yanlış bir atama!
İSİM UZAYLARI (NAMESPACE)
BPR151 ALGORİTMA VE PROGRAMLAMA - I
.Net teknolojisi ve C# Yasin Gedik Dokuz Eylül Üniversitesi (4. Sınıf) Microsoft Danışman Öğrenci
C++ Temelleri C++ genel amaçlı, nesne tabanlı, yüksek seviye programlama dilidir.
Net Class Framework ’ ün en üst yapısına İsim Uzayı denir. İsim uzayları ; pascal programlama dilinde 1990 ve hatta öncesinden beri varolmuş, C’de yer.
BPR152 ALGORİTMA VE PROGRAMLAMA - II Öğr. Gör. Bayram AKGÜL
C ile Programlamaya Giriş
Chapter 6: Using Arrays.
Ders 2- Veri türleri, Karar ve Döngü Yapıları, Görsel Kontröller Aslı Ergün.
Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi
Değişkenler bellekte bulunan verilerdir. Değer tipleri veriyi direk olarak bellek bölgesinden alırken, Referans tipleri başka bir nesneye referans gösterirler.
C# Programlama Dili İlk programımız Tür dönüşümü Yorum ekleme
INTERNET TABANLI PROGRAMLAMA
WEB PROGRAMLAMA PHP Temelleri Dr. Erman Yükseltürk.
Diziler Adres Kavramı Nesnelerin Adresleri sizeof Operatörü
NESNEYE YÖNELİK PROGRAMLAMA
Mantıksal Operatörler ve Denetim Yapıları
BPR152 ALGORİTMA VE PROGRAMLAMA - II Öğr. Gör. Bayram AKGÜL
JAVA’DA DİZİLER Dr.Galip AYDIN.
Temel Giriş/Çıkış Fonksiyonları
C# Veri Tipleri ve Değişkenler
VERİ TİPLERİ VE DEĞİŞKENLER
İNTERNET PROGRAMCILIĞI I BTP 207 Ders 8.  Tamsayı Değerler (Integer) Tamsayılar, 10 tabanlı (decimal), 8 tabanlı (octal) veya 16 tabanlı (hexadecimal)
Ders 2- Veri türleri, Karar ve Döngü Yapıları, Görsel Kontröller
Değerler ve Değişkenler
JAVA PROGRAMLAMA ORNEKLER
İKMAP İnternet 1 Ders Notu
SINIFLAR ve NESNELER. İlk sınıfımızı ekleyelim class KrediHesap { public ulong HesapNo; public double Limit; public string KartSahibi; }
BTP206– Görsel Programlama II
2. HAFTA 2. Hafta.
Bölüm 2 C Dilinin Temelleri Genel Kavramlar Yazım ve Noktalama Kuralları C Kütüphaneleri C Dilindeki Sözcükler Değer Sabitleri Veri Tipleri Değişkenler.
JAVA 1. GİRİŞ & TARİHÇE Java, Sun Microsystems mühendislerinden James Gosling tarafından geliştirilmeye başlanmıştır. Açık kodlu. Nesneye yönelik. Düzlemden.
İbrahim Olgaç PROGRAMLAMA DİLLERİ SUNUMU C#
C Programlama Dili Bilgisayar Mühendisliği.
ACTIONSCRIPT TEMELLER İ SAVAŞ TUNÇER
3- VERİ TİPLERİ - OPERATÖRLER Nesne Yönelimli Programlama - i
ARDUİNO Arduino Eğitimleri Bölüm 3 Programlama Dili Temelleri
Veri Tipleri 12/4/2018.
Bilgisayar Programlama
JAVA’DA DİZİLER. Özet  Dizi: belirli sayıda ve aynı veri türünden de ğ işkenlere aynı adla erişilmesini sa ğ layan bir yapıdır.  Dizilerde döngü işlemleri.
Sunum transkripti:

C# İle Veri Yapıları Ve Programlama Hazırlayan: Mehmet Emin ÖZCAN Gaziantep Üniversitesi Meslek Yüksek Okulu 2006

İçindekiler C# Programlama Dili Program yapısı Değişkenler Operatörler Karşılaştırma Komutları Döngü Komutları Diziler Fonksiyonlar Nesne Tanımlama

C# Programlama Dili 1 C# da her şey nesnedir. Yazdığımız program bir sonraki yazılacak programa çok kolay eklenir. Web sayfasına gömülebilir. Platform bağımsız çalışabilir. (Dos,Linux,Microsoft) da çalışabilir. Java programlama dilinin kötü bir kopyası gibi görünmede Java ya göre daha derli topludur. Kullanımı kolaydır. Program komutları Küçük harfe duyarlıdır. Büyük harfle yazmak gerektiğinde küçük harfle yazarsak hata mesajı ile karşılaşırız. Her komut işleminden sonra noktalı vürgül ; kullanılır. Birkaç komutun bir arada bir komut gibi davranması için komutlar { } arasına alınır, Yani blok yapılır.

C# Programlama Dili 2 Açıklama çümlesi için //,/// ve /* */ işaretleri kullanılır // işaretinden sonra satırın bitimine kadar açıklama cümlesidir. /* işaret sonra işaretin bitimine kadar olan bölüm açıklama cümlesidir */ /// işaretinden sonra satırın bitimine kadar açıklama cümlesidir. Örnekler: /* bu açıklama çumlesi çok satırlar için kullanılır */ Console.WriteLine(/* açıklamalar */ “Merhaba GMYO”); int Genişlik=50; fonksiyon1(Genişlik, /*Yükseklik*/ 100); string s = “/* Buda normal bir string dir.*/”; /// xml lerde kullanılırlardı. // den farkı /// Tıklarsan tek satır olurlar. Tekrar tıklarsan eski haline dönerler.

Program yapısı namespace BenimAdUzayım { class BenimNesnem Main() : Ana fonksiyon anlamına gelir. C/C++ dilerinde olduğu gibi, programın başlama yeridir. Program çalışınca Main fonksiyonunu çalıştırır. Main fonksiyonu yoksa program çalışmaz. class : Sınıf anlamına gelir. Bu komutla nesne oluşturulur. C# da her şey nesnedir. Dolaysıyla Main fonksiyonu da bir nesnede içinde zorundadır. class kelimesi içindekiler nesneye dönüşür. Class komutu yoksa program çalışmaz. namespace : AdUzayı anlamına gelir. Nasıl ki dosyalar klasörlerde toplanırsa Nesnelerde AdUzay’larında toplanırlar. Yazdığımız programda namespace yoksa, derleyici programı isimsiz AdUzayı bölümüne ekler. using : Daha önce yazılmış namespace’leri yazacağımız programa ekler. namespace BenimAdUzayım { class BenimNesnem static void Main() System.Console.WriteLine(“Merhaba MYO”); }

Değişkenler C# da iki türlü değişken mevcuttur. Basit Veri Tipli Değişkenler: Veriler direk değişkene yazılır. Null değeri alamazlar. Değişkentipi DeğişkenAdı; Şeklinde tanımlanırlar. Primitive int i; double x; Enum enum State { Off, On } Struct struct Point { int x, y; } Referans Veri Tipli Değişkenler: Değişkenler Nesnenin Referansını içerir. Null değeri alabilirler. Classes class Foo: Bar, IFoo {...} Interfaces interface IFoo: IBar {...} Arrays Foo[] a = new Foo[10]; Delegates delegate void Empty(); int i = 25; i 123 string s = “Merhaba GMYO"; s “Merhaba GMYO"

Değişkenler (Tamsayı Tipi) İsim CTS Tipi Boyut Aralık (min:max) Sbyte System.SByte 8-bit -128: 127 (-27:27-1) short System.Int16 16-bit -32,768: 32,767 (-215:215-1) int System.Int32 32-bit -2,147,483,648: 2,147,483,647 (-231:231-1) long System.Int64 64-bit -9,223,372,036,854,775,808: 9,223,372,036,854,775,807 (-263:263-1) byte System.Byte 0: 255 (0:28-1) ushort System.UInt16 0: 65,535 (0:216-1) uint System.UInt32 0: 4,294,967,295 (0:232-1) ulong System.UInt64 0: 18,446,744,073,709,551,615 (0:264-1) Notr: int i = 5; long x = 0x12ab; uint ui = 1234U; long l = 1234L; ulong ul = 1234UL; Örnekler: int i = 5; long x = 0x12ab; uint ui = 1234U; long l = 1234L; ulong ul = 1234UL;

Değişkenler Küsuratlı Sayı Tipi İsim CTS Tipi Boyut Aralık (yaklaşık) float System.Single 32-bit 7 ±1.5 _ 10-45 ; ±3.4 _ 1038 double System.Double 64-bit 15/16 ±5.0 _ 10-324 ; ±1.7 _ 10308 Örnek: float f = 12.3F; // küçük f harf’i de konulabilir. Ondalıklı Sayı Tipi İsim CTS Tipi Boyut Aralık (yaklaşık) decimal System.Decimal 128-bit 28 ±1.0 _ 10-28 ; ±7.9 _ 1028 Örnek: decimal d = 12.30M;

Mantıksal Sayı Tipi =doğru/yanlış Değişkenler Mantıksal Sayı Tipi =doğru/yanlış İsim CTS Tipi Değeri bool System.Boolean true ; false Sıfırsa false değilse true dir. Örnek: int x=3; int y=5; bool durum; durum=(x>y) ; if(durum)......; Karekter Sayı Tipi İsim CTS Tipi Değeri char System.Char 16-bit e kadar karekter Örnek: char s; s=“a”;

Değişkenler Esc Karekterleri Anlamı Tek Tırnak işareti Klavyede bulunan, sil, bir alt satıra in, tab tuşu gibi tuşlara ESC karekterleri denir. Normal bir harf gibi kullanılırlar. Esc Karekterleri Anlamı \’ Tek Tırnak işareti \” Çift Tırnak işareti \\ Ters Bölü \0 Null \a Uyarı \b Backspace \f İleri \n Yeni satır \r Geri dön \t Tab karekteri \v Yatay tab karekteri

Değişkenler Enum Veri tipi Enum veri tipi, normalde mevcut olmayan, bize özel verileri sıralamak amacıyla kullanılır . Normalde int sayı; Kodu ile sayı içine tamsayıları saklayacağım hafızaya dönüşür. Tanımlama yaptıktan sanra i=3; diyebiliriz. Fakat i=Pazartesi diyemeyiz. Diyebilmemiz için aşağıdaki gibi tanımlama yapmamız gerekir. public enum Günler{ Pazertei = 0, Salı = 1, Çarşamba = 2} Günler i=Pazartesi; enum Renkler {Sarı, Kırmızı, Yeşil}; Renkler Portakal; Portakal=Renkler.Sarı; Renkler Elma; Elma=Yeşil; string str = Portakal.ToString(); // str nin değeri sarı olur

Ön Tanımlı Referans Tipleri: İsim CTS Tipi Tanımı object System.Object Diğer tüm veri tiplerini içeren kok tip. string System.String Harf, kelime, cümle, parağraf gibi alfabetik veriler için kullanılır. Örnekler: string s1 = “Selam“; string s2 = “GMYO”; string s3 = s1 + s2 ; // s3 ün değeri Selam GMYO dur string adres = “C:\\Emin\\ilkProgram.cs”; // aşağıdaki satırla aynı dır. string adres = @”C:\Emin\ilkProgram.cs”; // yazının başına @ işareti korsan yazıyı //olduğu gibi alır bölü varsa bölü, iki satırsa iki satır olarak alır. string ikisatırlı = @”Bu veriyi iki satıra yazıyorum veri iki satırlı olarak değişkene atanmıştır”; object x=3; object y=3.14; object z=“selam C#”;

Operatörler Kategori Operator Arithmetik Mantıksal + - * / % Mantıksal & | ^ ~ && || ! String concatenation + Bir arttır, bir azalt ++ — Bit seviyesinde öteleme << >> Karşılaştırma == != < > <= >= Atama = += -= *= /= %= &= |= ^= <<= >>= Eleman ( nesne için) . İndeksleme [] Parantez () Karsılaştırma operatörü ?: Yeni Nesne Oluşturma operatörü new Tip bilgisi sizeof as Overflow ve exception controlleri checked unchecked Pointer ve Adress * -> & [] örnek Farklı Gösterimi x++, ++x x = x + 1 x—, —x x = x - 1 x += y x = x + y x -= y x = x — y x *= y x = x * y x /= y x = x / y x %= y x = x % y x >>= y x = x >> y x <<= y x = x << y x &= y x = x & y x |= y x = x | y x ^= y x = x ^ y

Operatörler Örnekler: int x = 3; if (x == 3) // doğru ifade int x = 3; if (x = 3) // yanlış ifade. if li çümlede karşılaştırma kullanılmamış int x=7 % 5; // 7 yi 5 e böl kalan (mod) 2 dir. x in değeri 2 dir. int x = 5; // x 5 olsun if (++x == 6) // önce x i bir arttır, x in değeri 6 olur. Sonra x 6 ya eşitimidir sorgula { Console.WriteLine(“Bu komut çalıştı”); } if (x++ == 7) // x in değerei 6 idi. önce x eşitmi 7 ye bak, sonra x i bir arttır. Console.WriteLine(“Bu kod çalışmaz”);

Karşılaştırma Komutu Karşılatırma ve yönlendirme için if, switch ,?: kullanılır. if (karşılaştırma) komut; else komut; switch (integerA){ case 1: komut;break; case 2: komut;break; default: komut;break;} Karşılaştırma ? Komut : Komut; Durum1: Komut; Goto Durum;

Karşılaştırma Komutu Örnekler: int i=6; if (i==5) Console.Write(“i in değeri 5 dir”); int i=6; switch (integerA){ case 4: Console.Write(“i in değeri 4 dir”); break; case 6: Console.Write(“i in değeri 6 dir”); break; case 8: Console.Write(“i in değeri 8 dir”); break; default: Console.Write(“i in değeri 4,6,8 degildir.); break;} (i==5)? Console.Write(“i in değeri 5 dir”);: Console.Write(“i in değeri 5 dir”); int i=0: katman1: if (i != 0) goto katman1;

Döngü Komutları while(durum) Komut; do komut while (durum); for (ilk değer ataması; durum; artış) Komut; while(durum) Komut; do komut while (durum); foreach (int x in dizin) Console.WriteLine(x); Layer1: goto Layer1;