Ana Sayfa Reklam alanı
Gruplar  •  Site Yönetimi  •  Özel Mesajlarınız   •  Giriş   •  Kayıt
Ana Sayfa
Ana Sayfa
Forumlar
Forumlar
Yardım
Yardım
Arama
Arama
Albüm
Albüm
Kurallar
Kurallar
Linkler
Linkler
Makaleler
Makaleler
Oyunlar
Oyunlar
Sohbet
Sohbet
Üyeler
Üyeler
İstatistikler
İstatistikler

Google


Programcılık » Java forumunda Mantıksal İşlemler (Ders-8) konu başlığının kısa özeti; Akış denetimi ve döngü denetimi derslerimizde koşul ifadelerinin kullanıldığını gördük. Koşul deyimleri bu koşul ifadesine göre eleme yapıyor, döngü deyimleri bu koşul ifadesine göre çevrim oluşturuyo...

Bu başlığı gezen kullanıcılar:0 Kayıtlı, 0 Gizli, 0 Misafir ve 0 Bot
Kayıtlı Kullanıcılar: Yok



 
Yeni Başlık GönderCevap Gönder Digg it Stumble it Submit to Del.icio.us Diigo it Prefound it Reddit it Facebook it Blink it Slashdot it Linkagogo it 
Önceki başlık Arkadaşına GönderYazdırÖzel Mesajlarınız Sonraki başlık
Yazar Mesaj
UnreaL
Fast Friend
Fast Friend



Kayıt: 24 Aralık 2005
Mesajlar: 203
Tema: Parthenos (30066)

Yaş: 23

turkey.gif

Cinsiyet:Erkek Kova Fare

Puan: 309
Mesaj Tarih: 22 Temmuz 2006, 15:48   Mesaj konusu: Mantıksal İşlemler (Ders-8)
Alıntıyla Cevap Ver



Akış denetimi ve döngü denetimi derslerimizde koşul ifadelerinin kullanıldığını gördük. Koşul deyimleri bu koşul ifadesine göre eleme yapıyor, döngü deyimleri bu koşul ifadesine göre çevrim oluşturuyordu. Ancak bu koşul ifadesi tek bir koşuldan oluşuyordu, acaba birden fazla koşulun sorgulanması mümkün müdür?

Elbette. Bunun için ilk yol, deyim içinde deyim kullanmaktır. Örneğin aşağıdaki uygulamada if koşul deyimi içiçe kullanılarak, sayının 25 ile 60 arasında olduğunu sorgulamaktadır:

<html>
<head>
<title>İkili Sorgulama</title>
<script language="JavaScript">
//İlk fonksiyonu hazırlıyoruz.
function onay()
{
document.write("<h1>Sayı 25 ile 60 arasındadır.</h1>")
}
//İkinci fonksiyonu hazırlıyoruz.
function red()
{
document.write("<h1>Sayı 25 ile 60 arasında değildir.</h1>")
}
</script>
</head>
<body>

<script language="JavaScript">
var x=38
if (x < 60)
{
if (x > 25) onay()
else red()
}
else red()
</script>

</body>
</html>


Burada içiçe if koşul deyimi kullanılmış ve önce sayının 60'dan küçük olması sorgulanıyor. Sayının 60'dan küçük olması halinde, bu sefer de sayının 25'ten büyük olması sorgulanıyor. Yani 60'tan küçük olan sayıların 25'ten büyük olması sorgulanıyor. Böylece sayının 60'dan küçük ve 25'ten büyük olması sorgulanmış oluyor.

JavaScript'te "ve" Operatörü: "&&"

İçiçe deyim kullanmak da güzel bir yol ama daha kısa bir yolumuz var: Mantıksal İşlemler. Sayının hem 25'ten büyük olmasını, hem de 60'tan küçük olmasını istiyorsak ve anlamına gelen && mantıksal işlem işareti ile iki koşulu tek bir koşul ifadesi haline dönüştürebiliriz:

