Tutorial Belajar C Part 17: Pengertian dan Contoh Kode Program Tipe Data Float

Tipe data float adalah tipe data untuk angka pecahan. Dalam tutorial belajar bahasa pemrograman C di Duniailkom kali ini kita akan bahas tentang pengertian, jenis-jenis serta contoh kode program untuk tipe data float dalam bahasa C.


Pengertian Tipe Data Float Bahasa C

Tipe data float digunakan untuk menampung angka pecahan seperti 3.14, 62.22 atau -0.01234. Sama seperti bahasa pemrograman pada umumnya, kita menggunakan tanda titik sebagai pemisah angka bulat dan pecahan, bukan tanda koma seperti yang kita pakai sehari-hari.

Di dalam bahasa C, selain float juga terdapat tipe data double yang juga bisa dipakai untuk menyimpan angka pecahan. Perbedaan antara float dan double terletak dari jangkauan angka serta tingkat ketelitian angka.

Berikut tabel perbedaan antara tipe data float dan double dalam bahasa C:

Jenis Tipe Data Ukuran Memory Jangkauan Ketelitian
float 4 byte 1.2E-38 hingga 3.4E+38 6 tempat desimal
double 8 byte 2.3E-308 hingga 1.7E+308 15 tempat desimal

Sebenarnya masih ada 1 lagi jenis tipe data untuk angka pecahan, yakni long double dengan jangkauan yang lebih besar dari double. Namun tidak semua compiler bahasa C mendukung tipe data ini.

Penulisan angka pecahan juga bisa menggunakan notasi ilmiah, seperti 3.12e2 atau 4E-3. Tanda e atau E mewakili pangkat 10, sehingga 3.12e2 = 3.12 x 10^2 = 312. Sedangkan 4E-3 = 4 x 10^-3 = 0.004.

 

Meskipun tipe data float bisa menyimpan angka yang sangat besar, tapi tipe data ini memiliki kelemahan yang umum di setiap bahasa pemrograman (tidak bahasa C saja). Yakni terdapat batas tingkat ketelitian. Hal ini berhubungan dengan mekanisme penyimpanan di dalam komputer yang berupa angka biner. Kita akan lihat contohnya beberapa saat lagi.


Contoh Kode Program Tipe Data Float Bahasa C

Sebagai contoh kode program pertama, saya akan membuat 2 buah variabel bertipe float dan double, menginput angka, lalu menampilkannya:

#include <stdio.h>
int main(void)
{
float angka1;
double angka2;
angka1 = 4.323;
angka2 = 0.0067;
printf("Isi variabel angka1 (float): %f \n",angka1);
printf("Isi variabel angka2 (double) %f \n",angka2);
printf("\n");
return 0;
}

Contoh kode program untuk tipe data float bahasa C

Untuk menampilkan angka float, kita menggunakan kode %f di dalam perintah printf.

Berikutnya, saya akan input angka dengan penulisan notasi ilmiah:

#include <stdio.h>
int main(void)
{
float angka1 = 9.13e5;
double angka2 = 3.99E-4;
printf("Isi variabel angka1 (float): %f \n",angka1);
printf("Isi variabel angka2 (double) %f \n",angka2);
printf("\n");
return 0;
}

Contoh kode program untuk tipe data float bahasa C notasi ilmiah

Dari kedua contoh diatas, kita bisa melihat bahwa secara default bahasa C menampilkan angka desimal dengan 6 angka di belakang koma. Maksudnya, jika yang ditulis adalah 4.323, maka yang ditampilkan menjadi 4.323000. Bagaimana mengubahnya, misalnya menjadi 2 angka dibelakang koma?

Perintah printf memiliki aturan khusus untuk hal ini. Untuk mengatur agar bahasa C menampilkan jumlah angka di belakang koma, kita bisa menambahkan 3 cara penulisan ke dalam pola %f. Dimana formatnya adalah sebagai berikut:

%(0)(jumlah total digit).(jumlah angka di belakang koma)%f

