(Sözlük, dictionary, birleşik array, map)

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

Download "(Sözlük, dictionary, birleşik array, map)"

Transkript

1 14 hash (Sözlük, dictionary, birleşik array, map) 14.1 Hash Sınıfı Array ambarı, içindekileri tamsayılarla (index) damgalayıp sıralayan harika bir yapıdır. Ama bazı durumlarda indis ya yoktur ya da kullanılması kolay olmaz. Örneğin, bir sınıfta her öğrenciyi numarası ile belirlemek mümkündür, ama pratik değildir. Onun yerine soyadlarını adlarına eşleyen bir liste daha kullanışlı olur. hash, { } parantezi içine konulan anahtar => değer ikililerinden oluşan yapısal bir tiptir; bir sınıftır. Bazı dillerde sözlük, associative memories, associative arrays, map ya da hash tables adlarıyla bilinir. Adından da anlaşılacağı üzere, hash yapısı bir sözlük yapısı gibidir. Sözlükteki terimler anahtar, açıklamaları ise değer rolünü oynar. Ancak sözlüklerde terimler (anahtarlar) alfabetik (lexicographic) sıralıdır. hash yapısında anahtarlar sıralı olmayabilir. Anahtarlar ve değerler Ruby nesneleridir. Sözlüklerde olduğu gibi, anahtarlar tekrarlamayan tiplerden olmalıdır. Değerler her tipten olabilir. Tekrarlayabilirler. Başka bir deyişle, farklı anahtarlara aynı değer eşleşebilir (bkz. [10]). Bu kitapta, hash terimi yerine, çoğunlukla sözlük terimini kullanacağız. Ancak, bir dilin anahtar sözcüklerini değiştirmenin mümkün ya da uygun olmadığı deyimler vardır. O durumlarda, Ruby nin kullandığı hash terimini kullanacağız.

2 174 BÖLÜM 14. HASH Arkadaşlarınızın, dostlarınızın adları karşısında telefon numaralarını yazdığınız basit bir liste, Ruby de bir sözlük yapısıdır. Ruby de hash ambarına konulan öğe çiftleri { } parantezi içine konulur. Anahtarın değere eşlendiği => simgesiyle gösterilir: anahtar=>değer. Örnek t e l e f o n = { " Aren "=> , " Meltem "=> } Bu yapının öğeleri anahtar=>değer çiftlerinden oluşur. Öğe sayısı istediğiniz kadar artırılabilir. Ülke adlarının karşısında telefon kodları yazılı basit bir liste, Ruby de bir sözlük yapısıdır. Örnek u l u s l a r _ t l f = { ABD => 1, Almanya => 49, Fransa => 33, Türkiye => 90} Bu ambarda yalnızca dört tane anahtar => değer çifti vardır. Ama listeyi bütün ülkeleri içerecek kadar uzatabilirsiniz. İl adları karşısına trafik kodları yazılı basit bir liste, Ruby de bir sözlük yapısıdır. Örnek t r a f i k = { B i t l i s => " 13 ", Van => " 65 ", D e n i z l i => " 20 ", Konya => " 42 ", Adana => " 01 " } Bu ambarda yalnızca beş tane anahtar => değer çifti vardır. Ama listeyi bütün illeri içerecek kadar uzatabilirsiniz. Unutmayınız, hash yapısında anahtarlar tekrarlamaz, ama birden çok anahtara tek bir değer karşılık gelebilir. Örneğin, bir kurumda çalışanların ofis numaralarını gösteren bir sözlük yapısında, aynı ofisi paylaşanlar için ofis numaraları aynı olacaktır. Bir kurumda çalışanların ofislerini gösteren aşağıdaki memur => ofis biçimindeki listede Melis ile Yusuf 23 numaralı ofiste oturmaktadırlar. Listede, onlar için anahtarlar farklıdır, ama eğerler aynıdır. Örnek y e r l e ş i m = { Melis => 23, Yusuf => 23, Altan => 25 } ; Bu sözlük te ilk iki öğenin anahtarları farklı, ama değerleri aynıdır.

3 14.2. SÖZLÜK YAPISI ÜZERINDE İŞLEMLER Sözlük Yapısı Üzerinde İşlemler Sözlük yapısı bir veri ambarıdır. Buna sözlük ambarı ya da kısaca ambar diyelim. Bu ambar üzerinde yapılacak başlıca işlemler şunlardır. Ambara sözlük öğesi; yani anahtar:değer çifti koyma Ambarda olan öğeleri görme Ambarda bir anahtarın olup olmadığını anlama Ambardaki öğeleri anahtar sırasına koyma Ambardan sözlük öğesi çıkarıp kullanma Ambardan sözlük öğesi atma (silme) 14.3 Sözlük Yaratma Bir sözlük yaratmanın farklı yöntemleri vardır. Başlıcalarını örneklerle açıklayalım. Boş sözlük Yaratma: { } parantezi boş bir sözlük yaratır. Örnek d = {} d. length # => 0 new operatörü Hash sınıfından boş bir söz- Hash sınıfından Türetme: lük yaratır. Örnek d = Hash. new d. length # => 0 anahtar => değer Çiftlerini Yazmak: { } parantezi içine sözlük yapısında yer alacak anahtar:değer çiftleri yazılabilir. Örneğin, bir işyerinde müdür, şef ve sekreterin ofis numaralarını gösteren Örnek 14.7.

4 176 BÖLÜM 14. HASH o f i s = { "müdür" => 310, " ş e f " => 311, " s e k r e t e r 1 " => 312, " s e k r e t e r 2 " => 312} listesi bir sözlük yapısıdır. Bu yapıda anahtarlar tektir. Ama sekreter1 ve sekterer2 için ortak bir ofis ayrılmıştır. Bu demektir ki, sözlük yapısında anahtarlar tek olur, tekrarlamazlar, ama değerler tek olmayabilir Array ile Hash Yapılarının Karşılaştırılması Sözlük yapısı, array yapısı gibidir. Array yapısında her öğenin bir tamsayı indisi vardır. array in öğelerine indisleriyle erişilir. Array in öğeleri indislerine göre sıralıdır. Sözlük yapısında ise öğelerin indisleri yoktur. Onun yerine anahtarlar vardır. Anahtarlar indis rolünü oynarlar. Sözlük içindeki her öğe bir anahtar => değer çiftidir. Sözlükte öğe çiftlerine anahtar ile erişilir. Ama sözlük yapısı anahtarlara göre sıralı olmayabilir. Sözlük, Hash sınıfından ::new metodu ile yaratılır. Ör- Sözlük Yaratma neğin, puan = Hash. new deyimi puan adlı bir sözlük ambarı yaratır Hash Ambarına Öğe Koyma puan [ " Altan " ] = 75 deyimi puan adlı hash ambarına "Altan" => 75 çiftini bir öğe olarak koyar. Burada "Altan" anahtar, 75 ona karşılık getirilen değerdir. Bir hash ambarına istenildiği kadar öğe konulabilir. Ama anahtar tekrar edemez. Var olan bir anahtar tekrar kullanılırsa, ona önceden verilen değer silinir, yeni değeri eskisinin yerine geçer. Sözlük ambarı yaratılırken içine öğeler koymak mümkündür: kent = { Ankara => 312, İ s t a n b u l => 212, İzmir => 232} deyimi kent adlı bir sözlük ambarı yaratır ve içine üç kentin adlarını telefon kodlarına eşleyen üç öğe koyar. Daha sonra bu ambara yeni ekler yapılabilir: kent [ Antalya ] = 242 Anahtardan sonra gelen ok (=>) simgesi, anahtarı değere eşler. O nedenle, bazı kaynaklarda hash yapısına eşlem (map) denilir.

