Mobil Programlama

iOS

DERS PROGRAMI
iOS 201 Ders Programı

İç İçe if Deyimleri

Lisans: Creative Commons 11.12.2020 tarihinde güncellendi
Bakabileceğiniz Etiketler: Eğitmen: Geleceği Yazanlar Ekibi

 

Tek bir if deyimi programın iki seçenekten birini seçmesine olanak sağlar. Fakat birçok pratik uygulamada tek bir if deyimi yetersiz kalır. Birinci kararı aldıktan sonra ikinci karar, ikinciden sonra üçüncü kararın alınması gerekebilir. Bu tipte bir program akışı, iç içe if deyimlerini (Nested if Statements) gerektirir. Diyelim üç tam sayıyı kabul eden ve bunların en küçüğünü bulan ve yazdıran bir program yazmak istiyoruz. İç içe if deyimleriyle programı aşağıdaki gibi yazabiliriz:

Konsol uygulaması şeklinde geliştirdiğimiz projenin kod sayfasında main fonksiyonunu aşağıdaki gibi oluşturalım:

 

#import <Foundation/Foundation.h>
 
int main(int argc, char* argv[])
{
    NSAutoreleasePool *pool=[[NSAutoreleasePool alloc] init];
    
    NSLog(@"BIRINCI SAYI,A...");
    int a = 0;
    scanf("%i",&a);
    NSLog(@"BIRINCI SAYI,B...");
    int b = 0;
    scanf("%i",&b);
    NSLog(@"BIRINCI SAYI,C...");
    int c = 0;
    scanf("%i",&c);
    if (a<b)
    {
        if (a<c)
        {
            NSLog(@"EN KUCUK SAYI = %d", a);
        }
        else
        {
            NSLog(@"EN KUCUK SAYI = %d", c);
        }
    }
    else if (b<c)
    {
        NSLog(@"EN KUCUK SAYI = %d", b);
    }
    else
    {
        NSLog(@"EN KUCUK SAYI = %d", c);
    }
    [pool drain];
    return 0;
}

 

 

PROGRAMIN ÇIKTISI:

 

İç içe if deyimleri, her else’in doğru if ile uyuşması konusunda problem yaratır. Bu genellikle yakındaki else problemi adıyla anılır. Mesela yukarıdaki programda, ilki else, ikincisi if ile ilişkilidir. Genel kural şudur:

 

Bir else, kendisinden önce gelen en yakın if ile ilişkilidir.

Bununla birlikte her bir if deyimi sadece bir else cümleciğine sahip olabilir.