Şart cümleleri bir programlama dilinin olmazsa olmazlarındandır. Çünkü yazacağımız script kodların akışını yönlendirirken şart cümlelelerine başvururuz. Şart cümleleri progamın akışını doğrudan kontrol eden yapılar olduğu için dikkatle kullanılmaları gerekmektedir. Şart cümlelerini kullanırken daha önce operatörler başlığında üzerinde durduğumuz karşılaştırma ve mantık operatörlerine başvururuz. Şimdi karar yapılarına / şart cümlelerine genel olarak bir bakalım

if yapısı
Genel Kullanımı if(şart)progama satırı;
  if(şart) {
progama satırı1;
program satırı2;
....
program satiri n //n bir tamsayi
}

if yapısında şart cümlesi sağlandığında parantez içerisinde verilen şart cümlesini takip eden program satırı ya küme parantezi içerisindeki komut satırları çalıştırılır. Şart sağlanmadığında bu program satırı ya da satırları asla çalışmaz. Şimdi bu şart yapısına küçük bir örnek verelim, sisteme rasgele bir sayı tutturup bunun tek ya da çift olduğunu debug ekranında yazdırmaya çalışıyoruz.

var sayi:Number=Math.round(Math.random()*99+1);//1-100 arasıdan rasgel bir sayi üretiliyor

if(sayi %2){ // sayi degiskeninin 2 ile bölümünden kalan 0 dan farklı ise şart doğru kabul edilecektir.
trace("Tek sayi");
}
if(!(sayi %2)){
// sayi degiskeninin 2 ile bölümünden kalan 0 ise şart yanlış olacak ! (not/tümleyen operatörü) ile şart doğruya dönüşecektir.
trace("Çift sayi");
}

//bu örneğimizde ise nesne öncelikle 0-360 derece arasinda döndürülmekte dönme açısı 360 derece olduğunda ise 360-0 arasında döndürülmeye başlanmakta dönme açısı 0 olduğunda ise işlem başa dönerek kısır bir döngü ile animasyon çalıştığı sürece devam etmektedir.

var ileriGeri:Boolean;

if(ileriGeri==true && pervane_mc._rotation<360)pervane_mc._rotation+=10;
if(pervane_mc._rotation==360)ileriGeri==false;
if(ileriGeri==false && pervane_mc._rotation>0360)pervane_mc._rotation-=10;
//ileriGeri==false yerine ! ileriGeri de yazılabilir tercih sizin
if(pervane_mc._rotation==0)ileriGeri==true;

if-else yapısı
Genel Kullanımı if(şart)progama satırı (doğru ise) ; else program satiri; (yanlış ise)
  if(şart) { //şart doğru ise yapilacaklar
progama satırı1;
program satırı2;
....
program satiri n //n bir tamsayi
} else {//şart yanlış ise yapılacaklar
program satırı1;
program satırı2;
....
program satiri n //n bir tamsayi
}

Bazen verdiğimiz bir şart sağlandığında bir işlem sağlanmadığında ise başka bir işlem yapılmasını isteriz işte böyle durumlarda if-else yapısını kullanırız. Kullanım mantığı if yapısı ile aynıdır. Şarta bağlı olarak çalıştırılmak istenen tek kod satırı varsa doğrudan yazılır birden fazla kod satırı varsa bunlar küme parantezi içerisine alınarak yazılır. Yukarıda verilen yazım şekline bağlı kalınız aksi durumda hatalarla karşılaşırsınız özellikle de else kelimesinden önce yer alan noktalı virgülü lütfen gözardı etmeyin. Ayrıca if- else yapısını arka arka yazılan iki adet if yapısında ayıran en önemli özellik if-else yapısında şart doğru iken bir bölüm yanlış iken diğer bölüm çalıştırılır ancak şart doğru olduğunda yapılması gerekenler yapıldıktan sonra artık yanlış iken şartına bakılmaz. Oysa ard arda yazacağınız if yapılarında her iki if yapısı da şartlar sağlansın ya da sağlanmasın mutlaka kontrol edilir. Şimdi yukarıda verdiğimiz tek-çift örneğini yeniden yazalım:

var sayi:Number=Math.round(Math.random()*99+1);//1-100 arasından rasgele bir sayi üretiliyor

if(sayi %2){ // sayi degiskeninin 2 ile bölümünden kalan 0 dan farklı ise şart doğru kabul edilecektir.
trace("Tek sayi");
}else{
// sayi degiskeninin 2 ile bölümünden kalan 0 ise
trace("Çift sayi ");
}

//bu örneğimiz animasyonumuz sayac 400 den küçük olduğu sürece 2. ve 3. kareler arasında gidip gelecktir. sayac değişkeni 400 olduğunda da animasyonumuz 1. anakaraye gidecek ve oynatım durdurulacaktır.
//3. anakareye yazılan script kodlar

if(sayac<400) gotoAndPlay(2); else gotoAndStop(1);

if-else if yapısı
Genel Kullanımı  
 

if(şart -1 ) { //şart1 doğru ise yapilacaklar
program satırları ;
}else if(şart -2 ){//şart2 doğru ise yapılacaklar
program satırları;
}else if(şart -3 ){//şart3 doğru ise yapılacaklar
program satırları;
.......
}else if(şart -n ){//şart n doğru ise yapılacaklar burada n bir tamsayıdır
program satırları;
}else{//yukarıda verilen şartların hiçbiri doğru değil ise
program satırları ;
}