5 14.5. SÖZLÜK YAPISININ METOTLARI 177 Hash ambarında olmayan bir öğeye erişilmek istenildiğinde nil öntanımlı değeri gelir. Ama istersek bunu değiştirip, istediğimiz bir nesneyi öntanımlı yapabiliriz. Örneğin, hafta = Hash. new( " İ y i günler " ) deyimi hafta adlı hash ambarı için "İyi günler" nesnesini öntanımlı yapar. Öğesi olmayan sözlük ambarına erişim istendiğinde nil yerine, tanımlanan bu değer gelir. O nedenle, tanımlanan bu değere sözlük ambarının öntanımlı değeri diyeceğiz. Başka öntanımlı değer tanımlanmamışsa, boş sözlük ambarına erişim istendiğinde nil gelir. nil sözlük ambarının boş olduğu anlamına gelir. Örneğin, h = Hash. new h. d e f a u l t # => n i l olur. Ama, new operatöründe argüman kullanılırsa, aşağıdaki gibi olur: h = Hash. new (0) h. d e f a u l t # => 0 Ruby sözlük yapısında anahtar => değer çiftlerini oluşturan anahtarlar ve değerler her tipten olabilirler. Onlar birer nesnedir. Tek koşul, ambarda anahtar ın tekrarlamamasıdır. Aynı nesne iki kez anahtar olarak kullanılamaz. Oysa, değer nesnesi birden çok kez yer alabilir Sözlük Yapısının Metotları Hash sınıfının çok sayıda metodu vardır. Onların listesini görmek için, Ruby nin genel kuralını uygulayabiliriz. Bilindiği gibi, nesne.methods deyimi, sökonusu nesneye uygulanabilen bütün metotları listeler. Hash sınıfına uygulanabilen bütün metotları görmek için Hash. methods deyimi yeterlidir. Bu deyim uzun bir liste verir. Burada Hash sınıfının çok kullanılan bazı metotlarını örneklerle açıklayacağız. Örnek d = { " Ankara " => 213, " izmir " => liman, " Elma " => f a l s e } e = { ab => 12, cd => " kent ", e f => t r u e } deyimleri d ve e adlarında iki sözlük ambarı yaratır ve { } içine, istenen öğeleri koyar. Uyarı Nesne tabanlı programlama dillerinin çoğunda, her sınıfın metotları vardır. Bir sınıftan başka bir sınıftaki metot çağrılabilir. Ancak,

6 178 BÖLÜM 14. HASH Ruby de durum farklıdır. Ruby de metotlar modüllerde toplanır. Kernel adlı modülde toplanan metotlar, hemen her sınıfa uygulanabilir. Kernel Module den üretilmiştir. Kernel in metotları Ruby nesnelerinin orta malı gibidir. Şimdi amradaki öğelerin bileşenlerine nasıl erişileceğini görelim: Anahtarlara Erişim keys metodu sözlükteki anahtarlara erişir: Örnek d. keys # => [ " Ankara ", " izmir ", " Elma " ] p(d. keys ) # =>["Ankara ", " izmir ", " Elma " ] Burada p() metodu print() metodunun kısa adıdır. Parametresini (argument) yazar Değerlere Erişim values metodu sözlükteki değerlere erişir: Örnek d. values # => [ 2 1 3, " liman ", f a l s e ] p(d. values ) # => [ 2 1 3, " liman ", f a l s e ] Kümesel İşlemler Sözlük ambarının anahtarları ve değerleri birer array olarak elde edilebildiğine göre, arrayler üzerinde yapılan kümesel arakesit (&), bileşim (+) ve fark (-) işlemleri uygulanabilir. Örnek d. keys & e. keys d. keys + e. keys 3 d. keys e. keys Bu kodları etkileşimli (irb) kipinde tek tek yazmak yerine hepsini bir program haline de getirebiliriz: Örnek

7 14.5. SÖZLÜK YAPISININ METOTLARI # encoding utf 8 d = { " ankara " => kent, " izmir " => liman, " kars " => hudut } e = { ab => 12, " cd " => liman, izmir => 232 } d. keys 7 p(d. keys ) # => [ " ankara ", " izmir ", " kars " ] d. values p(d. values ) # => [ " kent ", " liman ", " hudut " ] 12 e. keys p( e. keys ) # => [ " ab ", " cd ", " izmir " ] 17 e. values p( e. values ) # => [ 1 2, " liman ", 232] d. keys & e. keys # => anahtarlar i ç i n mantıksal AND p(d. keys & e. keys ) # => [ " izmir " ] 22 d. keys + e. keys # => a n a h t a r l a r ı n kümesel b i l e ş i m i p(d. keys + e. keys ) # => [ " ankara ", " izmir ", " kars ", " ab ", " cd ", " izmir " ] d. keys e. keys # => a n a h t a r l a r ı n kümesel f a r k ı p(d. keys e. keys ) # => [ " ankara ", " kars " ] / ruby hash01. rb [ " ankara ", " izmir ", " kars " ] 4 [ " kent ", " liman ", " hudut " ] [ " ab ", " cd ", " izmir " ] [ 1 2, " liman ", 232] [ " izmir " ] [ " ankara ", " izmir ", " kars ", " ab ", " cd ", " izmir " ] 9 [ " ankara ", " kars " ] / Her bir kodun karşısında verdiği sonuç yazılı olduğu için, başka açıklamaya gerek yoktur. d = { " ankara " => kent, " izmir " => liman, " kars " => hudut } hash ambarı verilmiş olsun. Aşağıdaki metotlar, karşılarında belirtilen eylemleri yaparlar d.methods : d nesnesine uygulanabilecek metotları listeler. d.length : d ambarındaki öğe sayısını verir. d. length # => 3 a.inspect : a ambarın içini gösterir. to_s gibidir.

8 180 BÖLÜM 14. HASH d. i n s p e c t => " {\" ankara\"=>\" kent \", \" izmir \"=>\"liman \", \" kars \"=>\" hudut \"} " to_s : inspect metodunun yaptığı işi yapar. d. to_s => " {\" ankara\"=>\" kent \", \" izmir \"=>\"liman \", \" kars \"=>\" hudut \"} " d.class: d nesnesinin hangi sınıftan türetildiğini belirtir. d. c l a s s # => Hash d.clear : d ambarındaki bütün öğeleri siler; boş ambar yapar. d. c l e a r \{ \} d. length # => 0 d.keys : d ambarının anahtarlarını bir array biçiminde verir. d. keys # => [ " ankara ", " izmir ", " kars " ] d.values : d ambarının değerlerini bir array biçiminde verir. d. values # => [ " kent ", " liman ", " hudut " ] d.get(key) Argüman olarak yazılan değere eşleşen anahtarı verir. Eşleşen değer yoksa hiç (nil) verir. d. key ( kent ) # => " ankara " d. key (7) # => n i l hsh[key > vlue] Verilen anahtara karşılık gelen değeri verir. h [ " a " ] #=> h [ " c " ] #=> n i l == İki hash ambarının eşit olup olmadığını denetler. h1 = { " a " => 1, " c " => 2 } 2 h2 = { 7 => 35, " c " => 2, " a " => 1 } h3 = { " a " => 1, " c " => 2, 7 => 35 } h4 = { " a " => 1, " d " => 2, " f " => 35 } h1 == h2 #=> f a l s e h2 == h3 #=> true 7 h3 == h4 #=> f a l s e hsh[key > value] Verilen anahtara karşılık gelen değeri verir.

