Merhaba, Önemli bir noktaya açıklık getireyim :) Umarım okurken canınız sıkılmaz.
($x != 9) or ($x != 0) Burada iki tane değerin veya (or) işlemine tabi tutulduğunu görüyoruz. Lise 1. sınıfta ilk matematik konusu olan mantık ışığında şöyle bir doğruluk tablosu çıkarabiliriz. ($x != 9) p olsun, ($x != 0) q olsun: p v q ----------- 0 v 0 0 1 v 0 1 0 v 1 1 1 v 1 1 Yani, p ve q'nun aynı anda sıfır (false) olması durumunda 0(false) elde edebiliyoruz. Geri kalan bütün durumlarda doğruluk tablosu 1 (true) veriyor. p değerimiz "x'in 9'a eşit olmaması", q değerimiz "x'in 0'a eşit olmaması" olduğuna göre biz bu durumu sağlayan bir x değeri bulamayız. Çünkü x değeri aynı anda hem 9 hem de 0 olamaz. Ya da işi biraz daha açayım: p' veya q' (yani p'nin değili veya q'nun değili) de morgan kurallarına göre şöyle yazılabilir: p ve q Bizim denklemimize bu kuralı uygularsak: (x==0) and (x==9) ile karşılaşırız. Bu da çelişki demektir. Yani x hem 0 hem 9 olursa istenen değer ancak sağlanabilir. Yani kodlama'da değil, işin mantığındaki bir hata bu sonuca neden oluyor. 09 Mart 2009 Pazartesi 13:45 tarihinde Bedreddin SAHBAZ <[email protected] > yazdı: > Merhaba Arkadaşlar, > > Bir saattir basit bir IF yapısına takıldım kaldım > > if ((mysql_num_rows($result)<1) or ($x != 9) or ($x != 0)) > { > işlem-1 > } > else > { > işlem-2 > } > > mysql'de sonuç boş geldi ise veya x 9'a eşit değilse veya x 0'a eşit > değilse işlem-1'in yapılmasını istiyorum. Ancak x değeri 9 a eşit bir > değişken girip sorguyu çağırdığımda işlem-2 değil yine de işlem-1 > yapılıyor. Nerede hata yapıyorum acaba? Bu arada sorguyu şu şekilde > yaptığımda doğru çalışıyor; > > if ((mysql_num_rows($result)<1) or ($x != 9)) > > Saygılarımla.. > > _______________________________________________ > Linux-programlama mailing list > [email protected] > http://liste.linux.org.tr/mailman/listinfo/linux-programlama > -- Anıl Özselgin
_______________________________________________ Linux-programlama mailing list [email protected] http://liste.linux.org.tr/mailman/listinfo/linux-programlama