<html>
<head>
<title>Mantıksal İşlemler</title>
<script language="JavaScript">
//İlk fonksiyonu hazırlıyoruz.
function onay()
{
document.write("<h1>Sayı 25 ile 60 arasındadır.</h1>")
}
//İkinci fonksiyonu hazırlıyoruz.
function red()
{
document.write("<h1>Sayı 25 ile 60 arasında değildir.</h1>")
}
</script>
</head>
<body>

<script language="JavaScript">
var x=65
if (x < 60 && x > 25) onay()
else red()
</script>

</body>
</html>


Bu sefer && (ve) işaretini kullanarak sayının 60'tan küçük olmasını ve sayının 25'ten büyük olmasını sorguladık. Buradaki ve kavramını Matematik konusunun mantık (logic) dersinden hatırlıyorsunuzdur. (Matematiği anlamakta zorlananlar programcılığa hiç başlamasınlar.) Özetle ve ifadesinin sorgulama sonuçları şöyleydi:

Doğru && Doğru = Doğru
Doğru && Yanlış = Yanlış
Yanlış && Doğru = Yanlış
Yanlış && Yanlış = Yanlış

&& operatörüyle yapılan sorgulamanın onaylanması için, her iki koşulun da sağlanması gerekir. Aksi takdirde sorgulama onaylanmayacaktır.

JavaScript'te "veya" Operatörü: "||"

