Menu
Coddy logo textTech

Özet - Güvenli Bölme

Coddy'nin Dart Journey'sinin Mantık & Akış bölümünün bir parçası. Ders 43 / 65.

challenge icon

Görev

Kolay

İstisna işleme kullanarak güvenli bir bölme hesaplayıcısı uygulayan bir program oluşturun. Programınız sıfıra bölme hatalarını düzgün bir şekilde ele almalı ve hatalar meydana geldiğinde kullanıcılara açık geri bildirim sağlamalıdır.

  1. İlk sayıyı (bölünen) temsil eden bir dize girdisi okuyun
  2. İkinci sayıyı (bölen) temsil eden bir dize girdisi okuyun
  3. İki double parametresi alan ve double sonucu döndüren safeDivision adlı bir fonksiyon oluşturun
  4. Fonksiyon, olası bölme hatalarını ele almak için bir try-catch bloğu kullanmalıdır:
    • try bloğunda: Bölenin sıfır olup olmadığını kontrol edin ve doğruysa "Division by zero is not allowed" mesajıyla bir istisna fırlatın; aksi takdirde bölme işlemini gerçekleştirin
    • catch bloğunda: İstisnayı ele alın ve güvenli varsayılan değer olarak 0.0 döndürün
  5. Girdi dizelerini double.parse() kullanarak double değerlerine dönüştürün
  6. Dönüştürülen değerlerle safeDivision fonksiyonunu çağırın
  7. Sonuçları aşağıda gösterilen tam biçimde görüntüleyin

Örneğin, girdiler "10.0" ve "2.0" ise programınızın çıktısı şöyle olmalıdır:

Safe Division Calculator
========================
First number: 10.0
Second number: 2.0
Performing division...
Result: 5.0
Operation completed successfully

Girdiler "15.0" ve "0.0" ise programınızın çıktısı şöyle olmalıdır:

Safe Division Calculator
========================
First number: 15.0
Second number: 0.0
Performing division...
Error: Division by zero is not allowed
Using safe default value: 0.0
Operation completed with error handling

Girdiler "7.5" ve "2.5" ise programınızın çıktısı şöyle olmalıdır:

Safe Division Calculator
========================
First number: 7.5
Second number: 2.5
Performing division...
Result: 3.0
Operation completed successfully

Programınız, sıfıra bölme işlemini ele almak için bir safeDivision bloğu kullanan try-catch fonksiyonunu uygulamalıdır. try bloğunda, bölenin 0.0 değerine eşit olup olmadığını kontrol edin ve doğruysa bir istisnayı manuel olarak tetiklemek için throw anahtar sözcüğünü kullanın. catch bloğunda hata mesajını yazdırın ve güvenli geri dönüş değeri olarak 0.0 döndürün. Ana program bu fonksiyonu çağırmalı ve bir hata oluşup oluşmadığına bağlı olarak farklı tamamlanma mesajları görüntülemelidir.

Kendin dene

import 'dart:io';

// TODO: safeDivision fonksiyonunu burada oluşturun

void main() {
  // Girdiyi oku
  String? firstInput = stdin.readLineSync();
  String? secondInput = stdin.readLineSync();
  
  // Dizeleri double türüne dönüştür
  double firstNumber = double.parse(firstInput!);
  double secondNumber = double.parse(secondInput!);
  
  // Başlığı görüntüle
  print("Safe Division Calculator");
  print("========================");
  print("First number: $firstNumber");
  print("Second number: $secondNumber");
  print("Performing division...");
  
  // TODO: safeDivision fonksiyonunu çağırın ve sonucu işleyin
  // Uygun tamamlanma mesajını görüntülemek için bir hata oluşup oluşmadığını kontrol etmeyi unutmayın
  
}

Mantık & Akış bölümündeki tüm dersler

Kendi başına pratik yap: Online Dart derleyicisi