ÜNİTE. NESNE TABANLI PROGRAMLAMA I Okt. Mustafa AKBUĞA İÇİNDEKİLER HEDEFLER METOTLAR

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "ÜNİTE. NESNE TABANLI PROGRAMLAMA I Okt. Mustafa AKBUĞA İÇİNDEKİLER HEDEFLER METOTLAR"

Transkript

1 METOTLAR İÇİNDEKİLER Metotlar Metot Oluşturma ve Kullanma Metot Parametresi Olarak Diziler Değer ve Referans Parametreleri Metotların Aşırı Yüklenmesi Kendini Çağırabilen Metotlar NESNE TABANLI PROGRAMLAMA I Okt. Mustafa AKBUĞA HEDEFLER Bu üniteyi çalıştıktan sonra; Metot tanımlayıp programlar içerisinde kullanabilecek, Değer ve Referans Parametreleri arasındaki farkları öğrenip uygulayabilecek, Kendini çağırabilen metotları yazabileceksiniz. ÜNİTE 9

2 GİRİŞ Bilgisayar dillerinin öğretilmesinde, fonksiyonlar ve metotlar önemli bir ağırlığa sahiptir. Bunun sebebi ise sürekli tekrar edilmesi gereken kodların bir kod bloğuna yazılarak, her defasında aynı kodları yazmak yerine bu kod bloğunun çağrılarak çalıştırılmasıdır. Bu sayede hem hata yapma ihtimali en aza indirilir hem de zamandan kazanılarak program yapısı küçültülmüş olur. Şu ana kadar yapılan örneklerde genelde sistem tarafından hazırlanmış C # dilindeki ReadLine(), WriteLine() vb. gibi hazır metotlar kullanılmıştır.bu ünitede ise özel metodlar tanımlanarak, programların içerisinde nasıl kullanılacağı anlatılacaktır. METOTLAR Metotlar tek başlarına çalıştırılabilen yapılar değildir. Metot, sadece metodu çağıran ana program için faydalı işler yapar. Nesneye yönelik programlama dillerinde genellikle fonksiyonlar metot olarak isimlendirilir. Her çalışan C# programında bir ana metot (Main) mevcuttur. Program çalışmaya ilk olarak bu metotla başlar. Tüm kodların bu (Main) metodu içine yazılması da büyük programlar için iyi bir programcılık sayılmaz. Çünkü gerçek hayatta olduğu gibi programlarda bir bütün olarak ele alınmamalıdır. Küçük parçalara ayrılarak, her parça için uygun birer metot yazılmalıdır. Programın herhangi bir yerinde kullanmak için belirli bir işi yerine getirmek amacıyla tasarlanmış alt programlara metot denir. C# ta bildirilen bütün metotlar mutlaka bir sınıfın içinde olmalıdır. Bir sınıfın üyesi olmayan metotlar bildirilemez. Burada bahsedilen Sınıflarla ilgili bilgiler bir sonraki ünitede anlatılacaktır. Metot Oluşturma ve Kullanma: Metotları tanımlarken kullanılan bildirim şu şekildedir: [ erişim belirteçleri ] < dönüş değeri > metot ismi ( parametre listesi ) Metodun iş yapması için kendisini çağıran metottan aldığı bilgilere parametre (argüman), kendisini çağıran fonksiyona döndürdüğü bilgiye ise geri dönüş değeri (return value) denir. metot gövdesi; [erişim belirteçleri]: Erişim belirteçleri (Private, Public, Protected, Protected Internal),metoda nerelerden erişilebileceğini belirleyen ayarlardır. Belirtilmediği durumlarda private olarak kabul edilir. Yani sadece tanımlandığı sınıf içinde kullanılabilen bir metot hâline gelir. <Geri dönüş değeri>: Tanımlanan metodun, çağıran fonksiyona gönderdiği veririn (int, float, string, bool..vb.) türüdür. Atatürk Üniversitesi Açıköğretim Fakültesi 2

3 Metot ismi: Her bir metot tanımlanırken metota mutlaka bir isim verilir. Metot çağrılırken verilen bu isim kullanılarak çağırma işlemi yapılabilir. (Parametre listesi): Parametreler ise metodun çalışırken ihtiyaç duyduğu çağıran fonksiyondan gönderilen bilgileridir. Örnek tanım şekli: using System; class Program int MetotAdi(int a, int b) return a + b; Bu metot, iki int türünden girdi değerini alır ve bu girdilerin toplamını int türünden tutar. Ancak bu metot statik olmadığından programımız içinde kullanabilmemiz için bu metodun içinde bulunduğu sınıf türünden bir nesne yaratıp. operatörüyle bu nesne üzerinden metodumuza erişmeliyiz. Yukarıda verilen tanıma uygun kullanım Şekil 9.1 de örnek program_1 de içerisindeki kodla gösterilmiştir. Örnek program_1: Metotlar, statik ve dinamik olmak üzere iki faklı şekilde bellekte yer kaplar. Şekil 9.1. Dinamik olarak tanımlanmış metotların kullanımını gösteren C# kodu Atatürk Üniversitesi Açıköğretim Fakültesi 3

4 Şekil 9.2. Örnek program_1 in ekran görüntüsü Statik olarak tanımlanan metotlara erişmek için metodun içinde bulunduğu sınıf türünden bir nesne yaratmaya gerek yoktur. Statik olarak tanımlanan metotlara sadece metodun adını yazarak erişilebilir. Şekil 9.2 deki ekran görüntüsüyle aynı sonucu verecek şekilde metot tanımı Şekil 9.3 te örnek program_2 de gösterilmiştir. Örnek program_2: Bütün programlarda önce Main metodu çalışır. Diğer metotlar Main metodunun içinden çağrılmadıkça çalışmaz. Şekil 9.3. Statik olarak tanımlanmış metotların kullanımını gösteren C# kodu Şekil 9.4. Örnek program_2 nin ekran görüntüsü Şekil 9.3 içerisindeki kırmızı okla işaretlenen Topla metodu tanımında static anahtar kelimesi kullanılmıştır. Bu kelimenin kullanılması ile ikinci okla işaretlenen yerde metodun sadece ismi ve parametreleri verilerek toplama işlemi Atatürk Üniversitesi Açıköğretim Fakültesi 4

5 yaptırılmıştır. Şekil 9.2 ve Şekil 9.4 teki ekran çıktılarına dikkat edilirse tanımlanan metotların aynı sonuç ürettikleri görülecektir. Örnek program_3: Metodun oluşturulmasında tanım satırının başına public anahtar sözcüğü konmuş ise bu metoda, her sınıftan erişilmesinin önünü açacaktır. Bu durum Şekil 9.6 da kırmızı okla gösterilmiştir. Eğer public sözcüğü yazılmamış olsaydı bu metoda sadece Metotlar sınıfının dışından erişilemezdi. Erişim belirleyiciler Sınıflar ve Nesneler ünitesinde daha ayrıntılı olarak anlatılacaktır. Bütün değer tutan metotlar bir değermiş gibi kullanılabilir, ancak değişkenmiş gibi kullanılamaz. Şekil 9.6. Public olarak tanımlanmış metotların kullanımını gösteren C# kodu. Herhangi bir değer tutmayan (WriteLine gibi) metotlar da void anahtar sözcüğüyle kullanılır. void anahtar sözcüğünün kullanıldığı yerlerde return ve geri dönüş değeri bulunmaz. Daha önceki örneklerde sıkça kullanıdığımız WriteLine metodunun yerine geçecek Yaz metodu aşağıdaki örnek Program_4 deki gibi hazırlanabilir. Örnek program_4: Şekil 9.7. Yaz metodunun hazırlanmasını gösteren C# kodu Atatürk Üniversitesi Açıköğretim Fakültesi 5

6 Şekil 9.8. Örnek program_4 nin ekran görüntüsü Şekil 9.7 ye dikkat edilirse Yaz metodunun tanım satırında public anahtar kelimesi kullanılmıştır. Bu sebeple bu metot başka sınıflar içinden WriteLine gibi rahatça çağrılabilir. Ayrıca statik olarak tanımlandığından bu metot çağrılırken sadece metot isminin yazılması yeterli olacaktır. Metot tanımında void anahtar sözcüğü kullanılmışsa, return ve geri dönüş değerine yer verilmez. Örnek program_4 ün çalıştırılması sonucu Şekil 9.8 de gösterildiği gibi parametre olarak verilen değerlere uygun olarak Nesne Tabanlı Programlama ifadesi üç kez yazılmıştır. Metotların doğru tanımlanması için aşağıdaki hususlara dikkat edilmesi gerekir: Metotları kullanırken parametrelerini doğru sayıda, doğru sırada ve doğru türde vermeliyiz. Değer tutan metotlarda return satırıyla belirtilen ifade, metodu yazarken verilen türle uyumlu olmalıdır. Değer tutmayan (void ile belirtilmiş) metotlarda return komutu herhangi bir ifadeyle kullanılmaz. Değer tutmayan metotların bir değermiş gibi kullanılması mümkün değildir. Metotlar değer tutmayabileceği gibi ayrıca parametre de almayabilirler. Metotlar içinde tanımlanan değişkenler programın başından sonuna kadar durmaz. Bu değişkenler, programın akışı metoda geldiğinde tanımlanır. Metodun işlevi bittiğinde ise bellekten silinir. Metod Parametresi Olarak Diziler Diziler C# ta ayrı bir tür olarak ele alındığı için Dizi kavramı, tanımlama ve dizi elemanları üzerindeki işlemler gibi konular diziler ve koleksiyonlar ünitesinde ayrıntılı olarak anlatılacaktır. Bu bölümde sadece Dizilerin metod içerisinde kullanılacağına değinilecektir. Atatürk Üniversitesi Açıköğretim Fakültesi 6

