Mengenal Error "Division by zero" dan Cara Mengatasinya

Assalamu'alaikum Warahmatullahi Wabarakatuh.
     Bagi kita yang sudah lama terjun bebas di dunia pemrograman, tentu sudah tidak asing lagi dengan yang namanya error. Makhluk satu ini seakan-akan sudah menjadi cemilan sehari-hari bagi kita. Tapi bagi yang baru belajar pemrograman, seringkali error ini menjadi sesuatu membingungkan dan menakutkan, sampai-sampai banyak yang menyerah belajar dunia pemrograman karena makhluk ini. Salah satu error yang sering ditemukan adalah error Division by Zero. Error ini disebabkan karena ada bilangan yang dibagi Nol dalam script yang kita buat. Bagi yang ngerti bahasa inggris dan faham prinsip-prinsip dasar matematika, mungkin bisa langsung tahu penyebabnya. Perhitungan matematika akan sering dijumpai dalam dunia pemrograman. Contohnya adalah untuk menghitung nilai siswa, gaji karyawan, menghitung rata-rata pengunjung, dll. Kembali ke topik, berikut contoh scriptnya:

<?php
$nol=0;
$dua=2;
echo $dua/$nol;
?>
Jika script diatas dijalankan, maka kita akan mendapat error seperti berikut:


Perhatikan pada script diatas, $nol berisi 0, dan $dua berisi 2. Kemudian pada baris ke-4, kita mencoba menampilkan hasil dari $dua dibagi $nol. Dalam matematika, pembagian dengan bilangan 0 tidak akan bisa. Kenapa? Saya udah siapin beberapa alasan/bukti sederhananya:

  • 1. Analogi Sederhana

  • Pertama kita analogikan dengan kehidupan nyata, karena operasi matematika juga diambil dari contoh kehidupan nyata. Bayangkan jika kita punya 12 buah Apel, kemudian kita akan membagikannya ke 6 orang, maka setiap orang akan mendapat 2 buah apel (12:6=2). Dan sekarang coba kita bayangkan lagi jika 12 buah Apel itu akan kita bagikan kepada 0 orang. Tentu tidak mungkin kan? Jadi setiap bilangan dibagi 0 maka hasilnya adalah Tidak Terdefinisi.

  • 2. Bukti Secara Matematis

  • "Jika kita menjumpai biangan 6:2 maka sama dengan ((6-2)-2)-2 sampai hasilnya = 0 (nol), maka hasil dari 6: 2 = 3 (tiga kali pengurangan secara berulang), konsep ini berasal dari pembagian = pengurangn secara berulang.
    Jadi 3/0 = 3:0 (tiga dibagi nol) = 3-0-0-0-0-0-0 ... yang mana sampai tak hingga kali, maka jawabannya 3/0 = tak hingga." Dikutip dari: http://myinfomath.blogspot.co.id/2014/09/bilangan-dibagi-nol-hasilnya-berapa.html. Saya kutip soalnya saya ngerti, tapi susah ngejelasinnya lagi hehe.
    Dari sini juga bisa kita simpulkan bahwa setiap bilangan dibagi 0 adalah Tak Terhingga / Infinite
Loh, jadi yang bener yang mana nih? Tak Terdefinisi atau Tak Terhingga? Yang mana aja lah, yang jelas berarti Semua Angka Tidak Bisa di Bagi Nol. Tapi kalau temen-temen tetep kekueuh pengen tahu, silahkan cari-cari di google atau nanya ke guru matematika-nya langsung. Sebetulnya masih banyak bukti lainnya, tapi yaa karena ilmu Matematika saya masih pas-pasan, jadi segini aja ya? hehe..

Cara Mengatasi Error Division by Zero

     Nah kemudian muncul pertanyaan, gimana cara mengatasinya? Caranya adalah dengan mencegah adanya operasi pembagian dengan angka 0. Jadi jika ada operasi pembagian, kita bisa mengecek terlebih dahulu apakah nilai pembagi-nya adalah 0 atau bukan. Jika nilainya bukan 0, maka lakukan operasi pembagian. Jika iya, maka jangan lakukan operasi pembagian. Contoh:

<?php
$angka1=90;
$angka2=0;
if ($angka2!=0) {
 $hasil=$angka1/$angka2;
} else {
 $hasil=$angka1;
}
echo $hasil;
?>


Kesimpulan

Perhitungan matematika sangat sering ditemukan dalam dunia pemrograman dan kita harus jeli dalam penerapannya, terutama jika berkaitan dengan proses pembagian.

Oke sekian artikel kali ini, semoga bermanfaat.
Mohon maaf bila masih banyak kekurangan, apalagi pas ngomongin matematikanya.
Wassalamu'alaikum Warahmatullahi Wabarakatuh..


EmoticonEmoticon