9 14.5. SÖZLÜK YAPISININ METOTLARI 181 h [ " a " ] #=> h [ " c " ] #=> n i l delete(anahtar) > vlue Verilen anahtara karşılık gelen değeri verir. 2 h. d e l e t e ( " a " ) #=> 100 h. d e l e t e ( " z " ) #=> n i l h. d e l e t e ( " z " ) { e l "#{e l } not found " } #=> " z not found " delete_if{ key,value block} : bloktakine eşleşen bütün anahtar-değer çiftlerini siler. 1 h = { " a " => 100, " b " => 200, " c " => 300 } h. d e l e t e _ i f { key, value key >= " b" } #=> {" a"=>100} each : bloktakine eşleşen bütün anahtar-değer çiftlerini verir. h. each { key, value puts "#{key} i s #{value } " } 3 a i s 100 b i s 200 each_key{ anahtar blok} : Bloktakine eşleşen bütün anahtarı verir. 1 h. each_key { key puts key } a b each_value{ value blok} : Bloktakine eşleşen bütün anahtarı verir. 1 h. each_value { value puts value } empty? : Ambar boş ise true verir. 1 {}. empty? #=> true fetch(anahtar) : Anahtara karşılık gelen değeri verir h. f e t c h ( " a " ) #=> 100 h. f e t c h ( " z ", " go f i s h " ) #=> " go f i s h " has_key?(anahtar) : Verilen anahtar ambarda ise true verir. 2 h. has_key?( " a " ) #=> true h. has_key?( " z " ) #=> f a l s e

10 182 BÖLÜM 14. HASH include?(anahtar) : Verilen anahtar ambarda ise true verir. has_key metoduna denktir 2 h. i n c l u d e?( " a " ) #=> true h. i n c l u d e?( " z " ) #=> f a l s e has_value?(değer) : Verilen değer ambarda ise true verir. 2 h. has_value?(100) #=> true h. has_value?(999) #=> f a l s e invert : Bir bölükte anahtarları değer,değerleri anahtar yaparak yeni bir sözlük yaratır. h = { " n " => 100, "m" => 100, " y " => 300, " d" => 200, " a " => 0 } 2 h. i n v e r t #=> {0=>"a ", 100=>"m", 200=>"d ", 300=>"y "} keys : Bir sölükte anahtarlardan oluşan bir array yaratır. h = { " a " => 100, " b " => 200, " c " => 300, " d" => 400 } h. keys #=> [ " a ", " b ", " c ", " d " ]

Mantıksal İşlemler. 7.1 true, false, nil

Mantıksal İşlemler. 7.1 true, false, nil 7 Mantıksal İşlemler 7.1 true, false, nil Doğru ya da Yanlış değer alan önermelere (ifadelere) mantıksal (logic) deyimler ya da boolean deyimler denilir ([5]). Bir çok dilde mantıksal işlemler true ve

Detaylı

Döngüler. Tablo 15.1: Ruby de Başlıca Döngü Yapıları

Döngüler. Tablo 15.1: Ruby de Başlıca Döngü Yapıları 15 Döngüler Belirli bir iş birden çok kez tekrarlanacaksa, programda bu iş bir kez yazılır ve döngü yapıları o deyim(ler)i istenildiği kadar tekrarlar. Ruby de bu işi yapan çok sayıda döngü yapıları vardır.

Detaylı

Ruby. Prof.Dr.Timur Karaçay Başkent Üniversitesi

Ruby. Prof.Dr.Timur Karaçay Başkent Üniversitesi Ruby Prof.Dr.Timur Karaçay Başkent Üniversitesi Eylül 2014 2 Aren e ve Altan a ii Önsöz Ruby dilinin yaratıcısı Yukihiro Matsumoto, onu kısaca Matz diye çağırırlar, yarattığı dili şöyle anlatıyor: Ruby

Detaylı

Integer Sınıfı. 9.1 Integer Sınıfına Uygulanan Başlıca Metotlar. Ruby de tamsayılar için kullanılan Fixnum ve Bignum sınıflarını üreten sınıftır.

Integer Sınıfı. 9.1 Integer Sınıfına Uygulanan Başlıca Metotlar. Ruby de tamsayılar için kullanılan Fixnum ve Bignum sınıflarını üreten sınıftır. 9 Integer Sınıfı Ruby de tamsayılar için kullanılan Fixnum ve Bignum sınıflarını üreten sınıftır. Integer Literal Tamsayı gösteren metinler, 1 0, 1, 123, 123456789012345678901234567890 biçiminde yalnızca

Detaylı

1 RUBY HAKINDA 1 Ruby nin Gelişim Hikayesi 1 Neden Ruby? 1 Neden Bu Kadar Popüler? 2

1 RUBY HAKINDA 1 Ruby nin Gelişim Hikayesi 1 Neden Ruby? 1 Neden Bu Kadar Popüler? 2 İÇİNDEKİLER VII İÇİNDEKİLER 1 RUBY HAKINDA 1 Ruby nin Gelişim Hikayesi 1 Neden Ruby? 1 Neden Bu Kadar Popüler? 2 2 RUBY KURULUMU 3 Windows İçin Ruby Kurulumu 3 Ubuntu ve Debian İçin Ruby Kurulumu 6 Mac

Detaylı

Metotlar. d e f metot_adı [ ( [ arg [= d e f a u l t ] ]... [, arg [, &expr ] ] ) ] deyim ( l e r ) end

Metotlar. d e f metot_adı [ ( [ arg [= d e f a u l t ] ]... [, arg [, &expr ] ] ) ] deyim ( l e r ) end 4 Metotlar Hemen her programlama dilinde var olan metot kavramı Ruby için de aynıdır. Bazı kaynaklarda metot terimi yerine fonksiyon terimi kullanılır. Bu kitapta iki terimi eşanlamlı kullanacağız. Ruby

Detaylı

Karmaşık Sayılar Karmaşık Sayı Yaratma

Karmaşık Sayılar Karmaşık Sayı Yaratma 10 Karmaşık Sayılar Matematik derslerinden bilindiği gibi a ile b iki gerçel (real) sayı ve i = 1 olmak üzere z= a +bi sayısı karmaşık (complex) bir sayıdır. (Bazı yerde i yerine j yazılır.) i sayısı sanal

Detaylı

Module ve Mixin Module nedir? 17.2 Neden Module?

Module ve Mixin Module nedir? 17.2 Neden Module? 17 Module ve Mixin 17.1 Module nedir? En genel anlamıyla, modül (module), programın iyi düzenlenmesini sağlayan yapı taşlarıdır. modül, fiziksel olarak düzenlenmiş ve farklı dosyalara yazılmış Ruby kodlarının

Detaylı

Sayıtlama Dizgeleri. (a n a n-1 a n1 a n0. b 1 b 2 b m )r. simgesi şu sayıyı temsil eder.

Sayıtlama Dizgeleri. (a n a n-1 a n1 a n0. b 1 b 2 b m )r. simgesi şu sayıyı temsil eder. 1 Sayıtlama Dizgeleri Hint-Arap Sayıtlama Dizgesi Sayıları göstermek (temsil etmek) için tarih boyunca türlü simgeler kullanılmıştır. Sümerlerin, Mısırlıların, Romalıların ve diğer uygarlıkların kullandıkları