7 [ erişim belirteçleri ] < dönüş değeri > metot ismi ( tür[] diziadı ) Metot gövdesi; Önceden verilen metot tanımında parametre kısmına dizi elemanın türü ve adı yazılarak diziler metot içinde kullanabilir. Bu durum örnek program_5 te gösterilmiştir. Örnek program_5: Şekil 9.9. Metot içerisinde dizilerin kullanılmasını gösteren C# kodu. Değer türleri stack hafıza bölgesinde tutulur. Başvuru türleri (nesneler) ise heap üzerinde oluşturulur. Şekil 9.9 da verilen C# kodlarının, kırmızı okla işaretlenen program satırında, yenidizi adında int veri türünde ve (0,1,2,3,4) üye değerine sahip 5 elemanlı bir dizi tanımlanmıştır ve Yaz(yeniDizi) program koduyla da Yaz metodu, almış olduğu dizinin bütün elemanlarını Şekil 9.10 da gösterildiği gibi ekrana yazdırmaktadır. Şekil Örnek program_5 nin ekran görüntüsü Atatürk Üniversitesi Açıköğretim Fakültesi 7

8 Değer Ve Referans Parametreleri Bir metot içerisine parametre olarak aktarılan dizinin, metot içindeki bir elemanının değiştirilmesi esas diziyi de etkiler. Çünkü bir metoda parametre olarak bir dizi verildiğinde derleyici metoda dizinin bellekteki adresini verir; metot o adresteki verilerle çalışır. Bu yüzden metot içerisinde verilen dizi değerine referans tipli parametreler adı verilir. Bir metoda parametre olarak bir değişken değeri verildiğinde ise metot için değişkenin bellekteki adresi artık önemli değildir, metot için önemli olan değişkenin değeridir. Metot, değişkeni kullanabilmek için geçici bir bellek bölgesi yaratır ve parametre olarak aldığı değişkenin değerini bu geçici bellek bölgesine kopyalar ve o geçici bellek bölgesiyle çalışır. Metoda parametre olarak aktarılan değişkenin metot içinde değiştirilmesi esas değişkeni etkilemez. Metottan çıkıldığında da o geçici bellek bölgesi de silinir. Bu yüzden metot içerisinde verilen değişken değerileri için değer tipli parametreler denir. Ancak bazı durumlarda değer tipli parametreler de referans tipli olarak kullanılmak istenebilir. Bu durum özellikle metot dışına birden fazla hesaplanmış değer çıkarılacağı zamanlarda oldukça faydalıdır. Bunun için Virtual C#, programlama dilinde out ve ref anahtar sözcükleri kullanılır. Bilgisayarda bellek bölgeleri: Başlangıç değeri bulunan değer tiplerindeki değişkenlerin değerleri metotlara ref anahtar sözcüğü ile aktarılırken, ilk değeri olmayan değişkenlerin değeri ise out anahtar sözcüğü ile aktarılır. Bilgisayarlar genelde belleklerinde, uygulama programlarını ve bu programların kullandığı veriyi tutarlar. Değer ve referans türleri arasındaki farkları anlamak için, bellekte verinin nasıl düzenlendiğini anlamak yararlı olacaktır. C#, System.IO kütüphanesini ve dosya metotlarını kullanmadan harici disklere erişemez. İşletim sistemleri ve programlama dilleri verileri tutmak için sistemde kullanılan RAM belleği, her biri ayrı ayrı yönetilen iki büyük parçaya ayırır. Belleğin iki büyük parçasına stack ve heap adı verilir. Bu bellek bölgeleri iki farklı amaca hizmet eder: Bir yöntemi çağırdığınızda, o yöntemin değerleri ve yerel değişkenleri için gerekli bellek her zaman stack dan alınır. Yöntem bittiğinde değerler ve yerel değişkenler için alınan bellek, otomatik olarak stack a geri verilir. new anahtar sözcüğünü kullanarak bir nesne oluşturduğunuzda, nesneyi oluşturmak için gerekli bellek her zaman heap ten alınır. Başvuru değişkenlerini kullanarak birkaç yerden aynı nesneye başvurulabilmektedir. Bir nesneye son başvuru geçersiz olduğunda, nesne tarafından kullanılan bellek de, yeniden kullanıma uygun hâle gelir. Atatürk Üniversitesi Açıköğretim Fakültesi 8

9 out ve ref Anahtar sözcükleri: out anahtar sözcüğü, metotlarda değer tipli parametrelerin referans tipli olarak verilmesi amacıyla kullanılır. Bu şekilde tanımlanmış parametrelerde ilk değer verme zorunluluğu yoktur. İlk değerler istenirse metot içerisinde verilebilir. ref anahtar sözcüğü ile tanımlanan parametreler de değer tipini aynı out gibi referans tipi olarak aktarmak amacıyla kullanılır. Fakat değer tiplerini referans olarak bu sözcükle aktarırken ilk değer verme zorunluluğu vardır. Örnek program_6: Şekil Metot içerisinde out anahtar kelimesinin kullanılmasını gösteren C# kodu Şekil Örnek program_6 nın ekran görüntüsü Şekil 9.11 deki örnek program_6 incelendiğinde Main ana programında int sayı adında bir değişken tanımlanmış ve ilk değeri olmadan bu hâliyle Değiştir metoduna gönderilmiştir. Değiştir metodu içinde sayı değişkeninin değeri 3 olarak belirlenerek Yaz metodu çalıştılmış ve ekrana Şekil 9.12 de görülen 3 değeri Atatürk Üniversitesi Açıköğretim Fakültesi 9

10 yazdırılmıştır. return anahtar kelimesi kullanılmadan metot dışına bu şekilde bir değişken değerin referans değer gibi alınabildiği gösterilmiştir. Örnek program_7: Şekil metot içerisinde ref anahtar kelimesinin kullanılmasını gösteren C# kodu Şekil Örnek program_7 nin ekran görüntüsü Şekil 9.12 deki örnek program_7 incelendiğinde Main ana programında int sayı adında bir değişken tanımlanmış ve ilk değeri 3 olarak verilmiştir. ref anahtar kelimesi ile Değiştir metoduna gönderilmiştir. Değiştir metodu içinde sayı değişkeninin değeri 9 olarak belirlenerek Yaz metodu çalıştılmış ve ekrana Şekil 9.12 de görülen 9 değeri yazdırılmıştır. Başlangıçta değeri 3 olan bir değişken ref anahtar kelimesiyle yardımıyla metot içerisine gönderilmiş ve değeri değiştirilerek return anahtar kelimesi kullanılmadan metot dışına alınabilmiştir. Atatürk Üniversitesi Açıköğretim Fakültesi 10

11 Metotların Aşırı Yüklenmesi Çalışma zamanında hangi metodun çağrıldığını belirleyebilmek için metodun imzasına (method signature) bakılır. C# ta parametre sayısı veya parametrelerin türleri farklı olmak şartıyla aynı isimli birden fazla metot oluşturulabilir. Bu şekilde tanımlanan metotlara metotların aşırı yüklenmesi denir. C#, bir metot çağrıldığında ve çağrılanla aynı isimli birden fazla metot bulunduğunda metodun çağrılış biçimine bakar. Yani ana programdaki metoda girilen parametrelerle yaratılmış olan metotların parametrelerini kıyaslar. Önce parametre sayısına bakar. Eğer aynı isimli ve aynı sayıda parametreli birden fazla metot varsa bu sefer parametre türlerinde tam uyumluluk arar, uyumlu bulduğu metodu çalıştırarak sonucu ekrana yazdırır. Parametre türlerinin tam uyumlu olduğu bir metot bulamazsa program hata verir. Örnek program_8: Şekil Metotların aşırı yüklenmesini gösteren C# kodu. Şekil Örnek program_8 in ekran görüntüsü Atatürk Üniversitesi Açıköğretim Fakültesi 11

12 Bir metodun imzası metodun adı, parametrelerin sayısı ve türleri ile ilgilidir. Metodun geri dönüş değerleri imzasına dâhil değildir. Şekil 9.15 te kodları gösterilen örnek program_8 de MetodA ismindeki üç metot da aynı sayıda parametre almıştır. Bu durumda parametrelerin türlerine bakılır. Ana programdaki MetotA("Atatürk Üniversitesi","Açıköğretim Fakültesi"); satırıyla üçüncü metot ilk olarak çağrılır. MetotA(6,9); metot çağrımının parametre türlerinin tam uyumlu olduğu metot birinci metottur, o yüzden birinci metot ikinci olarak çağrılır. Eğer birinci metot oluşturulmamış olsaydı ikinci metot çağrılacaktı. Son olarak MetotA(1.11f,99.99f); satırıyla da ikinci metot çağrılacaktır. Bu durum Şekil 9.16 da program görüntüsünde gösterilmiştir. Kendini Çağırabilen Metotlar Kendi kendini çağıran metotlara özyenileyici (recursive) metotlar denilir. Bu metotlarda, çağrımı sonlandıran bir kontrol yapısı metot içerisine mutlaka yerleştirilmelidir. Şekil 9.17 de özyenileyici metot örneği yer almaktadır. Örnek program_8 in çalışmasıyla Şekil 9.19 daki ekran çıktısı görülecektir. Örnek program_8: Şekil Metotların aşırı yüklenmesini gösteren C# kodu Şekil 9.17 deki gösterilen kod incelendiğinde Cevir metoduna parametre verilen Onluk sayı, metod içinde kendi kendini tekrarlayarak ikilik sayı sistemine çevrilmektdir. Metod içinde kırmızı okla işaretlenen kod satırı metot için kotrol yapısı oluşturmaktadır. Şekil Örnek program_8 in ekran görüntüsü Atatürk Üniversitesi Açıköğretim Fakültesi 12

