Halo, selamat datang di Bony3D!
Tipe data dalam pemrograman ada banyak jenisnya, ada yang khusus huruf, angka, karakter, teks, dan bahkan menghitung dengan sangat teliti. Pada artikel ini, Saya akan membahas salah satu tipe data dengan fungsi menyimpan nilai berbentuk pecahan dengan ketelitian terbatas. Apa itu? Ya! Ini adalah tipe data float. Bagaimana deklarasinya? Apa kegunaannya? Apa yang membedakannya dengan tipe data sejenis? dan yang terakhir Saya akan rinci mengenai fungsi pada deklarasi float. Yuk kita mulai!
Float ialah salah satu tipe data yang digunakan untuk menandai nilai presisi seperti ketelitian tunggal. Nilai yang disimpan dalam float berbentuk pecahan atau desimal, bukan bilangan bulat. Pemisahan antara bilangan bulat dan pecahan harus menggunakan titik, bukan koma. Hal yang sangat perlu diperhatikan dalam tipe data ini ialah "nilai". Karena nilai yang tidak sesuai baik itu terlalu besar atau kecil akan mempengaruhi hasil penilaian di akhir menjadi tidak akurat. Kelebihan utama float ialah dapat menyimpan nilai yang sangat besar namun memiliki batasan dalam tingkat ketelitian.
Penyimpanan float sendiri lebih kecil dari tipe data double dan pastinya double membutuhkan 2 kali lebih ukuran ruangan penyimpanan dibandingkan dengan float. Perbedaan lainnya, double lebih akurat dalam memproses suatu data karena memiliki 64 bit memori dengan penjelasan: tanda di bit pertama, eksponen di 11 bit setelahnya, variabel asli dalam 52 bit yang tersisa, dan 15 bit disimpan ganda. Sedangkan float hanya memiliki 32 bit memori dengan penjelasan: eksponen dalam 8 bit setelahnya, variabel asli dalam 23 bit yang tersisa, dan memiliki tingkat keakuratan 6 sampai 7 tempat desimal.
Apa itu double? Artikel berikutnya Saya akan bahas tuntas tentang tipe data ini. Namun, sebagai awalan, double ialah salah satu tipe data yang memiliki fungsi sama dengan float. Perbedaannya hanya di jangkauan angka dan ketelitiannya saja. Untuk lebih jelasnya, perhatikan tabel berikut:

Bagaimana cara penulisan bilangan pecahan dalam tipe data ini? Umumnya, bilangan pecahan hanya berbentuk angka seperti: (1.25). Namun ada cara lain yang bisa dipakai dalam penulisan pecahan yaitu karakter "e" yang diartikan sebagai pangkat 10.
Selanjutnya bagaimana dengan sintaksnya? Sintaks float dituliskan seperti ini:
float nama_variabel = nilai;
dengan ketentuan sebagai berikut:
nama_variabel ialah nama yang akan dipanggil di seluruh program dan nilai merupakan nilai yang ditetapkan ke variabel.
Selanjutnya Saya akan mendeklarasikan tipe data ini dengan 3 contoh kasus.

Contoh di atas saya menggunakan 2 variabel yaitu variabel float dan double. Setelah itu, Saya memasukkan angka seperti pada perintah baris ke-8 dan 9 dengan ketentuan angka 1 untuk float dan angka 2 untuk double. Selanjutnya Saya menampilkan angka tersebut dengan perintah printf dan fungsi %F yang berarti float. Lihat hasilnya!
Ada penambahan 0 di belakang bilangan yang saya input-kan. Kira-kira kenapa? Seperti yang sudah dijelaskan sebelumnya bawa tipe data ini memiliki tingkat ketelitian di 6 tempat bilangan desimal, maka jika belum mencapai 6 angka di belakang koma, tambahkan 0 di belakang bilangan pecahan. Namun, kita harus melihat dulu fungsi pada printf-nya seperti apa, karena ada berbagai macam fungsi printf yang mengharuskan programmer menambahkan nilai selain 0 untuk mencapai syarat ketentuan 6 angka di belakang koma. Apa itu? Saya akan bahas di contoh ke-3 nanti ya dan sekarang perhatikan contoh ke-2 di mana Saya akan memasukkan angka dengan notasi ilmiah "e".