Detaylı

İçindekiler. Glossary

İçindekiler. Glossary İçindekiler Glossary i 1 Yönlendirme Uygulamaları 1 1.0.1 times Döngüsü............................. 3 1.0.2 for Döngüsü............................... 4 1.1 each_byte....................................

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ı

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ı

ArrayList Uygulamaları

ArrayList Uygulamaları ArrayList Uygulamaları Aşağıdaki program önce boş bir ArrayList yaratıyor. Sonra sırasıyla şu işleri yapıyor: Listenin boş olup olmadığını yaz. Ambara üç tane öğe ekle. İndisi 2 olan yere bir öğe sokuştur.

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ı

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 Diziler Dizi Tanımlama ve İlk Değer Atama Dizi Elemanlarının Kullanılması Dizi İşlemleri Java da Diziler JAVA DA DİZİLER 4 Dizi; tek bir veri tipinde,

Detaylı

Görsel Programlama DERS 04. Görsel Programlama - Ders04/ 1

Görsel Programlama DERS 04. Görsel Programlama - Ders04/ 1 Görsel Programlama DERS 04 Görsel Programlama - Ders04/ 1 Diziler ve Kolleksiyonlar(Collections) Diziler aynı tipli değişkenleri tutmak için kullanılan veri yapılarıdır. Diziler sabit uzunlukludur. Birkez

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ı

Denetim Yapıları. 11.1 Program Akışının Yönlendirilmesi. Şekil 11.1: Akışı Koşullu Yönlendirme

Denetim Yapıları. 11.1 Program Akışının Yönlendirilmesi. Şekil 11.1: Akışı Koşullu Yönlendirme 11 Denetim Yapıları Şekil 11.1: Akışı Koşullu Yönlirme 11.1 Program Akışının Yönlirilmesi Her programlama dilinde, program akışı hiç bir koşula bağlı olmaksızın doğrusal gidiyorsa, deyimler programda yazıldığı

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ı

Java Koleksiyonları (Java Collections)

Java Koleksiyonları (Java Collections) Java Koleksiyonları (Java Collections) Giriş Bu bölümde, java standart kütüphanesinde yer alan Collections topluluğunu ele alacağız. Amaçlar Bu dersin sonunda öğrenci şunları biliyor olacaktır: Java Collctions

Detaylı

Binary Search. (Yarılama) Bölüm Dizide Bir Öğe Arama

Binary Search. (Yarılama) Bölüm Dizide Bir Öğe Arama Bölüm 39 Binary Search (Yarılama) 39.1 Dizide Bir Öğe Arama İkil aramayı (yarılama yöntemi) sıralı veri kümelerinde sık sık kullanırız. Örneğin, sözlükte bir sözcüğü ararken, sözlüğün bütün sayfalarını

Detaylı

Operatörler. 6.1 Operatör Nedir?

Operatörler. 6.1 Operatör Nedir? 6 Operatörler 6.1 Operatör Nedir? Operatör, bir veri tipi üzerinde tanımlı fonsiyondur. En basit örneği sayılar üzerindeki toplama işlemidir. 1 + 2 = 3 işleminde (+) simgesi bir operatördür. 1 ve 2 sayıları

Detaylı

ATATÜRK ÜNİVERSİTESİ BİLGISAYAR MÜHENDİSLİĞİ BÖLÜMÜ BM 104- NESNEYE YÖNELİK PROGRAMLAMA DERSİ 2013-2014 BAHAR DÖNEMİ ÖDEV-3

ATATÜRK ÜNİVERSİTESİ BİLGISAYAR MÜHENDİSLİĞİ BÖLÜMÜ BM 104- NESNEYE YÖNELİK PROGRAMLAMA DERSİ 2013-2014 BAHAR DÖNEMİ ÖDEV-3 ATATÜRK ÜNİVERSİTESİ BİLGISAYAR MÜHENDİSLİĞİ BÖLÜMÜ BM 104- NESNEYE YÖNELİK PROGRAMLAMA DERSİ 2013-2014 BAHAR DÖNEMİ ÖDEV-3 (Son Teslim Tarihi: 06.06.2014 17:30 a kadar ) Teslim: Arş. Gör. Ferhat Bozkurt

Detaylı

Mikrobilgisayarda Aritmetik

Mikrobilgisayarda Aritmetik 14 Mikrobilgisayarda Aritmetik SAYITLAMA DİZGELERİ Sayıları göstermek (temsil etmek) için tarih boyunca türlü simgeler kullanılmıştır. Konumuz bu tarihi gelişimi incelemek değildir. Kullanılan sayıtlama

Detaylı

Ruby Sınıfları. 3.1 Ruby Yorumlayıcı Bir Dildir

Ruby Sınıfları. 3.1 Ruby Yorumlayıcı Bir Dildir 3 Ruby Sınıfları Bir programlama dilini öğrenirken izlenebilecek en iyi yol yoktur. Konuları sistematik olarak öğrenmeye kalkarsanız, öğrenme olgusunun pedagojik kısmı yok olur. En öne alınması gereken

Detaylı

232 DIZIN. attr, 65 attributes, 65

232 DIZIN. attr, 65 attributes, 65 Dizin ++ operatörü, 73 operatörü, 73.eql?, 79 /, 74 //, 74 =, 79», 83 önel takı, 73 öntanımlı, 104 üretik değişken, 24 üst alma, 77 üstsınıf,

Detaylı

T I M U R K A R A Ç AY - H AY D A R E Ş C A L C U L U S S E Ç K I N YAY I N C I L I K A N K A R A

T I M U R K A R A Ç AY - H AY D A R E Ş C A L C U L U S S E Ç K I N YAY I N C I L I K A N K A R A T I M U R K A R A Ç AY - H AY D A R E Ş C A L C U L U S S E Ç K I N YAY I N C I L I K A N K A R A Contents 1 Kümeler Cebiri 5 1 Kümeler Cebiri 1 Doğa olaylarının ya da sosyal olayların açıklanması için,

Detaylı

Aşağıdaki programı inceleyip ekrana ne yazacağını söyleyebilir misiniz?

Aşağıdaki programı inceleyip ekrana ne yazacağını söyleyebilir misiniz? PYTHON DERS-8 LİSTELER-2 Geçen ders listeler oluşturmayı, listedeki her elemanın bir index numarası olduğu ve bu numaranın 0'dan başladığını, listenin tamamını veya index numarası sayesinde belirli bir

Detaylı

Kılgılayan Sınıflar: AbstractMap, Attributes, HashMap, Hashtable, IdentityHashMap, RenderingHints, TreeMap, WeakHashMap

Kılgılayan Sınıflar: AbstractMap, Attributes, HashMap, Hashtable, IdentityHashMap, RenderingHints, TreeMap, WeakHashMap Map Arayu zu java.util Interface Map Altarayüzleri: SortedMap Kılgılayan Sınıflar: AbstractMap, Attributes, HashMap, Hashtable, IdentityHashMap, RenderingHints, TreeMap, WeakHashMap Map, Java Collections

Detaylı

I Java Veri Yapıları 1

I Java Veri Yapıları 1 İçindekiler Önsöz xix I Java Veri Yapıları 1 1 Giriş 3 1.1 Veri Nedir?............................... 3 1.2 Algoritma Nedir?............................ 4 1.3 Veri Yapıları..............................