13 Main metodu Çalışan her programda mutlaka bir Main metodunun bulunması gerekir. Bütün programlarda ilk önce Main metodu çalıştırılır. Diğer metotlar Main metodunun içinden çağrılmadıkça çalışmaz. Bu özellikler dışında Main metodunun diğer metotlardan başka hiçbir farkı yoktur. Ancak şimdiye kadar Main metodunu yalnızca static void Main() şeklinde parametresiz kullandık. Ancak Main metodunun int türünden (static int Main( ) ) bir geri dönüş değeri de döndürmesi sağlanabilir. Bu değer genellikle işletim sistemine programın çalışması hakkında bilgi vermek amacıyla kullanılır. Örneğin Main metodu 0 değerini döndürürse işletim sistemi programın düzgün şekilde sonlandırıldığını, 1 değerini döndürürse de hatalı sonlandırıldığını anlayabilmektedir. Ayrıca Main metodu parametre de alabilir. Komut satırından çalıştırıldığında verilen parametreleri bir string dizisi içine alarak da işleyebilmektedir. Örnek program_9: Şekil Metotların aşırı yüklenmesini gösteren C# kodu Şekil Örnek program_8 in ekran görüntüsü Şekil Örnek program_8 in ekran görüntüsü Atatürk Üniversitesi Açıköğretim Fakültesi 13

14 Şekil Örnek program_8 in ekran görüntüsü Atatürk Üniversitesi Açıköğretim Fakültesi 14

15 Özet Nesne tabanlı programlamada sürekli tekrar edilmesi gereken olan kodlar bir kod bloğuna yazılarak, her defasında aynı kodları yazmak yerine bu kod bloğu çağrılarak çalıştırılır.bu şekilde yapılandırılmış kod bloklarına fonksiyon ya da metot adı verilir. Metotlar sayesinde programda hem hata yapma şansı en aza indirilir hem de zamandan kazanılarak program yapısı küçültülmüş olur. Metotlar tanımlanırken erişim belirleyici, geri dönüş değeri,metot ismi ve parametre liste sırasıyla verilir. Metodun iş yapması için kendisini çağıran metottan aldığı bilgilere parametre, kendisini çağıran fonksiyona döndürdüğü bilgiye ise geri dönüş değeri denir. Bir metod içerisine parametre olarak aktarılan dizinin, metot içindeki bir elemanının değiştirilmesi esas diziyi de etkiler.bu yüzden metoda parametre olarak bir dizi verildiğinde derleyici, metoda dizinin bellekteki adresini verir; metot o adresteki verilerle çalışır. Bu yüzden metot içerisinde verilen dizi değerine referans tipli parametreler adı verilir. Metoda parametre olarak aktarılan değişkenin metot içinde değiştirilmesi esas değişkeni etkilemez. Metottan çıkıldığında da o geçici bellek bölgesi de silinir. Bu yüzden metot içerisinde verilen değişken değerlerine değer tipli parametreler denir. Değer tipli parametreler, referans tipli olarak kullanılmak istenebilir. Bunun için Virtual C#, programlama dilinde out ve ref anahtar sözcükleri kullanılmaktadır. Başlangıç değeri bulunan değer tiplerindeki değişkenlerin değerleri metotlara ref anahtar sözcüğü ile aktarılırken; ilk değeri olmayan değişkenlerin değeri ise out anahtar sözcüğü ile aktarılır. İşletim sistemleri ve programlama dili çalışma zamanları sık sık veriyi tutmak için kullanılan RAM, belleği her biri ayrı olarak yönetilen iki büyük parçaya ayırır. Belleğin iki büyük parçasına stack ve heap adı verilir. Bir yöntemi çağırdığınızda, o yöntemin değerleri ve yerel değişkenleri için gerekli bellek her zaman stack'dan alınır. new anahtar sözcüğünü kullanarak bir nesne oluşturduğunuzda, nesneyi oluşturmak için gerekli bellek her zaman heap'ten alınır. C#'ta parametre sayısı veya parametrelerin türleri farklı olmak şartıyla aynı isimli birden fazla metot oluşturulabilir Bu şekilde tanımlanan metotlara metotların aşırı yüklenmesi denir. Kendi kendini çağıran metotlara özyenileyici (recursive) metotlar denilir. Bu metotlarda, çağrımı sonlandıran bir kontrol yapısı metod içerisine mutlaka yerleştirilmelidir. Her çalışan C# programında mutlaka bir ana (Main) metot mevcuttur. Program ilk çalıştığında bu metotla başlar. Atatürk Üniversitesi Açıköğretim Fakültesi 15

16 DEĞERLENDİRME SORULARI Değerlendirme sorularını sistemde ilgili ünite başlığı altında yer alan bölüm sonu testi bölümünde etkileşimli olarak cevaplayabilirsiniz. 1. Bir metot tanımında aşağıdakilerden hangisi yer almaz? a) Erişim belirteçleri b) Dönüş değeri c) Adlandırma ismi d) New anahtar sözcük e) Parametre listesi 2. Metotların tanımlanmasına ilişkin aşağıdakilerden hangisi kesinlikle hatalıdır? a) Metotların parametreleri doğru sayıda ve türde verilmelidir. b) Değer tutan metotlarda return satırıyla verilen ifade, metodu yazarken verilen türle uyumlu olmalıdır. c) Değer tutmayan metotlarda void sözcüğü kullanılır. d) Metotlar içinde tanımlanan değişkenler, metodun işlevi bittiğinde silinir. e) Metotlarda mutlaka parametre kullanılmalıdır. 3. Aşağıdakilerden hangisi metotlarda değer tipi parametrelerin referans tipli olarak kullanılmasını sağlar? a) new b) class c) out d) int e) void Atatürk Üniversitesi Açıköğretim Fakültesi 16

17 4. using System; class sorular static void Hesapla(... int sayi1) sayi1=4; static void Main() int sayi=0; Hesapla(... sayi); Yukarıda verilen kodlar içerisindeki (...) ile gösterilen boşluğa aşağıdaki anahtar sözcüklerden hangisi gelmelidir? a) new b) class c) out d) ref e) void 5. using System; class Sorular int Topla(int a,int b) return a + b; static void Main() Sorular soru5 = new Sorular(); int a = soru5.(...); Console.Write(a); Yukarıda verilen kodlar içerisindeki (...) ile gösterilen boşluğa aşağıdaki kod satırlarından hangisi gelmelidir? a) Topla (0, 100); b) Topla ( 100); c) Sorular ( 100); d) Sorular (0,100); e) Soru5 ( 0,100); Atatürk Üniversitesi Açıköğretim Fakültesi 17

18 6. Referans tipler bilgisayar hafızasının hangi bölümünde saklanır? a) Heap bölgesinde b) Stack bölgesinde c) Harddiskte d) Diskette e) Flash diskte 7. Değer tipler bilgisayar hafızasının hangi bölümünde saklanır? a) Heap bölgesinde b) Stack bölgesinde c) Harddiskte d) Diskette e) Flash diskte 8. Aşağıdaki erişim türlerinden hangisine her yerden ulaşmak mümkündür? a) Private b) Protected c) Public d) Internal e) Proteced Internal 9. C# ta parametre sayısı ve parametre türleri farklı olmak koşulu ile aynı isimde faklı metotlar oluşturma işlemine ne denir? a) Kendini çağıran b) Ana metot c) Yavru metot d) Fonksiyon e) Aşırı yükleme Atatürk Üniversitesi Açıköğretim Fakültesi 18

19 10. using System; class Sorular static void Islem(int a) if (b == 0) return;... (b>>1); Console.Write(b & 1); static void Main() Islem(10); Yukarıda verilen kodlar içerisindeki (...) ile gösterilen boşluğa hangi kod satırında verilen anahtar sözcük gelmelidir? a) Islem b) Main c) Sorular d) new e) void Cevap Anahtarı: 1.D,2.E, 3.C,4.D,5.A,6.A,7.B,8.C,9.E,10.A Atatürk Üniversitesi Açıköğretim Fakültesi 19

