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ı

C/C++ Disk G/Ç İşlemleri. Yrd. Doç. Dr. Fehim KÖYLÜ Erciyes Üniversitesi Bilgisayar Mühendisliği Bölümü

C/C++ Disk G/Ç İşlemleri. Yrd. Doç. Dr. Fehim KÖYLÜ Erciyes Üniversitesi Bilgisayar Mühendisliği Bölümü C/C++ Disk G/Ç İşlemleri Veriler Bitler, byte, sayılar, karakter (char), karakter grubu (char *, string), struct, class, kayıtlar, tablolar, vt Dosya karakterleri ve dosya sonu işaretini içerir. İşlem

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ı

ALGORİTMA VE PROGRAMLAMA I DERS NOTU#10

ALGORİTMA VE PROGRAMLAMA I DERS NOTU#10 ALGORİTMA VE PROGRAMLAMA I DERS NOTU#10 YZM 1105 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Giriş Esnek Argümanlı Fonksiyonlar main() Fonksiyonuna Parametre Aktarımı

Detaylı

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

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

Detaylı

Ö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 11: Bileşim, Arkadaş ve Diğer Araçlar İçerik Bileşim Arkadaş Fonksiyonlar ve Sınıflar Arkadaş Fonksiyonlar Arkadaş Sınıflar Sabit Nesneler Sabit Üye Fonksiyonlar

Detaylı

C++ Dersi: Nesne Tabanlı Programlama

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

Detaylı

NESNEYE YÖNELİK PROGRAMLAMA C++ a Giriş

NESNEYE YÖNELİK PROGRAMLAMA C++ a Giriş Özlem AYDIN NESNEYE YÖNELİK PROGRAMLAMA C++ a Giriş Trakya Üniversitesi Bilgisayar Mühendisliği Bölümü C DİLİNİN BİR ÜST-KÜMESİ OLARAK C++ Genel olarak, C de mevcut olan her şey C++ da da vardır. C dilinde

Detaylı

NESNEYE YÖNELİK PROGRAMLAMA

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

Detaylı

C++ Dersi: Nesne Tabanlı Programlama

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

Detaylı

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ı

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ı

C++ Dersi: Nesne Tabanlı Programlama

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

Detaylı

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ı

Bölüm 9. Altprogramlar ISBN

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

Detaylı

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ı

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ı

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ı

işlemler bittikten sonra dosyaların kapatılması uygun olacaktır. Bunun için, fclose(fin);

işlemler bittikten sonra dosyaların kapatılması uygun olacaktır. Bunun için, fclose(fin); case 2 : C = 0.5088-0.0011*(B-135); break; case 3 : C = 0.4978-0.0010*(B-145); break; case 4 : C = 0.4878-0.0009*(B-155); break; default : printf("yanlış seçenek\n");} cout

Detaylı

Algoritma ve Programlama II Recursive Fonksiyonlar Dosyalama

Algoritma ve Programlama II Recursive Fonksiyonlar Dosyalama Algoritma ve Programlama II Recursive Fonksiyonlar Dosyalama Rekürsif Algoritmalar Bir problemin çözümü için döngü kurulması gerekiyorsa bu ihtiyacı karşılamak için birisi çevirimli diğeri rekürsif olarak

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ı

DOSYA İŞLEMLERİ Programlama dilleri hafta -

DOSYA İŞLEMLERİ Programlama dilleri hafta - BİLECİK ŞEYH EDEBALİ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ DOSYA İŞLEMLERİ Programlama dilleri 1-10. hafta - Araş. Gör. Nesibe YALÇIN Dosya İşlemleri Programın çalışma esnasında

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ı

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ı

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

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

Detaylı

C++ Dersi: Nesne Tabanlı Programlama

C++ Dersi: Nesne Tabanlı Programlama C++ Dersi: Nesne Tabanlı Programlama Bölüm 9: Sınıf İçerik Sınıf Tanımı Nesne Tanımı İkili Kapsam Çözme Operatörü UML ile Sınıfların Gösterimi 2 Sınıf kavramı, nesne-tabanlı programlamanın temelini oluşturur.

Detaylı

11- FONKSİYONLAR (FUNCTIONS)

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

Detaylı

BİLGİSAYAR MÜHENDİSLİĞİ ALGORİTMA VE PROGRAMLAMA II 2.HAFTA SWİTCH (CASE), SAYAÇLAR, DÖNGÜLER,