Detaylı

C++ Dersi: Nesne Tabanlı Programlama 2. Baskı

C++ Dersi: Nesne Tabanlı Programlama 2. Baskı C++ Dersi: Nesne Tabanlı Programlama 2. Baskı ³ Bölüm 19: Standart Şablon Kütüphanesi (vector) İçerik 19.1 Standart Şablon Kütüphanesi (STL) 19.2 vector SınıK 19.3 vectortanımı 19.4 vector Elemanlarına

Detaylı

Java Programlamada Paket Yapısı Ve Import

Java Programlamada Paket Yapısı Ve Import Java programlamada paket yapısı ve import Java Programlamada Paket yapısı ve Java programları paketlerden oluşmaktadır. Paketlerin içinde sınıflar ve arayüzler bulunur. İstenirse var olan paketlerden başka

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ı

Class LinkedList java.lang.object java.util.abstractcollection java.util.abstractlist java.util.abstractsequentiallist java.util.

Class LinkedList java.lang.object java.util.abstractcollection java.util.abstractlist java.util.abstractsequentiallist java.util. LinkedList java.util Class LinkedList java.lang.object java.util.abstractcollection java.util.abstractlist java.util.abstractsequentiallist java.util.linkedlist LinkedList sınıfı List arayüzünü kılgılar

Detaylı

C# Programlama Dili. İlk programımız Tür dönüşümü Yorum ekleme Operatörler

C# Programlama Dili. İlk programımız Tür dönüşümü Yorum ekleme Operatörler C# Programlama Dili İlk programımız Tür dönüşümü Yorum ekleme Operatörler 1 İlk Programımız Bu program konsol ekranına Merhaba dünya! yazıp kapanır. Programı geçen derste anlatıldığı gibi derleyin, sonra

Detaylı

Sözlükler. Prof.Dr. Bahadır AKTUĞ JFM212 Python ile Mühendislik Uygulamaları. *Kaynakça bölümünde verilen kaynaklardan derlenmiştir.

Sözlükler. Prof.Dr. Bahadır AKTUĞ JFM212 Python ile Mühendislik Uygulamaları. *Kaynakça bölümünde verilen kaynaklardan derlenmiştir. Sözlükler Prof.Dr. Bahadır AKTUĞ JFM212 Python ile Mühendislik Uygulamaları *Kaynakça bölümünde verilen kaynaklardan derlenmiştir. Python'un sağladığı güçlü ve esnek programlama olanaklarıın en önemlilerinden

Detaylı

VERİ TABANI YÖNETİM SİSTEMLERİ I

VERİ TABANI YÖNETİM SİSTEMLERİ I BÖLÜM 8 8. TEMEL SQL KOMUTLARI-II 8.1. SELECT (Seç) Komutu Veri tabanındaki tablo veya tablolardan istenilen özellikteki verileri seçip listeleme için kullanılan komuttur. Genel kullanımı aşağıdaki gibidir.

Detaylı

AYRIK YAPILAR ARŞ. GÖR. SONGÜL KARAKUŞ- FIRAT ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ YAZILIM MÜHENDİSLİĞİ BÖLÜMÜ, ELAZIĞ

AYRIK YAPILAR ARŞ. GÖR. SONGÜL KARAKUŞ- FIRAT ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ YAZILIM MÜHENDİSLİĞİ BÖLÜMÜ, ELAZIĞ AYRIK YAPILAR P r o f. D r. Ö m e r A k ı n v e Y r d. D o ç. D r. M u r a t Ö z b a y o ğ l u n u n Ç e v i r i E d i t ö r l ü ğ ü n ü ü s t l e n d i ğ i «A y r ı k M a t e m a t i k v e U y g u l a

Detaylı

Belirli bir iş bir çok kez tekrarlanacaksa, programda bu iş bir kez yazılır ve döngü deyimleriyle istenildiği kadar tekrar tekrar çalıştırılabilir.

Belirli bir iş bir çok kez tekrarlanacaksa, programda bu iş bir kez yazılır ve döngü deyimleriyle istenildiği kadar tekrar tekrar çalıştırılabilir. Bölüm 09 Döngüler for döngüsü do döngüsü while döngüsü foreach döngüsü Belirli bir iş bir çok kez tekrarlanacaksa, programda bu iş bir kez yazılır ve döngü deyimleriyle istenildiği kadar tekrar tekrar

Detaylı

EN AZ SAYIDA AĞIRLIKLA AĞIRLIKLARI TARTMAK

EN AZ SAYIDA AĞIRLIKLA AĞIRLIKLARI TARTMAK EN AZ SAYIDA AĞIRLIKLA AĞIRLIKLARI TARTMAK Amaç: 1 den n ye kadar olan tamsayı ağırlıkları, toplamları n olan en az sayıda ağırlığı kullanarak tartmak. Giriş: Bu araştırmanın temelini Ulusal Bilgisayar

Detaylı

Interface Comparator. Kılgılayan sınıf: Collator. Bildirimi: public interface Comparator

Interface Comparator. Kılgılayan sınıf: Collator. Bildirimi: public interface Comparator Interface Comparator java.util Interface Comparator Kılgılayan sınıf: Collator Bildirimi: public interface Comparator Comparator arayüzü Java Collections Framework un bir üyesidir. Bir nesneler koleksiyonu

Detaylı

Bu işleçlerin dışında, aşağıda belirtilen karşılaştırma işleçlerinden de yararlanılır.

Bu işleçlerin dışında, aşağıda belirtilen karşılaştırma işleçlerinden de yararlanılır. 18 SQL SORGU DİLİ SQL (Structured Query Language) yapısal sorgu dili, veritabanı yönetim sistemlerinin standart programlama dili olarak bilinmektedir. SQL dilinin Access içinde sorgu pencerelerinde veya

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ı

İST 264 VERİ YAPILARI Bitirme Sınavı A Grubu

İST 264 VERİ YAPILARI Bitirme Sınavı A Grubu İST 264 VERİ YAPILARI Bitirme Sınavı A Grubu SORU 1 Dünyanın en uzun beş nehrini öğeleri olarak kabul eden bir yığıt (stack) yaratınız. Yığıtın üçüncü öğesini bulunuz. Yığıtın üstündeki öğeyi bulunuz ve

Detaylı

ArrayList(int initialcapacity) Sığası (capacity) parametrenin belirlediği sayıda olan bir dizi oluşturur.

ArrayList(int initialcapacity) Sığası (capacity) parametrenin belirlediği sayıda olan bir dizi oluşturur. ArrayList Sınıfı java.util Class ArrayList java.lang.object java.util.abstractcollection java.util.abstractlist java.util.arraylist Java Collections Framework içinde yer alan bu sınıfın üç tane kurucusu

Detaylı

T I M U R K A R A Ç AY - H AY D A R E Ş C A L C U L U S S E Ç K I N YAY I N C I L I K A N K A R A

T I M U R K A R A Ç AY - H AY D A R E Ş C A L C U L U S S E Ç K I N YAY I N C I L I K A N K A R A T I M U R K A R A Ç AY - H AY D A R E Ş C A L C U L U S S E Ç K I N YAY I N C I L I K A N K A R A Contents Bibliography 11 CONTENTS 5 0.1 Kartezyen Çarpım 0.2 Sıralı İkililer Şimdiye kadar sıra ya da

Detaylı

=~ Metodu 92 Karakter Sınıfları 94 sub ve gsub metotları 101 Hızlı Tekrar 102 Kontrol Noktası 103 Düello 106 Sonraki Bölümde 109

