Profili Göster

ActionScript 3.0 : Koşullu İfadeler (if..else..if, switch)

Muttalip TULGAR Tarih: 22/08/2008 Yorum: 0 adet

Okunma : 870 Tutanlar: Bu yazıyı 0 kişi tuttu.

ActionScript 3.0 : Koşullu İfadeler

Programcılığın olmazsa olmazlarından olan koşullu ifadeler, istenilen şartları yerine getirmede veya bu şartların gerçekleşip gerçekleşmeme durumunu kontrol etmede kullanılan ifadelerdir. Koşullu ifadelerde test edilen koşul sağlanıyorsa "true" Boolean değeri, aksi halde "false" Boolean değeri alınır.
ActionScript 3.0, üç farklı koşullu ifadeyi kullanır: "if..else", "if..else if" ve "switch".

1)"if ..else" İfadesi:

Belirtilen kod blokları içerisinde bir durumu kontrol etmek için kullanılan koşullu ifadedir.


if (koşul) {
Koşul gerçekleştiyse yapılacak işler
}
else {
Koşul gerçekleşmediyse yapılacak işler
} 

var puan: Number=70;
if (puan >=50) {
    trace("Geçti");
} else {
    trace("Kaldı");
}

// Geçti

Bu örnekte, if (puan >=50) komut satırında, eğer "puan" adlı sayısal değişken 50’den büyük ve eşitse kontrolü yapılmaktadır. Koşul gerçekleştiği için "true" Boolean değeri üretiliyor ve program akışı trace("Geçti") komut satırının çalıştırılıp sonlanmasıyla bitiyor. Eğer koşul gerçekleşmeseydi, "false" Boolean değeri üretilecek ve program akışı "else" (değilse) ifadesine atlayıp trace("Kaldı") satırı ile bitecekti.

2) "if ..else if" İfadesi:

Birden fazla koşulu kontrol etmek için kullanılan koşullu ifadedir. İlk koşuldan itibaren tüm koşullar sırasıyla kontrol edilir. Hangi koşul sağlandıysa, hemen onun altındaki ({ } blokları arasındaki) komutlar çalıştırılır ve program tarafından koşul kontrolü sona erdirilir.


if (koşul) {
Koşul gerçekleştiyse yapılacak işler
}
else  if  (koşul2) {
Koşul2 gerçekleştiyse yapılacak işler
} 
else  if  (koşul3) {
Koşul3 gerçekleştiyse yapılacak işler
} 

var puan:Number=79;

if (puan >=90) {
    trace("Notunuz: A");
} else if (puan >=80){
    trace("Notunuz: B");
}
else if (puan >=70){
    trace("Notunuz: C");
}
else if (puan >=60){
    trace("Notunuz: D");
}
else if (puan >=0){
    trace("Notunuz: F");
}
// Notunuz: C 

Yukarıdaki örnekte "puan" adlı değişkene, 79 sayısal değeri atanıyor. if (puan >=90) komut satırından itibaren "puan" değişkeninin değeri sayısal olarak karşılaştırmaya tabii tutuluyor. İlk koşul sağlanmadığı için program akışı else if (puan >=80) komut satırına geçiyor ve burada koşulun gerçekleşip gerçekleşmediği test ediliyor. Ancak burada da koşul gerçekleşmeyince program akışı aşağıdaki satıra geçiyor.


 else if (puan >=70){
    trace("Notunuz: C");
}

Burada koşul sağlandığı için yani 79 değerine sahip "puan" değişkeni, 70’den büyük ve eşit olduğu için "true" Boolean değeri üretilerek program akışı trace("Notunuz: C") komut satırından itibaren devam ediyor. Ancak koşul sağlanınca bir sonraki koşul olan


else if (puan >=0){
    trace("Notunuz: F");
}

koşul kontrolü yapılmıyor.

"if..else if" deyimi ile birden fazla koşul kontrolü yapılırken eğer birden fazla koşulda doğru olarak sağlanıyorsa, program akışı ilk koşulun sağlandığı yerden itibaren devam eder. Geriye kalan koşullar doğruluk sağlasa bile kontrol edilmez.

3) "switch" İfadesi:

"switch" koşul ifadesi mantık olarak "if..else if" deyimine çok benzemekle beraber, birden fazla koşul kontrolü yapılırken "if..else if" deyime göre daha basit bir yapıya sahiptir. "switch" yapısı "switch" anahtar kelimesi ile başlar ve kontrol edilecek koşul değişkeni parantez içinde belirtilir. Her "case" ifadesinden sonra ise "break" ifadesinin kullanılması zorunludur. "break" ifadesi ise, "switch" yapısından dışarı çıkmayı ve alttaki kodlara geçmeyi sağlar.

Ayrıca "default" ifadesi de "switch" ifadesi ile birlikte kullanılmaktadır. "default" ifadesinin altındaki kod bloku, "defult" ‘tan önceki "case"’lerin hiçbiri koşulu sağlayamadığı zaman çalışır ve tüm "case"’lerden sonra gelir.



var puan:Number=60;
switch (puan) {
    case 90 :
        trace("Notunuz: A");
        break;
    case 80 :
        trace("Notunuz: B");
        break;

    case 70 :
        trace("Notunuz: C");
        break;
    case 60 :
        trace("Notunuz: D");
        break;
    case 0 :
        trace("Notunuz: F");
        break;
    default :
        trace("Böyle bir not yok!");
        break;
}
// Notunuz: D