BİLGİSAYAR MÜHENDİSLİĞİ ALGORİTMA VE PROGRAMLAMA II 2.HAFTA SWİTCH (CASE), SAYAÇLAR, DÖNGÜLER, BİLGİSAYAR MÜHENDİSLİĞİ ALGORİTMA VE PROGRAMLAMA II 2.HAFTA SWİTCH (CASE), SAYAÇLAR, DÖNGÜLER, C++ İÇİN UFAK HATIRLATMALAR Değişken adları bir harf ile başlamalıdır. (a-z, A-Z). Değişken adı numara içerebilir.

Detaylı

Diziler. Yrd.Doç.Dr.Bülent ÇOBANOĞLU

Diziler. Yrd.Doç.Dr.Bülent ÇOBANOĞLU Diziler Yrd.Doç.Dr.Bülent ÇOBANOĞLU Dizi (Array) Nedir? Bellekte sürekli yer kaplayan artarda sıralanmış aynı türden verilerin oluşturduğu kümeye dizi (array) denir. Dizi, çok fazla miktardaki tek tip

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ş math Kütüphane Fonksiyonları Çok Parametreyle Fonksiyon Tanımı Fonksiyon

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ı

ALGORİTMA VE PROGRAMLAMA II

ALGORİTMA VE PROGRAMLAMA II ALGORİTMA VE PROGRAMLAMA II Yrd. Doç. Dr. Deniz KILINÇ deniz.kilinc@cbu.edu.tr YZM 1102 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Veri Hiyerarşisi Dosyalara Giriş

Detaylı

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

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

Detaylı

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ı

BTEP243 Ders 3. class Yazım Kuralı:

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

Detaylı

Örnek1: #include <iostream> #include <string> using namespace std;

Örnek1: #include <iostream> #include <string> using namespace std; BTEP243 Ders 5 Nesne İşaretçileri İşaretçiler, bildiğiniz gibi bir değişkenin bellekte tutuldukları yerin adresini tutarlar. Nesne işareçtileri konusundaki işaretçiler, nesnelerin bellek üzerinde bulundukları

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ı

HSancak Nesne Tabanlı Programlama I Ders Notları

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

Detaylı

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ı

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ı

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ı

ALGORİTMA VE PROGRAMLAMA I

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

Detaylı

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ı

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ı

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ı

ALGORİTMA VE PROGRAMLAMA I

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

Detaylı

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ı

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ı

String ve Karakter Dizileri. Yrd. Doç. Dr. Fehim KÖYLÜ Erciyes Üniversitesi Bilgisayar Mühendisliği Bölümü

String ve Karakter Dizileri. Yrd. Doç. Dr. Fehim KÖYLÜ Erciyes Üniversitesi Bilgisayar Mühendisliği Bölümü String ve Karakter Dizileri #include Temel giriş çıkış akımları nesnelerinin tanımlandığı kütüphanedir. cin,cout,cerr,clog, wcin,wcout,wcerr,wclog nesneleri içerir. using namespace std; //std

Detaylı

Karakter katarları ile ilgili fonksiyonlar içerir Yerel kayan noktalı sayılar tanımlanır

Karakter katarları ile ilgili fonksiyonlar içerir Yerel kayan noktalı sayılar tanımlanır stringh floath Karakter katarları ile ilgili fonksiyonlar içerir Yerel kayan noktalı sayılar tanımlanır 32 Sorgulama İfadesi - if Deyimi (5 Hafta) Bu deyim sorgulamanın tek basamakta yapılacağı yerlerde

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ı

Eln 1002 Bilgisayar Programlama II

Eln 1002 Bilgisayar Programlama II Eln 1002 Bilgisayar Programlama II C»de Dosya ğşleme : S¹ral¹ EriŞim Ne ÖĆreneceĆiz? Dosyalar ve Streamler Sequential (sıralı) erişim dosyaların yaratılması Sıralı Erişim Dosyalarından Veri Okuma Sıralı

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ı

C++ Dersi: Nesne Tabanlı Programlama

C++ Dersi: Nesne Tabanlı Programlama C++ Dersi: Nesne Tabanlı Programlama Bölüm 6: Diziler İçerik Diziler Dizi Elemanlarına İlk Atama Diziler ve Fonksiyonlar İki Boyutlu Diziler İki Boyutlu Dizi Tanımı İki Boyutlu Dizi Elemanlarına Erişim

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ı

Lambda İfadeleri (Lambda Expressions)

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

Detaylı

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ı

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

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ı

ALGORİTMA VE PROGRAMLAMA II

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

Detaylı

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ı

ALGORİTMA VE PROGRAMLAMA II