=~ Metodu 92 Karakter Sınıfları 94 sub ve gsub metotları 101 Hızlı Tekrar 102 Kontrol Noktası 103 Düello 106 Sonraki Bölümde 109 vii 1 Neden Ruby? 2 Ruby Kurulumu 5 Windows ta Ruby Kurulumu 5 Linux ve Mac OS ta Ruby Kurulumu 6 Doğru Geliştirme Ortamının Seçimi 6 Diğer Ruby Uyarlamaları 9 Örnek Kodlar Hakkında 10 İnternet Adresi

Detaylı

Veritabanı. SQL (Structured Query Language)

Veritabanı. SQL (Structured Query Language) Veritabanı SQL (Structured Query Language) SQL (Structured Query Language) SQL, ilişkisel veritabanlarındaki bilgileri sorgulamak için kullanılan dildir. SQL, bütün kullanıcıların ve uygulamaların veritabanına

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ı

Veri Yapıları. Amaçlar: Temel Veri Yapılarını Tanımlamalı Veri Yapılarını Veri Modeli ve Türlerini Öğreneceksiniz. İçindekiler:

Veri Yapıları. Amaçlar: Temel Veri Yapılarını Tanımlamalı Veri Yapılarını Veri Modeli ve Türlerini Öğreneceksiniz. İçindekiler: Veri Yapıları Amaçlar: Temel Veri Yapılarını Tanımlamalı Veri Yapılarını Veri Modeli ve Türlerini Öğreneceksiniz İçindekiler: Giriş Temel Veri Yapıları Tanımlamalı Veri Yapıları Veri Modeli ve Türleri

Detaylı

BÖLÜM 3 OPERAT A ÖRLER - 19 -

BÖLÜM 3 OPERAT A ÖRLER - 19 - BÖLÜM 3 OPERATÖRLER - 19 - 3.1 Operatörler Hakkında Yukarıdaki örnekleri birlikte yaptıysak = işaretini bol bol kullandık ve böylece PHP'nin birçok operatöründen biriyle tanıştık. Buna PHP dilinde "atama

Detaylı

Mantıksal (Logic) Operatörler

Mantıksal (Logic) Operatörler Mantıksal (Logic) Operatörler Bilgisayar dillerinin hemen hepsinde, program akışını kontrol edebilmek ve yönlendirebilmek için mantıksal operatörler kullanılır. Java dilinde kullanılan mantıksal operatörler

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ı

2 PYTHON A GIRIŞ 13 PyCharm İle Python Projesi Oluşturma 15 Projenin Çalıştırılması 18 İlk Python Programımız 19 Açıklama Satırları 21

2 PYTHON A GIRIŞ 13 PyCharm İle Python Projesi Oluşturma 15 Projenin Çalıştırılması 18 İlk Python Programımız 19 Açıklama Satırları 21 İÇİNDEKİLER VII İÇİNDEKİLER 1 PYTHON 1 Neden Python? 2 Python Sürümleri 2 Python Kurulumu 3 Windows Üzerinde Python 3 Ubuntu Üzerinde Python 6 Komut Satırında Python Çalıştırma 6 Windows komut istemi üzerinde

Detaylı

MATM 133 MATEMATİK LOJİK. Dr. Doç. Çarıyar Aşıralıyev

MATM 133 MATEMATİK LOJİK. Dr. Doç. Çarıyar Aşıralıyev MATM 133 MATEMATİK LOJİK Dr. Doç. Çarıyar Aşıralıyev 3.KONU Kümeler Teorisi; Küme işlemleri, İkili işlemler 1. Altküme 2. Evrensel Küme 3. Kümelerin Birleşimi 4. Kümelerin Kesişimi 5. Bir Kümenin Tümleyeni

Detaylı

Toplama işlemi için bir ikili operatör olan artı işareti aynı zamanda tekli operatör olarak da kullanılabilir.

Toplama işlemi için bir ikili operatör olan artı işareti aynı zamanda tekli operatör olarak da kullanılabilir. www.csharpturk.net Türkiye nin C# Okulu Yazar Yunus Özen Eposta yunus@yunus.gen.tr Tarih 08.04.2006 Web http://www.yunusgen.tr ARİTMETİK OPERATÖRLER VE KULLANIM ŞEKİLLERİ Bilgisayarlar yapıları gereği,

Detaylı

