Ünite 14: Değişmezler, Sabitler ve Numaralandırma — Alıştırmalar
Ders kitabının açık uçlu alıştırmaları. Bunlar çoktan seçmeli sınav sorusu değil — düşünmeni, araştırmanı, kendi cümlelerinle anlatmanı isteyen etkinlikler. Kitabın verdiği örnek yanıtlar kapalı duruyor; önce kendin dene.
Alıştırma 1myders hazırladı
Değişmezler (literals) konusunu dikkate alarak, bir ondalık sayının derleyici tarafından varsayılan olarak hangi veri türünde algılandığını ve bu varsayılan türü 'float' olarak değiştirmek için ne yapılması gerektiğini araştırıp birer kod örneğiyle açıklayınız.
Yanıt / ipucu
Ondalık sayılar varsayılan olarak 'double' türünde kabul edilir. Bu varsayılanı geçersiz kılıp sayıyı 'float' yapmak için sayının sonuna 'f' veya 'F' soneki eklenmelidir (örneğin: 3.14f).
Alıştırma 2myders hazırladı
Tamsayı değişmezlerinin farklı sayı tabanlarında nasıl tanımlandığını karşılaştırınız. Ondalık, onaltılık (hexadecimal) ve ikili (binary) tabanlarda '15' sayısını temsil eden kod satırlarını yazarak aralarındaki önek farklarını gösteriniz.
Yanıt / ipucu
Ondalık tabanda önek kullanılmaz (15). Onaltılık tabanda '0x' veya '0X' öneki kullanılır (0xF), ikili tabanda ise '0b' öneki tercih edilir (0b1111).
Alıştırma 3myders hazırladı
Bir programda 'const' (sabit) tanımlarken uyulması gereken kuralları ve kısıtlamaları inceleyiniz. Sınıfların veya dizilerin neden 'const' olarak tanımlanamayacağını, sabitlerin derleme zamanındaki davranışı üzerinden tartışınız.
Yanıt / ipucu
Sabitler tanımlandıkları anda değer almalı ve sadece yerleşik türlerden (int, string vb.) oluşmalıdır. Derleme zamanında değerleri doğrudan ara dile (IL) gömüldüğü için, çalışma zamanında oluşturulan dinamik nesneler, sınıflar veya diziler 'const' olamaz.
Alıştırma 4myders hazırladı
Numaralandırma (enum) yapısının kodun okunabilirliğine katkısını değerlendiriniz. Haftanın günlerini temsil eden bir enum tanımlayarak, varsayılan başlangıç değerini ve veri türünü nasıl değiştirebileceğinizi gösteren bir uygulama örneği hazırlayınız.
Yanıt / ipucu
Enum yapısı sayısal değerlere anlamlı isimler vererek kodun okunabilirliğini artırır. Varsayılan olarak 'int' türünde ve 0'dan başlayan değerler, 'enum Gunler : byte { Pazartesi = 1, Sali }' şeklinde değiştirilerek 'byte' türüne ve 1 başlangıç değerine set edilebilir.
Alıştırma 5myders hazırladı
Numaralandırmalarda 'FlagsAttribute' özniteliğinin hangi amaçla kullanıldığını araştırınız. Dosya erişim yetkileri (Okuma, Yazma, Silme) senaryosu üzerinden bitsel operatörlerle nasıl çoklu durum birleştirmesi yapılabileceğini örnekleyiniz.
Yanıt / ipucu
FlagsAttribute, enum öğelerinin bitsel bayraklar olarak kullanılmasını sağlar. Bu sayede 'Okuma | Yazma' şeklinde bitsel 'VEYA' (|) operatörü kullanılarak tek bir değişkende birden fazla yetki veya durum bir arada saklanabilir.