CodeBlanks Logo Icon CodeBlanks

Çarpma ve bölme

Çarpma, bölme ve sıfıra bölme kontrolünü eklersin.

Çarpma ve bölme

Hesap makinesine şimdi multiply ve divide fonksiyonlarını ekleyeceğiz. Çarpma, return a * b ile basit.

Bölmede ise bir tuhaflık var: sıfıra bölme. JavaScript'te 5 / 0 Infinity verir, -5 / 0 -Infinity verir. Bu genellikle istenmez.

Bu yüzden divide fonksiyonunda önce bölenin sıfır olup olmadığını kontrol ederiz; sıfırsa 0 döndürürüz. Bu, beklenmeyen Infinity sonucunu önler.

Sıfıra bölme kontrolü

divide(a, b) fonksiyonunda önce b'yi kontrol ederiz. if (b === 0) return 0; yazarsan, sıfır bölen durumunda fonksiyon hemen 0 döndürür.

Bu, erken dönüş denen bir tekniktir. Koşul sağlanırsa fonksiyonun kalanı çalışmaz; daha okunabilir kod yazarsın.

Sıfır değilse return a / b; ile normal bölme yapılır. Böylece hesap makinesi güvenli çalışır.

Uygulama multiply ve divide'ı tanımla

multiply(a, b) ve divide(a, b) fonksiyonlarını tanımla. multiply a * b, divide ise b === 0 ise 0, değilse a / b döndürsün. add ve subtract zaten tanımlı.

Başlangıç kodu

index.js
function add(a, b) {
  return a + b;
}

function subtract(a, b) {
  return a - b;
}

// multiply ve divide fonksiyonlarını buraya tanımla

console.log(multiply(6, 7));
console.log(divide(10, 2));

Örnek çözüm

index.js
function add(a, b) {
  return a + b;
}

function subtract(a, b) {
  return a - b;
}

function multiply(a, b) {
  return a * b;
}

function divide(a, b) {
  if (b === 0) return 0;
  return a / b;
}

console.log(multiply(6, 7));
console.log(divide(10, 2));

Beklenen çıktı

42
5

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Çarpma/bölme kavramlarını eşleştir

Kavram Anlamı
a * b Çarpma işlemi
a / b Bölme işlemi
b === 0 Sıfır kontrolü
return 0 Hata durumu

2 multiply(a, b) fonksiyonunun gövdesi ne olmalı?

  • return a * b; Doğru cevap
  • return a + b;
  • return a - b;
  • return a / b;

Açıklama: multiply çarpma yapar; a * b döndürür.

3 Sıfır kontrolü

Soru
if (____) return 0;
Cevap
if (b === 0) return 0;

Açıklama: b === 0 ile sıkı eşitlik kontrolü yapılır.

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