CodeBlanks Logo Icon CodeBlanks

Meydan okuma - Hesap makinesi

JavaScript kursu · Başlangıç · Ders 129/133

Aritmetik operatörler, koşullar ve fonksiyonları birleştirerek bir hesap makinesi fonksiyonu yazarsın.

Hesap makinesi meydan okuması

Bu meydan okumada bir hesap makinesi fonksiyonu yazacaksın. Fonksiyon iki sayı ve bir operatör alır, sonucu döndürür.

İşlemleri switch ile seçeceksin. Her case bir operatöre karşılık gelir: '+', '-', '*', '/'. Bilinmeyen operatörlerde null döndür.

Bu görev aritmetik operatörler, koşullar ve fonksiyonları birleştirir. Hesap makinesini yazarken break yerine doğrudan return kullanabilirsin; böylece her durum tek satırda biter.

Hesap makinesi yapısı

Hesap makinesinde switch (operator) ifadesi operatörü kontrol eder. Her case bir operatör dizesi ile eşleşir ve ilgili aritmetik işlemi döndürür.

Örneğin case '+' durumunda return a + b yazarsın. Bölme işleminde sıfıra bölme riskine karşı ek bir if eklemek isteyebilirsin; ama bu görevde sadece dört temel işlemi yazman yeterli.

Bilinmeyen operatörler için default durumunu kullan ve null döndür. Böylece çağıran taraf geçersiz bir operatörü kolayca fark eder.

Uygulama calculate fonksiyonunu yaz

calculate adında bir fonksiyon tanımla. a, b ve operator parametreleri alsın. switch (operator) ile dört temel işlemi seç: '+', '-', '*', '/'. Her case ilgili işlemi return ile döndürsün. Bilinmeyen operatörler için default durumunda null döndür.

Örnek çözümü göster
return a + b; vb.). default: return null; ile bitir.

Örnek çözüm:
function calculate(a, b, operator) {
  switch (operator) {
    case '+':
      return a + b;
    case '-':
      return a - b;
    case '*':
      return a * b;
    case '/':
      return a / b;
    default:
      return null;
  }
}

Kendini test et

  1. Bir switch yapısında case'in sonuna break koymazsan ne olur?

    switch (op) {
      case '+':
        return a + b;
      // break yok
    }
    • Sonraki case'e geçer (fall-through)
    • Hemen hata fırlatır
    • Döngüden çıkar
    • Programı durdurur
    Cevabı göster

    Sonraki case'e geçer (fall-through) — Doğru. break veya return yoksa yürütme bir sonraki case'e akar; buna fall-through denir.

  2. Toplama durumunu tamamla

    function calculate(a, b, operator) {
      switch (operator) {
        case '+':
          return ____;
        case '-':
          return a - b;
      }
    }
    Cevabı göster
    function calculate(a, b, operator) {
      switch (operator) {
        case '+':
          return a + b;
        case '-':
          return a - b;
      }
    }

Başlangıç bölümündeki tüm dersler