Kode yang ada di dalam tanda kurung bersifat opsional dan boleh tidak ditulis. Mari kita lihat prakteknya menggunakan contoh kode program:

#include <stdio.h>
int main(void)
{
float angka1 = 1234.5678;
printf("Isi variabel angka1: %f \n",angka1);
printf("Isi variabel angka1: %15f \n",angka1);
printf("Isi variabel angka1: %015f \n",angka1);
printf("Isi variabel angka1: %.3f \n",angka1);
printf("Isi variabel angka1: %010.3f \n",angka1);
printf("Isi variabel angka1: %e \n",angka1);
printf("Isi variabel angka1: %E \n",angka1);
printf("\n");
return 0;
}

Contoh kode program untuk tipe data float bahasa C mengatur angka koma

Di awal kode program saya mendefinisikan variabel angka1 sebagai float dan diisi dengan angka 1234.5678.

Dalam perintah printf pertama, terlihat bahwa angka1 berisi 1234.567749. Loh, kenapa berbeda? inilah salah satu kelemahan dari tipe data float, yakni tidak bisa secara persis menyimpan angka. Kesalahan pembulatan ini umum di setiap bahasa pemrograman yang bersala dari mekanisme konversi angka di dalam komputer (digit biner).

Untuk perintah printf kedua, saya menggunakan pola %15f. Pola ini akan menampilkan angka pecahan dengan 15 digit (termasuk karakter titik). Karena variabel angka1 tersimpan sebagai 1234.567749 (total 11 digit), maka akan ditambah 4 spasi sebelum angka agar total menjadi 15 digit.

Untuk perintah printf ketiga, saya menggunakan pola %015f. Pola ini juga akan menampilkan angka pecahan dengan 15 digit, namun 4 spasi sebelumnya akan diganti dengan angka 0.

Perintah printf keempat, saya menggunakan pola %.3f. Pola ini akan menampilkan angka pecahan dengan 3 digit dibelakang koma.

Perintah printf kelima, saya menggunakan pola %010.3f. Pola ini akan menampilkan angka pecahan dengan 3 digit dibelakang koma. Selain itu angka akan ditampilkan dengan jumlah total 10 digit. Jika kurang, akan ditambah dengan angka 0 di sisi kiri angka bulat.

Dua perintah printf terakhir menggunakan pola %e dan %E. Ini dipakai untuk menampilkan angka dalam format notasi ilmiah, yakni 8.012457e+003 dan 8.012457E+003. Perbedaannya hanya menggunakan huruf e kecil atau E besar.

Sebagai penutup tutorial tentang tipe data float di dalam bahasa C, kita akan akses file header float.h yang berisi berbagai konstanta untuk melihat ukuran memory, nilai minimum, nilai maksimum serta jumlah digit ketelitian dari tipe data float di bahasa C:

#include <stdio.h>
#include <float.h>
int main(void)
{
printf("Ukuran memory untuk tipe data float: %d byte \n", sizeof(float));
printf("Ukuran memory untuk tipe data double: %d byte \n", sizeof(double));
printf("\n");
printf("Nilai minimal tipe data float: %E \n", FLT_MIN);
printf("Nilai maksimal tipe data float: %E \n", FLT_MAX);
printf("\n");
printf("Nilai minimal tipe data double: %E \n", DBL_MIN);
printf("Nilai maksimal tipe data double: %E \n", DBL_MAX);
printf("\n");
printf("Ketelitian float: %d digit\n", FLT_DIG );
printf("Ketelitian double: %d digit\n", DBL_DIG );
printf("\n");
return 0;
}

Contoh kode program untuk info tipe data float di bahasa C

Dengan kode program ini, kita bisa melihat informasi seputar tipe data float.


Dalam tutorial belajar bahasa C di Duniailkom kali ini kita sudah membahas banyak hal terkait tipe data float, mulai dari pengertian, jenis tipe data float, serta berbagai contoh kode program. Berikutnya akan dibahas tentang Pengertian Array dan Contoh Kode Program Tipe Data Array dalam bahasa C.


*** Artikel Terkait ***

Add Comment