20 YARARLANILAN KAYNAKLAR VE BAŞVURULABİLECEK DİĞER KAYNAKLAR ALGAN, Sefer, (2010), Her Yönüyle C#, İstanbul: Pusula Yayıncılık, İstanbul. AKTAŞ, Volkan, (2013), Her Yönüyle C# 5.0, KODLAB, İstanbul. CLARK, Dan, (2013), Your visual blueprint for building.net application, 2nd Edition, Hungry Minds, New York. SCHILDT, Herbert, (2002), The Complete Reference C#, çev. Duygu Arbatlı Yağcı, Alfa Basım Yayım Dağıtım, İstanbul. SHARP, John, (2002), Microsoft Visual C#.NET, çev. Mert Derman, Arkadaş Yayınevi, Ankara. YANIK, Memik, (2004), Microsoft Visual c#.net, 1.Baskı, Seçkin Yayıncılık, Ankara. Atatürk Üniversitesi Açıköğretim Fakültesi 20

NESNEYE YÖNELİK PROGRAMLAMA

NESNEYE YÖNELİK PROGRAMLAMA NESNEYE YÖNELİK PROGRAMLAMA Metotlar Şu ana kadar yaptığımız örneklerde hep önceden hazırlanmış ReadLine(), WriteLine() vb. gibi metotları kullandık. Artık kendi metotlarımızı yapmanın zamanı geldi. Bilmem

Detaylı

HSancak Nesne Tabanlı Programlama I Ders Notları

HSancak Nesne Tabanlı Programlama I Ders Notları METOTLAR Nesneye yönelik programlama dillerinde genellikle fonksiyonlar metot olarak isimlendirilirler. Metot ve fonksiyon olarak ifade edilecek kavramlar aynı anlamda kullanılacaktır. Her çalışan C# programı

Detaylı

Sunum İçeriği. Programlamaya Giriş 22.03.2011

Sunum İçeriği. Programlamaya Giriş 22.03.2011 Programlamaya Giriş Nesne Tabanlı Programlamaya Giriş ve FONKSİYONLAR Sunum İçeriği Nesne Tabanlı Programlama Kavramı Fonksiyon tanımlama ve kullanma Formal Parametre nedir? Gerçel Parametre nedir? Fonksiyon

Detaylı

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Uzaktan Eğitim Uygulama ve Araştırma Merkezi JAVA PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java da Kapsülleme (Erişim Denetleyiciler) Java da Sınıf Oluşturmak Java da Nesne Oluşturmak Java da Constructor Kavramı Java da This Kavramı Java da Constructor

Detaylı

Yrd. Doç. Dr. Caner ÖZCAN

Yrd. Doç. Dr. Caner ÖZCAN Yrd. Doç. Dr. Caner ÖZCAN Diziler ile Pointer Arası İlişki Bir dizi adı sabit bir pointer gibi düşünülebilir. Diziler ile pointer lar yakından ilişkilidir. Pointer lar değişkenleri gösterdikleri gibi,

Detaylı

ÜNİTE. NESNE TABANLI PROGRAMLAMA I Okt. Mustafa AKBUĞA İÇİNDEKİLER HEDEFLER SINIFLAR

ÜNİTE. NESNE TABANLI PROGRAMLAMA I Okt. Mustafa AKBUĞA İÇİNDEKİLER HEDEFLER SINIFLAR SINIFLAR İÇİNDEKİLER Sınıflar Sınıf Tanımlama Ve Kullanma Sınıflara Metot Eklemek Yapıcı Metotlar Kopyalayıcı Metotlar Yıkıcı Metotlar Statik Sınıflar NESNE TABANLI PROGRAMLAMA I Okt. Mustafa AKBUĞA HEDEFLER

Detaylı

C# Metotlar ve Metot Tanımlama

C# Metotlar ve Metot Tanımlama C# Metotlar ve Metot Tanımlama Metot Kavramı : Metotlar bir program içerisinde aynı işi gerçekleştiren satırları belirli düzende sadece bir kez oluşturarak gerektiğinde tekrar tekrar kullanabilmemizi sağlayan

Detaylı

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 7. Bölüm Metot Tanımlama ve Kullanma

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 7. Bölüm Metot Tanımlama ve Kullanma Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 7. Bölüm Metot Tanımlama ve Kullanma C Programlama Dr. Serkan DİŞLİTAŞ 7.1. Metot Kavramı Programlama dillerinde bütün kod satırlarının

Detaylı

Yrd. Doç. Dr. Caner ÖZCAN

Yrd. Doç. Dr. Caner ÖZCAN Yrd. Doç. Dr. Caner ÖZCAN Fonksiyonu Referans ile Çağırma (Call by Reference) Bir fonksiyona gönderilen parametrenin normalde değeri değişmez. Fonksiyon içinde yapılan işlemlerin hiçbiri argüman değişkeni

Detaylı

BLM 112- Programlama Dilleri II. Hafta 5 İşaretçiler (Pointers)

BLM 112- Programlama Dilleri II. Hafta 5 İşaretçiler (Pointers) 1 BLM 112- Programlama Dilleri II Hafta 5 İşaretçiler (Pointers) Dr. Öğr. Üyesi Caner Özcan Hiç hata yapmayan insan, hiçbir şey yapmayan insandır. Ve hayatta en büyük hata, kendini hatasız sanmaktır. ~Y.

Detaylı

Sınıflar ve Yapılar Arasındaki Farklılıklar. Değer ve Referans Türde Olan Aktarımlar

Sınıflar ve Yapılar Arasındaki Farklılıklar. Değer ve Referans Türde Olan Aktarımlar Nesneler ve Türler Sınıflar ve Yapılar Arasındaki Farklılıklar Sınıf Üyeleri Değer ve Referans Türde Olan Aktarımlar Yapıcılar ve Statik Yapıcılar Read-Only Statik Sınıflar Object Sınıfı Sınıflar Sınıflar

Detaylı

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Uzaktan Eğitim Uygulama ve Araştırma Merkezi JAVA PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java da Fonksiyon Tanımlamak Java da Döngüler Java da Şart İfadeleri Uygulamalar Java da Fonksiyon Tanımlamak JAVA DA FONKSİYON TANIMLAMAK 4 Fonksiyonlar;

Detaylı

HSancak Nesne Tabanlı Programlama I Ders Notları

HSancak Nesne Tabanlı Programlama I Ders Notları Konsol Uygulaması Oluşturma Konsol uygulaması oluşturmak için program açıldıktan sonra Create: Project ya da New Project seçeneği tıklanabilir. New Project penceresini açmak için farklı yollar da vardır.

Detaylı

YZM 2105 Nesneye Yönelik Programlama

YZM 2105 Nesneye Yönelik Programlama YZM 2105 Nesneye Yönelik Programlama Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği 1 BÖLÜM - 5 Nesneye Yönelik Programlamaya Giriş Bu

Detaylı

HSancak Nesne Tabanlı Programlama I Ders Notları

HSancak Nesne Tabanlı Programlama I Ders Notları DİZİLER Bellekte ard arda yer alan aynı türden nesneler kümesine dizi (array) denilir. Bir dizi içerisindeki bütün elemanlara aynı isimle ulaşılır. Yani dizideki bütün elemanların isimleri ortaktır. Elemanlar

Detaylı

