250 likes | 451 Views
BPR151 ALGORİTMA VE PROGRAMLAMA - I. Öğr . Gör. Bayram AKGÜL bayramakgul@bartin.edu.tr http://bmyo.bartin.edu.tr/akgul. Bugünkü konular. Veri tipleri ve özellikleri Değişken tanımlama ve değer atama. Sayısal Veri Tipleri ve Özellikleri. Değişken Tipi Kategorileri. Integer.
E N D
BPR151 ALGORİTMA VE PROGRAMLAMA - I Öğr. Gör. Bayram AKGÜL bayramakgul@bartin.edu.tr http://bmyo.bartin.edu.tr/akgul
Bugünkü konular • Veri tipleri ve özellikleri • Değişken tanımlama vedeğer atama
Integer • Tam sayıları ifade eder • Hem negatif hem pozitif tam sayılar • 4 byte : -2.147.483.648 den 2.147.483.647 e kadar (toplam 4.294.967.296 adet sayı) • C#’ta ifade tarzı: intveya Int32 • Örnek: inttoplam; /* işaretli integer */ toplam = 100; /* positif olabilir */ toplam = -20; /* negatifolabilir */ inttoplam = 32000; /* kodlama sırasında */ /* ilk değer verilebilir */
UnsignedInteger • İşaretsiz tam sayıları ifade eder • Sadece Pozitifolabilir • 4 byte : 0 dan 4,294,967,295 e kadar • (toplam 4,294,967,296 adet sayı) • C# ‘ta ifade tarzı: uintveya UInt32 • Örnek: uintsayi; sayi= 12u; /* positif olabilir */ sayi= -24u; /* hatanegatif olamaz!*/ uintsayi= 4567u; /* kodlama sırasında */ /* ilk değer verilebilir */
Short • Kısa tam sayıları ifade eder (kısa integer) • Hem negatif hem pozitif olabilir • 2 byte: -32768 den 32767 toplam 65536 sayı • C#’ta ifade tarzı: shortveya Int16 • Örnek: shorttoplam; /* işaretli */ toplam = 100; /* positif olabilir */ toplam = -20; /* negatifolabilir */ shorttop= 32000; /* kodlama sırasında */ /* ilk değer verilebilir */
ushort • İşaretsiz kısa tam sayıları ifade eder • Sadece pozitif olabilir • 2 byte: 0 dan 65535’e kadar toplam 65536 değer • C#’ta ifade tarzı: ushortveya UInt16 • Örnek: ushorttoplam; toplam = 100; /* positif olabilir */ toplam = -20; /* hatanegatif olamaz!*/ ushorttop= 32000; /* kodlama sırasında */ /* ilk değer verilebilir */
long • Uzun tam sayıları ifade eder (uzun integer) • Hem negatif hem pozitif olabilir • 8 byte: -9,223,372,036,854,775,808 - 9,223,372,036,854,775,807 • C#’ta ifade tarzı: longveya Int64 • Örnek: longtoplam; /* işaretli */ toplam= 100L; /* pozitif olabilir */ toplam = -20L; /* negatifolabilir */ longtoplam= 32000L; /* kodlama sırasında */ /* ilk değer verilebilir */
ulong • İşaretsiz uzun tam sayıları ifade eder • Sadece pozitif olabilir • 8 byte: 0 dan 18,446,744,073,709,551,615 • C#’ta ifade tarzı: ulongveya UInt64 • Örnek: ulongtoplam; toplam = 100UL; /* positif olabilir */ toplam = -20UL; /* hatanegatif olamaz!*/ ulongtop= 32000UL; /* kodlama sırasında */ /* ilk değer verilebilir */
sbyte • Bir byte tam sayıları ifade eder (çok kısa integer) • Hem negatif hem pozitif olabilir • 1 byte: -128 den 127’ye kadar toplam 256 sayı • C#’ta ifade tarzı: sbyteveyaSByte • Örnek: sbytetoplam; /* işaretli*/ toplam = 100; /* positif olabilir */ toplam = -20; /* negatifolabilir */ sbytetop= 32; /* kodlama sırasında */ /* ilk değer verilebilir */
byte • 1 byte işaretsiz çok kısa tam sayıları ifade eder • Sadece pozitif olabilir • 1 byte: 0 dan 255’e kadar toplam 256 değer • C#’ta ifade tarzı: byteveyaByte • Örnek: bytetoplam; toplam = 100; /* pozitif olabilir */ toplam = -20; /* hatanegatif olamaz!*/ bytetoplam= 32; /* kodlama sırasında */ /* ilk değer verilebilir */
Virgüllü sayılar - float • Gerçek sayıları ifade eder (virgüllü kısmıyla) • Positifvenegatifolabilir • 4 byte : ±1.5e−45 to ±3.4e38 (7 basamak) • C de virgüllü sayıların ifade tarzı: floatveyaSingle • Örnek: float f; f = 0.12f; /* positif olabilir */ f = -245.56f; /* negatif olabilir */ float f = 4.567f; /* kodlama sırasında */ /* ilk değer verilebilir */
Daha uzun ve çok hassas virgüllü sayılar- double • Standart "double precision floating point" (gerçek) sayılardır. • float gibi, fakat çok daha büyük ve hassastır. • 8 byte : ±5.0e−324 to ±1.7e308 (15 veya 16 byte) • C#’taki ifade tarzı: doubleveyaDouble • Örnek: doublesayi; sayi= 3.12E+5; /* 312000.0 */ sayi= -45.678d; /* negatif */ doublesayi= 4.567d; /* ilk değer ataması */
Decimal • Virgüllü sayılar için geliştirilmiş bir tiptir. • double ve float tiplerine nispeten aynı alanda çok daha geniş bir değer aralığına sahiptir, ve çok daha hassastır. • 8 byte : (28-29 basamak) • C#’taki ifade tarzı: decimalveyaDecimal • Örnek: decimalsayi; sayi= 3.12m; /* pozitif */ sayi= -45.67m; /* negatif */ decimalsayi= 4.567m; /* ilk değer ataması */
Boolean • Doğru veya yanlış – 1/0 ifade eder • Sadece true veya false olabilir. (1 byte) • C#’ta ifade tarzı: boolveyaBoolean • Örnek: boolgecti; gecti= true; /* trueolabilir */ gecti= false; /* false olabilir */ boolgecti= true; /* kodlama sırasında */ /* ilk değer verilebilir */
Karakter Değişkenler • Tek bir karakteri ifade eder, C#’ta 2 byte yer tutar. • Karakterler alfabedeki (büyük/küçük) harfler • 0’dan 9’a 10 rakam • Bazı özel semboller +#@½%&$.*?!£‘=-:/*^(){}[]~;,<> • Karakterler tırnak işareti arasında kullanılır • örneğin. 'A' charc; c = 'A'; /* A harfi*/ c = '9'; /* 9 rakamı */ charc = 'c'; /* ilk değer atama */
Özel Karakterler • Karakterler tek tırnak arasında gösterilir • Tırnak işaretini nasıl göstereceğiz? char c; c = '''; char c; c = '\''; • Ters slaş(\) bir karakterin önünde kullanılırsa bu durum Escape Sequence (kaçış dizisi)olarak adlandırılır. • - Kendisinden sonra gelecek Karakterin anlamını yok eder.
Escape Sequence – kaçış dizisi • Ters slaş (\) ve bir karakterden oluşur. Derleyiciye sonraki karakterin özel olarak algılanması işaretini verir. • Sık kullanılanlar • \nsonraki satıra geç • \tsonraki sekmeye geç • \r satır başına dön • \\ters slaş karakteri • \'tek tırnak • \"çift tırnak : çift tırnak '"'şeklinde yazılabilir ancak stringlerin içinde "\""şeklinde yazılmalıdır.
Yazı Değişkenleri • Yazıları (karakter dizilerini) depolamak için kullanılır. • Referans tiptir, dolayısıyla kesin boyutları yoktur. • C#’taki ifade tarzı: stringveyaString • Örnek: stringisim; isim= "Ali" ; /* Ali*/ isim= "007 Alican " ; /* 007 Alican*/ stringisim= "Ali Kara" ; /* ilk değer atama */
sizeof Operatörü • sizeof operatörünü kullanarak değişken tiplerinin gerçekte hafızada kaç byte yer tuttuğunu öğrenebilirsiniz. int a = sizeof(char); /* 2 döner*/ int b = sizeof(short); /* 2 döner */ int c = sizeof(int); /* 4 döner */ int d = sizeof(long); /* 8 döner */ int e = sizeof(float); /* 4 döner */ int f = sizeof(double); /* 8 döner */ 1 2 4 8 4 8 a b e f c d
Değişken örnekleri & atama int x; /* 1 int tanımlar */ floatinch, santimetre; /* 2 float tanımlar */ double d; /* 1 double tanımlar */ x = -85; /* x e -85 atanır */ d =3.4545673d; /* d ye 3.4545673 atanır */ inch=75.0f; /*inch’e75.0 atanır */ santimetre=23.4f; /*santimetreye 23.4 atanır */ • =atama operatörüdür • kullanım: değişken=değer; • Değişkenlerin ifade ettiği hafıza alanlarındaki değerleri değiştirir. 75.0 3.4545673 -85 23.4 inch x d santimetre
Değişken Tanımlama & İlk Değer Atama • Değişkenlere tanımlandığı yerde ilk değer verilebilir inttoplam = 32000; /* pozitif olabilir */ int x = -23, y = 458; /* negatif olabilir */ float f1 = 34.5f; floatinch= 75.3f, santimetre= 0; double d1, d2 = -4.567d; /* negatifolabilir*/ double d3 = 5e+3; /* bilimsel kodlama: 5x10^3 */ d1 = 675e-4; /* 675x10^-4 = 0.0675 */ 32000 -23 458 34.5 75.3 0.0 0.0675 -4.567 5000 toplam x y f1 santimetre inch d1 d2 d3
Dinlediğiniz için teşekkürler… Öğr. Gör. Bayram AKGÜL