Life is the struggle

The struggle needs the sacrifice of the body, the soul, and everything to actualize the hope, the dream, and the love.
Hidup ini Sebuah Perjuangan.
Perjuangan Perlu Pengorbanan atas Jiwa, Raga, dan Segala Kepunyaan demi Terwujudnya Harapan, Impian, Cita-cita, dan Cinta.

Putaran Kehidupan (Rotation of Life)

Life in the World rightly rotates and Walks; it is certainty.
Kehidupan Dunia Berputar dan Berjalan; ialah Keniscayaan

Jembatan Kehidupan (The Bridge of the World)
Ikhsan Falihi pada Sebuah Jembatan

Andai Jembatan ini adalah Penghubung Tujuan. Niscaya Lautan Luas Ini Adalah KEILMUAN. Ijinkan Kuberpijak dan Kumelalui Jembatan Keilmuan tuk Meraih Keselamatan dan Keberhasilan.

IKHSAN Falihi di Pinggir Laut.
(IKHSAN Falihi On The Seaside)

Andai Lautan Itu Luasnya Rinduku, Maka Bentangan Rindu Tiada Surut. Begitu pun Jua Kalian Puas Melarungkan Berjuta IMPIAN.

Penangkal Covid-19

Makanan Penambah Kekebalan Tubuh untuk Menangkal Covid-19

Sunday, September 21, 2025

Javascript Aritmetika Jumlah Pecahan Desimal


Javascript Aritmetika Jumlah Pecahan Desimal

Diasuh dan diampu oleh Ikhsan, S.Pd., M.Pd.


Kaidah di perkuliahan S1 dalam mata kuliah Analisis Real: 

Jika terdapat dua bilangan real atau lebih  dijumlahkan, maka hasilnya adalah bilangan real, seperti 2024 + 2025 = 4049.

Konsep ini diperinci menjadi 

Jika terdapat dua bilangan desimal atau lebih dijumlahkan, maka hasilnya adalah bilangan yang diperoleh dengan menjumlahkan sesama bilangan yang bersesuaian dengan nilai tempatnya masing-masing, seperti 0,1 + 0,2 = 0,3. Persepuluhan sesama persepuluhan dijumlahkan, kemudian satuan sesama satuan dijumlahkan.

Konsep ini diperluas ke dalam bahasa pemrograman website menjadi: 

Jika terdapat dua bilangan desimal atau lebih dijumlahkan, maka hasilnya adalah menjumlahkan kedua bilangan desimal tersebut dengan menggunakan basis biner atau basis 2 karena yang menjumlahkan ini adalah mesin padahal mesin itu menggunakan perhitungan bilangan basis dua.

Contoh 0,1 + 0,2 = 0.30000000000000004.

Di dalam bahasa pemrograman Javascript "Floating point arithmetic is not always 100% accurate" dan juga banyak bahasa pemrograman lainnya berarti: perhitungan angka desimal (floating point) dalam JavaScript tidak selalu akurat 100% karena keterbatasan cara komputer merepresentasikan angka desimal dalam bentuk biner.

console.log(0.1 + 0.2);

atau

document.write(0.1 + 0.2);

Hasilnya:

0.30000000000000004

Padahal secara matematis di dalam mata kuliah Analisis Real; 0.1 + 0.2 = 0.3

Mengapa bisa begitu? 

Komputer menyimpan angka desimal dalam bentuk biner atau basis dua, dan tidak semua angka desimal bisa direpresentasikan secara tepat dalam bentuk biner. 

Saat anda menuliskan:

0.1 + 0.2

Secara internal, Javascript melakukan perhitungan seperti ini:

0.1  → 0.000110011001100... (biner, dibulatkan)

0.2  → 0.001100110011001... (biner, dibulatkan)

Hasil akhirnya adalah pembulatan biner yang mendekati 0.3 (nilai hampiran, nilai pendekatan), tapi bukan 0.3 secara persis.

Solusinya:

Jika kamu butuh akurasi (misalnya untuk keuangan), kamu bisa:

Membulatkan hasil:

let hasilnya = Math.round((0.1 + 0.2) * 100) / 100; // Hasil: 0.3


Cara 1

Menggunakan perintah document.write("   ");


Langkah-langkahnya

1. Bukalah Google Docs untuk halaman baru.

Tulislah kode

<script type="text/javascript"> </script>

2. Tulislah perintah let a, b; ke dalam kode tersebut,

sehingga kode menjadi 

<script type="text/javascript">

let a, b;

</script>

3. Tulislah kode berikut

a = 0.1;

b = 0.2;

hasilnya = a + b;

sehingga kode menjadi 

<script type="text/javascript">

let a, b;

a = 0.1;

b = 0.2;

hasilnya = a + b;

</script>


Perhatian! 

Untuk bilangan desimal; tanda koma di dalam Javascript diganti dengan tanda titik.


4. Tulislah perintah 

document.write("   "); dalam kurung diisi oleh variabel hasilnya.

sehingga kode menjadi

<script type="text/javascript">

let a, b;

a = 0.1;

b = 0.2;

hasilnya = a + b;

document.write("Hasilnya=  "+a+"+"+b+"="+hasilnya); 

</script>

5. Copy-lah seluruh kode tersebut kemudian Paste-lah ke dalam halaman +POSTINGAN BARU di Blogger di menu Tampilan HTML, bukan di menu Tampilan Menulis.

Lalu periksalah apakah tanda kutipnya itu miring atau tegak. Jika tanda kutip tersebut miring, gantilah dengan tanda kutip yang tegak. 

6. Publikasikan

Sekali lagi, kode selengkapnya berikut :

<script type="text/javascript">

let a, b;

a = 0.1;

b = 0.2;

hasilnya = a + b;

document.write("Hasilnya=  "+a+"+"+b+"="+hasilnya); 

</script>

Hasil tampilannya berikut:

Hasilnya= 0.1+0.2=0.30000000000000004


Solusinya:

Kita sisipkan kode Math.round pada kode tersebut di atas, sehingga kode menjadi:

<script type="text/javascript">

let a, b;

a = 0.1;

b = 0.2;

hasilnya = Math.round((a + b) * 100) / 100;

document.write("Hasilnya=  "+a+"+"+b+"="+hasilnya); 

</script>

Hasil tampilannya berikut:

Hasilnya= 0.1+0.2=0.3



All the titles can be read in this link (Click on here)
Daftar semua judul dapat di baca di link sini ( Klik di sini)