Fonksiyonlar. C++ ve NESNEYE DAYALI PROGRAMLAMA 51. /* Fonksiyon: kup Bir tamsayının küpünü hesaplar */ long int kup(int x) {

Fonksiyonlar. C++ ve NESNEYE DAYALI PROGRAMLAMA 51. /* Fonksiyon: kup Bir tamsayının küpünü hesaplar */ long int kup(int x) { Fonksiyonlar Kendi içinde bağımsız olarak çalışabilen ve belli bir işlevi yerine getiren program modülleridir. C programları bu modüllerden (fonksiyonlar) oluşurlar. Fonksiyonların yazılmasındaki temel

Detaylı

Ders 8: Metotlar. barisgokce.com

Ders 8: Metotlar. barisgokce.com Ders 8: Metotlar Hazırlayan : Öğr. Grv.. Barış GÖKÇE Đletişim im : www.barisgokce barisgokce.com Metotlar C# içerisinde bir veya birden fazla kod bulunduran kod bloklarıdır. Bir nesnenin veya sınıfın programı

Detaylı

Örnek: İki fonksiyondan oluşan bir program. Fonksiyon Tanımı

Örnek: İki fonksiyondan oluşan bir program. Fonksiyon Tanımı Fonksiyonlar Fonksiyon Tanımı Değer Döndürmeyen Fonksiyonlar Değer Döndüren Fonksiyonlar Çok Parametreli Fonksiyonlar Değişken Kapsamları Çok Fonksiyonlu Programlar Fonksiyon Tanımı Karmaşıkveuzunprogramları,

Detaylı

Pointer Kavramı. Veri Yapıları

Pointer Kavramı. Veri Yapıları Pointer Kavramı Veri Yapıları Pointer Kavramı- Pointer Nedir? Göstericiler, işaretçiler ya da pointer adı da verilmektedir. Gösterici (pointer); içerisinde bellek adresi tutan değişkenlerdir. Şu ana kadar

Detaylı

FONKSİYONLAR. Gerçek hayattaki problemlerin çözümü için geliştirilen programlar çok büyük boyutlardadır.

FONKSİYONLAR. Gerçek hayattaki problemlerin çözümü için geliştirilen programlar çok büyük boyutlardadır. C PROGRAMLAMA FONKSİYONLAR Gerçek hayattaki problemlerin çözümü için geliştirilen programlar çok büyük boyutlardadır. Daha büyük programlar yazmanın en kolay yolu onları küçük parçalar halinde yazıp sonra

Detaylı

4. Bölüm Programlamaya Giriş

4. Bölüm Programlamaya Giriş 4. Bölüm Programlamaya Giriş Algoritma ve Programlamaya Giriş Dr. Serkan DİŞLİTAŞ 4.1. C# ile Program Geliştirme Net Framework, Microsoft firması tarafından açık internet protokolleri ve standartları

Detaylı

Göstericiler (Pointers)

Göstericiler (Pointers) C PROGRAMLAMA Göstericiler (Pointers) C programlama dilinin en güçlü özelliklerinden biridir. Göstericiler, işaretçiler yada pointer adı da verilmektedir. Gösterici (pointer); içerisinde bellek adresi

Detaylı

C de Detaylı Üs Alma Programı. C# Dilinde Metot Tanımlama ve Yazdırma

C de Detaylı Üs Alma Programı. C# Dilinde Metot Tanımlama ve Yazdırma C de Detaylı Üs Alma Programı Bu uygulama yazısında C de pow() fonksiyonunu kullanmadan üs hesabı yapan programı yazmaya çalıştım. Başta tanımladığım float tipinde 2 fonksiyon sayesinde + lı ve li üs değerleriyle

Detaylı

ANA SINIF TÜRETİLEN BİRİNCİ SINIF TÜRETİLEN İKİNCİ SINIF

ANA SINIF TÜRETİLEN BİRİNCİ SINIF TÜRETİLEN İKİNCİ SINIF JAVA PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java da Kalıtım Kavramı Java da Çok Biçimlilik Kavramı Fonksiyonların Çok Biçimliliği Yapıcı Fonksiyonun Çok Biçimliliği Java da Kalıtım Kavramı 4 Kalıtım;

Detaylı

ÜNİTE İÇİNDEKİLER. NESNE TABANLI PROGRAMLAMA I Okt. Mustafa AKBUĞA HEDEFLER OPERATÖRLER

ÜNİTE İÇİNDEKİLER. NESNE TABANLI PROGRAMLAMA I Okt. Mustafa AKBUĞA HEDEFLER OPERATÖRLER HEDEFLER İÇİNDEKİLER OPERATÖRLER Operatörler Aritmetik Operatörler Mantıksal Operatörler Bitsel Operatörler Karşılaştırma Operatörleri Atama Operatörleri Özel Amaçlı Operatörler Operatörlerde İşlem Öncelikleri

Detaylı

NESNE TABANLI PROGRAMLAMA-1 DERS UYGULAMALARI (22 EYLÜL - 14 KASIM

NESNE TABANLI PROGRAMLAMA-1 DERS UYGULAMALARI (22 EYLÜL - 14 KASIM NESNE TABANLI PROGRAMLAMA-1 DERS UYGULAMALARI (22 EYLÜL - 14 KASIM 2014) //Class (Sınıf) // Sınıf (class) soyut veri tipidir. // Nesne (object) sınıfın somutlaşan bir cismidir. // static : nesnesi oluşturulmaz.

Detaylı

11- FONKSİYONLAR (FUNCTIONS)

11- FONKSİYONLAR (FUNCTIONS) 1 Fonksiyon : Belirli bir işi yapan programın bir isim altına tanımlanarak, o isimle çağrılarak kullanılması. Fonksiyonun faydaları : Programın modülerliğini arttırır. Aynı işi yapan program parçası tekrar

Detaylı

BLM-112 PROGRAMLAMA DİLLERİ II. Ders-3 İşaretçiler (Pointer) (Kısım-2)

BLM-112 PROGRAMLAMA DİLLERİ II. Ders-3 İşaretçiler (Pointer) (Kısım-2) BLM-112 PROGRAMLAMA DİLLERİ II Ders-3 İşaretçiler (Pointer) (Kısım-2) Yrd. Doç. Dr. Ümit ATİLA umitatila@karabuk.edu.tr http://web.karabuk.edu.tr/umitatilla/ Dinamik Bellek Yönetimi Bir program çalıştırıldığında

Detaylı

Özyineleme (Recursion)

Özyineleme (Recursion) C PROGRAMLAMA Özyineleme (Recursion) Bir fonksiyonun kendisini çağırarak çözüme gitmesine özyineleme (recursion), böyle çalışan fonksiyonlara da özyinelemeli (recursive) fonksiyonlar denilir. Özyineleme,

Detaylı

Lambda İfadeleri (Lambda Expressions)

Lambda İfadeleri (Lambda Expressions) Lambda İfadeleri (Lambda Expressions) Lambda İfadeleri, değişkenlere değer atamak için kullanılan sadeleştirilmiş anonim (isimsiz) fonksiyonlardır. Bu fonksiyonlar matematikteki ve bilgisayar bilimlerindeki

Detaylı

Operator Aşırı Yükleme (Operator OverLoading)

Operator Aşırı Yükleme (Operator OverLoading) Operator Aşırı Yükleme (Operator OverLoading) Operator Aşırı Yükleme Operatör metotları bir nesnenin ifadeler içinde operatörlerle kullanıldığı zaman davranışını belirler. Temel veri türleri için operatörler

Detaylı

public static int Toplam int x, int y

public static int Toplam int x, int y static Kavramı 1 İçinde bulunduğu sınıftan nesne oluşturulmadan veya hiç bir nesneye referans olmadan kullanılabilen üyeler static olarak nitelendirilir. Metotlar ve alanlar static olarak tanımlanabilir.

Detaylı

PROGRAMLAMAYA GİRİŞ FONKSİYONLAR

PROGRAMLAMAYA GİRİŞ FONKSİYONLAR PROGRAMLAMAYA GİRİŞ FONKSİYONLAR Fonksiyonlar C programlama dili fonksiyon olarak adlandırılan alt programların birleştirilmesi kavramına dayanır. Bir C programı bir ya da daha çok fonksiyonun bir araya

Detaylı

ELN1001 BİLGİSAYAR PROGRAMLAMA I

ELN1001 BİLGİSAYAR PROGRAMLAMA I ELN1001 BİLGİSAYAR PROGRAMLAMA I DEPOLAMA SINIFLARI DEĞİŞKEN MENZİLLERİ YİNELEMELİ FONKSİYONLAR Depolama Sınıfları Tanıtıcılar için şu ana kadar görülmüş olan özellikler: Ad Tip Boyut Değer Bunlara ilave

Detaylı

C#(Sharp) Programlama Dili

C#(Sharp) Programlama Dili Değişkenler C#(Sharp) Programlama Dili Program yazarken her zaman sabit verilerle çalışmayız, çoğu zaman programımızda bir verinin kullanıcının davranışına göre değişmesi gerekir. Kullanıcıdan bir metin

Detaylı

Bölüm 9. Altprogramlar ISBN

Bölüm 9. Altprogramlar ISBN Bölüm 9 Altprogramlar ISBN 0-321-49362-1 Giriş Bu bölümde, programlarda sıkça kullanılan işlemlerin bir araya gruplanması ile oluşturulan altprogramlar incelenecektir. Altprogramlar sayesinde bir programda

Detaylı

JAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ

JAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ JAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ Java programlama dili, Java SUN bilgisayar şirketi tarafından 1991 yılında geliştiril Program bloklar halinde yazılır ve bloklar { } ile oluşturulur. Komutlar aynı satıra

Detaylı

ÜNİTE İÇİNDEKİLER HEDEFLER MATEMATİKSEL METOTLAR. NESNE TABANLI PROGRAMLAMA I Okt. Mustafa AKBUĞA. (Math Sınıfı ve Metotları)

ÜNİTE İÇİNDEKİLER HEDEFLER MATEMATİKSEL METOTLAR. NESNE TABANLI PROGRAMLAMA I Okt. Mustafa AKBUĞA. (Math Sınıfı ve Metotları) MATEMATİKSEL METOTLAR (Math Sınıfı ve Metotları) İÇİNDEKİLER Matemetiksel Metotlar Üstel Metotlar Logaritmik Metotlar Trigonometrik Metotlar Ters Trigonometrik Metotlar Hiperbolik Metotlar Yuvarlatma Metotları

Detaylı

HSancak Nesne Tabanlı Programlama I Ders Notları

HSancak Nesne Tabanlı Programlama I Ders Notları SABİTLER VE DEĞİŞKENLER Değişken, verilerin bellekte geçici olarak kaydedilmesini ve gerektiğinde kullanılmasını sağlayan değerdir. Nesne tabanlı programlama dilinde değişken kullanımı diğer programlama

Detaylı

ÜNİTE NESNE TABANLI PROGRAMLAMA I İÇİNDEKİLER. Okt. Mustafa AKBUĞA HEDEFLER DOSYA VE KLASÖR İŞLEMLERİ

ÜNİTE NESNE TABANLI PROGRAMLAMA I İÇİNDEKİLER. Okt. Mustafa AKBUĞA HEDEFLER DOSYA VE KLASÖR İŞLEMLERİ DOSYA VE KLASÖR İŞLEMLERİ İÇİNDEKİLER Dosya ve Klasör İşlemleri Klasör Sınıfları (Directory ve DirectoryInfo) Dosya Sınıfları (File ve FileInfo) Dosyalarda Okuma Ve Yazma İşemi Yapabilen Sınıflar (FileStream,

Detaylı

YZM 2105 Nesneye Yönelik Programlama

YZM 2105 Nesneye Yönelik Programlama YZM 2105 Nesneye Yönelik Programlama Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği 1 BÖLÜM - 7 Abstract (Soyut Sınıflar) Bu bölümde;

Detaylı

İsimler ve Kapsam. Hafta 4 Ders 2 BLG339 PROGRAMLAMA DİLLERİ KAVRAMI

İsimler ve Kapsam. Hafta 4 Ders 2 BLG339 PROGRAMLAMA DİLLERİ KAVRAMI BLG339 PROGRAMLAMA DİLLERİ KAVRAMI Hafta 4 Ders 2 Yrd. Doç. Dr. Melike Şah Direkoğlu Alındığı kaynak: Addison-Wesley s Programming Language Concepts slaytları ve Prof. Dr. Tuğrul Yılmaz ın ders notlarından

Detaylı

NESNEYE YÖNELİK PROGRAMLAMA

NESNEYE YÖNELİK PROGRAMLAMA NESNEYE YÖNELİK PROGRAMLAMA İŞARETÇİ ELEMANLI SINIFLAR REFERANSLAR OPERATÖRLERİN AŞIRI YÜKLENMESİ ATAMA OPERATÖRÜ Özlem AYDIN Trakya Üniversitesi Bilgisayar Mühendisliği Bölümü İşaretçi Elemanlı Sınıflar

Detaylı

BTEP243 Ders 3. class Yazım Kuralı:

BTEP243 Ders 3. class Yazım Kuralı: BTEP243 Ders 3 Sınıflar ve Nesneler Nesne tabanlı programlamada, programlamanın temeli sınıflardır (class). Nesnelerin yaratılmasında taslak (blueprint) görevi görür. Sınıflar; o Nesnelerin özelliklerinin

Detaylı

NESNEYE YÖNELİK PROGRAMLAMA

NESNEYE YÖNELİK PROGRAMLAMA NESNEYE YÖNELİK PROGRAMLAMA SANAL FONKSİYONLAR VE ÇOK BİÇİMLİLİK Özlem AYDIN Trakya Üniversitesi Bilgisayar Mühendisliği Bölümü GİRİŞ C++, hem derleyici-zamanlı hem de çalışmazamanlı çok biçimliliği destekler.

Detaylı

ALGORİTMA VE PROGRAMLAMA I

ALGORİTMA VE PROGRAMLAMA I ALGORİTMA VE PROGRAMLAMA I YZM 1101 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Giriş Fonksiyonlara Genel Bakış C ve Fonksiyonlar Fonksiyon Tanımı 8. BÖLÜM 3 Fonksiyonlar

Detaylı

ALGORİTMA VE PROGRAMLAMA II

ALGORİTMA VE PROGRAMLAMA II ALGORİTMA VE PROGRAMLAMA II Yrd. Doç. Dr. Deniz KILINÇ deniz.kilinc@cbu.edu.tr YZM 1102 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 İşaretçiler ve Diziler Fonksiyon

Detaylı

BİL-142 Bilgisayar Programlama II

BİL-142 Bilgisayar Programlama II BİL-142 Bilgisayar Programlama II (C/C++) Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Giriş Sınıflar, Nesneler, Fonksiyon ve Veri Üyeleri Sınıf ve Fonksiyon Üyeleri

Detaylı

Önemli noktalar. Paradigma Nesnelere Giriş Mesajlar / Ara bağlantılar Bilgi Gizleme (Information Hiding ) Sınıflar(Classes) Kalıtım/Inheritance

Önemli noktalar. Paradigma Nesnelere Giriş Mesajlar / Ara bağlantılar Bilgi Gizleme (Information Hiding ) Sınıflar(Classes) Kalıtım/Inheritance Önemli noktalar Paradigma Nesnelere Giriş Mesajlar / Ara bağlantılar Bilgi Gizleme (Information Hiding ) Sınıflar(Classes) Kalıtım/Inheritance public class Test { // çalışır İnsan insan = new Çiçekçi();

Detaylı

C++ Dersi: Nesne Tabanlı Programlama

C++ Dersi: Nesne Tabanlı Programlama C++ Dersi: Nesne Tabanlı Programlama Bölüm 14: Çoklu İşlev İçerik Çoklu İşlevin Gerçekleştirilmesi Saf Sanal Fonksiyonlar ve Soyut Sınıflar Sanal Yıkıcı Fonksiyonlar Statik ve Dinamik Bağlama 2 Çoklu İşlev

Detaylı

C++ Dersi: Nesne Tabanlı Programlama

C++ Dersi: Nesne Tabanlı Programlama C++ Dersi: Nesne Tabanlı Programlama Bölüm 10: Yapıcı ve Yıkıcı Fonksiyonlar Yapıcı Fonksiyonlar İçerik Yapıcı Fonksiyon Tanımı Üyelere İlk Atama Yapıcı Fonksiyonu Yükleme Yapıcı Fonksiyon Çağırımı Kopya

Detaylı

Sınav tarihi : Süre : 60 dak. a) ABCDE b) BCDE c) ABCD d) kod hatalı e) BCD

Sınav tarihi : Süre : 60 dak. a) ABCDE b) BCDE c) ABCD d) kod hatalı e) BCD Selçuk Üniversitesi, Mühendislik Fakültesi, Harita Mühendisliği Bölümü Yıliçi Sınavı Test Soruları Adı soyadı : Öğrenci no : Sınav tarihi : 13.04.2015 Süre : 60 dak. 1. Hangisi gerçek sayı değişmezi değildir?