Sama seperti sebelumnya, jika angka yang kita masukkan belum mencapai 6 angka di belakang koma, maka harus menambahkannya dengan 0 setelah penulisan bilangan pecahan karena perintah printf hanya sebatas %F. Perbedaan yang mencolok dengan contoh pertama yaitu nilai masukannya. Jika sebelumnya Saya hanya memasukkan nilai pecahan umum, namun pada contoh kali ini saya menggunakan pecahan dengan karakter "e" yang artinya pangkat 10. Perhatikan hasilnya!
6 angka di belakang koma memang sudah pengaturan awal pada tipe data ini. Namun, bagaimana jika seorang programmer ingin menampilkan angka di belakang koma sebanyak 2 saja? Maka kita bisa mengatur format keluaran dari tipe data ini. Perhatikan pernyataan berikut!
%(0) (jumlah total digit).(jumlah angka di belakang koma) %f
Keterangan yang berada di dalam kurung merupakan pilihan. Artinya, tanpa kamu memakainya, tidak menjadi masalah. Perhatikan contoh berikut:

Perintah baris ke-5 yaitu mengisikan nilai dengan variabel angka1 ke dalam tipe data float. Perintah printf saya membuatnya bukan hanya 1, melainkan 7. Fungsi yang Saya gunakan pada tiap printf berbeda, mari perhatikan:
printf pertama diisikan dengan fungsi %F dan jika diperhatikan lagi pada hasilnya, angka pada hasil akan berbeda dengan angka masukan. Kenapa? Hal itu dikarenakan salah satu kelemahan float yaitu tidak bisa persis menyimpan angka dan ini disebabkan karena konversi angka di komputer yang hanya menggunakan digit biner (0 dan 1).
printf kedua diisikan dengan fungsi %15F yang artinya, Saya ingin menampilkan 15 digit dalam program dan ingat ya, titik tetap dinilai sebagai hitungan digit. Jika di printf 1 dihasilkan 11 digit, maka program ini akan menambahkan 4 digit lainnya agar jumlah keseluruhan 15 digit. Tambahan ini berupa spasi kosong yang terletak di depan bilangan bulat. Tentu masih ingat bukan, pada contoh kasus, Saya sedikit menjelaskan bahwa angka 0 biasanya digunakan sebagai tambahan jika 6 angka di belakang koma belum terpenuhi syarat, namun itu jika menggunakan fungsi %F saja. Pada kasus ini tidak menambahkan 0 melainkan menggunakan spasi kosong dan penempatannya pun berbeda, karena fungsi yang digunakan adalah %15F.
printf ketiga diisikan dengan fungsi %015F. Hampir mirip dengan printf sebelumnya, namun jika menggunakan 0 di depannya berarti programmer harus menambahkan 0 sebagai syarat terpenuhinya 15 digit dalam pemrograman. 0 di sini diletakan di awal sebelum penulisan bilangan bulat.
printf yang keempat diisikan dengan fungsi %.3F yang bertujuan untuk menampilkan 3 digit angka setelah koma. Ingat bahwa pemisahan bilangan bulat dan pecahan harus menggunakan titik. Maka fungsi ditulis %.3F. Titik mengartikan bahwa penulisan setelah koma dan 3 menandai bahwa 3 digit yang diperlukan di belakang koma.
printf kelima diisikan dengan fungsi %10.3F. 10 menandakan bahwa nilai harus berjumlah 10 digit, 3 menandakan bahwa harus ada 3 digit di belakang koma yang disimbolkan dengan titik pada fungsi. Jika jumlah bilangan kurang dari 10 digit maka bisa menambahkan 0 di setelah bilangan bulat.
printf yang terakhir diisikan dengan fungsi %e dan %E. Perbedaannya hanya pada huruf "e" kapital atau kecil saja dan untuk perhitungannya sama yaitu "e" melambangkan pangkat 10.
Bahasan selanjutnya ialah mengenai batas minimum dan maksimum pada tipe data float. Bagaimana cara mengetahuinya? Yuk kita pelajari bersama:)
Cara mengetahuinya yaitu menggunakan akses file header ke float.h, di mana dalam file tersebut berisikan berbagai jenis konstanta yang digunakan untuk melihat beberapa status, seperti: ukuran memori, nilai minimum, nilai maksimum, dan jumlah digit ketelitian. Perhatikan contoh berikut:
