İlinti İşlemleri

Mantıksal 'YANLIŞ' sıfır değeriyle temsil edilirken, mantıksal 'DOĞRU' sıfır olmayan herhangi bir değer ile temsil edilir.

İlinti işlemleri veya mantıksal işlemler içeren ifadeler 'YANLIŞ' (0) veya 'DOĞRU'dur (1).

a, b'ye eşitse doğru                         a == b;
a, b'ye eşit değilse doğru                   a != b;
a, b'den küçük ise doğru                     a < b;
a, b'den büyük ise doğru                     a > b;
a, b'den küçük veya b'ye eşit ise doğru      a <= b;
a, b'den büyük veya b'ye eşit ise doğru      a >= b;

İki reel sayının eşitliği karşılaştırılamaz. Çoğu durumda, virgülden sonra 15-inci basamaktaki değerler nedeniyle aynı görünen sayılar eşit olmayabilir. İki reel sayıyı doğru şekilde karşılaştırabilmek için bu iki sayının normalleştirilmiş farklarını sıfırla karşılaştırın.

Örnek:

bool CompareDoubles(double number1,double number2)
  {
   if(NormalizeDouble(number1-number2,8)==0) return(true);
   else return(false);
  }
void OnStart()
  {
   double first=0.3;
   double second=3.0;
   double third=second-2.7;
   if(first!=third)
     {
      if(CompareDoubles(first,third))
         printf("%.16f ve %.16f eşittir",first,third);
     }
  }
// Sonuç: 0.3000000000000000  0.2999999999999998   sayıları eşittir.

Ayrıca Bakınız

Öncelik Kuralları