Menu
Coddy logo textTech

Logical Operators Part 4

Coddy'nin Java Journey'sinin Temeller bölümünün bir parçası — ders 26 / 73.

De Morgan Yasası, içinde NOT bulunan ifadeleri sadeleştirmemize yardımcı olan bir kuraldır. Mantıksal ifadelerle çalışırken, bazen onları sadeleştirmemiz veya yeniden düzenlememiz gerekir.

and ile birleştirilmiş iki koşulun önünde not olduğunda, bunu iki ayrı parçaya bölebilirsiniz. and ifadesi or haline gelir ve her parça kendi not ifadesini alır:

!(A && B), (!A) || (!B) ile aynıdır.

Örneğin:

// Bir sayının (1 ile 10 arasında) OLMADIĞINI kontrol edelim
int number = 15;

// Bu iki ifade birbirine eşdeğerdir:
boolean result1 = !(number >= 1 && number <= 10);
boolean result2 = !(number >= 1) || !(number <= 10);

System.out.println(result1);  // true
System.out.println(result2);  // true

Bunun tersi de doğrudur: !(A || B), (!A) && (!B) ile aynıdır.

Örneğin:

// Bir kişinin (öğrenci veya çalışan) OLMADIĞINI kontrol etme
boolean isStudent = false;
boolean isEmployed = false;

// Bu iki ifade birbirine eşdeğerdir:
boolean result1 = !(isStudent || isEmployed);
boolean result2 = !(isStudent) && !(isEmployed);

System.out.println(result1);  // true
System.out.println(result2);  // true
challenge icon

Görev

Başlangıç

Bir evcil hayvan dükkanının, bir müşteriye evcil hayvan satıp satamayacaklarını belirlemek için bir sistem oluşturmasına yardımcı oluyorsunuz.

Aşağıdaki değişkenleri başlatın:

  • true değerine sahip hasLicense
  • false değerine sahip hasSpace
  • true değerine sahip hasExperience

Aşağıdakileri belirlemek için şu mantıksal ifadeleri yazın:

  • canSellRegularPet: Müşterinin YA bir lisansa (license) VEYA deneyime (experience) ihtiyacı vardır VE alanı (space) olmalıdır
  • canSellExoticPet: Müşterinin HEM bir lisansa HEM DE deneyime ihtiyacı vardır VE alanı olmalıdır
  • cannotSellAnyPet: Müşterinin lisansı YOKTUR VE deneyimi YOKTUR VEYA alanı YOKTUR
  • result: canSellRegularPet VEYA canSellExoticPet VEYA cannotSellAnyPet

İpucu: Değişkenin o an tuttuğu değeri değil, gereksinimin tanımladığı koşulu yazın. "Alanı olmalı" → hasSpace; "alanı YOK" → !hasSpace. ! işaretini yalnızca gereksinim, değişken adının belirttiğinin tersi olduğunda kullanın, örneğin "lisansı YOK" → !hasLicense.

Kendin dene

public class Main {
    public static void main(String[] args) {
        // Değişkenleri başlat
        

        // Koşulları hesapla
        boolean canSellRegularPet = 
        boolean canSellExoticPet = 
        boolean cannotSellAnyPet =
        boolean result =

        // Aşağıdaki satırları silmeyin
        System.out.println("Can sell regular pet: " + canSellRegularPet);
        System.out.println("Can sell exotic pet: " + canSellExoticPet);
        System.out.println("Cannot sell any pet: " + cannotSellAnyPet);
        System.out.println("Result: " + result);
    }
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Temeller bölümündeki tüm dersler