Ders 4: Diziler (Arrays( Arrays) barisgokce.com

Ders 4: Diziler (Arrays( Arrays) barisgokce.com Ders 4: Diziler (Arrays( Arrays) Hazırlayan : Öğr. Grv.. Barış GÖKÇE Đletişim im : www.barisgokce barisgokce.com Diziler Aynı tipteki bir veri gurubunun bir değişken içinde saklanmasıdır. Veriler Hafızada

Detaylı

İlgili Konular: Object.equals(java.lang.Object), Object.hashCode(), rehash(), Collection, Map, HashMap, TreeMap, Serialized Form

İlgili Konular: Object.equals(java.lang.Object), Object.hashCode(), rehash(), Collection, Map, HashMap, TreeMap, Serialized Form Class Hashtable java.util Class Hashtable java.lang.object java.util.dictionary java.util.hashtable Kılgıladığı Arayüzler: Serializable, Cloneable, Map Altsınıfları: Properties, UIDefaults

Detaylı

ÜNİT E ÜNİTE KONTROL DEYİMLERİ KARAR YAPILARI. IF Deyimi GİRİŞ

ÜNİT E ÜNİTE KONTROL DEYİMLERİ KARAR YAPILARI. IF Deyimi GİRİŞ GİRİŞ KARAR YAPILARI Herhangi bir olayın gerçekleşmesinin bir veya birkaç şarta bağı olduğu durumlar vardır. Ayrıca bir şartın gerçekleşmesi durumunda meydana gelecek bir veya birden çok olay söz konusu

Detaylı

Üst Düzey Programlama

Üst Düzey Programlama Üst Düzey Programlama JSP Üst Düzey Programlama-ders04/ 1 JSP JSP durağan HTML ile dinamik oluşturulan içeriği birleştirmeyi sağlar. Bir web sayfası tasarlama programı ile web sayfasını tasarlar daha sonra

Detaylı

ORACLE DA KÜRSÖRLER. Gerekli sistem değişkenleri

ORACLE DA KÜRSÖRLER. Gerekli sistem değişkenleri ORACLE DA KÜRSÖRLER Gerekli sistem değişkenleri SQL%ISOPEN : kürsör açıksa değeri true, kapalı ise değeri false SQL%ROWCOUNT : sql ile işlem gören kayıt sayısı bulunur. SQL%FOUND : sql işlemi sonucu, en

Detaylı

Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM Veri Yapıları Dersi. Proje#2

Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM Veri Yapıları Dersi. Proje#2 Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM 2116- Veri Yapıları Dersi Proje#2 İkili Arama Ağacı, Heap, Hash Tabloları ve Çizgeler Veriliş Tarihi: 24.04.2018 Son Teslim Tarihi: 25.05.2018

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ı

String. 13.1 String İşlemleri

String. 13.1 String İşlemleri 13 String 13.1 String İşlemleri Bilgisayara giriş ve çıkışlar, bizim anlayacağımız karakterlerle yapılır; yani kullandığımız alfabenin karakterlerinden oluşan array lerdir. Onlara string diyoruz. Farklı

Detaylı

Bir C programı C fonksiyonlarından oluşur. Bunlar arasında main() adı verilen ana fonksiyon daima olmalıdır. C fonksiyonları programı oluşturan

Bir C programı C fonksiyonlarından oluşur. Bunlar arasında main() adı verilen ana fonksiyon daima olmalıdır. C fonksiyonları programı oluşturan 2 C Programlarının Yapısı Bir C programı C fonksiyonlarından oluşur. Bunlar arasında main() adı verilen ana fonksiyon daima olmalıdır. C fonksiyonları programı oluşturan yapıtaşlarıdır. Bir C programının,

Detaylı

Dış Kurum Entegrasyonları TURKPOS API. Yardım Dokümanı

Dış Kurum Entegrasyonları TURKPOS API. Yardım Dokümanı TURK ELEKTRONİK PARA A.Ş Dış Kurum Entegrasyonları TURKPOS API Yardım Dokümanı Sürüm 1.5 1 / 16 1. SÜRÜM GEÇMİŞİ Sürüm Tarih Hazırlayan Açıklama 1.0 27.05.2015 Hüseyin SARI Doküman oluşturuldu. 1.1 12.10.2015

Detaylı

Mikroişlemcilerde Aritmetik

Mikroişlemcilerde Aritmetik Mikroişlemcilerde Aritmetik Mikroişlemcide Matematiksel Modelleme Mikroişlemcilerde aritmetik işlemler (toplama, çıkarma, çarpma ve bölme) bu iş için tasarlanmış bütünleşik devrelerle yapılır. Bilindiği

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ı

STORED PROCEDURE LER (Saklı Yordamlar)

STORED PROCEDURE LER (Saklı Yordamlar) STORED PROCEDURE LER (Saklı Yordamlar) Eskiden yazılımlar, sadece prosedür denilen kod parçalarından oluşurdu. Her prosedür belli bir işlevi yerine getirmek için yazılmış kod parçalarıdır. Mesela, 2 sayı

Detaylı

KAYITLAR BÖLÜM 14. 14.1 Giriş

KAYITLAR BÖLÜM 14. 14.1 Giriş BÖLÜM 14 KAYITLAR 14.1 Giriş Bir kayıt, bir nesneyle ilgili verilerin bir araya getirilmesidir. Öğrenci kayıtları, taşıt kayıtları, stok kayıtları günlük yaşantımızda karşılaştığımız yaygın kayıtlardır.

Detaylı

Access e Nasıl Ulaşılır. Araç çubuklarını yeniden düzenlemek için Görünüm komutunun Araç çubukları seçeneği kullanılır.

Access e Nasıl Ulaşılır. Araç çubuklarını yeniden düzenlemek için Görünüm komutunun Araç çubukları seçeneği kullanılır. 1 Access e Nasıl Ulaşılır Araç çubuklarını yeniden düzenlemek için Görünüm komutunun Araç çubukları seçeneği kullanılır. 2 Çeşitli araç çubukları arasında seçim yapılarak pencere üzerine eklenebilir. Bunun

Detaylı

Python Programlama Dili

Python Programlama Dili Python Programlama Dili 2. Python da Koşul ifadeleri Python da koşullu durumların nasıl oluşturulacağını bu bölümde öğreneceğiz. Bu iş için kullanacağımız üç tane deyim var: if, else ve elif 2.1. if If

Detaylı

Dizi türündeki referanslar, dizi nesnelerine bağlanmaktadır. Dizi referansları tanımlamak bu dizinin hemen kullanılacağı anlamına gelmez...

Dizi türündeki referanslar, dizi nesnelerine bağlanmaktadır. Dizi referansları tanımlamak bu dizinin hemen kullanılacağı anlamına gelmez... Javada Diziler Java da diziler nesnedir; içerisinde belirli sayıda eleman bulunur. Eğer bu sayı sıfır ise, dizi boş demektir. Dizinin içerisindeki elemanlara eksi olmayan bir tam sayı ile ifade edilen

Detaylı

Merge Sort Bireşen Sıralama

Merge Sort Bireşen Sıralama Merge Sort Bireşen Sıralama Merge sort (bireşen sıralama), diziyi ardışık olarak en küçük alt dizilerine kadar yarılayan sonra da onları sıraya koyarak bireştiren özyineli bir algoritmadır. Yarılama işlemi

Detaylı

T I M U R K A R A Ç AY - H AY D A R E Ş C A L C U L U S S E Ç K I N YAY I N C I L I K A N K A R A

T I M U R K A R A Ç AY - H AY D A R E Ş C A L C U L U S S E Ç K I N YAY I N C I L I K A N K A R A T I M U R K A R A Ç AY - H AY D A R E Ş C A L C U L U S S E Ç K I N YAY I N C I L I K A N K A R A Contents Bibliography 9 Index 13 CONTENTS 5 0.1 Doğru, Düzlem, Uzay Bu derste sık sık doğru, düzlem ve

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ı

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 Kodlarına Yorum Satırı Eklemek Java Paket Kavramı Java Kütüphane Kavramı Konsoldan Veri Çıkışı ve JOPtionPane Kütüphanesi JOptionPane Kütüphanesi Kullanarak

Detaylı

Ruby Nedir? 1.1 Amaçlar. 1.2 Ruby nin Yapısal Sıradüzeni

Ruby Nedir? 1.1 Amaçlar. 1.2 Ruby nin Yapısal Sıradüzeni 1 Ruby Nedir? 1.1 Amaçlar Bu kitabın asıl amacı, Ruby on Rails Web Framework u ile web programcılığı yapacaklara gerekli olan Ruby bilgilerini vermektir. Bunu yaparken, kitap okura şu becerileri de kazandıracaktır:

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 Yapılar ve Birlikler enum Deyimi

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ı

Program AkıĢ Kontrol Yapıları

Program AkıĢ Kontrol Yapıları C PROGRAMLAMA Program AkıĢ Kontrol Yapıları Normal Ģartlarda C dilinde bir programın çalıģması, komutların yukarıdan aģağıya doğru ve sırasıyla iģletilmesiyle gerçekleģtirilir. Ancak bazen problemin çözümü,

Detaylı

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 1. Bölüm C# Programlamaya Giriş

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 1. Bölüm C# Programlamaya Giriş Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 1. Bölüm C# Programlamaya Giriş C Programlama Dr. Serkan DİŞLİTAŞ 1.1. C# ile Program Geliştirme.Net Framework, Microsoft firması tarafından

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ı

TURKCELL HİZMETLERİ. Kullanım Bilgileri. LOGO Kasım 2014

TURKCELL HİZMETLERİ. Kullanım Bilgileri. LOGO Kasım 2014 TURKCELL HİZMETLERİ Kullanım Bilgileri LOGO Kasım 2014 İçindekiler TURKCELL HİZMETLERİ... 3 Online Turkcell Fatura Aktarımı... 4 Fatura Eşleştirme Tabloları... 5 Online Fatura Aktarımları... 6 Toplu Mesaj

Detaylı

Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı

Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı Internet Programming II Elbistan Meslek Yüksek Okulu 2015 2016 Bahar Yarıyılı Öğr. Gör. Murat KEÇECĠOĞLU 21 Mar. 2016 PHP de dizi Değişkenler Buraya kadar yaptığımız uygulamalarda değişkenlerin tek değer

Detaylı

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı Öğr. Gör. Cansu AYVAZ GÜVEN NESNE TABANLI PROGRAMLAMA Java Değişkenler ve Veri Tipleri Operatörler JAVA Java Java SUN bilgisayar şirketince

Detaylı

T I M U R K A R A Ç AY - H AY D A R E Ş C A L C U L U S S E Ç K I N YAY I N C I L I K A N K A R A

T I M U R K A R A Ç AY - H AY D A R E Ş C A L C U L U S S E Ç K I N YAY I N C I L I K A N K A R A T I M U R K A R A Ç AY - H AY D A R E Ş C A L C U L U S S E Ç K I N YAY I N C I L I K A N K A R A Contents 1 Denklik Bağıntıları 5 Bibliography 13 1 Denklik Bağıntıları 1 1denklik 1.1 Eşitlik Günlük

Detaylı

Bir dizinin boyutları sabittir ve kullanılmadan önce belirlenmelidir. Dizi boyutunu belirlemek için başka bir değişkende kullanabilirsiniz.

Bir dizinin boyutları sabittir ve kullanılmadan önce belirlenmelidir. Dizi boyutunu belirlemek için başka bir değişkende kullanabilirsiniz. C# da Diziler Diziler için aynı tipteki verilerin tutulduğu bir koleksiyon diyebiliriz. Örneğin integer verinin bir yığın şeklinde tutulması için dizileri kullanırız. C# da diziler referans tipinde değişkenlerdendir.

Detaylı

VERİ TABANI UYGULAMALARI

VERİ TABANI UYGULAMALARI V. Ünite VERİ TABANI UYGULAMALARI A. BAŞLANGIÇ B. BİR VERİ TABANI YARATMA C. FORMLARIN KULLANIMI D. BİLGİYE ERİŞİM E. RAPORLAMA 127 A BAŞLANGIÇ Konuya Hazırlık 1. Veri tabanı programları hangi amaç için

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ı

MATEMATİK. Doç Dr Murat ODUNCUOĞLU

MATEMATİK. Doç Dr Murat ODUNCUOĞLU MATEMATİK Doç Dr Murat ODUNCUOĞLU Mesleki Matematik 1 TEMEL KAVRAMLAR RAKAM Sayıları yazmak için kullandığımız işaretlere rakam denir. Sayıları ifade etmeye yarayan sembollere rakam denir. Rakamlar 0,1,2,3,4,5,6,7,8,9

Detaylı

Sayı sistemleri-hesaplamalar. Sakarya Üniversitesi

Sayı sistemleri-hesaplamalar. Sakarya Üniversitesi Sayı sistemleri-hesaplamalar Sakarya Üniversitesi Sayı Sistemleri - Hesaplamalar Tüm sayı sistemlerinde sayılarda işaret kullanılabilir. Yani pozitif ve negatif sayılarla hesaplama yapılabilir. Bu gerçek

Detaylı

KÜMELER VE MANTIK KESİLİ MATEMATİKSEL YAPILAR

KÜMELER VE MANTIK KESİLİ MATEMATİKSEL YAPILAR KÜMELER VE MANTIK KESİLİ MATEMATİKSEL YAPILAR Kümeler Koşullu ve Mantıksal Denklik Kümeler Kümeler Ayrık Kümeler De-Morgan Kuralı Z (Zahlen; alm.) tamsayılar kümesi Z negatif tamsayılar kümesi, Z nonneg

Detaylı

VERİ TABANI YÖNETİM SİSTEMLERİ II. 9. FORMLAR ve ORACLE FORMS PROGRAMINDA FORM OLUŞTURMA

VERİ TABANI YÖNETİM SİSTEMLERİ II. 9. FORMLAR ve ORACLE FORMS PROGRAMINDA FORM OLUŞTURMA BÖLÜM 9 9. FORMLAR ve ORACLE FORMS PROGRAMINDA FORM OLUŞTURMA Bu bölümde Oracle Forms programı ile örnek bir form hazırlanması anlatılacaktır. 9.1 ORACLE FORMS ile FORM Oluşturma Nasıl Delphi programının

Detaylı

Ardışık Veri Tipleri. Prof.Dr. Bahadır AKTUĞ JFM212 Python ile Mühendislik Uygulamaları. *Kaynakça bölümünde verilen kaynaklardan derlenmiştir.

Ardışık Veri Tipleri. Prof.Dr. Bahadır AKTUĞ JFM212 Python ile Mühendislik Uygulamaları. *Kaynakça bölümünde verilen kaynaklardan derlenmiştir. Ardışık Veri Tipleri Prof.Dr. Bahadır AKTUĞ JFM212 Python ile Mühendislik Uygulamaları *Kaynakça bölümünde verilen kaynaklardan derlenmiştir. Ardışık Veri Tipleri Ardışık veri tipleri, Python programlarında

Detaylı

AKIŞ ŞEMASI AKIŞ ŞEMASI AKIŞ ŞEMASI ŞEKİLLERİ GİRİŞ

AKIŞ ŞEMASI AKIŞ ŞEMASI AKIŞ ŞEMASI ŞEKİLLERİ GİRİŞ GİRİŞ AKIŞ ŞEMASI Bir önceki ünitede algoritma, bilgisayarda herhangi bir işlem gerçekleştirmeden ya da program yazmaya başlamadan önce gerçekleştirilmesi düşünülen işlemlerin belirli bir mantık ve plan

Detaylı

VERİTABANI. SQL (Structured Query Language)

VERİTABANI. SQL (Structured Query Language) VERİTABANI SQL (Structured Query Language) SQL'de Gruplama Bir tablonun satırları gruplara ayrılarak fonksiyonların bunlara uygulanması mümkündür. Gruplara ayırmak için SELECT deyimi içerisinde GROUP BY

Detaylı

VERİ YAPILARI. Yrd. Doç. Dr. Murat GÖK Bilgisayar Mühendisliği Bölümü YALOVA ÜNİVERSİTESİ HASH TABLOLARI.

VERİ YAPILARI. Yrd. Doç. Dr. Murat GÖK Bilgisayar Mühendisliği Bölümü YALOVA ÜNİVERSİTESİ HASH TABLOLARI. VERİ YAPILARI HASH TABLOLARI Yrd. Doç. Dr. Murat GÖK Bilgisayar Mühendisliği Bölümü YALOVA ÜNİVERSİTESİ muratgok@gmail.com Hash tabloları Hash tablo veri yapısı ile veri arama, ekleme ve silme işlemleri

Detaylı

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 6. Yrd.Doç.Dr.Hacer Karacan

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 6. Yrd.Doç.Dr.Hacer Karacan NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 6 Yrd.Doç.Dr.Hacer Karacan İçerik UML Yapı Diyagramları Eylem Diyagramları Etkileşim Diyagramları UML Diyagramlar UML görsel olarak modelleme için birçok diyagrama sahiptir.

Detaylı

sayıların kümesi N 1 = { 2i-1: i N } ve tüm çift doğal sayıların kümesi N 2 = { 2i: i N } şeklinde gösterilebilecektir. Hiç elemanı olmayan kümeye

sayıların kümesi N 1 = { 2i-1: i N } ve tüm çift doğal sayıların kümesi N 2 = { 2i: i N } şeklinde gösterilebilecektir. Hiç elemanı olmayan kümeye KÜME AİLELERİ GİRİŞ Bu bölümde, bir çoğu daha önceden bilinen incelememiz için gerekli olan bilgileri vereceğiz. İlerde konular işlenirken karşımıza çıkacak kavram ve bilgileri bize yetecek kadarı ile

Detaylı