IF..THEN – PBP Türkçe

IF Comp {AND/OR Comp…} THEN
Statements…
ELSE
Statements…
ENDIF

Bir veya birden fazla karşılaştırma işlemi gerçekleştirir. Her bir Comp ( Comparison – Karşılaştırma ) ifadesi, bir değişkeni, bir sabit ile ya da bir karşılaştırma ifadesi içeren bir başka değişken ile ilişkilendirebilir, karşılaştırabilir. If..Then ise bu karşılaştırma ifadesinin sonucunu “doğru” veya “yanlış” şeklinde değerlendirir. Eğer karşılaştırma ifadesi “doğru” olarak değerlendirilir ise, Then kısmından sonra yazan statement ( ifade ) kısmı çalıştırılır. Eğer “yanlış” olarak değerlendirilir ise, Then ifadesinden sonra belirtilen kısımlar çalıştırılmaz. Sonucu “0″ olarak değerlendirilen karşılaştırma ifadeleri “yanlış” olarak düşünülür. Sonucu “0″dan başka herhangi bir değer olan ifadelerin hepsi “doğru” olarak düşünülür. Karşılaştırma ifadelerinin sonuçlar işaretsizdir, “-” veya “+” değerli yoktur. Birden fazla karşılaştırma ifadesini kullanırken, karşılaştırma sırasını belirlemek için parantez kullanılmalıdır. Aksi taktirde karşılaştırma ifadeleri yazılımcının istemediği bir sıra ile çalıştırılabilir. Bu da yazılımın istenmeyen bir şekilde çalışmasına neden olabilir.

IF..THEN ifadesi iki farklı şekilde kullanılabilir.

Birinci Yol:

THEN komutundan sonra, GOTO komutu anlamı içeren bir ifade kullanılmalıdır. Eğer karşılaştırma ifadesi “doğru” ise, program THEN ifadesinden sonra label ( etiket ) ile belirtilen kısma geçer. Eğer karşılaştırma ifadesi yanlış ise, program bir sonraki satırda bulunan IF..THEN ifadesine geçecektir. THEN ifadesinden sonra belirtilen kısım mutlaka bir label ( etiket ) olmalıdır.

Örnek

IF Pin0 = 0 THEN pushd ‘ Eğer Pin0 a bağlı butona basılmış ise (0), pushd isimli label’a ( etiket ) atla
IF B0 >= 40 THEN old ‘ B0 adlı değişkendeki değer kırktan büyük ise, old isimli label’a ( etiket ) atla
IF PORTB.0 THEN itson ‘ Eğer PORTB, pin0, 1 ( high ) ise, itson isimli label’a ( etiket ) atla
IF (B0 = 10) AND (B1 = 20) THEN dongu

İkinci Yol:

THEN ifadesinden sonra birden fazla statement ( ifade ) kullanılabilir. Statement ( İfade ) kısmından sonra, IF..THEN yapısını tamamlamak için ya ELSE ya da ENDIF ifadesi kullanılmalıdır.

ELSE, karşılaştırma sonucunun “0″ olması yani sonucun “yanlış” olduğu durumuda kod çalıştırmak için kullanılabilir, zorunlu değildir. İkinci yöntem kullanılıyor ise en sonda ENDIF kullanmak gereklidir.

Örnek

IF B0 <> 10 THEN
B0 = B0 + 1
B1 = B1 – 1
ENDIF
IF B0 = 20 THEN
led = 1
ELSE
led = 0
ENDIF

Bunlara da Bakın

  • SELECT..CASE

Tüm fonksiyonların listesine buradan bakabilirsiniz.



Bağlantılı Yazılar

Yorum yapılmamış. Yapılmış

Yazıyı paylaşın. | Yazı ile ilgili sorun bildirin.

Yorum Yapın ya da Soru Sorun

Yorum yapabilmeniz ya da soru sorabilmeniz için giriş yapmanız gerekmektedir.
Hoşgeldiniz, Ziyaretçi.Lütfen giriş yapın veya kayıt olun.
E-posta adresinize aktivasyon iletisi gelmediyse lütfen buraya tıklayın.

Arama Yap
Üye Alanı
 
 
Kayıt Ol || Aktivasyon Kodu İste
Teknik Yardım
5 tane konu henüz çözüme ulaşmamış. Belki siz yardımıcı olabilirsiniz ya da sorunlarınızı çözmenize başkaları yardım edebilir. Teknik Yardım bölümüne buradan ulaşabilirsiniz.
Destek İçin
İzoelektronik Facebook Sayfası
İzoelektronik'e Facebook sayfamıza katılarak destek olabilir, eklenecek yeni yazıları ve gelişmeleri Facebook üzerinden de takip edebilirsiniz.
Güncel Kalın

Eklenen Yazılar E-posta Adresinize Gönderilsin

Bizi RSS ile de takip edebilirsiniz.

Translate
Son Yorumlar
  • 90alper90: Merhaba Ozan Bey, Ölçümleri aldıktan sonra aynı anda göstermekte bir sıkıntı yok. Önemli olan 3 ölçümü de alabilmek. Bir önceki...
  • ozigeldi: alper teşekkür ederim bu arada ben ozan memnun oldum ben bu 3 ölçümü aynı lcd ekranda gösterebilimiyim pıc’e yeni başladım ve bu...
  • botan: meraba malzemeleri tedarik ettim motor olarak step motor aldım sizin yüklediğiniz programın aynısını yüklesem sorun yaşarmıyım acaba, yeni...
  • kuvvetkmc: Şöyle söyleyim; Anakart üzerinde ki; R1-R2-R3-R4-R4-R5-R6-R7-R8-R9- R10-R11-R12-R13-R14-R15-R16-R1 7-R18-R19 C1-C2-C3-C4 Q1;...
  • İzoelektronik: @kuvvetkmc Sorun çıkaran dirençleri daha net olarak belirtebilirseniz daha kolay yardımcı olunabilir. @botan Belirttiğiniz devreler...
drupal statistics module