1 Son düzenleyen, taRKan (24.09.2009 17:25:06)

Konu: Bir parametrenin veya değerin iki rakam arasında olma koşulu

Merhaba,

Herhalde MSDN'de gezinirken görmüştüm tam emin değilim ama kod hoşuma gitmişti. O günden beri bir çok yerde kullanırım. Sizlerle paylaşmak istedim.
Örneğin bir fonksiyonunuz var bu fonksiyon zorunlu bir parametre alıyor olsun. Bu parametrenin değeri de iki rakam arasında sınırlı olmak zorunda olsun. Bu durumda gönderilen parametrenin değerini kontrol etmek lazım eğer alt sınırdan küçükse alt sınıra üst sınırdan büyükse üst sınıra atamak istediğimi varsayarak;

Visual Fox Pro
LParameters tnDeger

 
#Define ALTSINIR 0
#Define USTSINIR 100
 
*!* Fonksiyona parametre gönderilmemişse m.tnDeger = .F. olur.
*!* Bu yüzden aşağıdaki kontrol yapılıyor
If Type("tnDeger") <> "N" Or Empty(m.tnDeger)
    m.tnDeger = 0
EndIf
 
*!* m.tnDeger'in ALTSINIR ile USTSINIR arasında olma koşulu sağlanıyor.
*!* Eğer m.tnDeger ALTSINIR'ın altında ise ALTSINIR'a
*!* USTSINIR'ın üzerinde ise USTSINIR'a eşitlenir.
m.tnDeger = Max(ALTSINIR, Min(USTSINIR, m.tnDeger))
...
/o---------------------o\
     www.haser.com
\o---------------------o/