Detaylı

BİL-141 Bilgisayar Programlama I (Java)

BİL-141 Bilgisayar Programlama I (Java) 1 BİL-141 Bilgisayar Programlama I (Java) Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Not: Bu dersin sunumları, Java Bilgisayar Programlamaya Giriş, A. Yazıcı, E. Doğdu,

Detaylı

BMÜ-111 Algoritma ve Programlama. Bölüm 5. Tek Boyutlu Diziler

BMÜ-111 Algoritma ve Programlama. Bölüm 5. Tek Boyutlu Diziler BMÜ-111 Algoritma ve Programlama Bölüm 5 Tek Boyutlu Diziler Yrd. Doç. Dr. İlhan AYDIN 1 Problem 100 adet sayı okumak istediğimizi düşünelim. Bu sayıların ortalaması hesaplanacak ve sayıların kaç tanesinin

Detaylı

C Programlama Dilininin Basit Yapıları

C Programlama Dilininin Basit Yapıları Bölüm 2 C Programlama Dilininin Basit Yapıları İçindekiler 2.1 Sabitler ve Değişkenler......................... 13 2.2 Açıklamalar (Expresions)........................ 14 2.3 İfadeler (Statements) ve İfade

Detaylı

Java da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism )

Java da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism ) Java da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism ) BBS-515 Nesneye Yönelik Programlama Ders #9 (16 Aralık 2009) Geçen ders: Java Applet lerde bileşen yerleştirme türleri ( applet layouts

Detaylı

ALGORİTMA VE PROGRAMLAMA I

ALGORİTMA VE PROGRAMLAMA I ALGORİTMA VE PROGRAMLAMA I Yrd. Doç. Dr. Deniz KILINÇ deniz.kilinc@cbu.edu.tr YZM 1101 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Giriş Fonksiyonlara Genel Bakış C

Detaylı

İsimler ve Kapsam. 24 Şubat 2011. Programlama Dilleri - Pamukkale Üniversitesi 1

İsimler ve Kapsam. 24 Şubat 2011. Programlama Dilleri - Pamukkale Üniversitesi 1 İsimler ve Kapsam Tanım: Bir değişkenin kapsamı (scope) değişkenin görülebilir olduğu komutların alanıdır. Görülebilir olduğu alan, bir komut içinde belirlenen değerle kullanılabildiği alandır. Tanım:

Detaylı

1 PROGRAMLAMAYA GİRİŞ

1 PROGRAMLAMAYA GİRİŞ İÇİNDEKİLER IX İÇİNDEKİLER 1 PROGRAMLAMAYA GİRİŞ 1 Problem Çözme 1 Algoritma 1 Algoritmada Olması Gereken Özellikler 2 Programlama Dilleri 6 Programlama Dillerinin Tarihçesi 6 Fortran (Formula Translator)

Detaylı

C++ Dersi: Nesne Tabanlı Programlama

C++ Dersi: Nesne Tabanlı Programlama C++ Dersi: Nesne Tabanlı Programlama Bölüm 11: Bileşim, Arkadaş ve Diğer Araçlar İçerik Bileşim Arkadaş Fonksiyonlar ve Sınıflar Arkadaş Fonksiyonlar Arkadaş Sınıflar Sabit Nesneler Sabit Üye Fonksiyonlar

Detaylı

Sınav tarihi : Süre : 60 dak. a) strstr b) strchr c) strcat d) strcpy e) strlen. a) b) d) e) 0

Sınav tarihi : Süre : 60 dak. a) strstr b) strchr c) strcat d) strcpy e) strlen. a) b) d) e) 0 Selçuk Üniversitesi, Mühendislik Fakültesi, Harita Mühendisliği Bölümü Bitirme Sınavı Test Soruları Adı soyadı : Öğrenci no : Sınav tarihi : 01.06.2017 Süre : 60 dak. 1. t değişkeni hakkında aşağıdakilerden

Detaylı

Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : dak.

Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : dak. Selçuk Üniversitesi Mühendislik Fakültesi Harita Mühendisliği Bölümü ra Sınavı Test Soruları dı soyadı :... Öğrenci no :... İmza :... Tarih, Süre :13.04.2017 60 dak. Dikkat!!! Soru kitapçığında ve cevap

