Bölüm 10. Altprogramları Uygulamak
|
|
|
- Hazan Ünsal
- 8 yıl önce
- İzleme sayısı:
Transkript
1 Bölüm 10 Altprogramları Uygulamak
2 Altprogramları Uygulamak -- Başlıklar Çağrıların genel anlam analizi Basit altprogramların gerçekleştirilmesi Yığıt dinamik yerel değişkenlerle altprogramları uygulamak İç içe altprogramlar Bloklar Dinamik kapsamlı uygulamalar Pamukkale Üniversitesi - Tuğrul Yılmaz 2
3 Hadi bütün vücüt fonksiyonlarını durdurup yeniden başlatalım Bilgisayar mühendisleri neden cerrah olamaz Pamukkale Üniversitesi - Tuğrul Yılmaz 3
4 Çağrıların ve döndükleri değerlerin genel anlam analizi Bir dilde altprogramların çağrılması ve dönmesi işlemlerine altprogram bağlanması (subprogram linkage) denir. Parametrelerin nasıl alt programa geçileceği belirlenmelidir. Çağıranın değerleri korunmalıdır. Alt program yerel değişkenleri statik değilse yerel olarak saklanmalıdır. Dönüşte çağıranın doğru noktasına, doğru değerlerle dönülmesi temin edilmelidir. İç içe altprogramlar varsa, yerel olmayan değişkenlere erişim sağlanmalıdır. Pamukkale Üniversitesi - Tuğrul Yılmaz 4
5 "Basit" altprogramların gerçekleştirilmesi Implementing Simple Subprograms Basit altprogramdan kastımız, bütün yerel değişkenleri statik olan ve iç içe çağrılamayan altprogramlar (örn. Fortran I). Çağrı anlam analizi: 1. Çağıran programın çalışma durumunu sakla (Save the execution status of the caller). 2. Parametre geçme işlemlerini yap (Carry out the parameter-passing process). 3. Dönüş adresini çağrılana geç (Pass the return address to the callee) 4. Kontrolü çağrılana ver (Transfer control to the callee). Pamukkale Üniversitesi - Tuğrul Yılmaz 5
6 "Basit" altprogramların gerçekleştirilmesi Implementing Simple Subprograms Dönüş analizi (Return Semantics): 1. Eğer sonucu değeri ile geç (pass-by-value-result) parametreler kullanılmışsa değerlerinin gerçek parametrelere geçir. 2. Eğer dönen fonksiyonsa, döneceği değeri çağıranın bulması gereken yere yerleştir. 3. Çağıranın çalışma ortamını yeniden yapılandır. 4. Kontrolü çağırana geri ver. Pamukkale Üniversitesi - Tuğrul Yılmaz 6
7 "Basit" altprogramların gerçekleştirilmesi Implementing Simple Subprograms Gerekli depolama: Çağıran durum bilgileri, parametreleri, dönüş adresi ve döneceği değer (eğer fonksiyonsa). Altprogramın çalışan kod olmayan, altprogram verilerinin tutulduğu kısmının biçimi veya yerleşim planına etkinleştirme kaydı (activation record) denir. Bu kaydın sonraki sayfalarda göreceğimiz gibi belli bir formatı olur. Altprogram çağırıldığı zaman belli değerlerle doldurulmuş haline somutlaşan gerçekleşme kaydı denir (instance of activation record). Pamukkale Üniversitesi - Tuğrul Yılmaz 7
8 "Basit" altprogramların etkinleştirme kaydı An Activation Record for Simple Subprograms Yerel değişkenler Parametreler Dönüş adresi Pamukkale Üniversitesi - Tuğrul Yılmaz 8
9 "Basit" altprogramların etkinleştirme kaydı ve kodu Etkinleştirme kaydı verileri statik bellekte statik olarak saklanıyor. Bu nedenle somutlaşmış tek etkinleştirme kaydı olabilir. Bu nedenle kullanım olarak kolay, erişim daha hızlı, ancak özyinelemeyi desteklemez. İlk Fortran derleyicileri bu tip etkinleştirme kaydı tutuyordu. Pamukkale Üniversitesi - Tuğrul Yılmaz 9
10 Altprogramları yığıt dinamik yerel değişkenlerle gerçekleştirmek Implementing Subprograms with Stack-Dynamic Local Variables Daha karmaşık çünkü: Derleyici altprogram yerel değişkenlerine yığıt bellekte örtülü bellek tahsis ve geri alma işlemleri için kod hazırlamalıdır. Özyineleme desteklenebildiğinden altprogramın aynı anda birden çok peş peşe çağırılabilmesini destekler, bu da birden çok etkinleştirme kodu somutlaşmasına neden olur. Bazı dillerde yerel dizilimlerin (local arrays) boyu çağrı sırasında belirlendiğinden, etkinleştirme kodunun içinde yer alan bu tip değişkenler etkinleştirme kodunun boyunun dinamik olmasını gerektirir. Pamukkale Üniversitesi - Tuğrul Yılmaz 11
11 Tipik Altprogramları yığıt dinamik yerel değişkenlerle gerçekleştirme etkinleştirme kaydı Yerel değişkenler Parametreler Yığıt Bellek başı Dinamik link Dönüş adresi Pamukkale Üniversitesi - Tuğrul Yılmaz 12
12 Altprogramları yığıt dinamik yerel değişkenlerle gerçekleştirmek Etkinleştirme kaydı formatı statik ve fakat boyutları dinamiktir. "dynamic link" çağıran programın etkinleştirme kaydının başını gösterir. Etkinleştirme kaydı dinamik olarak altprogram çağırıldığında üretilir. Yerel değişkenler Parametreler Yığıt Bellek başı Dinamik link Dönüş adresi Pamukkale Üniversitesi - Tuğrul Yılmaz 13
13 C fonksiyonu örneği void sub(float total, int part) { int list[5]; float sum; } [4] [3] [2] [1] [0] Pamukkale Üniversitesi - Tuğrul Yılmaz 14
14 Özyinelemesiz C programı örneği Program için yığıt bellek içeriği (Stack Contents For Program) 3 void A(int x) { int y;... 2 C(y);... } void B(float r){ int s, t;... A(s);... } void C(int q) {... } void main() { float p;... B(p);... } 1 3 main B B A A C 1 2 ARI = Etkinleştirme kaydı (activation record instance) Pamukkale Üniversitesi - Tuğrul Yılmaz 15
15 Altprogramların gerçekleştirimi Herhangi bir anda yığıttaki dinamik linklerin toplamına çağrı zinciri (call chain) denir. Yerel değişkenlere etkinleştirme kaydının (activation record) başlangıcına göre bağıl konumlarından (offset) erişilir. Buna yerel bağıl konum denir (local_offset). Yerel değişkenlerin yerel bağıl konumları derleyici tarafından belirlenir. Pamukkale Üniversitesi - Tuğrul Yılmaz 16
16 Özyineleme Bir önceki örnekte kullanılan etkinleştirme kaydı (activation record) özyinelemeli fonksiyonlarda da kullanılabilir: int factorial(int n) { if (n <= 1) return 1; else return (n * factorial(n - 1)); } void main() { int value; value = factorial(3); } Pamukkale Üniversitesi - Tuğrul Yılmaz 17
17 factorial için etkinleştirme kaydı Fonksiyonun değeri Parametre: n Dinamik link Return to factorial Fonksiyonun değeri Parametre: n Dinamik link Return to factorial Fonksiyonun değeri Parametre: n Dinamik link Return to main Lokal değişken - value ???? Yığıt bellek tepesi Fonksiyonun değeri Parametre Dinamik link Dönüş adresi int factorial(int n) { if (n <= 1) return 1; else return (n * factorial(n - 1)); } void main() { int value; value = factorial(3); } n Pamukkale Üniversitesi - Tuğrul Yılmaz 18
18 İçiçe altprogramlar(nested subprograms) Bazı programlama dilleri (Fortran 95, Ada, JavaScript) yığıt dinamik yerel değişkenler kullanır (use stack-dynamic local variables) ve içiçe altprogramlara izin verirler. Kural: yerel olarak erişilmeyen tüm değişkenler yığıt bellekte aktif bir etkinleştirme kaydı içinde bulunurlar. Yerel olmayan değişken referansı bulma işlemi: 1. Doğru etkinleştirme kaydını bul. 2. Etkinleştirme kaydında değişkenin bağıl konumunu bul. Pamukkale Üniversitesi - Tuğrul Yılmaz 19
19 Yerel olmayan değişken referansını bulma işlemi Etkinleştirme kaydı içinde bağıl konumu bulmak kolay. Doğru etkinleştirme kaydını bulmak: Statik anlam kuralları gereği yerel olarak erişilmeyen tüm değişkenler yığıt bellekte aktif bir etkinleştirme kaydı içinde bulunurlar. Pamukkale Üniversitesi - Tuğrul Yılmaz 20
20 Yerel olmayan değişken referansını bulma işlemi 1. teknik Statik zincir (Static Chains) Belli etkinleştirme kayıtlarını birleştiren statik link zincirine statik zincir (static chain) denir. Bir altprogramın etkinleştirme kaydını ebeveyninin etkinleştirme kaydına bağlayan linke statik link (static link) denir. Statik zincir bir etkinleştirme kaydını yığıt bellekte çağıran altprogramların etkinleştirme kayıtlarına bağlar. Pamukkale Üniversitesi - Tuğrul Yılmaz 22
21 1. teknik Statik zincir (Static Chains) Yerel olmayan değişkenin tanımlandığı yeri bulmak için: Statik zincir üzerinden etkinleştirme kayıtlarında değişkenin adı aranır. Etkinleştirme kaydının statik zincirdeki derinliğine statik_derinlik (static_depth) denir. Pamukkale Üniversitesi - Tuğrul Yılmaz 23
22 1. teknik Statik zincir (Static Chains) main statik_derinlik = 0 A statik_derinlik = 1 B statik_derinlik = 2 C statik_derinlik = 1 Pamukkale Üniversitesi - Tuğrul Yılmaz 24
23 1. teknik Statik zincir (Static Chains) Tanım: zincir_bağılkonum (chain_offset) veya içiçe_bağılkonum (nesting_depth ): Bir değişkenin referans verildiği altprogramın statik derinliği ile tanımlandığı altprogramın statik derinliği arasındaki fark. Bir referans aşağıdaki çift ile gösterilebilir: (zincir_bağılkonum, yerel_bağılkonum) burada yerel_bağılkonum (local_offset), değişkenin bulunduğu etkinleştirme kaydındaki bağıl konumudur. Pamukkale Üniversitesi - Tuğrul Yılmaz 25
24 1. teknik Statik zincir (Static Chains) Örnek Pascal Programı program MAIN_2; var X : integer; procedure BIGSUB; var A, B, C : integer; procedure SUB1; var A, D : integer; begin { SUB1 } A := B + C; < end; { SUB1 } procedure SUB2(X : integer); var B, E : integer; procedure SUB3; var C, E : integer; begin { SUB3 } SUB1; E := B + A: < end; { SUB3 } begin { SUB2 } SUB3; A := D + E; < end; { SUB2 } begin { BIGSUB } SUB2(7); end; { BIGSUB } begin BIGSUB; end. { MAIN_2 } Pamukkale Üniversitesi - Tuğrul Yılmaz 26
25 1. teknik Statik zincir (Static Chains) Örnek Pascal Programı MAIN_2 için çağrılma sıralaması MAIN_2 BIGSUB BIGSUB SUB2 SUB2 SUB3 SUB3 SUB1 program MAIN_2; var X : integer; procedure BIGSUB; var A, B, C : integer; procedure SUB1; var A, D : integer; begin { SUB1 } A := B + C; < end; { SUB1 } procedure SUB2(X : integer); var B, E : integer; procedure SUB3; var C, E : integer; begin { SUB3 } SUB1; E := B + A: < end; { SUB3 } begin { SUB2 } SUB3; A := D + E; < end; { SUB2 } begin { BIGSUB } SUB2(7); end; { BIGSUB } begin BIGSUB; end. { MAIN_2 } Pamukkale Üniversitesi - Tuğrul Yılmaz 27
26 1. pozisyonda yığıt içeriği program MAIN_2; var X : integer; procedure BIGSUB; var A, B, C : integer; procedure SUB1; var A, D : integer; begin { SUB1 } A := B + C; < end; { SUB1 } procedure SUB2(X : integer); var B, E : integer; procedure SUB3; var C, E : integer; begin { SUB3 } SUB1; E := B + A: < end; { SUB3 } begin { SUB2 } SUB3; A := D + E; < end; { SUB2 } begin { BIGSUB } SUB2(7); end; { BIGSUB } begin BIGSUB; end. { MAIN_2 } Pamukkale Üniversitesi - Tuğrul Yılmaz 28
27 Örnek Pascal Programı program MAIN_2; var X : integer; procedure BIGSUB; var A, B, C : integer; procedure SUB1; var A, D : integer; begin { SUB1 } A := B + C; < end; { SUB1 } procedure SUB2(X : integer); var B, E : integer; procedure SUB3; var C, E : integer; begin { SUB3 } SUB1; E := B + A: < end; { SUB3 } begin { SUB2 } SUB3; A := D + E; < end; { SUB2 } begin { BIGSUB } SUB2(7); end; { BIGSUB } begin BIGSUB; end. { MAIN_2 } 1. pozisyon SUB1: MAIN_2->BIGSUB->SUB2->SUB3->SUB1 A (0, 3) (2-2=0) B - (1, 4) (2-1=1) C -(1, 5)(2-1=1) 2. pozisyon SUB3: MAIN_2->BIGSUB->SUB2->SUB3 E -(0, 4)(3-3=0) B -(1, 4)(3-2=1) A -(2, 3)(3-1=2) 3. pozisyon SUB2: MAIN_2->BIGSUB->SUB2 A - (1, 3) (2-1=1) D - an error (sub1 içinde tanımlı) E -(0, 5) (2-2=0) (zincir_bağılkonum, yerel_bağılkonum) Pamukkale Üniversitesi - Tuğrul Yılmaz 29
28 1. teknik Statik zincir (Static Chains) Statik zincir uygulaması Altprogram çağrıldığı zaman (altprogram parametre ve isimle geçilen parametre olmadığını varsayarak) : Gerçekleştirme kaydı somutlaşan örneğini (instance) hazırla. Eski yığıt bellek tepesine bir dinamik link. Statik link, statik ebeveynin en son yaratılmış etkinleştirme kaydını gösterir. İki metot: 1. Statik ebeveynin ilk etkinleştirme kaydını bulmak için dinamik zincirde ara. Kolay fakat yavaş. Pamukkale Üniversitesi - Tuğrul Yılmaz 31
29 1. teknik Statik zincir (Static Chains) 2. Derleyici, derleme esnasında çağıranla, çağrılan arasındaki derinliği (zincir bağıl konum) hesaplar ve daha sonra program yürütülürken kullanılmak üzere saklar. Örneğin MAIN_2 nin yığıt içeriğine bakarsak: SUB1, SUB3'ün içinden çağırılırken derleyici SUB3'ün SUB1'in tanımlandığı altprograma (Bigsub) göre derinliğinin iki olduğu bilgisini programa yerleştirir. Program çalışırken bu noktada yerleştirilen bilgi kullanılarak etkinleştirme kaydına olan statik link kurulur. Pamukkale Üniversitesi - Tuğrul Yılmaz 32
30 1. teknik Statik zincir (Static Chains) Statik zincir metodunun değerlendirilmesi Sorunlar: 1. Yerel olmayan referanslar, özellikle derinlik fazlaysa, yavaş çalışır. Programın performansı düşer. 2. Yerel olmayan referansların kullandığı zaman eşit olmadığından, zamana hassas program yazmak zorlaştığı gibi bunların güncellenmesi de bu zamanlamayı değiştirir. Pamukkale Üniversitesi - Tuğrul Yılmaz 33
31 İçiçe altprogramlar 2. Teknik - ekranlar Fikir: Statik linkleri "ekran" (display) denilen ayrı bir yığıta (stack) yerleştir. Ekrandaki veriler etkinleştirme kodlarına (activation record) göstericilerdir. Referansları: (ekran_bağılkonum, yerel_bağılkonum) (display_offset, local_offset) olarak gösterebiliriz. Burada ekran_bağılkonum değeri zincir_bağılkonumla aynıdır. Referansların işleyişi: ekran_bağılkonum'u kullanarak, aranılan değişkenin doğru etkinleştirme kaydının göstericisini bul. yerel_bağılkonum değerini kullanarak, etkinleştirme kaydı içinde aranılan değişkeni bul. Pamukkale Üniversitesi - Tuğrul Yılmaz 34
32 Ekranlar (Displays) Ekran uygulaması (altprogram parametre ve isimle geçilen parametre olmadığını varsayarak) : Not: ekran_bağılkonum'u sadece etkinleştirme kaydı türetilmekte olan altprogramın statik derinliğine bağlıdır. Bu altprogramın statik derinliğidir. Belli bir anda çalışan altprogramın statik derinliği k ise, ekranda k+1 gösterici olur (k=0 ana program). Pamukkale Üniversitesi - Tuğrul Yılmaz 35
33 Ekranlar (Displays) Statik derinliği k olan P altprogramını çağırmak için: a. Yeni bir etkinleştirme kaydına k pozisyonundaki ekran göstericisini kopyala. b. Ekranda k pozisyonuna P altprogramının etkinleştirme kaydının göstericisini koy. Çıkışta, etkinleştirme kaydında saklanan ekran göstericisini yerine geri koy. Pamukkale Üniversitesi - Tuğrul Yılmaz 36
Bölüm 10. Altprogramların gerçeklenmesi ISBN 0-0-321-49362-1
Bölüm 10 Altprogramların gerçeklenmesi ISBN 0-0-321-49362-1 10. Bölüm konuları Çağırma / geri dönme semantiği Yığıt-dinamik yerel değişkeni olan altprogramların gerçeklenmesi İçiçe altprogramlar Statik
İ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:
İ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
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
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
Konular. Hafta 5 Veri Tipleri (Devam) BLG339 PROGRAMLAMA DİLLERİ KAVRAMI
BLG339 PROGRAMLAMA DİLLERİ KAVRAMI Hafta 5 Veri Tipleri (Devam) Yrd. Doç. Dr. Melike Şah Direkoğlu Konular Dizi Tipleri Kayıt Tipleri Birleşik Tipler Küme Tipleri İşaretçi ve Referans Tipleri Alındığı
Bölüm 9. Altprogramlar ISBN 0-321-49362-1
Bölüm 9 Altprogramlar ISBN 0-321-49362-1 9. Bölüm konuları Giriş Altprogram temelleri Yerel atıf ortamları (local referencing environments) Parametre geçme yöntemleri Altprogram olan parametreler Çok anlamlı
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
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
Ö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ı,
Ders 6. Bölüm 6: Veri Tipleri (devam)
Ders 6 Bölüm 6: Veri Tipleri (devam) Dizilimler (Arrays) Dizilim bir toplam homojen veri alanıdır. İçindeki her bir elemana ilk elemana göre olan pozisyonuna göre erişilir. Örnek: C: int aa[4][3][7]; sum
Bağlama (Binding) Kavramı
Bağlama (Binding) Kavramı Programlarda yer alan tüm program elemanlarının - örneğin; değişkenler, altprogramlar vb.- çeşitli özellikleri vardır. Değişkenlerin isim, adres, değer gibi çeşitli özelliklerini
ALGORİTMA VE PROGRAMLAMA II
ALGORİTMA VE PROGRAMLAMA II Yrd. Doç. Dr. Deniz KILINÇ [email protected] YZM 1102 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 İşaretçiler ve Diziler Fonksiyon
Bölüm 5. İsimler, Bağlama, Tür Kontrolü ve Kapsam(Etki Alanı) ISBN
Bölüm 5 İsimler, Bağlama, Tür Kontrolü ve Kapsam(Etki Alanı) ISBN 0-321-49362-1 Bölüm 5 Konular Giriş İsimler Değişkenler Bağlama Kavramı Tür Kontrolü Güçlü Yazım Tür Uyumu Kapsam (Etki Alanı) ve Yaşam
Bölüm 5. Adlar(Names), Bağlamalar(Binding s),tip Kontrolleri (Type Checking), ve Etki Alanları ( Scopes) ISBN 0-321-49362-1
Bölüm 5 Adlar(Names), Bağlamalar(Binding s),tip Kontrolleri (Type Checking), ve Etki Alanları ( Scopes) ISBN 0-321-49362-1 Bölüm 5 Konular Giriş Adlar(Names) Değişkenler(Variables) Bağlama Kavramı(The
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
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,
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
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
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
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
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ı
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
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
Bölüm 5. İsimler, Bağlamalar, Tip Kontrolü, Etki Alanları ISBN
Bölüm 5 İsimler, Bağlamalar, Tip Kontrolü, Etki Alanları ISBN 0-321-49362-1 5. bölüm konuları Giriş İsimler Değişkenler Bağlama kavramı Tip kontrolü Kuvvetli tipleme Tip Eşdeğerliği Etki alanı (Scope)
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
PROGRAMLAMAYA GİRİŞ DERS 2
PROGRAMLAMAYA GİRİŞ DERS 2 Program editörde oluşturulur ve diske kaydedilir Tipik Bir C Programı Geliştirme Ortamının Temelleri 1. Edit 2. Preprocess 3. Compile 4. Link 5. Load 6. Execute Önişlemci programı
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
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
Pointers (İşaretçiler)
Pointers (İşaretçiler) Pointers (İşaretçiler) Verilerin bilgisayar hafızasında tutulduğu fiziki alan adres olarak tanımlanabilir. Adres, hem donanımla hem de yazılımla ile ilişkilidir. Donanımsal açıdan
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.
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 [email protected] http://web.karabuk.edu.tr/umitatilla/ Dinamik Bellek Yönetimi Bir program çalıştırıldığında
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
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
10/17/2007 Nesneye Yonelik Programlama 3.1
Procedure-Based Programming in C++ Çoğu gerçek dünya problemleri binlerce kod satırı gerektirir ( MS Windows NT 5.0 25 million dan fazla kod satırından oluşmaktadır). Yazılımın tasarımı, kodlanması ve
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
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ş math Kütüphane Fonksiyonları Çok Parametreyle Fonksiyon Tanımı Fonksiyon
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
Özyineleme (Recursion)
Özyineleme tanımlamaları Özyineleme çağırma Tail özyineleme Nontail özyineleme Dolaylı (Indirect) özyineleme İçiçe (Nested) özyineleme Yrd.Doç.Dr. M. Ali Akcayol Kendi kendisini doğrudan veya dolaylı olarak
BİLİNİRLİK ALANI ve ÖMÜR, KONTROL DEYİMLERİ
BİLİNİRLİK ALANI ve ÖMÜR, KONTROL DEYİMLERİ Kaynak: C ve Sistem Programcıları Derneği Kurs notu Öğr.Gör.Dr. Mahmut YALÇIN Bilinirlik Alanı Bilinirlik alanı (scope), bir ismin tanınabildiği program aralığıdır.
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
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
İfadeler bir programlama dilinde hesaplamaları belirtmede temel araçtır. İfadelerin değerlendirmesini anlamak için,
PDP 7 1 İfadeler bir programlama dilinde hesaplamaları belirtmede temel araçtır. İfadelerin değerlendirmesini anlamak için, operatörlerin sırası ve İşlenenlerin (operant) değerlendirmesine aşina olmamız
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
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.
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
Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi
Bil101 Bilgisayar Yazılımı I Bilgisayar Yüksek Mühendisi Editör Disk 1)Kaynak kodlar editör aracılığı ile oluşturulur. (.c) Kaynak dosya Önişleyici Disk 2)Önişleyici kodlar içerisindeki ilk işleme işini
Jval tipi. Genel veri yapılarını kullanacağımız zaman Jval den faydalanırız.önemli olanlar aşağıda mevcuttur:
Jval tipi /blugreen/homes/plank/cs360/include/jval.h içerisinde bir Jval tipi tanımlanmıştır.büyük bir union yapısı aşağıdadır: typedef union { int i; long l; double d; void *v; char *s; char c; unsigned
ALGORİTMA VE PROGRAMLAMA I
ALGORİTMA VE PROGRAMLAMA I Yrd. Doç. Dr. Deniz KILINÇ [email protected] YZM 1101 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Giriş Fonksiyonlara Genel Bakış C
BLM-112 PROGRAMLAMA DİLLERİ II. Ders-1 Kapsama Kuralları & Rasgele Sayı Üretimi & Rekürsif (Özyinelemeli) Fonksiyonlar
BLM-112 PROGRAMLAMA DİLLERİ II Ders-1 Kapsama Kuralları & Rasgele Sayı Üretimi & Rekürsif (Özyinelemeli) Fonksiyonlar Yrd. Doç. Dr. Ümit ATİLA [email protected] http://web.karabuk.edu.tr/umitatilla/
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.
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.
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.
Değişkenler tanımlanırken onlara ne tür veriler atanabileceği de belirtilir. Temel veri türleri oldukça azdır:
C VERİ TÜRLERİ BASİT VERİ TÜRLERİ Değişkenler, program içinde üzerinde işlem yapılan, veri saklanan ve durumlarına göre programın akışı sağlanan nesnelerdir. C de bir değişken kullanılmadan önce tanımlanmalıdır.
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.
ÖZYİNELEME RECURSION. Yrd. Doç. Dr. Aybars UĞUR
ÖZYİNELEME RECURSION Yrd. Doç. Dr. Aybars UĞUR Giriş Kendini doğrudan veya dolaylı olarak çağıran fonksiyonlara özyineli (recursive) fonksiyonlar adı verilir. Özyineleme (recursion), iterasyonun (döngüler,
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 [email protected] http://web.karabuk.edu.tr/umitatilla/ Fonksiyonlar Fonksiyonlar C de modüller Programlar kullanıcı tanımlı
BM102 BİLGİSAYAR PROGRAMLAMA II LABORATUVAR UYGULAMALARI. 3Hafta
Ön bilgi: Özyineli fonksiyon tanımlanabilmeli. Dizilerin fonksiyon parametresi veya geri dönüş değeri olarak kullanımı bilinmeli. 1. Klavyeden girilen sayı n olmak üzere [1..n] aralığındaki sayıların toplamı
Özyineleme {\} /\ Suhap SAHIN Onur GÖK
Özyineleme 0 {\ /\ Suhap SAHIN Onur GÖK Özyineleme Tavugu yakala Tavugu yakala Tavugu yakala Tavugu yakala Ben yakalarım Özyineleme Kaç kisiyiz Ben ve sonraki Ben ve sonraki Ben ve sonraki Sadece ben Özyineleme
ENF102 TEMEL BİLGİSAYAR BİLİMLERİ VE C/ C++ PROGRAMLAMA DİLİ. Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü
ENF102 TEMEL BİLGİSAYAR BİLİMLERİ VE C/ C++ PROGRAMLAMA DİLİ Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü Konular Giriş math Kütüphane Fonksiyonları Çok Parametreyle Fonksiyon
ALGORİTMA ANALİZİ. Cumhuriyet Üniversitesi Bilgisayar Mühendisliği Bölümü
ALGORİTMA ANALİZİ Cumhuriyet Üniversitesi Bilgisayar Mühendisliği Bölümü 2 Özyinelemeler veya artık teknik Türkçeye girmiş olan rekürsiflik en çok duyulan fakat kullanımında zorluklar görülen tekniklerdendir.
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
NESNE TABANLI PROGRAMLAMA Final Sınavı Cevapları
Sayfa1 NESNE TABANLI PROGRAMLAMA 25.01.2011 Final Sınavı Cevapları CEVAPLAR 1. A ve C 3x3 boyutlu kare matrislerdir. Bu matrisler için, iken, işlemini gerçekleştirerek C matrisini oluşturan bir C++ programı
ÜNİTE. NESNE TABANLI PROGRAMLAMA I Okt. Mustafa AKBUĞA İÇİNDEKİLER HEDEFLER METOTLAR
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
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
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
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;
Veri Yapıları Lab Notları 2. Bellek Yönetimi ve Göstericiler
Veri Yapıları Lab Notları 2 Bellek Yönetimi ve Göstericiler Bellek Yönetimi Bilgisayar üzerinde bir veri yapısını gerçekleştirebilmek için bilgisayar belleğinin kullanımına ihtiyaç vardır. Çalışan herhangi
Bölüm 12. Nesne yönelimli programlama desteği
Bölüm 12 Nesne yönelimli programlama desteği 12. Bölüm konuları Giriş Nesne yönelimli programlama Nesne yönelimli diller için tasarım konuları C++ dilinde nesne yönelimli programlama desteği Nesne yönelimli
Yrd. Doç. Dr. Caner ÖZCAN
Yrd. Doç. Dr. Caner ÖZCAN Derse Giriş Ders Web Sitesi: www.canerozcan.net Ofis Saatleri: Salı 11:00-13:00 Perşembe 15:30-17:30 ya da email ile randevu alınız: [email protected] Kaynak Kitaplar:
JAVADA METOTLAR. BMÜ-111 Algoritma ve Programlama. Yrd. Doç. Dr. İlhan AYDIN
JAVADA METOTLAR BMÜ-111 Algoritma ve Programlama Yrd. Doç. Dr. İlhan AYDIN 1 Açık problem Amacımız sırasıyla 1 den 10, 10 dan 20 ye ve 35 ten 45 e kadarki sayıların toplamını bulmak olsun. Ne yapmak gerekir?
Bölüm 9. Alt Programlar ISBN
Bölüm 9 Alt Programlar ISBN 0-321-49362-1 Bölüm 9 Konular Giriş Alt programların temelleri Alt programların tasarım kouları Yerel başvuru çevreleri Parametre gönderme metotları Alt program adlarının parametre
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ı
DÖNGÜLER (LOOPS) while(), do-while(), for(), foreach()
(LOOPS) while(), do-while(), for(), foreach() Döngüler (loops) while do-while for foreach while ( koşul ) işlemler; do işlemler; while (koşul ); for (başlangıç ; koşul ; arttırma) işlemler; foreach ( tip
int faktoriyel(int sayi) { int sonuc = 1; for(int i=sayi;i>0;i--) sonuc*=i; return sonuc; } int main() { int sayi = faktoriyel(5); }
FONKSİYONLAR Fonksiyon, programcı tarafından seçilen bir kod bloğuna isim vermek için kullanılan araçtır. Fonksiyon ismi program içerisinde çağrıldığında fonksiyonun temsil ettiği kod çalıştırılır. Örneğin
ÖZYİNELEME RECURSION. Doç. Dr. Aybars UĞUR
ÖZYİNELEME RECURSION Doç. Dr. Aybars UĞUR GİRİŞ Kendini doğrudan veya dolaylı olarak çağıran fonksiyonlara özyineli (recursive) fonksiyonlar adı verilir. Özyineleme (recursion), iterasyonun (döngüler,
BLM 111 ALGORİTMA VE PROGRAMLAMA I
1 BLM 111 ALGORİTMA VE PROGRAMLAMA I DİZİLER (ARRAYS) Kullanıcıdan N tane tamsayı, xi, alalım ve 1. Bu sayıların ortalamasını hesaplamak isteyelim ort = 0; for (i=0; i
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.
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?
MTM 305 MİKROİŞLEMCİLER
KARABÜK ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ MEKATRONİK MÜHENDİSLİĞİ BÖLÜMÜ MTM 305 MİKROİŞLEMCİLER Arş. Gör. Emel SOYLU Arş. Gör. Kadriye ÖZ Alt Programlar (Procedure) Büyük programları tek bir kod bloğu
Timer İle arka plan renk değişimi
Microsoft Visual Studio Visual Basic Timer İle arka plan renk değişimi Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load Timer1.Enabled = True Timer1.Interval = 1000 'milisaniye
while(), do-while(), for() M.İLKUÇAR 2010 MAKU-MYO
while(), do-while(), for() Döngü (loop) : Bir koşul sağlandığı (true olduğu) sürece bir veya birden çok komutun tekrarlanması işlemidir. Java Döngüler (loops) While() do-while() for ( ) while ( koşul )
Linux Assembly Programlamaya Giriş
Linux Assembly Programlamaya Giriş Barış Metin Konular gcc / gas / ld Intel ve AT&T söz dizimleri gdb INT 80H C kütüphane fonksiyonları Stack Frame Örnek
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
Programlama Dilleri. C Dili. Programlama Dilleri-ders02/ 1
Programlama Dilleri C Dili Programlama Dilleri-ders02/ 1 Değişkenler, Sabitler ve Operatörler Değişkenler (variables) bellekte bilginin saklandığı gözlere verilen simgesel isimlerdir. Sabitler (constants)
YZM 2116 Veri Yapıları
YZM 2116 Veri Yapıları Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği Bu bölümde, BÖLÜM - 4 Stack (Yığın, Yığıt) Veri Yapısı Stack Çalışma
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
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,
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
Dr. Fatih AY Tel: 0 388 225 22 55 [email protected] www.fatihay.net
Bilgisayar Programlama Ders 6 Dr. Fatih AY Tel: 0 388 225 22 55 [email protected] www.fatihay.net Fonksiyon Prototipleri Fonksiyon Prototipleri Derleyici, fonksiyonların ilk hallerini (prototiplerini)
VERİ YAPILARI LİSTELER. Yrd. Doç. Dr. Murat GÖK Bilgisayar Mühendisliği Bölümü YALOVA ÜNİVERSİTESİ
VERİ YAPILARI LİSTELER Yrd. Doç. Dr. Murat GÖK Bilgisayar Mühendisliği Bölümü YALOVA ÜNİVERSİTESİ Bağlı Listeler Aynı kümeye ait veri parçalarının birbirlerine bellek üzerinde, sanal olarak bağlanmasıyla
sayi=3 harf=a reelsayi=8.72 Bellek durumu 5. İşaretç iler (pointers)
5. İşaretç iler (pointers) C dilinin öyle bir özelliği vardır ki, programlama dilleri arasında kendisini diğerlerinden ayıran bir fark olarak sunulur: işaretçiler. Aslında, bazı diğer dillerde de direkt
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
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
Bölüm 6. Veri Türleri ISBN
Bölüm 6 Veri Türleri ISBN 0-321-49362-1 Bölüm 6 Konular Giriş İlkel Veri Türleri Karakter Dizisi Türleri Kullanıcı Tanımlı Sıra Türleri Dizi Türleri İlişkili Diziler Giriş Bir veri türü veri nesnelerinin
3/7/2011. ENF-102 Jeoloji 1. Tekrar -- Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Veri Tanımları ve Mantıksal Đşlemler
Veri Tanımları ve Mantıksal Đşlemler Tekrar -- Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Kullanılacak bütün değişkenlerin kullanılmadan önce C derleyicisine bildirilmeleri gerekir.
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
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
Programlama Dilleri 1. Ders 5: Göstericiler
Programlama Dilleri 1 Ders 5: Göstericiler Değişkenlerin adresleri Bellekteki her değişkenin bir adresi ve bir de taşıdığı değeri vardır. int x=3; DEĞİŞKEN BELLEK ADRES 0 (0000) 1 2 3 4...... 65533 (FFFD)
