Menu
CoddyTech

Ringkasan: Pembagian Aman

Termasuk bagian Logika dan Alur dalam perjalanan Dart di Coddy. Pelajaran 43 dari 65.

challenge icon

Tantangan

Mudah

Buat program yang mengimplementasikan kalkulator pembagian aman menggunakan penanganan exception. Programmu harus menangani error pembagian dengan nol secara baik dan memberikan informasi yang jelas kepada pengguna saat terjadi error.

  1. Baca input string yang mewakili angka pertama (dividen)
  2. Baca input string yang mewakili angka kedua (pembagi)
  3. Buat fungsi bernama safeDivision yang menerima dua parameter double dan mengembalikan hasil double
  4. Fungsi tersebut harus menggunakan blok try-catch untuk menangani kemungkinan error pembagian:
    • Di blok try: Periksa apakah pembagi bernilai nol dan lempar exception dengan pesan "Division by zero is not allowed" jika benar, jika tidak, lakukan pembagian
    • Di blok catch: Tangani exception dan kembalikan 0.0 sebagai nilai default yang aman
  5. Konversikan input string menjadi nilai double menggunakan double.parse()
  6. Panggil fungsi safeDivision dengan nilai yang telah dikonversi
  7. Tampilkan hasil dalam format persis seperti yang ditunjukkan di bawah

Contohnya, jika inputnya adalah "10.0" dan "2.0", programmu harus menampilkan:

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

Jika inputnya adalah "15.0" dan "0.0", programmu harus menampilkan:

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

Jika inputnya adalah "7.5" dan "2.5", programmu harus menampilkan:

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

Programmu harus mengimplementasikan fungsi safeDivision yang menggunakan blok try-catch untuk menangani pembagian dengan nol. Di blok try, periksa apakah pembagi sama dengan 0.0 dan gunakan kata kunci throw untuk memicu exception secara manual jika benar. Di blok catch, tampilkan pesan error dan kembalikan 0.0 sebagai nilai cadangan yang aman. Program utama harus memanggil fungsi ini dan menampilkan pesan penyelesaian yang berbeda berdasarkan apakah terjadi error.

Coba sendiri

import 'dart:io';

// TODO: Buat fungsi safeDivision di sini

void main() {
  // Baca input
  String? firstInput = stdin.readLineSync();
  String? secondInput = stdin.readLineSync();
  
  // Ubah string menjadi double
  double firstNumber = double.parse(firstInput!);
  double secondNumber = double.parse(secondInput!);
  
  // Tampilkan judul
  print("Safe Division Calculator");
  print("========================");
  print("First number: $firstNumber");
  print("Second number: $secondNumber");
  print("Performing division...");
  
  // TODO: Panggil fungsi safeDivision dan tangani hasilnya
  // Ingat, periksa apakah terjadi error agar kamu dapat menampilkan pesan penyelesaian yang sesuai
  
}

Semua pelajaran di Logika dan Alur

Latihan sendiri: Compiler Dart online