Fonksiyon Türleri. Bildiğiniz gibi, C++'da iki fonksiyon türü ile karşılaşıyoruz. C++'nın kullanıma sunduğu hazır fonksiyonlar.

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

Download "Fonksiyon Türleri. Bildiğiniz gibi, C++'da iki fonksiyon türü ile karşılaşıyoruz. C++'nın kullanıma sunduğu hazır fonksiyonlar."

Transkript

1 Fonksiyonlar

2 Fonksiyon Nedir? Bir amaca hizmet eden program parçacıklarıdır. Fonksiyon çalıştırıldığında, bir işlemi yerine getirmesi yada bir değer döndürmesi istenecektir. Çağrılmış olan bir fonksiyon ya geriye bir sonuç değeri döndürür ve/veya fonksiyon içerisindeki operasyonlarını işlemlerini tamamlayıp çağrılan yere geri döner. Diğer programlama dillerinde metod, prosedür (yordam) v.b. isimlendirme ile adlandırılırlar. Programcılar, programların yapacağı işi fonksiyonlar vasıtasıyla anlamlı parçalara bölerek programlarının modülerlik kazanmalarını sağlar.

3 Fonksiyon Türleri Bildiğiniz gibi, C++'da iki fonksiyon türü ile karşılaşıyoruz. C++'nın kullanıma sunduğu hazır fonksiyonlar. Kullanıcı tarafından oluşturulan fonksiyonlardır.

4 Hazır Fonksiyonların Tanımı ve Kullanılması C++'nın hazır fonksiyonları, adından da anlaşılabileceği gibi, programcıya hazır olarak sunulan fonksiyonlardır. Bu fonksiyonlar bir C++ kitaplığında yer alır. Bu kitaplık dosyası programın başında #include <...> deyimi ile programa dahil edilir. Böylece program bu kitaplık içinde yer alan tüm fonksiyonları doğrudan kullanabilir.

5 Örnek: Program içinde C++'nın karakök alma sqrt() matematiksel fonksiyonu kullanmak istiyoruz. Bu fonksiyonun kullanılabilmesi için, programın başında matematik kitaplığı programa #include <cmath> şeklinde dahil edilme ve program içerisinde sqrt(sayi) şeklinde fonksiyon çağrılmalıdır.

6 <cmath> Kütüphanesi