ALGORİTMA VE PROGRAMLAMA II ALGORİTMA VE PROGRAMLAMA II Yrd. Doç. Dr. Deniz KILINÇ deniz.kilinc@cbu.edu.tr YZM 1102 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Dosya İşlemleri (Rastgele Erişim)

Detaylı

C#(Sharp) Programlama Dili

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

Detaylı

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

BİLG Dr. Mustafa T. Babagil 1

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

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ı

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

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

Detaylı

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

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

Detaylı

PROGRAMLAMAYA GİRİŞ DERS 2

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ı

Detaylı

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

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

Detaylı

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ı

Genel Programlama II

Genel Programlama II Genel Programlama II 18.04.2011 1 DİSK DOSYALARI İLE ÇALIŞMA DOSYALARIN AÇILMASI C programlama dilinde bir dosyayı kullanabilmek için, öncelikle o dosyanın açılması gerekmektedir. Hem okuma hem de yazma

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ı

C++ Dersi: Nesne Tabanlı Programlama

C++ Dersi: Nesne Tabanlı Programlama C++ Dersi: Nesne Tabanlı Programlama Bölüm 7: Yapılar Diziler İçerik Yapıların Tanımı Yapılara İlk Değer Atama Yapı Elemanlarına Erişim İç içe Yapılar Yapılar ve Fonksiyonlar 2 Yapılar (structures) içinde

Detaylı

ELN1001 BİLGİSAYAR PROGRAMLAMA I

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

Detaylı

C++ Giriş Ders 1 MSGSU Fizik Bölümü Ferhat ÖZOK Kullanılacak kaynak: Published by Juan Soulié

C++ Giriş Ders 1 MSGSU Fizik Bölümü Ferhat ÖZOK Kullanılacak kaynak:  Published by Juan Soulié Kullanılacak kaynak: http://www.cplusplus.com/doc/tutorial/ Published by Juan Soulié C++ Nedir? Arttırılmış C demektir ve C dilinin geliştirilmiş halini yansıtır. C++ öğrenmeden önce herhangi bir programlama

Detaylı

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

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

Detaylı

BLM-112 PROGRAMLAMA DİLLERİ II. Ders-8 Dosya İşlemleri-1. Yrd. Doç. Dr. Ümit ATİLA

BLM-112 PROGRAMLAMA DİLLERİ II. Ders-8 Dosya İşlemleri-1. Yrd. Doç. Dr. Ümit ATİLA BLM-112 PROGRAMLAMA DİLLERİ II Ders-8 Dosya İşlemleri-1 Yrd. Doç. Dr. Ümit ATİLA umitatila@karabuk.edu.tr http://web.karabuk.edu.tr/umitatilla/ Giriş Değişken ve dizilerde tutulan değerler programın çalışması

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ı

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

Uzaktan Eğitim Uygulama ve Araştırma Merkezi JAVA PROGRAMLAMA Öğr. Gör. Utku SOBUTAY İÇERİK 2 Java Kodlarına Yorum Satırı Eklemek Java Paket Kavramı Java Kütüphane Kavramı Konsoldan Veri Çıkışı ve JOPtionPane Kütüphanesi JOptionPane Kütüphanesi Kullanarak

Detaylı

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

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

Detaylı

YZM 2105 Nesneye Yönelik Programlama

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

Detaylı

Nesne Yönelimli Programlama

Nesne Yönelimli Programlama 1 Nesne Yönelimli Programlama Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Genel Bilgiler Ders konuları 1. Programlamaya Giriş 2. Program Denetimi ve Operatörler 3. Nesnelerin

Detaylı

C++ Programming: Program Design Including Data Structures, Third Edition. Bölüm 3: Giriş/Çıkış

C++ Programming: Program Design Including Data Structures, Third Edition. Bölüm 3: Giriş/Çıkış C++ Programming: Program Design Including Data Structures, Third Edition Bölüm 3: Giriş/Çıkış Bölümün Amaçları Akış (stream) nedir? Girdi/çıktı akışlarının işleyişi Standart bir giriş aygıtından veri okuması

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ı

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

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

Detaylı

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ı

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

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

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ı

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

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

Detaylı

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ı

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ı

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

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

Detaylı

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ı

k ise bir gerçek sayı olsun. Buna göre aşağıdaki işlemler Matlab da yapılabilir.

k ise bir gerçek sayı olsun. Buna göre aşağıdaki işlemler Matlab da yapılabilir. MATRİS TRANSPOZU: Bir matrisin satırlarını sütun, sütunlarınıda satır yaparak elde edilen matrise transpoz matris denilir. Diğer bir değişle, eğer A matrisi aşağıdaki gibi tanımlandıysa bu matrisin transpoz

Detaylı