Detaylı

DİZİLER-KATARLAR ALGORİTMA VE PROGRAMLAMA II

DİZİLER-KATARLAR ALGORİTMA VE PROGRAMLAMA II DİZİLER-KATARLAR ALGORİTMA VE PROGRAMLAMA II DİZİLER Dizi, aynı tipteki verilere tek bir isimle erişmek için kullanılan bir kümedir. Bir dizi bildirildikten sonra, dizinin bütün elemanları bellekte peşpeşe

Detaylı

5.HAFTA. Sınıf ve Nesne Kavramı, Metot Oluşturma, Kurucu Metot, this Deyimi

5.HAFTA. Sınıf ve Nesne Kavramı, Metot Oluşturma, Kurucu Metot, this Deyimi 5.HAFTA Sınıf ve Nesne Kavramı, Metot Oluşturma, Kurucu Metot, this Deyimi Sınıf Kavramı: Sınıf (class) soyut bir veri tipidir. Nesne (object) onun somutlaşan bir cismidir. Java da sınıf (class) kavramını

Detaylı

Fonksiyonlar (Altprogram)

Fonksiyonlar (Altprogram) Fonksiyonlar (Altprogram) C Programlama Dili fonksiyon olarak adlandırılan alt programların birleştirilmesi kavramına dayanır. Bir C programı bir ya da daha çok fonksiyonun bir araya gelmesi ile oluşur.

Detaylı

Nesneye Yönelik Programlama (OOP) 7.Hafta

Nesneye Yönelik Programlama (OOP) 7.Hafta Nesneye Yönelik Programlama (OOP) 7.Hafta Örnek : Yapılar vs Sınıflar Yapılar ve sınıflar büyük oranda benzerlik gösterirler. Yapıların sakladığı veriler her zaman public yani erişime açıktır. Sınıflarda

Detaylı

İNÖNÜ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2. SINIF 1. DÖNEM VERİ YAPILARI DERSİ LABORATUAR ÖDEVİ

İNÖNÜ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2. SINIF 1. DÖNEM VERİ YAPILARI DERSİ LABORATUAR ÖDEVİ İNÖNÜ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2. SINIF 1. DÖNEM VERİ YAPILARI DERSİ LABORATUAR ÖDEVİ AD SOYAD: TESLİM TARİHİ: OKUL NO: TESLİM SÜRESİ: 2 hafta ÖDEV NO: 5 1- BANKA

Detaylı

Görsel Programlama DERS 02. Görsel Programlama - Ders02/ 1

Görsel Programlama DERS 02. Görsel Programlama - Ders02/ 1 Görsel Programlama DERS 02 Görsel Programlama - Ders02/ 1 Kodun Tekrar Kullanımı ve Kalıtım(Inheritance) Nesneye yönelik programlamanın diğer programlama paradigmalarına karşı bir avantajı kodun yeniden

Detaylı

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-12 Fonksiyonlar. Yrd. Doç. Dr. Ümit ATİLA

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-12 Fonksiyonlar. Yrd. Doç. Dr. Ümit ATİLA BLM-111 PROGRAMLAMA DİLLERİ I Ders-12 Fonksiyonlar Yrd. Doç. Dr. Ümit ATİLA umitatila@karabuk.edu.tr http://web.karabuk.edu.tr/umitatilla/ Fonksiyonlar Fonksiyonlar C de modüller Programlar kullanıcı tanımlı

Detaylı

Nesne tabanlı programlama nesneleri kullanan programlamayı içerir. Bir nesne farklı olarak tanımlanabilen gerçek dünyadaki bir varlıktır.

Nesne tabanlı programlama nesneleri kullanan programlamayı içerir. Bir nesne farklı olarak tanımlanabilen gerçek dünyadaki bir varlıktır. Nesne tabanlı programlama nesneleri kullanan programlamayı içerir. Bir nesne farklı olarak tanımlanabilen gerçek dünyadaki bir varlıktır. Örneğin; bir öğrenci, sıra, çember, bir buton birer nesnedir. Bir

Detaylı

BLM 112- Programlama Dilleri II. Hafta 2 C Programlarının Bellek Düzeni ve Rekürsif (Özyinelemeli) Fonksiyonlar

BLM 112- Programlama Dilleri II. Hafta 2 C Programlarının Bellek Düzeni ve Rekürsif (Özyinelemeli) Fonksiyonlar 1 BLM 112- Programlama Dilleri II Hafta 2 C Programlarının Bellek Düzeni ve Rekürsif (Özyinelemeli) Fonksiyonlar Dr. Öğr. Üyesi Caner Özcan Kendi yolculuğumuzu yapmak için buradayız; bu yolculukta kendimiz

Detaylı

Sınav tarihi : Süre : 60 dak.

Sınav tarihi : Süre : 60 dak. Selçuk Üniversitesi, Mühendislik Fakültesi, Harita Mühendisliği Bölümü Final Sınavı Test Soruları Adı soyadı : Öğrenci no : Sınav tarihi : 31.05.2016 Süre : 60 dak. 1. Ekranda ne görüntülenir? int i =

Detaylı

ÜNİTE. NESNE TABANLI PROGRAMLAMA I Okt. Mustafa AKBUĞA İÇİNDEKİLER HEDEFLER KARAR KONTROL DEYİMLERİ

ÜNİTE. NESNE TABANLI PROGRAMLAMA I Okt. Mustafa AKBUĞA İÇİNDEKİLER HEDEFLER KARAR KONTROL DEYİMLERİ HEDEFLER İÇİNDEKİLER KARAR KONTROL DEYİMLERİ Karar Kontrol Deyimleri if ifadesi if - else ifadesi if - elseif - else ifadesi Switch- Case ifadesi NESNE TABANLI PROGRAMLAMA I Okt. Mustafa AKBUĞA Bu üniteyi

Detaylı

/ C Bilgisayar Programlama Final Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak.

/ C Bilgisayar Programlama Final Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak. Selçuk Üniversitesi Mühendislik Fakültesi Harita Mühendisliği Bölümü Final Sınavı Test Soruları dı soyadı :... Öğrenci no :... İmza :... Tarih, Süre :09.01.2013, 60 dak. Dikkat!!! Soru kitapçığında ve

Detaylı

Javascript. 1) Notepad++ aşağıdaki kodları yazıp deneme.html olarak kaydedelim. 2) Biraz önceki sayfa sadece html kodların içeriyordu.

Javascript. 1) Notepad++ aşağıdaki kodları yazıp deneme.html olarak kaydedelim. 2) Biraz önceki sayfa sadece html kodların içeriyordu. Javascript Html sayfalarının içine yazılarak, sayfayı daha etkileşimli hale getirir. click olayları, uyarı mesajları gibi hareketlerle sayfayı daha dinamik hale getirir. Javascript olmadan yazılan html

Detaylı

Öğr. Gör. Serkan AKSU http://www.serkanaksu.net. http://www.serkanaksu.net/ 1

Öğr. Gör. Serkan AKSU http://www.serkanaksu.net. http://www.serkanaksu.net/ 1 Öğr. Gör. Serkan AKSU http://www.serkanaksu.net http://www.serkanaksu.net/ 1 JavaScript JavaScript Nedir? Nestcape firması tarafından C dilinden esinlenerek yazılmış, Netscape Navigator 2.0 ile birlikte

Detaylı

Java 2 Standart Edition SDK Kurulum ve Java ya Giriş

Java 2 Standart Edition SDK Kurulum ve Java ya Giriş Kurulum için ilk önce Sun Microsystems in sitesinden uygun J2SE sürümünü indirin. Ben J2SE v1. 4. 2_16 Windows Installer paketini kullandım J2SE SDK Kurulumu aşağıdaki gibi başlayacaktır. 1 Kurulum tamamlandıktan

Detaylı

Nesneye Dayalı Programlama

Nesneye Dayalı Programlama SAKARYA ÜNİVERSİTESİ Nesneye Dayalı Programlama Hafta 4 Prof. Dr. Ümit KOCABIÇAK Öğr. Gör. Özgür ÇİFTÇİ Bu ders içeriğinin basım, yayım ve satış hakları Sakarya Üniversitesi ne aittir. "Uzaktan Öğretim"

Detaylı

BMT 101 Algoritma ve Programlama I 11. Hafta. Yük. Müh. Köksal Gündoğdu 1

BMT 101 Algoritma ve Programlama I 11. Hafta. Yük. Müh. Köksal Gündoğdu 1 BMT 101 Algoritma ve Programlama I 11. Hafta Yük. Müh. Köksal Gündoğdu 1 C++ Fonksiyonlar Yük. Müh. Köksal Gündoğdu 2 C++ Hazır Fonksiyonlar Yük. Müh. Köksal Gündoğdu 3 C++ Hazır Fonksiyonlar 1. Matematiksel

Detaylı

MAK 1005 Bilgisayar Programlamaya Giriş. Fonksiyonlar. Prof. Dr. Necmettin Kaya

MAK 1005 Bilgisayar Programlamaya Giriş. Fonksiyonlar. Prof. Dr. Necmettin Kaya MAK 1005 Bilgisayar Programlamaya Giriş Fonksiyonlar Prof. Dr. Necmettin Kaya Gerçek hayattaki problemlerin çözümü için geliştirilen programlar çok büyük boyutlardadır. Daha büyük programlar yazmanın en