7 Kullanıcı Tanımlı Fonksiyonların Tanımı ve Uygulaması Fonksiyonun Deklarasyonu (Function Definitions) Bir fonksiyon main veya diğer bir fonksiyon tarafından kullanılmadan önce deklare edilmesi ve tanımlanması gerekmektedir. Bu yapı aşağıda belirtildiği biçimde olacaktır. Her şeyden önce bir fonksiyonun mutlaka bir adı olmalıdır. <dönüş değeri tipi> <fonksiyon adı/ismi> (<parametreleri>) {... return...

8 Fonksiyon deklerasyonu ve tanımlanması iki farklı yoldan yapılabilir; (1) Fonksiyon çağırılmadan önce mutlaka ayrı ayrı fonksiyon deklarasyonu ve tanımı yapılmalıdır. (2) Fonksiyon çağırılmadan önce mutlaka fonksiyon deklarasyonu ve tanımı birlikte yapılmalıdır.

9

10 Prototip ve Tanımın Yapılması #include <iostream> using namespace std; int hesap1(int); // 1.tip int hesap2(int x); // 2.tip int hesap3(int x=25, int y=25); // 3.tip int hesap4(int x) // 4.tip { x=66; return x; int main() { int a=3, b=4, c=5, d=6, e=7; int hesap5 (int x); // 5.tip cout <<"a="<<hesap1(a)<<endl; cout <<"b="<<hesap2(b)<<endl; cout <<"c="<<hesap3(a,e)<<endl; cout <<"c="<<hesap3()<<endl;//dikkat! cout <<"d="<<hesap4(a)<<endl; cout <<"e="<<hesap5(d)<<endl; return 0; int hesap1 (int a) { a=33; return a; int hesap2 (int a) { a=44; return a; int hesap3 (int a, int b) { return a+b; int hesap5 (int a) { a=55; return a;

11

12 Fonksiyonun Değer Döndürmesi Bir fonksiyon çalıştığında, bir sonuç üretecektir ve bu sonucu kendisini çağıran fonksiyona istenmesi (return sonuc) durumunda gönderecektir. Bu sonucun, kendisini çağıran fonksiyona gönderilmesi veya bir başka deyişle döndürülmesi söz konusu ise, fonksiyon içinde return deyimine yer vermek gerekecektir. Fonksiyon tanımlamasında aksi belirtilmediği sürece fonksiyonların int tipinde değer döndürdükleri kabul edilir. Eğer fonksiyonumuzun farklı tipte bir değer döndürmesini istiyorsak fonksiyon tanımlamasında bu dönüş değer tipini belirtmemiz gerekmektedir.

13 Foksiyonlar return anahtar kelimesi aracılığıyla değer döndürür ve program akışı sırasında return anahtar kelimesine ulaşıldığında foksiyondan çıkılır. Örneğin bir sayının karesini alan bir fonksiyon yazalım; kareal(int sayi) { return (sayi * sayi); veya kareal(int sayi) { int k = sayi * sayi; return k;

14 Eğer geri döndürdüğü değer tipi void ise, fonksiyondan bir değer dönmez ve return yazılmaz. Eğer geri döndürdüğü değer tipi void değilse, fonksiyonda en az bir tane return ifadesi olmalıdır. #include <iostream> using namespace std; void hesap(int); int main() { int a=3; hesap(a); cout <<a<<endl; return 0; void hesap(int b) { b=33; #include <iostream> using namespace std; int hesap(int); int main() { int a=3; a=hesap(a); cout <<a<<endl; return 0; int hesap(int b) { b=33; return b;

15 Örneğin, sayi isimli fonksiyon; tamsayı değer döndürecek ise int sayi(); biçiminde tanımlanabilir. herhangi bir parametre listesi içermiyorsa int sayi(void); biçiminde ifade edilebilir. tamsayı türünde bir x parametresine sahip ise, int sayi(int x); tanımı yapılır. herhangi bir değer döndürmeyecek ise, void sayi(); biçiminde tanımı yapılabilir. herhangi bir değer döndürmeyecek ve tamsayı türünde bir x parametresini kullanacak ise, void sayi(int x); tanımı yapılabilir.

16

17 Fonksiyonlar Arasında Parametre Geçirme Her fonksiyon bir diğerinden bağımsız olarak düzenlenir. Bir fonksiyon içinde yer alan bir değişkeni bir başka fonksiyon içinde aynen kullanamayız. Bunun için farklı yöntemlere başvurulur. Bunlardan birincisi, fonksiyonlar arasında parametre geçirilmesidir. Hiç parametresi olmayan fonksiyonlar da olabilir. Bu gibi durumlarda parametre listesi boş bırakılabileceği gibi void de yazılabilir. Bir fonksiyon yardımıyla üs alma işlemlerini yerine getirmek istiyoruz. Bu işlem, x ve y verildiğinde ifadesinin değerini hesaplayacaktır. Amacımıza uygun C++ programını fonksiyonlardan yararlanmak suretiyle şu şekilde düzenleyebiliriz.

18

19 Global Değişkenler (:: Scope Resolution) :: operatörü yardımıyla Fonksiyonlar Arasında Değer Taşımak Fonksiyonlar arasında parametre geçirerek veri aktarılması işleminin nasıl gerçekleştirilebildiğini gördük. Benzer bir sonuca ulaşmak için küresel değişkenlerden de yararlanabiliriz. Küresel değişkenleri dersimizin başlarında ele alarak incelemiştik. Küresel değişkenler, programın çalışması boyunca, fonksiyonlar dahil, değeri geçerli olan değişkenlerdir. Küresel değişkenler fonksiyonların içinde değil, ondan önce tanımlanır. Bir küresel değişken tanımından sonra yer alan tüm fonksiyonlar için bu değişkenin değeri geçerlidir.

20

21 Static Değişkeninin Fonksiyonlarda Kullanımı static değişkenler fonksiyon terkedildiğinde değerlerini kaybetmezler. Aynı fonksiyon bir daha çalıştırıldığında, daha önceki değer yeniden kullanılabilir. Program içindeki bir fonksiyonun ya da küresel değişkenin başına static tanımı yapıldığı takdirde, bu fonksiyon veya değişken diğer kaynak program dosyalarına karşı erişilmez olacaktır. Bunun anlamı, diğer dosyalardan yapılacak erişimlere karşı "gizli" kalacaktır.

22

23 Fonksiyon Çağırma Yöntemleri C++ programlama dilinde fonksiyonların çağrılması iki farklı yöntemle gerçekleştirilmektedir: 1) Değer ile çağırma int topla(int a, int b) şeklinde fonksiyon tanımlı z=topla(x,y); şeklinde çağırıyoruz. bu durumda a=x ve b=y olur. 2) Referans (Başvuru) ile çağırma Bellek adresleri kullanılır. void hesap (int &p) şeklinde fonksiyon tanımlı hesap(x); şeklinde çağırıyoruz.

24 Değer ile çağırma Çağıran fonksiyondan çağrılan fonksiyona aktarılan değişken değerlerinde bir değişiklik olsa bile, bu değişiklik çağıran programdaki değişken değerlerine etki etmez. Bu değişiklikler çağrılan fonksiyon içinde parametrelerin kopyaları üzerinde gerçekleşir. #include <iostream> using namespace std; int hesap(int); int main() { int x=5; x=hesap(x); cout <<x; return 0; int hesap (int a) { a=55; return a;

25 Buradan şu sonuç çıkmaktadır; Fonksiyonlar değere göre çağrıldığında, çağrılan fonksiyon içinde parametrenin değeri değiştirilse bile bu değişiklik çağıran programda aynı isimli değişkenin değerine etki yapmaz.

26 Referans (Başvuru) ile çağırma Bellek adreslerini kullanarak fonksiyonları çağırabiliriz. Bu durumda, çağrılan fonksiyon içinde parametre değerleri üzerinde yapılacak değişikliklerin, onu çağıran fonksiyon üzerinde de etkili olduğu görülecektir. #include <iostream> using namespace std; void hesapla(int&, int&); int main() { int x=3,y=5; cout <<x<<" "<<y<<endl;// 3 5 hesapla(x,y); cout <<x<<" "<<y; //13 15 return 0; void hesapla (int& x, int& y) { x=x+10; y=y+10;

27 #include <iostream> using namespace std; void hesap(); int main () { int x=7; cout<< x <<endl; hesap(); cout<< x <<endl; return 0; void hesap() { x=77; #include <iostream> using namespace std; int hesap(int); int main () { int x=7; cout<< x <<endl; x=hesap(x); cout<< x <<endl; return 0; int hesap(int a) { a=77; return a;

28 #include <iostream> using namespace std; void hesap(); int x=7; int main() { cout<< ::x <<endl; hesap(); cout<< ::x <<endl; return 0; void hesap () { ::x=77; #include <iostream> using namespace std; void hesap(int &); int main() { int x=7; cout<< x <<endl; hesap(x); cout<< x <<endl; return 0; void hesap (int &p) { p=77;

29 Kendini çağıran fonksiyonlar Bir fonksiyon kendi kendini sürekli çağırarak çalıştırabilir. Bu tür fonksiyonlara özçağrılı (recursive) fonksiyonlar denir.

30 Fonksiyonların Aşırı Yüklenmesi (Function Overloading) İki yada daha fazla fonksiyon aynı isime sahipseler, aşırı yüklenmişlerdir. Aşırı yüklenmiş fonksiyonları kullanarak birbirleriyle ilişkili işlemleri aynı isimle çağırarak program daha sade bir hale gelir, çok fazla fonksiyon isimlerinden oluşabilecek muhtemel hatalar önlenmiş olur. Birden fazla fonksiyon argüman sayıları ve/veya argüman tipleri farklı ise aynı ismi kullanabilirler. Aşırı yüklenmiş fonksiyon tanımlanırken, fonksiyonun tüm versiyonları deklare edilir. Bu farklı versiyonlardan derleyici, argüman sayısı ve tipine göre otomatik olarak çağıracaktır.

31 Aşağıdaki örnek programda tarih dataları string ve tamsayı olarak iki farklı şekilde kullanılmıştır. Tarih isimli fonksiyon çağrılırken derleyici bu farklı tiplere göre tarih fonksiyonunu icra edecektir.

32 Fonksiyonların Aşırı Yüklenmesi

33 Esnek Argümanlı Fonksiyonlar #include <cstdarg> kütüphanesi kullanılır. Esnek argümanları oluşturan küme ardışık olarak listeye eklenmelidir. Bu türden argümanlar fonksiyonun parametre listesi kısmında üç nokta... ile belirtilir.

34 Esnek Argümanlı Fonksiyonlar cstdarg da tanımlı macro fonksiyonlar Esnek Argumanlı Fonksiyon tanımlaması yapabilmek için cstdarg kütüphanesinde üç adet makro fonksiyon bir adet tip tanımlanmıştır. Tip / Fonksiyon va_list va_start(a, n) va_arg(a, tip) va_end(a) Açıklama Tip: ardışık esnek argümalar için tip belirleyici. macro: va_list tipinde bildirilmiş a göstericisi için bellekten n elemanlı yer ayırır. macro: Veri tipi tip (int, double v.b.) ile belirlenmiş küme elemanlarına eriştirir. macro: va_list tipinde bildirilmiş a göstericisi için bellekten bölgeyi boşaltır.

35 Esnek Argümanlı Fonksiyonların Tanımlanması dönüş_tipi fonksiyon_adı( tip_değişke_listesi, int liste adedi,...) { macro fonksiyon ve diğer işlemler return donen_deger; dönüş_tipi= int fonksiyon_adı = Hesapla tip_değişke_listesi = int a, double b, float c int liste adedi = 5...= 3,4,5,6 Burada değerler va_arg(a, tip) tip tanımına göre yapılır. Örneğin double olsaydı 3.0, 4.0, 5.0, 6.0 şeklinde tanımlanmalıdır.

36 Esnek Argümanlı Fonksiyonların

37 Esnek Argümanlı Fonksiyonların

38 Esnek Argümanlı Fonksiyonların

39 Esnek Argümanlı Fonksiyonlar Polinom hesabı P(x,n) = a 0 + a 1 x + a 2 x a n x n double phesap(double x, int n,... ) { macro fonksiyon ve diğer işlemler x=1.5 ve n=4 için; phesap(1.5, 4, 1.0, -2.0, 0.2, 1.1) a 4 için : a 1 =1.0, a 2 =-2.0, a 3 =0.2, a 4 =1.1 olur.

40 Polinom hesabı : P(x,n) = a 0 + a 1 x + a 2 x a n x n a i (i = 0, 1, 2,..., n) katsayları esnek argüman olarak bildirilmiştir.

41 Dosya İşlemleri

42 Dosyalar Yoluyla Inpıt/Output İşlemleri Şimdiye kadar standart input output iostream kütüphanesi cin/cout klavyeden okuma, ekrana yazma Dosyadan okuma ve dosyaya yazma yapmak için fstream adlı standart C++ kütüphanesi Dosyadan/dosyaya bilgi akışı için kullanılacak sınıflar: ofstream: Dosyaya yazmak için kullanılacak olan akış sınıfı ifstream: Dosyadan okuma yapmak için kullanılacak olan akış sınıfı fstream: Okuma/yazma yapmayı sağlayacak olan akış sınıfı

43 Basit Örnek Bu sınıflar direk ya da endirekt olarak istream ve ostream sınıflarından türetilmişlerdir cin/cout da bu sınıflardan türetilmişlerdir. Dosya akış sınıflarını da benzer şekilde kullanabiliriz Burada artık akış dosyalar yoluyla olacak // Basit bir dosya işlemi #include <iostream> #include <fstream> using namespace std; int main () { ofstream dosyam; dosyam.open ("ornek.txt"); dosyam << "Bu yazilanlar dosyada olacak.\n"; dosyam.close(); return 0; ofstream sınıfı için open kullanılabilir. kullanım şekli: <ofstream_adı>.open (dosyaadi) dosyaadi : içine yazma işleminin yapılacağı dosyanın ismi artık ofstrean sınıfına ait olan bu nesneyi (dosyam) cout gibi kullanabilirim. Unutmayın: Artık yazma yerim cout ta olduğu gibi ekran değil dosyaadi ile belirtilmiş olan dosya output stream olarak açıyorum: sadece yazma yapacağım için yazma yapacağım akışın (stream) adı Nesnemizi kapatmayı unutmayalım

44 Basit Örnek // Basit bir dosya işlemi #include <iostream> #include <fstream> using namespace std; int main () { ofstream dosyam; dosyam.open ("ornek.txt"); dosyam << "Bu yazilanlar dosyada olacak.\n"; dosyam.close(); return 0; Sonuç olarak ornek.txt adında bir dosya yaratılır ve içine de Bu yazilanlar dosyada olacak. yazılarak alt satıra geçilir

45 Adım adım ofstream/ifstream/fstream sınıfları için uygulanacak ilk işlem bu nesneleri gerçek (fiziksel) bir dosya ile ilişkilendirmektir. Bu işlem bir dosyayı açmak (open) olarak bilinir. Açılan dosya program tarafından bir akış nesnesi (stream object) olarak tanınır. Bu akış nesnesi bu 3 sınıftan biri tarafından başlatılır. Örnekte bu ofstream sınıfına ait bir nesne idi adı da dosyam idi. ofstream dosyam; Bu akış üzerinde yapılacak giriş/çıkış işlemleri bu akış ile ilişkilendirilen fiziksel dosya üzerinde yapılcaktır. örnekte bu dosya ornek.txt idi. İlişkilendirme için yapılan işlem: dosyam.open ("ornek.txt");

46 open open fonksiyonunun genel kullanım şekli: open (dosyaninadi, mod); mod dosyanın ne şekilde açılacağını gösteren seçeneğe bağlı (optional) bir parametredir. Kullanılabilecek modlar: ios::in ios::out ios::binary ios::ate ios::app ios::trunc Giriş (input) işlemleri için aç Çıkış (output) işlemleri için aç Binary modda aç. Başlama noktasını ayarla. Eğer bu etikete değer verilmezse başlama noktası dosyanın başlangıcı olarak set edilir Her türlü çıkış işleminin dosyanın sonuna yapılmasını sağlar, kısacası yeni içeriği dosyanın içeriğinin sonuna ekler (append işlemi) Bu etiket sadece çıkış işlemleri için açılmış olan akışlarda kullanılabilir. Eğer açılan dosya zaten önceden varsa, önceki içerik silinir ve yeni içerik ile değiştirilir.

47 open open (dosyaninadi, mod); mod seçeneğe bağlıdır, kullanılmayabilir Kullanılmazsa open (dosyaninadi) şeklinde kullanılır. bu durumda varsayılan etiketler: ofstream ifstream fstream Sınıf Varsayılan mod ios::out ios::in ios::in ios::out

48 Örnek kullanımlar // Basit bir örnek #include <iostream> #include <fstream> using namespace std; int main () { ofstream dosyam; dosyam.open ("ornek.txt"); dosyam << "Bu yazilanlar burada kalsin"; dosyam<<"\nbaska bir sey olmasin\n"; dosyam.close(); return 0; ornek.txt dosyasının içeriği Bu yazilanlar burada kalsin Baska bir sey olmasin // Basit bir örnek #include <iostream> #include <fstream> using namespace std; int main () { ofstream dosyam; dosyam.open ("ornek.txt"); dosyam << "yeniden dusundum\n"; dosyam.close(); return 0; ornek.txt dosyasının içeriği yeniden dusundum Dikkat: Eski içerik silindi, yenisi yazıldı.

49 Örnek kullanımlar // Basit bir ornek #include <iostream> #include <fstream> using namespace std; int main () { ofstream dosyam; dosyam.open ("ornek.txt",ios::app); dosyam << "append kullanilirsa boyle oluyor iste"; dosyam.close(); return 0; ornek.txt dosyasının içeriği yeniden dusundum append kullanilirsa boyle oluyor iste Dikkat: ios::in olarak açılırsa, yazmaya çalışınca üzerine yazacaktır.. // Basit bir k #include <iostream> #include <fstream> using namespace std; int main () { ofstream dosyam; dosyam.open ("ornek.txt",ios::in ios::out); dosyam << "ios::in ios::out kullandim"; dosyam.close(); return 0; ornek.txt dosyasının içeriği ios::in ios::out kullandimlanilirsa boyle oluyor iste Dikkat: Yeni içerik baştan yazılmaya başlandı. Toplamda 28 karakter. Eski içeriğin üzerine yazıldı. Alt satıra geçmenin de karakter olduğunu unutmayın.

50 Dosya işlemleri ios::in ile açılırsa dosyanın başından başlayarak üzerine yazdığını gördük Ayrıca bu şekilde açılabilmesi için açılan dosyanın var olması gerekir. Eğer o isimde fiziksel bir dosya yoksa açılamayacak ve yapılan işlemler gerçekleşmeyecektir ios::out ile açılmaya çalışılan dosya için ise o isimde dosya yoksa yaratılır.

51 Dosya işlemleri Dosya açılışının başarılı olup olmadığı şu şekilde tespit edilir. <akışdosyaismi>.is_open() // Deneme1 #include <iostream> #include <fstream> using namespace std; int main () { ofstream dosyam; dosyam.open ("dene1.txt"); if (dosyam.is_open()) cout<<"acildi "<<endl; else cout<<"acilamadi yazamiyor tabii"<<endl; dosyam << "Deneme1 dosyası"; dosyam.close(); return 0; dene1.txt adında içeriği Deneme1 dosyası olan bir dosya yaratılır. Ayrıca Ekranda şu görünür: Acildi // Deneme2 #include <iostream> #include <fstream> using namespace std; int main () { fstream dosyam; dosyam.open ("dene2.txt"); if (dosyam.is_open()) cout<<"acildi "<<endl; else cout<<"acilamadi yazamiyor tabii"<<endl; dosyam << "Deneme2 dosyası"; dosyam.close(); return 0; Herhangi bir dosya yaratılamaz. Ekranda şu görünür: Acilamadi yazamiyor tabii

52 Örnek Kullanım fstream için varsayılan modun ios::in ios::out olduğunu unutmayın fstream ile dosya açarken o isimde fiziksel bir dosya olmasa da açmak isterseniz out veya app olarak açmalısınız // Deneme2 #include <iostream> #include <fstream> using namespace std; int main () { fstream dosyam; dosyam.open ("dene2.txt",ios::app); //ya da //dosyam.open ("dene2.txt",ios::out); if (dosyam.is_open()) cout<<"acildi "<<endl; else cout<<"acilamadi yazamiyor tabii"<<endl; dosyam << "Deneme2 dosyası"; dosyam.close(); return 0;

53 Dosya Kapatma Dosya ile yapılacak işlemler sona erdiğinde kapatılmalıdır Böylece tekrar bu dosyaya erişim sağlama imkanımız olur. Dosyayı kapatmak için close() fonksiyonu kullanılır Bu fonksiyon içine parametre almaz. Yaptığı iş bu dosya ile ilişkilendirilen akışı kapatıp buna ait olan buffer ları temizlemektir. Dosya kapandıktan sonra içine dosya giriş/çıkış işlemleri sona erecektir..is_open() fonksiyonu yanlış (0) olarak cevap verecektir.

54 Dosyadan okuma işlemi Okuma işlemi yapabilmek için getline komutunu kullanabiliriz. Hatırlatma: klavyeden satır okuma için getline(cin,str) kullanılarak okunan satır bilgisi str değişkeninin içine yazılıyordu. getline fonksiyonuna ilk parametre olarak cin girilmesi okuma işleminin klavyeden olacağını gösterir Dosyadan okuma yapmak için ise ilk parametre olarak akış nesnesinin ismini girmeliyiz.

55 #include <iostream> #include <fstream> using namespace std; int main () { fstream dosyam; string line; dosyam.open ("ornek.txt", ios::out); if (dosyam.is_open()) { dosyam << "Ornek.txt dosyasi"<<endl; dosyam << "Icine bazi bilgiler yazildi.\n"; dosyam << "Sonuc olarak bu dosya olustu"; else cout<<"acilamadi yazamiyor tabii"<<endl; dosyam.close(); return 0; Ornek.txt adlı dosya yaratıldı ve içine aşağıdaki bilgiler yazıldı Ornek.txt dosyasi Icine bazi bilgiler yazildi. Sonuc olarak bu dosya olustu #include <iostream> #include <fstream> using namespace std; int main () { ifstream dosyam; string line; //varsaylan olarak ios::inş eklinde aç dosyam.open ("ornek.txt"); while ( dosyam.good() ) { getline (dosyam,line); cout << line << endl << endl; dosyam.close(); return 0; Ekran çıktısı: Ornek.txt dosyasi Icine bazi bilgiler yazildi. Sonuc olarak bu dosya olustu

56 Dosya İşlemleri while ( dosyam.good() ) ne için yazıldı? good() fonksiyonu akış yazma/okuma işlemlerine hazır ise doğru değilse yanlış cevabını verecektir. Bu örnekte dosya sonuna ulaşılıncaya kadar okuma yapmaya devam etmek için kullanılmıştır

57 Etiketler.good() fonksiyonu dosyanın sonu gelene ya da herhangi bir hata ile karşılaşıncaya kadar doğru cevabını verecektir. Diğer etiketler: bad() fonksiyonu okuma ya da yazma işleminde bir hata ortaya çıkarsa doğru cevabını vercktir. Kısacası good() fonksiyonunun tersini yapar Örneğin açık olmayan bir dosyaya yazma ya da içerisinde hiç boş yer kalmayan bir dosyaya yazma yapmaya kalk ıştığımız durumda.

58 Etiketler fail() bad() fonksiyonuna benzer durumlarda doğru cevabını verecektir. Bunun yanında format hatalarında da doğru cevabını verir. Örneğin okunacak karakterler alfabetik karakter olduğu halde tamsayı okumak istediğimiz durum. eof() Açık olan dosyanın sonuna geldiğimizde doğru, diğer durumlarda yanlış cevabını verir

59 Akış Yeri Belirleme Okuma ya da yazma yerlerine işaret eden işaretçiler şu üye fonksiyonlar aracılığıyla manipüle edilebilir tellg() ve tellp() Giriş parametresi almayan ve get stream (tellg) ya da put stream (tellp) işaretçilerinin o an bulunduğu yeri tamsayı tipinde geri yollayan fonksiyonlardır Get stream seekg() ve seekp() Bu fonksiyonlar get ve put stream lerin pozisyonunu değiştirmemize yarar 2 farkklı prototip ile aşırı yüklenmişlerdir 1. prototip: içine tek parametre al ır o seekg ( position ); seekp ( position ); 2. prototip: içine tek parametre al ır o seekg ( offset, direction ); seekp ( offset, direction );

60 Akış Yeri Belirleme 1. prototip: seekg ( position ); seekp ( position ); Akışın yerini position ile belirtilen noktaya taşır Başlangıç noktası dosyanın başıdır 2. prototip:seekg ( offset, direction ); direction ile belirtilen parametreye göre bir noktaya taşır direction parametresinin alabileceği değerler: ios::beg ios::cur ios::end offset noktası akışın başından sayılır offset noktası akışın o anki pozisyonundan sayılır offset noktası akışın sonundan sayılır

61 // obtaining file size #include <iostream> #include <fstream> using namespace std; int main () { long begin,end; ofstream mfile ("example.txt"); mfile<<"deneme dosyasi olussun"<<endl; mfile<<"ornek biseyler yazalim"<<endl; mfile.close(); ifstream myfile ("example.txt"); begin = myfile.tellg(); myfile.seekg (0, ios::end); end = myfile.tellg(); myfile.close(); cout << "Bas: " << begin<<endl; cout << "son: " << end<< endl; cout << "Fark: " << (end-begin) << " byte.\n"; return 0; Dosya açılınca varsayılan olarak dosyanın başındayız Dosya sonundan başlayarak 0 byte git. Bu da bize dosyanın sonuncu karakterinin kaçıncı byte olduğu bilgisine ulaşmamızı sağlar. Neredeyim: Dosyanın son karakterinde. Ekran çıktısı: Bas: 0 son: 48 Fark: 48 byte.

62 Örnekler Ornek.txt Ornek.txt dosyasi Icine bazi bilgiler yazildi. Sonuc olarak bu dosya olustu #include <iostream> #include <iomanip> #include <fstream> using namespace std; int main () { fstream dosyam; dosyam.open ("ornek.txt", ios::out); if (dosyam.is_open()) { dosyam << "Ornek.txt dosyasi"<<endl; dosyam << "Icine bazi bilgiler yazildi.\n"; dosyam << "Sonuc olarak bu dosya olustu"; else cout<<"acilamadi yazamiyor tabii"<<endl; dosyam.close(); ifstream mfile; mfile.open("ornek.txt"); string str; int yer; while(mfile.good()) { mfile>>str; yer=mfile.tellg(); cout<<setw(15)<<str<<setw(15)<<yer<<endl; mfile.close(); return 0;

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ı

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ü 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ş Data Hiyerarşisi Files (Dosyalar) ve Streams (Kaynaklar)

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ı

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ı

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ı

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ı

10. DOSYA GİRİŞ ÇIKIŞ FONKSİYONLARI

10. DOSYA GİRİŞ ÇIKIŞ FONKSİYONLARI 10. DOSYA GİRİŞ ÇIKIŞ FONKSİYONLARI İkincil bellekte tanımlanmış bölgelere dosya denir. Her dosyanın bir ismi vardır. Ancak dosyaların isimlendirme kuralları sistemden sisteme göre değişebilmektedir. Dosya

Detaylı

Metin Dosyaları. Metin Dosyaları Dosya Açma ve Kapama Dosya Okuma ve Yazma Rastgele Erişim Standart Girdi/Çıktı Hata Kontrolü

Metin Dosyaları. Metin Dosyaları Dosya Açma ve Kapama Dosya Okuma ve Yazma Rastgele Erişim Standart Girdi/Çıktı Hata Kontrolü Metin Dosyaları Metin Dosyaları Dosya Açma ve Kapama Dosya Okuma ve Yazma Rastgele Erişim Standart Girdi/Çıktı Hata Kontrolü Metin Dosyaları Metin dosyaları, verileri bir kere hazırlayıp, ikincil saklama

Detaylı

Dr. Fatih AY Tel: 0 388 225 22 55 fatihay@fatihay.net www.fatihay.net

Dr. Fatih AY Tel: 0 388 225 22 55 fatihay@fatihay.net www.fatihay.net Bilgisayar Programlama Ders 6 Dr. Fatih AY Tel: 0 388 225 22 55 fatihay@fatihay.net www.fatihay.net Fonksiyon Prototipleri Fonksiyon Prototipleri Derleyici, fonksiyonların ilk hallerini (prototiplerini)

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ı

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ı

Dizi nin Önemi. Telefon rehberindeki numaralar, haftanın günleri gibi v.b.

Dizi nin Önemi. Telefon rehberindeki numaralar, haftanın günleri gibi v.b. Diziler Dizi Nedir Ortak özelliğe sahip birden fazla bilginin oluşturduğu bütün bilgi kümelerine veya hafızada art arda sıralanmış aynı türden verilerin oluşturduğu yapıya dizi denir. Kısaca; Bellekte

Detaylı

10/17/2007 Nesneye Yonelik Programlama 3.1

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

Detaylı

BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ

BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ Yrd.Doç.Dr. Emel ARSLAN earslan@istanbul.edu.tr C DİLİNDE FONKSİYONLAR C DİLİNDE FONKSİYONLAR C programlama dili fonksiyon olarak adlandırılan alt programların

Detaylı

BİLG214. 20.10.2009 Dr. Mustafa T. Babagil 1

BİLG214. 20.10.2009 Dr. Mustafa T. Babagil 1 BİLG214 20.10.2009 Dr. Mustafa T. Babagil 1 Yapısal bilgi türlerinin tanımlanması. (C++ daki struct yapısı. ) Daha önce öğrenmiş olduğumuz bilgi tipleri char, int ve float v.b. değişkenler ile dizi (array)

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ı

Algoritma ve Programlama: Karar Yapıları ve Döngüler

Algoritma ve Programlama: Karar Yapıları ve Döngüler Algoritma ve Programlama: Karar Yapıları ve Döngüler Bir algoritma, herhangi bir programlama dili (C, C++, Pascal, Visual Basic, Java gibi) ile kodlandığında program haline gelir. Algoritmada yer alan

Detaylı

KONU 7: DOSYA İŞLEME ( File Processing )

KONU 7: DOSYA İŞLEME ( File Processing ) DERS: PROGRAMLAMA DİLLERİ 1 DÖNEM: 2002-2003 Güz yarı yılı KONU 7: DOSYA İŞLEME ( File Processing ) HEDEFLER: 1- Dosyaları yaratabilme, okuyabilme, yazabilme ve güncelleyebilme 2- Sıralı erişim dosyalarını

Detaylı

Eln 1001 Bilgisayar Programlama I

Eln 1001 Bilgisayar Programlama I Eln 1001 Bilgisayar Programlama I GiriŞ / ǹk¹Ş Fonksiyonlar¹ Ne ÖĆreneceĆiz? Temel Giriş/Çıkış Yapısı Giriş Fonksiyonları Karakterler için giriş fonksiyonları Scanf fonksiyonu Formatlı giriş Çıkış Fonksiyonları

Detaylı

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ü 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

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ı

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ı

Dr. Fatih AY Tel:

Dr. Fatih AY Tel: Bilgisayar Programlama Ders 5 Dr. Fatih AY Tel: 0 388 225 22 55 fatihay@fatihay.net www.fatihay.net Fonksiyonlar Fonksiyonlar Büyük programlar geliştirmenin en iyi yolu, onu orijinal programdan daha kolay

Detaylı

SAKARYA ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM BİLİMLERİ FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2015-2016 GÜZ DÖNEMİ PROGRAMLAMAYA GİRİŞ DERSİ

SAKARYA ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM BİLİMLERİ FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2015-2016 GÜZ DÖNEMİ PROGRAMLAMAYA GİRİŞ DERSİ SAKARYA ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM BİLİMLERİ FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2015-2016 GÜZ DÖNEMİ PROGRAMLAMAYA GİRİŞ DERSİ Cemil Hoca Grubu PROJE ÖDEVİ ÖDEV TESLİM KURALLARI Ödevin son

Detaylı

Temel Bilgisayar Programlama

Temel Bilgisayar Programlama BÖLÜM 11: : Birçok programda, bazı verilerin disk üzerinde saklanmasına gerek duyulur. Bütün programlama dillerinde, sabit disk sürücüsü (Hard Disk Drive, HDD) üzerindeki verileri okumak veya diske veri

Detaylı

Temel Giriş/Çıkış Fonksiyonları

Temel Giriş/Çıkış Fonksiyonları Temel Giriş/Çıkış Fonksiyonları Temel giriş/çıkış fonksiyonları, bütün programla dillerinde mevcuttur. Bu tür fonksiyonlar, kullanıcıya ekrana veya yazıcıya bilgi yazdırmasına, ve bilgisayara klavyeden

Detaylı

DERSİN WEB SİTESİ:

DERSİN WEB SİTESİ: BİLGİSAYAR PROGRAMLAMA II C++ Programlamaya Giriş http://www.cplusplus.com/doc/tutorial/ Published by Juan Soulié THEORY AND PROBLEMS of PROGRAMMING WITH C++ Second Edition JOHN R. HUBBARD, Ph.D. Professor

Detaylı

NESNEYE YÖNELİK PROGRAMLAMA SINIFLAR

NESNEYE YÖNELİK PROGRAMLAMA SINIFLAR NESNEYE YÖNELİK PROGRAMLAMA SINIFLAR Özlem AYDIN Trakya Üniversitesi Bilgisayar Mühendisliği Bölümü Not: Bu sunumda Prof. Dr. Yılmaz KILIÇASLAN ın Nesneye Yönelik Programlama dersi sunumlarından faydalanılmıştır.

Detaylı

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

ELN1002 BİLGİSAYAR PROGRAMLAMA 2 ELN1002 BİLGİSAYAR PROGRAMLAMA 2 DOSYALAMA Sunu Planı Veri Hiyerarşisi Dosyalar ve Akımlar(streams) Sıralı Erişim (Sequential Access) dosyalarının oluşturulması Sıralı Erişim Dosyalarından Veri Okuma Rasgele

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ı

Pascalda oluşturulacak dosyalar değişkenler gibi programın başında tanımlanır.

Pascalda oluşturulacak dosyalar değişkenler gibi programın başında tanımlanır. DOSYALAMALAR Programlama bilgilerin her zaman ekrana yazdırılması veya değişkenlerde tutulması yeterli olmayabilir. Programın çalışması sonucu girilen yada hesaplanan her bilgi manyetik ortama programda

Detaylı

C++ Operatörler (Operators)

C++ Operatörler (Operators) C++ Operatörler (Operators) Konular Operatörler o Aritmetiksel (Matematiksel) Operatörler o Karşılaştırma Operatörleri o Mantıksal Operatörler o Atama Operatörleri o Bit Düzeyinde Operatörler o Özel Amaçlı

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ı

şeklinde tanımlanmıştır. O halde, dosyaları daha önceki bilgilerimizi kullanarak FILE *Dosya1, *Dosya2;

şeklinde tanımlanmıştır. O halde, dosyaları daha önceki bilgilerimizi kullanarak FILE *Dosya1, *Dosya2; Dosya İşlemleri Nedir? Programlarınızı girdi (input) olarak aldığı verileri bir text dosyasında yada word dosyasında vb. saklamasıdır. Artık C programınızın yaratıp içine veriler koyacağı text dosyasını

Detaylı

Visual Basic 6.0. Anadolu Üniversitesi Endüstri Mühendisliği Bölümü. Dosyalama İşlemleri. Ders Notları

Visual Basic 6.0. Anadolu Üniversitesi Endüstri Mühendisliği Bölümü. Dosyalama İşlemleri. Ders Notları 1 Anadolu Üniversitesi Endüstri Mühendisliği Bölümü Dosyalama İşlemleri Visual Basic 6.0 Ders Notları Kaynak: İhsan Karagülle, Zeydin Pala, Visual Basic 6.0, Türkmen Kitabevi, 1999, Beyazıt İstanbul, 2

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ı

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ı

Ö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ı

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ı

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ı

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ı

Döngü (Loop) Deyimleri / Veri Belirleyicileri / Matematiksel Fonksiyonlar

Döngü (Loop) Deyimleri / Veri Belirleyicileri / Matematiksel Fonksiyonlar Bölüm 5 Döngü (Loop) Deyimleri / Veri Belirleyicileri / Matematiksel Fonksiyonlar İçindekiler 5.1 Formatlı Yazdırma............................ 34 5.2 Döngü Deyimleri............................. 34 5.2.1

Detaylı

Temel Dosya İşlemleri. Kütük Organizasyonu 1

Temel Dosya İşlemleri. Kütük Organizasyonu 1 Temel Dosya İşlemleri Kütük Organizasyonu 1 Dosyaların Temel İşlemleri Bilgiler dosyada belirli bir düzen içerisinde yer alırlar Örn: ALAN THARP 100 100 100 JOHN BISHOP 70 80 75 PAUL AUSTER Bir satırda

Detaylı

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1 Görsel Programlama DERS 03 Görsel Programlama - Ders03/ 1 Java Dili, Veri Tipleri ve Operatörleri İlkel(primitive) Veri Tipleri İLKEL TİP boolean byte short int long float double char void BOYUTU 1 bit

Detaylı

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ü 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ü Genel Bilgiler Uzman Mehmet ŞİMŞEK Ofis : Gazi Ünv., Bilgisayar Mühendisliği

Detaylı

Uygulamalar 4 IsMissing Fonksiyonlar ve Alt Programlar Prosedür Parametreleri Public Function f(x,y,optional t, Optional k) End Function 1.

Uygulamalar 4 IsMissing Fonksiyonlar ve Alt Programlar Prosedür Parametreleri Public Function f(x,y,optional t, Optional k) End Function 1. Uygulamalar 4 IsMissing (Değişken) Visual Basic te fonksiyon veya alt programlara giriş parametresi olarak Optional deyimi kullanılırsa o parametre kullanılmadan da o fonksiyon çağrılabilir. IsMissing

Detaylı

C PROGRAMLAMA D İ L İ

C PROGRAMLAMA D İ L İ C PROGRAMLAMA DİLİ Fonksiyonlar (Alt programlar) Fonksiyon Kavramı Fonksiyon, belirli sayıda verileri kullanarak bunları işleyen ve bir sonuç üreten komut grubudur. Her fonksiyonun bir adı ve fonksiyona

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ı

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ı

Hafta 2 EkLab 1. C ye Giriş. Ozan ŞENYAYLA Çağrı YENİCE

Hafta 2 EkLab 1. C ye Giriş. Ozan ŞENYAYLA Çağrı YENİCE Hafta 2 EkLab 1 C ye Giriş Ozan ŞENYAYLA Çağrı YENİCE http://ozansenyayla.com/programlama.php KAYNAK: Görkem Paçacı / İlker Korkmaz / Kaya Oğuz - İEU BT Hafta 2 GİRİŞ EkLab 1 Programlama, genel olarak,

Detaylı

Örnek 4: Örnek Özyinelemeli fonksiyon örneği Bölüm 9. C++ programlama dilinde Nesne ve sınıf

Örnek 4: Örnek Özyinelemeli fonksiyon örneği Bölüm 9. C++ programlama dilinde Nesne ve sınıf İçindekiler 1. Giriş... 1 1.2. c++ Programı Yapısı... 2 1.3.Using Direktifi... 5 Bölüm 2. Veri türleri, değişken kavramı, sabit ve değişken bildirimleri ve c++ da kullanımı 7 2.1. Temel veri türleri...

Detaylı

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

BMT 101 Algoritma ve Programlama I 6. Hafta. Yük. Müh. Köksal Gündoğdu 1 BMT 101 Algoritma ve Programlama I 6. Hafta Yük. Müh. Köksal Gündoğdu 1 C++ Veri Tipleri Yük. Müh. Köksal Gündoğdu 2 Veri Tipleri Tam sayı ve Ondalık sayı veri tipleri Veri Tipi Alt Sınıf Üst Sınıf Duyarlı

Detaylı

Operatörlere Yeni İşlevler Yüklenmesi (Operator Overloading)

Operatörlere Yeni İşlevler Yüklenmesi (Operator Overloading) Operatörlere Yeni İşlevler Yüklenmesi (Operator Overloading) C++ da hazır olarak var olan operatörlere (+, -, *, /,!,

Detaylı

Değişkenler tanımlanırken onlara ne tür veriler atanabileceği de belirtilir. Temel veri türleri oldukça azdır:

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.

Detaylı

Nesne Tabanlı Programlama

Nesne Tabanlı Programlama Nesne Tabanlı Programlama Ders Notu - 3 Dicle Üniversitesi Mühendislik Fakültesi Elektrik Elektronik Mühendisliği Bölümü 1 Sınıflar ve Fonksiyonlar Tekrar kullanılabilir kodlar 1 Nesne Tabanlı Tasarım

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ı

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ı

İ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ı

Fen ve Mühendislik Uygulamalarında MATLAB

Fen ve Mühendislik Uygulamalarında MATLAB Fen ve Mühendislik Uygulamalarında MATLAB Dosya Yönetimi Fonksiyon Yapısı Doç. Dr. İrfan KAYMAZ MATLAB Ders Notları DOSYA YÖNETİMİ Şu ana kadar bir programda hesaplanan veya elde edilen veriler RAM de

Detaylı

B02.6 Karar Verme, Eşitlik ve Bağıntı Operatörleri

B02.6 Karar Verme, Eşitlik ve Bağıntı Operatörleri B02.6 Karar Verme, Eşitlik ve Bağıntı Operatörleri 49 Yrd. Doç. Dr. Yakup EMÜL, Bilgisayar Programlama Ders Notları (B02) Çalıştırılabilir C ifadeleri ya bir işlem gerçekleştirir ( girilen verilerin toplanması

Detaylı

C# Yazım Kuralları ERCİYES. Ü. BİLGİSAYAR M. COMPUTER PROGRAMMING II 1 FEHİM KÖYLÜ

C# Yazım Kuralları ERCİYES. Ü. BİLGİSAYAR M. COMPUTER PROGRAMMING II 1 FEHİM KÖYLÜ C# Yazım Kuralları 1 İçindekiler C# Yazım Kuralları Veritipleri Değişkenler Operatörler Sınıflar Nesneler, Özellik, Metot ve Olay Bileşenler 2 C# yazım kuralları Deyimlerde büyük küçük harf yazıma uyulmalı

Detaylı

String Sınıfını Yönetmek

String Sınıfını Yönetmek String Sınıfı String Sınıfını Yönetmek Stringler karakterlerden oluşur. Bir string sabiti çift tırnak arasında verilmiş karakterler listesidir. "Bu örnek bir string dir" 2 Yukardaki string 27 adet karakterden

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ı

Karabük Üniversitesi, Mühendislik Fakültesi...www.ibrahimcayiroglu.com WEB TEKNOLOJİLERİ

Karabük Üniversitesi, Mühendislik Fakültesi...www.ibrahimcayiroglu.com WEB TEKNOLOJİLERİ WEB TEKNOLOJİLERİ VISUAL STUDIO DA YENİ BİR PROJE OLUŞTURMA Visual Studio (VS) programını çalıştırdığımızda karşımıza boş bir ekran gelir. Yeni bir proje oluştururken File>New>Project yolu kullanılarak

Detaylı

Programlama Dilleri. C Dili. Programlama Dilleri-ders02/ 1

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)

Detaylı

mod ile açılacak olan dosyanın ne amaçla açılacağı belirlenir. Bunlar:

mod ile açılacak olan dosyanın ne amaçla açılacağı belirlenir. Bunlar: Dosyalama Çoğu programda, bazı verilerin disk üzerinde saklanmasına gerek duyulur. C programlama dilinde, disk dosyasına erişme (okuma ve yazma için) iki farklı yöntemle yapılır. Bunlar üst düzey ve alt

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ü Genel Bilgiler Öğretim üyesi : Doç.Dr.M.Ali Akcayol Ofis : Gazi Ünv., Bilgisayar Mühendisliği

Detaylı

Bölüm 2 - C ile Programlamaya Giriş

Bölüm 2 - C ile Programlamaya Giriş 1 Bölüm 2 - C ile Programlamaya Giriş Başlıklar 2.1 Giriş 2.2 Basit C Programları: Bir Metni Yazdırmak 2.3 Basit C Programları: İki Tam Sayıyı Toplamak 2.4 Hafıza Konuları 2.5 C de Aritmetik 2.6 Karar

Detaylı

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

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

Detaylı

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI İÇİNDEKİLER IX İÇİNDEKİLER 1 GİRİŞ 1 Kitabın Amacı 1 Algoritmanın Önemi 2 Bilgisayarın Doğuşu ve Kullanım Amaçları 3 Programlama Dili Nedir? 3 Entegre Geliştirme Ortamı (IDE) Nedir? 4 2 ALGORİTMA VE AKIŞ

Detaylı

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

ELN1002 BİLGİSAYAR PROGRAMLAMA 2 ELN1002 BİLGİSAYAR PROGRAMLAMA 2 DOSYALAMA Sunu Planı Rasgele Erişim (Random Access) Dosyaları Rasgele Erişim Dosyalarına Veri Yazma Rasgele Erişim Dosyalarından Veri Okuma 1 Sıralı Erişim Dosyası Bir

Detaylı

İÇİNDEKİLER İÇİNDEKİLER KODLAB

İÇİNDEKİLER İÇİNDEKİLER KODLAB İÇİNDEKİLER IX İÇİNDEKİLER 1 GİRİŞ 1 Kitabın Amacı 1 Algoritmanın Önemi 2 Bilgisayarın Doğuşu ve Kullanım Amaçları 3 Programlama Dili Nedir? 3 Entegre Geliştirme Ortamı (IDE) Nedir? 4 2 ALGORİTMA VE AKIŞ

Detaylı

C PROGRAMLAMA D İ L İ

C PROGRAMLAMA D İ L İ C PROGRAMLAMA DİLİ C Programlama Dilinin Temelleri C Programlama Dili'ni popüler kılan önemli nedenler aşağıda listelenmiştir: C, güçlü ve esnek bir dildir. C ile işletim sistemi veya derleyici yazabilir,

Detaylı

// hataları işaret eden referans

// hataları işaret eden referans System sınıfı java.lang.object java.lang.system public final class System extends Object System sınıfı, java.lang paketi içindedir. Platformdan bağımsız olarak sistem düzeyindeki eylemleri belirleyen dingin

Detaylı

VERİ TABANI ve YÖNETİMİ

VERİ TABANI ve YÖNETİMİ VERİ TABANI ve YÖNETİMİ Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü 2 BÖLÜM -10- FONKSİYONLAR 3 Giriş Geçen haftaki derslerimizde Görünümleri (View) ve Stored Procedure (SP) leri öğrendik. Bu hafta

Detaylı

Pointers (İşaretçiler)

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

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ı

Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK

Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK MATLAB de Bilgisayar Programlama Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK ALT PROGRAMLAR:M-Fonksiyon Yapısı function cikis_ifadesi1, 2,, n =fonksiyon_adi

Detaylı

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız. 1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız. [10 puan] int param = 30; int result = 300; if (param > 45) result

Detaylı

Adım Adım C-II. Eksik kalmış konular

Adım Adım C-II. Eksik kalmış konular Adım Adım C-II Eksik kalmış konular Bu dersin amacı Bu derste; değişkenler, sabitler ve operatörler ile fonksiyonlar konusunun detayları anlatılacaktır. Ders bitiminde; Daha etkin programlar yazma becerisinin

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ı

PASCAL PROGRAMLAMA DİLİ YAPISI

PASCAL PROGRAMLAMA DİLİ YAPISI BÖLÜM 3 PASCAL PROGRAMLAMA DİLİ YAPISI 3.1. Giriş Bir Pascal programı en genel anlamda üç ayrı kısımdan oluşmuştur. Bu kısımlar bulunmaları gereken sıraya göre aşağıda verilmiştir. Program Başlığı; Tanımlama

Detaylı

BİLGİSAYAR PROGRAMLAMA DERSİ

BİLGİSAYAR PROGRAMLAMA DERSİ BİLGİSAYAR PROGRAMLAMA DERSİ 5. DERS NOTU Konu: Döngü Yapıları Hazırlayan: Yrd. Doç. Dr. Ahmet DUMLU DÖNGÜ YAPILARI Birçok uygulamada bazı işlemlerin tekrar tekrar gerçekleştirilmesi gerekir. Bizlere bu

Detaylı

Nesne Tabanlı Programlama Dersi Edirne Kız Teknik ve Meslek Lisesi

Nesne Tabanlı Programlama Dersi Edirne Kız Teknik ve Meslek Lisesi 2011-2012 Nesne Tabanlı Programlama Dersi Edirne Kız Teknik ve Meslek Lisesi Programlama Dili Nedir? 2 Programlama dili, yazılımcının bir algoritmayı ifade etmek amacıyla, bir bilgisayara ne yapmasını

Detaylı

3- Turbo Pascal Programlamada Giriş Çıkış İşlemleri

3- Turbo Pascal Programlamada Giriş Çıkış İşlemleri 3- Turbo Pascal Programlamada Giriş Çıkış İşlemleri 3.1 Turbo Pascal Bilgisayar Programına Veri Girişi Programlamanın en önemli kısımlarından birisi programa veri girişinin yapılmasıdır. Yazdığımız bir

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ı

for döngüsü for (başlangıç değeri; şart; artım) ifade; for (başlangıç değeri; şart; artım) { ifadeler; }

for döngüsü for (başlangıç değeri; şart; artım) ifade; for (başlangıç değeri; şart; artım) { ifadeler; } for döngüsü for (başlangıç değeri; şart; artım) ifade; for (başlangıç değeri; şart; artım) ifadeler; Başlangıç değeri; koşul içinde tanımladığımız değişkene ilk değerin atanmasını sağlar. Koşul: Döngünün

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ı

GİRİŞ/ÇIKIŞ VE TANIMLAMA DEYİMLERİ

GİRİŞ/ÇIKIŞ VE TANIMLAMA DEYİMLERİ GİRİŞ/ÇIKIŞ VE TANIMLAMA DEYİMLERİ Giriş/Çıkış deyimlerine neden gerek vardır? Biçimli giriş/çıkış deyimleri, Klavye den veri girişi Dosya dan veri okuma ve dosyaya yazma Ekrana sonuçları yazdırma, Yazıcı,

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ı

BIL222 Veri Yapıları ve Algoritmalar

BIL222 Veri Yapıları ve Algoritmalar BIL222 Veri Yapıları ve Algoritmalar 1. ĠKĠLĠ AĞAÇLAR (BIARY TREES) Bütün düğümlerinin derecesi en fazla iki olan ağaca ikili ağaç denir. Yani bir düğüme en fazla iki tane düğüm bağlanabilir ( çocuk sayısı

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ı

Yrd. Doç. Dr. Caner ÖZCAN

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: canerozcan@karabuk.edu.tr Kaynak Kitaplar:

Detaylı

7. FONKSİYONLAR. Dönüş_Tipi Fonksiyon_Adı (tip giriş_parametreleri);

7. FONKSİYONLAR. Dönüş_Tipi Fonksiyon_Adı (tip giriş_parametreleri); 1 7. FONKSİYONLAR C/C++ programlama dilinin temelini fonksiyonlar oluşturmaktadır. C/C++ programı fonksiyon ile çalışmasına başlar ve fonksiyon ile çalışmasını bitirir. Bu olmazsa olmaz fonksiyonun ismi

Detaylı

Programlama Dilleri. C Dili. Programlama Dilleri-ders08/ 1

Programlama Dilleri. C Dili. Programlama Dilleri-ders08/ 1 Programlama Dilleri C Dili Programlama Dilleri-ders08/ 1 Yapısal Veri Tipleri C dili genişletilebilen bir dildir. Var olan veri tipleri kullanılarak yeni veri tipleri tanımlanıp kullanılabilir. Programlama

Detaylı

BĠLGĠSAYAR PROGRAMLAMA II C++ Programlamaya GiriĢ http://www.cplusplus.com/doc/tutorial/ Published by Juan Soulié

BĠLGĠSAYAR PROGRAMLAMA II C++ Programlamaya GiriĢ http://www.cplusplus.com/doc/tutorial/ Published by Juan Soulié BĠLGĠSAYAR PROGRAMLAMA II C++ Programlamaya GiriĢ http://www.cplusplus.com/doc/tutorial/ Published by Juan Soulié DERSİN WEB SİTESİ: http://nucleus.istanbul.edu.tr/~bilprog2/ DeğiĢkenler ve Data Türleri

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ı

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ı

Yordamsal Tabanlı Programlama

Yordamsal Tabanlı Programlama Yordamsal Tabanlı Programlama Procedural Programming (Yordamsal Programlama) Subprograms, functions/procedures kullanarak programı kısımlara ayırma prensibiyle çalışır. Programlamadaki karmaşıklık yordamlar

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ı