Çarpma ve bölme
- Dart kursu
- Başlangıç
- Ders 21/116
- 6 dk
Ç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
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
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?
10 ~/ 3 = 3- /
- //
- %
- ~/ Doğru cevap
Açıklama: / double verir; ~/ ise tam sayı.
2 Tam sayı bölme
int result = 10 ____ 3;
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) |