Bazı durumlarda sadece tek bir şartın doğru ya da yanlış olup olmadığını kontrol etmek yerine birden fazla şartın doğru olup olmadığını kontrol etmek isteriz. Bu durumda if-else-if yapısından yararlanırız. Burada en sonda yer alan else bölümünü kullanmak seçimliktir istmezseniz yani yazdığınız şartlar sağlanmadığında hiç bir şey yapılmasını istemiyorsanız bunu kullanmazsınız. Şimdi bu yapıyı basit bir örnekle ele alalım.

var sayi:Number=Math.round(Math.random()*20);//0-20 arasından rasgele bir sayi üretiliyor

if(sayi==0){ //sayi sıfır ise ki burada !sayi şekilde bir şart da yazabilirsiniz her ikisi de aynı olacaktır.
trace(""SIFIR);
}else if(sayi==1){
//sayi bir ise
trace("BİR");
}else if(sayi==2){
//sayi iki ise
trace("İKİ");
}else if(sayi==3){
//sayi üç ise
trace("ÜÇ");
}else if(sayi==4){
//sayi dört ise
trace("DÖRT");
}else if(sayi==5){
//sayi beş ise
trace("BEŞ");
}else if(sayi==6){
//sayi altı ise
trace("ALTI");
}else if(sayi==7){
//sayi yedi ise
trace("YEDİ");
}else if(sayi==8){
//sayi sekiz ise
trace("SEKİZ");
}else if(sayi==9){
//sayi dokuz ise
trace("DOKUZ");
}else{
//sayi 0-9 aralığı dışında ise
trace("0-9 aralığı dışında bir seçim ");
}

switch() yapısı
Genel Kullanımı  
 

switch (kontrol değişkeni) {
case değer-1:
program satırları;
break;//program akışını kesmek için kullanılır
case değer-2:
program satırları;
break;//program akışını kesmek için kullanılır
....
case değer-n: //n bir tamsayı
program satırları;
break;//program akışını kesmek için kullanılır
default: //yukarıda verilen şartların hiç biri sağlanmadığında
break;
}

Bazı durumlarda ise tek bir değişkenin sahip olduğu değeri kontrol ederken switch() deyimini kullanırız. Aslında aynı işlemi if-else-if yapısıyla da yapmak mümkündür lakin switch() deyimi yazımı daha kolay bir yapıdır. Tercih kullanıcıya aittir ancak C, C++ ya da Java programlama dillerinden yazanların aşina oldukları bir laf vardır "if yapısının makine çevrimi daha düşüktür bu nedenle daha hızlıdır..." Sizde böyle düşünüyorsanız switch() yerine script yazarken if-else kullanabilirsiniz. Takdir sizin. Şimdi bir örnek ile bu yapıya daha yakından bakalım.
// Bu örneğimizde Flash-8 standart kütüphanesinden iki adet button nesnesi alınmış sonra Label özellikleri "ÇALIŞTIR" ve "ÇIKIŞ" olarak ayarlanmıştır. Aşağıda verdiğimiz kod ise her iki nesneyi de dinlemekte ve nesnelerin Label özelliklerini kontrol ederek hangisinin tıklandığını debug penceresinde yazdırmaktadır.

var dugme:Object= new Object();
dugme.click=function(nesne:Object):Void{
var objID:String= new String();
objID=nesne.target.label;
switch(objID){
case "ÇALIŞTIR":
trace("Calıştır Tıklandı");
break;
case "ÇIKIŞ":
trace("ÇIkış Tıklandı");
break;
default:
break;
}
}
//dugme tıklandı sona erdi
cikis_btn.addEventListener("click",dugme);
calistir_btn.addEventListener("click",dugme);

//Şimdi if-else-if yapısında verilen örneği switch() deyimi ile yeniden yazalım
var sayi:Number=Math.round(Math.random()*20);//0-20 arasından rasgele bir sayi üretiliyor

switch(sayi){ //sayi sıfır ise ki burada !sayi şekilde bir şart da yazabilirsiniz her ikisi de aynı olacaktır.
case 0:
trace(""SIFIR);
break;
case 1:
trace("BİR");
break;
case 2:
trace("İKİ");
break;
case 3:
trace("ÜÇ");
break;
case 4:
trace("DÖRT");
break;
case 5:
trace("BEŞ");
break;
case 6:
trace("ALTI");
break;
case 7:
trace("YEDİ");
break;
case 8:
trace("SEKİZ");
break;
case 9:
trace("DOKUZ");
break;
}default : {
//sayi 0-9 aralığı dışında ise
trace("0-9 aralığı dışında bir seçim ");
break;
//ister yazın isterseniz yazmayın çünkü bu satırdan sonra yürütülecek başka script satırları yok.
}

Şart cümleleri örneklerimizde bolca kullanılmaktadır. Bu nedenle daha fazla kod örneği yazmanın gereksiz olduğunu düşünüyorum. Lütfen yapılan örnekleri kendiniz kodlayın ki bir faydası olsun.

Yardımcı olması dileğiyle