CodeBlanks Logo Icon CodeBlanks

Çarpma ve bölme

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

Çarpma ve bölme

Şimdi multiply ve divide fonksiyonlarını ekleyeceğiz. Çarpma * işleciyle, bölme ise / ile yapılır.

Önemli: Dart'ta / her zaman double döndürür. Yani divide'ın dönüş türü double olmalı: double divide(int a, int b) => a / b;.

Tam sayı bölme istersen ~/ işlecini kullanırsın (örneğin 10 ~/ 3 = 3). Ama hesap makinesinde ondalık sonuç istediğimiz için / kullanacağız.

Uygulama multiply ve divide ekle

Programa int multiply(int a, int b) => a * b; ve double divide(int a, int b) => a / b; fonksiyonlarını ekle. main içinde print(multiply(5, 6)) ve print(divide(10, 4)) çağrılarını yaz.

Başlangıç kodu

main.dart
void main() {
  print('Hesap makinesi hazır');
  print(add(3, 4));
  print(subtract(10, 3));
  // multiply ve divide çağrılarını ekle
}

int add(int a, int b) => a + b;
int subtract(int a, int b) => a - b;

// multiply ve divide fonksiyonlarını buraya yaz

Örnek çözüm

main.dart
void main() {
  print('Hesap makinesi hazır');
  print(add(3, 4));
  print(subtract(10, 3));
  print(multiply(5, 6));
  print(divide(10, 4));
}

int add(int a, int b) => a + b;
int subtract(int a, int b) => a - b;
int multiply(int a, int b) => a * b;
double divide(int a, int b) => a / b;

Beklenen çıktı

Hesap makinesi hazır
7
7
30
2.5

Sıfıra bölme kontrolü

Bölme işleminde b sıfır olursa Dart double türünde Infinity (sonsuz) döndürür; hata vermez. Ama bu genellikle istenmeyen bir sonuçtur.

Gerçek bir hesap makinesinde sıfıra bölmeyi engellemek istersin. Bunun için bir if kontrolü ekleyebilirsin: if (b == 0) { throw Exception('Sıfıra bölme'); }.

Bir sonraki derste throw ile fırlatılan bu hatayı try/catch ile nasıl yakalayacağımızı göreceğiz. Şimdilik ~/ ve / farkını bilmek yeterli.

Soru ve cevaplar

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

1 Tam sayı bölme işleci hangisidir?

main.dart
10 ~/ 3 = 3
  • /
  • //
  • %
  • ~/ Doğru cevap

Açıklama: / double verir; ~/ ise tam sayı.

2 Tam sayı bölme

Soru
int result = 10 ____ 3;
Cevap
int result = 10 ~/ 3;

Açıklama: ~/ tam sayı bölme yapar.

3 İşleçleri eşleştir

Kavram Anlamı
* Çarpma
/ Bölme (double)
~/ Tam sayı bölme
% Mod (kalan)

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