Yukarıdaki örnekte "puan" adlı sayısal bir değişken oluşturuluyor. Sonra "puan" değişkeni, switch (puan) komut satırı ile koşul kontrolüne sokuluyor. "puan" değişkeni, case ifadeleri ile sırasıyla koşulların gerçekleşip gerçekleşmediği konusunda teste tabii tutuluyor. 60 değerine sahip "puan" değişkeninin, önce case 90: ifadesiyle eşit olup olmadığı kontrol ediliyor. Kontrol sonucu doğru olmadığı için, switch (puan) komut satırının yardımıyla koşul kontrolu case 80: geçiyor. Burada da koşul gerçekleşmeyince case 70: kontrolü yapılıyor. Yine "puan" değişkeninin sayısal değeri 70 olmadığı için koşul sağlanamadığından "switch" ifadesi koşul kontrolünü case 60: ‘a yönlendiriyor. "puan" değişkeninin değeri 60 olduğu için case 60: koşulu sağlanıyor ve case 60’ın altında yer alan kod satırları çalıştırılıyor. trace("Notunuz: D") komut satırı çalıştırıldıktan sonra program akışı "break" komutuna geldiğinde artık "switch" koşul kontrolünden çıkılıyor. Eğer "break" satırı olmasaydı; aşağıdaki örnekte olduğu gibi program akışı case 60: ‘da koşul sağlanmış olsa bile case 0: ile devam edecekti.


var puan:Number=60;
switch (puan) {
    case 90 :
        trace("Notunuz: A");

    case 80 :
        trace("Notunuz: B");

    case 70 :
        trace("Notunuz: C");

    case 60 :
        trace("Notunuz: D");

    case 0 :
        trace("Notunuz: F");

    default :
        trace("Böyle bir not yok!");
        break;
}
// Notunuz: D
// Notunuz: F
// Böyle bir not yok!

Eğer "switch" koşul kontrolü, "case" ‘ler ile hiçbir koşulu sağlayamazsa "default" satırı ile koşul kontrolünü bitirir.


var puan:Number=50;
switch (puan) {
    case 90 :
        trace("Notunuz: A");
        break;
    case 80 :
        trace("Notunuz: B");
        break;

    case 70 :
        trace("Notunuz: C");
        break;
    case 60 :
        trace("Notunuz: D");
        break;
    case 0 :
        trace("Notunuz: F");
        break;
    default :
        trace("Böyle bir not yok!");
        break;
}
// Böyle bir not yok!

aç-kapa İçeriğin rss beslemesi kullanımda değil Yorumlar

İçeriğe kayıtlı yorum bulunmuyor. İlk yorumu siz buradan ekleyebilirsiniz.


yeni üyelik | şifremi unuttum

aç-kapa Yarışma 6. İstanbul Uluslararası Animasyon Festivali (IAFISTANBUL) Yarışması

6. İstanbul Uluslararası Animasyon Festivali (IAFISTANBUL) Yarışması

13-22 Kasım 2009 tarihleri arasında düzenlenecek 6. İstanbul Uluslararası Animasyon Festivali için film yarışması başvuruları başlamıştır. Herkese ...
Kategori: Yarışma

aç-kapa Yarışma SKF Türk 7.Ulusal Fotoğraf Yarışması

SKF Türk 7.Ulusal Fotoğraf Yarışması

Konusu: 2010 yılını Avrupa Kültür Başkenti olarak kutlayacak olan İstanbul’un katılmcılar gözüyle görsel bir belgesini ortaya çıkarmak amacıyla ...
Kategori: Yarışma

aç-kapa Kongre 4. Ulusal Tasarım Kongresi: Tasarım veya Kriz

4. Ulusal Tasarım Kongresi: Tasarım veya Kriz

Türkiye’deki tüm tasarım araştırmacıları, akademisyenleri, tasarımın pozitif katkısı üzerine kafa yoran herkes "tasarım veya kriz" baş...
Kategori: Kongre

aç-kapa Yarışma 3. Uluslararası Ekslibris Yarışması: İstanbul 2010

3. Uluslararası Ekslibris Yarışması: İstanbul 2010

İstanbul Ekslibris Dernegi, Feyziye Mektepleri Vakfı ve Işık Üniversitesi, kitaplar için mülkiyet işareti olarak kabul edilen ve üzerinde estetik dege...
Kategori: Yarışma

üyeler Son Kahramanlar...

stats Kimler Burada? web stats

Son 1 dakika içinde MMIstanbul' da 346 (2 kayıtlı, 344 ziyaretçi) kullanıcı varmış. Login durumda olanlar aşağıda:

Blog Bölümü Blogevi.com'a Taşınıyor

Selam arkadaşlar MMIstanbul’da , tasarımcı ve programcıların blog yazılarını "feedleyerek" MMIstanbul okurlarını MMIstanbul ...

7.500'üncü üyemiz Cem Koç!

Neler Yapılabilir?

500 Hatası Hakkında!

Reklam, MMIstanbul ve Yeni Projeler (Durumumuz Bu Tarzında)

coldfusion mysql ubuntu