Bir başka mantıksal işlem operatörü: || (veya anlamındadır; bu işareti oluşturmak için iki defa ALTGR + "tire" tuşuna basın. "tire" tuşu backspace (geri al) tuşunun solunda bulunur. Eminim matematik bilgilerinden hiç kuşku duymadığım okuyucular bu operatörün sorgulama sistemini hemen hatırlamışlardır ama ben yine de yazayım.

Doğru || Doğru = Doğru
Doğru || Yanlış = Doğru
Yanlış || Doğru = Doğru
Yanlış || Yanlış = Yanlış

|| (veya) operatörünün && (ve) operatöründen farkı görülüyor. Bir sorgulamada || operatörü kullanılmışsa, koşullardan bir tanesinin gerçekleşmesi onay için yeterlidir. Son uygulamamızda 65 sayısını && operatörü ile sorgulamıştık:

(65 < 60) && (65 > 25)

Bu koşulun ilk kısmı yanlış, ikinci kısmı ise doğruydu. Yanlış && doğru = yanlış olduğundan sorgulama sonucu red fonksiyonuna gönderilmişti. Aynı koşul ifadelerini || operatörü ile sorgulasaydık sonuç başka olacaktı:

(65 < 60) || (65 > 25)

Buradaki işlem: Yanlış || doğru = doğru işlemidir. Ve koşul ifadesi kabul görür. Bu nedenle && ile || ifadelerini ne zaman kullanacağımıza dikkat etmeliyiz. Şimdi || operatörü için başka bir uygulama geliştirelim: Bu uygulamamız öncekiyle aynı sonucu versin. Yanlız bunun için koşul ifadesini ve koşul işlemlerini değiştireceğim, aradaki farka dikkat ediniz.

<html>
<head>
<title>Mantıksal İşlemler</title>
<script language="JavaScript">
//İlk fonksiyonu hazırlıyoruz.
function onay()
{
document.write("<h1>Sayı 25 ile 60 arasındadır.</h1>")
}
//İkinci fonksiyonu hazırlıyoruz.
function red()
{
document.write("<h1>Sayı 25 ile 60 arasında değildir.</h1>")
}
</script>
</head>
<body>

<script language="JavaScript">
var x=65
if (x > 60 || x < 25) red()
else onay()
</script>

</body>
</html>


Aradaki farkı anlayanlar bu işi kapmış demektir.

JavaScript'te "değil" Operatörü: "!"

Bir diğer mantıksal işlem operatörü: ! (değil) operatörüdür. Bu operatör koşul ifadesinin solunda yer alır ve o ifadenin olmamasını sorgular. Uygulamayla gösterelim:

<html>
<head>
<title>Mantıksal İşlemler</title>
<script language="JavaScript">
//İlk fonksiyonu hazırlıyoruz.
function negatif()
{
document.write("<h1>Negatif sayı.</h1>")
}
//İkinci fonksiyonu hazırlıyoruz.
function pozitif()
{
document.write("<h1>Pozitif sayı.</h1>")
}
</script>
</head>
<body>

<script language="JavaScript">
var x=12
if (!(x >= 0)) negatif()
else pozitif()
</script>

</body>
</html>


Uygulamamızda 12 değeri verilen x değişkeninin 0'dan küçük olup olmadığı sorgulanmakta. Eğer sıfırdan büyük değilse negatif(), aksi takdirde pozitif() fonksiyonları çağrılmaktadır.

Değişkenlere Mantıksal Değer Atama

Sayfamızda aynı koşul ifadelerini birçok kez sorguluyorsak veya koşul ifadesi çok uzunsa, değişkenlere atamayı tercih edebiliriz. Yapı olarak değişkene normal bir değer vermekten farkı yoktur. Örneğin üstteki uygulamayı şu hale dönüştürebiliriz:

<html>
<head>
<title>Değişkenlere Mantıksal Değer Atama</title>
<script language="JavaScript">
//İlk fonksiyonu hazırlıyoruz.
function negatif()
{
document.write("<h1>Negatif sayı.</h1>")
}
//İkinci fonksiyonu hazırlıyoruz.
function pozitif()
{
document.write("<h1>Pozitif sayı.</h1>")
}
</script>
</head>
<body>

<script language="JavaScript">
var x=12
var y=((x > 0) || (x == 0))
if (!y) negatif()
else pozitif()
</script>

</body>
</html>


Bu uygulamamızda ((x > 0) || (x == 0)) mantıksal değerini y değişkenine atadık.



Volkan Derinbay'a tşkler.

 Oylanmadı UnreaL offlineKişisel Galeri - UnreaLKullanıcı profilini görÖzel mesaj gönder
Mesajları göster:      
Yeni Başlık GönderCevap Gönder
Önceki başlık Arkadaşına GönderYazdırÖzel Mesajlarınız Sonraki başlık


Bu başlığı gezen kullanıcılar:0 Kayıtlı, 0 Gizli, 0 Misafir ve 0 Bot
Kayıtlı Kullanıcılar: Yok

Bu forumda yeni konular açamazsınız
Bu forumdaki mesajlara cevap veremezsiniz
Bu forumdaki mesajlarınızı değiştiremezsiniz
Bu forumdaki mesajlarınızı silemezsiniz
Bu forumdaki anketlerde oy kullanamazsınız
Bu foruma eklenti dosyaları gönderemezsiniz
Bu forumdaki dosyaları indiremezsiniz
Bu forumda eklenti önizlemelerini/linklerini görebilirsiniz
Etiketler: acaba, aksi, akış, altgr, alır, ama, amp,

Benzer Başlıklar
Başlık Yazar Forumlar Cevaplar Son Gönderilen
Yeni mesaj yok Aritmetik İşlemler (Ders-3) UnreaL Java 0 22 Temmuz 2006, 15:44 Son Mesajları Gör
UnreaL


Bu Siteye Ait Çerezleri Sil

© 2003, 2049 Türkiye Forum :: Powered by phpBB © 2001, 2005 phpBB Group :: FI Theme
Tüm saatler GMT +2 Saat :: :: Forum Arşivleri
Hata: sayfa oluşturma = 0.82260 saniye, sql sorguları = 39
Türkiye Forum başlık özet akışları

Reklam alanı  

CBACK CrackerTracker tarafından korunuyor
23829 Girişim engellendi.


AdslDigiturk

Forum Haritası: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 86, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127