Detaylı

7- Turbo Pascal Programlamada Alt Programlar (Procedure)

7- Turbo Pascal Programlamada Alt Programlar (Procedure) 7- Turbo Pascal Programlamada Alt Programlar (Procedure) Alt programların ana programda yapacağımız ek işlevleri üstlendiğinden daha önceki bölümde bahsetmiştik. Alt programlar genelde ana program bloğu

Detaylı

Yeni bir proje açarken File New - Web Site diyoruz. Gelen ekranda Visual Basic veya C# seçilebilir. Biz ders kapsamında C# programlama dilini seçtik.

Yeni bir proje açarken File New - Web Site diyoruz. Gelen ekranda Visual Basic veya C# seçilebilir. Biz ders kapsamında C# programlama dilini seçtik. ASP.NET DERS 1 Yeni bir proje açarken File New - Web Site diyoruz. Gelen ekranda Visual Basic veya C# seçilebilir. Biz ders kapsamında C# programlama dilini seçtik. Gelen ekranda Visual C# seçildikten

Detaylı

Diziler (Arrays) Çok Boyutlu Diziler

Diziler (Arrays) Çok Boyutlu Diziler Diziler (Arrays) Çok Boyutlu Diziler ÇOK BOYUTLU DİZİLER Birden fazla indis numarası ile elemanlarına ulaşılan dizilere çok boyutlu diziler denir. Bunlardan en sık kullanılanı çift boyutlu dizilerdir.

Detaylı

Nesne Yönelimli Programlama

Nesne Yönelimli Programlama 1 Nesne Yönelimli Programlama Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Not: Bu dersin sunumları, Java Programlama Dili ve Yazılım Tasarımı, Altuğ B. Altıntaş, Papatya

Detaylı

abstract Sınıflar 1 Sınıf sınıf1 new class Ama aşağıdaki şekilde referans alınabilir;

abstract Sınıflar 1 Sınıf sınıf1 new class Ama aşağıdaki şekilde referans alınabilir; abstract Sınıflar 1 Özet sınıflar ya da özet metotlar abstract anahtar sözcüğü kullanılarak tanımlanırlar. Bir temel sınıf içinde bildirilen abstract metotların içeriği boştur. Kendisinden yeni bir instance

Detaylı

Hafta 13 Fonksiyonlar

Hafta 13 Fonksiyonlar BLM111 Programlama Dilleri I Hafta 13 Fonksiyonlar Yrd. Doç. Dr. Caner ÖZCAN Fonksiyonlar Fonksiyonlar C de modüller Programlar kullanıcı tanımlı fonksiyonları ve kütüphane fonksiyonlarını birlikte kullanırlar.

Detaylı

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say İÇİNDEKİLER 1. Bilgisayarın Yapısı Ve Programlama Dilleri Giriş 1 Bilgisayar ve Programlamanın Kısa Bir Tarihçesi 2 Donanım ve Yazılım Kavramları 3 Bilgisayarın Donanımsal yapısı 4 Giriş Birimi (Input

Detaylı

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while Değişkenler Değişkenler bir bilginin bellekteki konumunu temsil eden sembolik isimlerdir. Bilgisayarda hemen hemen tüm işlemler bellekte yapılır. Program çalıştırıldığında değişken ve bu değişkenin türüne

Detaylı

Yazılım Kodlama ve İ simlendirme Standartları v1.0

Yazılım Kodlama ve İ simlendirme Standartları v1.0 Yazılım Kodlama ve İ simlendirme Standartları v1.0 İçerik Yazılım Kodlama ve İsimlendirme Standartları... 2 1. Amaç... Hata! Yer işareti tanımlanmamış. 2. Kapsam... Hata! Yer işareti tanımlanmamış. 3.

Detaylı

WEB TASARIM I. Öğr. Gör. M. Mutlu YAPICI. Ankara Üniversitesi Elmadağ Meslek Yüksekokulu

WEB TASARIM I. Öğr. Gör. M. Mutlu YAPICI. Ankara Üniversitesi Elmadağ Meslek Yüksekokulu WEB TASARIM I Öğr. Gör. M. Mutlu YAPICI Ankara Üniversitesi Elmadağ Meslek Yüksekokulu Ders İzlencesi Hafta Modüller/İçerik/Konular 1. Hafta PHP Tanımı ve Sunucu Kurulumları 2. Hafta PHP Yazım Notasyonu

Detaylı

Programlama Dilleri 1. Ders 12: Belirleyiciler ve Niteleyiciler

Programlama Dilleri 1. Ders 12: Belirleyiciler ve Niteleyiciler Programlama Dilleri 1 Ders 12: Belirleyiciler ve Niteleyiciler Genel Bakış Giriş Yer Belirleyicilerle Bildirim İşlemi auto Belirleyicisi register Belirleyicisi static Belirleyicisi Statik ve Global Değişkenlerin

Detaylı

C++ Dersi: Nesne Tabanlı Programlama

C++ Dersi: Nesne Tabanlı Programlama C++ Dersi: Nesne Tabanlı Programlama Bölüm 5: Fonksiyonlar İçerik Standart Kütüphane Fonksiyonları Kullanıcı Tarafından Tanımlanan Fonksiyonlar Fonksiyon Tanımı Fonksiyon Prototipi void Fonksiyonları Parametreli

Detaylı

Nesneye Dayalı Programlama Laboratuvarı

Nesneye Dayalı Programlama Laboratuvarı 2013 2014 Nesneye Dayalı Programlama Laboratuvarı Ders Sorumlusu: Yrd. Doç. Dr. Salih GÖRGÜNOĞLU Laboratuvar Sorumluları: M. Zahid YILDIRIM İÇİNDEKİLER Deney 1: Visual Studio ve C++'a Giriş Uygulamaları...

Detaylı

Statik veri üyeleri sınıf dosyası içerisinde, ancak sınıf bildirimi dışında başlatılmalıdır. Statik üye fonksiyonları

Statik veri üyeleri sınıf dosyası içerisinde, ancak sınıf bildirimi dışında başlatılmalıdır. Statik üye fonksiyonları Statik Veri Üye ve Metotlar Genel olarak bir sınıfa ait nesnelerin verileri bellekte farklı bölgelerde yer alır. Ancak bazı durumlarda, belirli bir üyenin ortak bir alanda tek bir kopyasının bulunması

Detaylı

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 3. Bölüm Veri Tipleri ve Değişkenler

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 3. Bölüm Veri Tipleri ve Değişkenler Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 3. Bölüm Veri Tipleri ve Değişkenler C Programlama Dr. Serkan DİŞLİTAŞ 3.1. Sabitler Sabitler, tanımlanmasıyla birlikte program içerisinde

Detaylı

8. İŞARETCİLER (POINTERS)

8. İŞARETCİLER (POINTERS) 8. İŞARETCİLER (POINTERS) Verilerin bilgisayar hafızasında tutulduğu fiziki alan adres olarak tanımlanabilir. Adres, hem donanımla hem de yazılımla ilişkilidir. Donanımsal açıdan adres bellekte yer gösteren

Detaylı

BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi YAYIN ALICILARI. BLM401 Dr.Refik SAMET

BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi YAYIN ALICILARI. BLM401 Dr.Refik SAMET BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi YAYIN ALICILARI BİLEŞENLERİ 1 GİRİŞ (1/4) Uygulamalar cihazda meydana gelen bazı olaylardan (internet bağlantısı ile ilgili olaylar, güç bağlantısı ile

Detaylı

Bölüm 11. Soyut veri tipleri ve kapsülleme kavramları ISBN 0-321-49362-1

Bölüm 11. Soyut veri tipleri ve kapsülleme kavramları ISBN 0-321-49362-1 Bölüm 11 Soyut veri tipleri ve kapsülleme kavramları ISBN 0-321-49362-1 11. Bölüm konuları Soyutlama kavramı Veri soyutlamasına giriş Soyut veri tipleri için tasarım konuları Dil örnekleri Parametreli

Detaylı

ÜNİTE. NESNE TABANLI PROGRAMLAMA I Okt. Mustafa AKBUĞA İÇİNDEKİLER HEDEFLER DEĞİŞKENLER VE VERİ TİPLERİ

ÜNİTE. NESNE TABANLI PROGRAMLAMA I Okt. Mustafa AKBUĞA İÇİNDEKİLER HEDEFLER DEĞİŞKENLER VE VERİ TİPLERİ HEDEFLER İÇİNDEKİLER DEĞİŞKENLER VE VERİ TİPLERİ Değişkenler ve Veri Tipleri Değişkenler Sabitler Değişkenlerde Faaliyet Alanı Veri Tipleri Tür Dönüşümleri NESNE TABANLI PROGRAMLAMA I Okt. Mustafa AKBUĞA

Detaylı

Temel Bilgisayar Bilimleri Ders Notu #4-2. kısım

Temel Bilgisayar Bilimleri Ders Notu #4-2. kısım Nisan 2009 9031150 - Temel Bilgisayar Bilimleri Ders Notu #4-2. kısım Referans: Bugün: 1. Ders Notları. Ders #4.1 Tekrar Dowhile ve for döngüleri Diziler Göstergeler 1. Tekrar for döngüleri Genel yazılımı

Detaylı