iOS 101Başlangıç seviyesi derslerde iOS uygulama geliştirme ortamını detaylı olarak inceliyoruz.

Tüm Eğitimleri Aldın mı? Kendini sınamanın tam zamanı

Haydi Sınava Gir

İlişkisel Operatörler

Kategori : Mobil | Lisans : Creative Commons (by-nc-sa) | En son 11.05.2016 tarihinde güncellendi
Eğitmen : Geleceği Yazanlar Ekibi
Etiketler : obj-c ilişkisel operatörler

Aşağıdaki tablo bu operatörler hakkında bilgi vermektedir:

Operatör

Sembolü

Kullanılışı

Işlem Sonucu

Büyüktür

a > b

a b’den büyükse sonuç 1 aksi takdirde 0

Küçüktür

a < b

a b’den küçükse sonuç 1 aksi takdirde 0

Büyük veya eşit

> =

a > = b

a b’den büyük veya b’ye eşitse sonuç 1 aksi takdirde 0

Küçük veya eşit

< =

a < = b

a b’den küçük veya b’ye eşitse sonuç 1 aksi takdirde 0

Eşittir

= =

a = = b

a, b’ye eşitse sonuç 1 aksi takdirde 0

Eşit değildir

! =

a ! = b

a b’ye eşit değilse sonuç 1 aksi takdirde 0

 

Tablodaki operatörlerden >, <, >= ve <= operatörlerinin öncelikleri aynıdır. == ve != operatörleri ise daha düşük önceliğe sahiptir. Hepsi için birleşme özelliği soldan sağa doğrudur. Burada önemli bir nokta, float tipindeki verilerin eşitlik bakımından (==) karşılaştırmasında ortaya çıkan sorunlardır.

Örneğin;

2.0 / 7 + 2.0 / 7 + 3.0 / 7 = = 1.0

karşılaştırması cebirsel olarak doğru olmasına rağmen, float türündeki matematiksel işlemlerde yapılan kesme ve yuvarlamalardan ötürü, her bilgisayarda doğru sonuç vermeyebilir. Eşitlik karşılaştırmasını, programın mantığı olanak sunduğu sürece int değerlerle yapmalıdır. 

Aşağıdaki program, ilişkisel operatörleri kullanan ifadeler içerir:

 

#import <Foundation/Foundation.h>
 
int main(int argc, char* argv[])
{
    NSAutoreleasePool *pool=[[NSAutoreleasePool alloc] init];
 
    int a = 4, b = -2, c = 3;
    float p =3.7, q = 3.2;
    NSLog(@"\na > b + c =%i \n", a > b + c);
    NSLog(@"\na += (p >= c - 2) =%i \n", a += (p >= c - 2));
    NSLog(@"\na+++b == a != p * 3 - 1=%i \n", a+++b==a != p * 3 - 1);
    NSLog(@"\na - b == p > q > b < c = %i\n", a - b == p > q > b <c);
    NSLog(@"\np > q > b < c =%i \n", p > q > b < c );
    NSLog(@"\np > q > b =%i \n", p > q > b);
    return 0;
}

 

 

PROGRAMIN ÇIKTISI:

 

AÇIKLAMA:

İfadelerden bir tanesini açıklayalım. Diğerlerini yukarıda anlatılan kurallara göre siz test edin.

a + = ( p > = c – 2)  ifadesini alalım:

 

Önce parantez içi hesaplanır:

3.7 > 0 3 – 2

3.7 > = 1

 

Sonuç doğru olduğu için değeri 1 olarak alınır ve

a + = 1  ;

a = a + 1 ; hesaplanır ve sonuç  a = 5 olarak bulunur.