BİLGİSAYAR programlama II Programlama Dili C++ BİLGİSAYAR programlama II
BİLGİ TİPLERİ
1. Sayısal Bilgi Tipleri Sayısal değerin özelliğine göre “tamsayı” veya “ondalıklı sayı” bilgi tiplerinden biri kullanılır.
a) Tamsayı bilgi tipleri: Tamsayı şeklinde ifade edilebilecek olan sayısal bilgiler, sayının alabileceği en düşük ve en yüksek değerlere bağımlı olarak değişik şekillerde tanımlanabilir. Bilgi tipi En küçük değer En büyük değer Bellekte kapladığı yer (byte) char -128 127 1 int -32768 32767 2
b) Ondalıklı sayı bilgi tipleri: Ondalıklı kısma sahip olan sayısal değişkenler, tablodaki bilgi tiplerinden herhangi birisiyle tanımlanabilirler. Bilgi tipi En küçük değer En büyük değer Bellekte kapladığı yer (byte) float 3,4.10-38 3,4.1038 4 double 1,7.10-308 1,7.10308 8
Tablolarda verilen C++’ın temel sayısal bilgi tipleridir Tablolarda verilen C++’ın temel sayısal bilgi tipleridir. Bunların yeterli olmadığı ve bellek kullanımının önemli olduğu durumlarda tip sıfatları kullanılır. Tip sıfatı Anlamı signed İşaretli unsigned İşaretsiz short Kısa long Uzun
Temel ve tip sıfatları kullanılarak oluşturulmuş bazı sayısal bilgi tipleri: Bilgi tipi Kısa yazılışı Alt sınır Üst sınır Uzunluk (byte) unsigned char 255 1 signed char char -128 127 enum -32768 32767 2 unsigned int unsigned 65535 short int short int unsigned long 4294967295 4 long -2147483648 2147483647 float 3,4.10-38 3,4.1038 double 1,7.10-308 1,7.10308 8 long double 3,4.10-4932 1,1.104932 10
2. Sayısal Olmayan (Alfasayısal) Bilgi Tipleri C++’daki alfasayısal bilgi “char” olup, alfasayısal bilgiler tırnak içinde verilir. Alfasayısal bilgiler dizi şeklinde kullanılabilir ve işlenebilirler. Bilgi tipi Tanımlama char char …değişken…[n]
Örneğin, #include <iostream.h> main() { char S[5]; strcpy(S, “SAU”); }
Programında S için 5 karakterlik yer ayrılmakta, program içinde “strcpy” ile SAU bilgisi aktarılmaktadır. Bilginin belleğe yerleşimi şu şekildedir: 0. byte 1. byte 2. byte 3. byte 4. byte S[0] S[1] S[2] S[3] S[4] S A U
C++ dİlİ yapisi
C++ programlama dili C’nin evrim geçirmiş bir versiyonu olmakla beraber, ikisinin de ataları BCPL ve B’dir. BCPL 1967 yılında Martin Richards tarafından işletim sistemleri ve derleyicileri üretmek için yazıldı.
C++ dilinin temel özellikleri: Program yazımı belli bir yapıya sahip olup bloklar halindedir. Bloklar { } ile oluşturulur. Komutlar alt alta veya yanyana yazılabilir. Komutlar ; ile sonlandırılır. Blok başlatan ifadelerden sonra ; konmaz. Kullanılan tüm değişkenler ve bilgi tiplerinin bildirimi yapılır. Kullanılacak olan komutların ait oldukları kütüphaneler programın başında programa dahil edilirler.
Derste kullanılacak olan C++ programının versiyonu:
Program yazım penceresi C++ editörü Menü satırı Kısayollar Program yazım penceresi Mesaj penceresi Satır ve sütun no
Bir C++ programının genel yapısı /* ………. */ Başlık veya açıklama Başlık bölümü #include ………. Kütüphane ekleme Tanımlama ve bildirimler bölümü #define ………. Eşdeğer ifade tanımlama Bilgi tipi değişken adı; Değişken tanımlama Function ... () { … } Alt programlar Alt programlar bölümü main() Ana program Ana program bölümü
1. Program başlığı veya açıklama Genellikle programla ilgili açıklamaları içerir. /* açıklamalar veya başlık */ veya // açıklamalar veya başlık Not: /*’den sonra */’ a kadar olan kısım açıklama olarak kabul edilirken, //’den sonraki o satırdakiler açıklama olarak kabul edilir.
2. Tanımlama ve bildirimler bölümü Bu bölümde önişlemci komutları, değişken tanımlamaları, sabit değer atamaları gibi bildirimler yapılır.
a) include C++’da komutlar benzerliklerine göre belirli kütüphanelerde toplanmışlardır. Programda hangi komutlar kullanılcaksa ilgili kütüphane adları programa include ile eklenmelidir. Kullanımı: #include < kütüphane adı >
C++’daki bazı kütüphaneler Açıklama stdio.h C (standart) için standart giriş/çıkış komutları iostream.h C++ için giriş/çıkış komutları conio.h Ekranla ilgili komutlar math.h Matematik fonksiyon komutları string.h Alfasayısal işlem komutları dos.h DOS fonksiyon komutları
b) define Bazı ifade veya formüllerin sembolik bir isme aktarılmasında kullanılan önişlemci komutu. Kullanımı: #define sembolik_isim eşdeğer_ifade
define için örnek #include <iostream.h> #define DaireAlan(r) 3.14*r*r main() { float r, Alan; cout << “Yaricapi giriniz: “; cin >> r; Alan = DaireAlan(r); cout << “Dairenin alani: “ << Alan; } Yaricapi giriniz: 3 Dairenin alani: 28.26
c) Özel bilgi tipi tanımlama Programcı standart bilgi tipleri cinsinden kendi özel bilgi tiplerini oluşturabilir. Kullanımı: typedef standart_bilgi_tipi özel_bilgi_tipi_adı; typedef int tamsayi; typedef float ondalikli;
d) Veri alanı tanımlama Birden fazla içeriğe sahip veri alanı oluşturulmasında “struct” kullanılır. Kullanımı: struct veri_alani_adi { bilgi_tipi_1 veri_alt_alanı_1; bilgi_tipi_2 veri_alt_alanı_2; … bilgi_tipi_n veri_alt_alanı_n; } veri_alanı_değişkenleri;
Örnek: struct Saat { int Saat; int Dakika; int Saniye; } SaatTipi; veya };
e) Değişken bildirimi Tüm değişkenler isim ve bilgi tipi olarak bildirilmelidir. Kullanımı: bilgi_tipi değişken_adı; Örnek: int Sayi;
3. Alt programlar bölümü C++ programları genellikle, “function” olarak adlandırılan birçok alt programın birleşiminden oluşur. Kullanımı: fonksiyon_bilgi_tipi fonksiyon_adı (parametreler) bilgi tipi bildirimleri; { Yerel bildirimler; …; }
Örnek: #include <iostream.h> int Topla ( a, b) int a, b; { int c; c=a+b; return c; } main() int x, y; cout << “Iki tamsayi giriniz: “; cin >> x >> y; cout << “Sayilarin toplami= “ << Topla(x,y); Iki tamsayi giriniz: 3 6 Sayilarin toplami= 9
4. Ana program bölümü Temel işlem ve kontrollerin olduğu kısım C++’da “main()” fonksiyonudur. Kullanımı: main() { …; }