Sehari saya posting tentang bahasa C ada pertanyaan “aneh” yang masuk di inbox saya:
“kok gak ada errornya sih? Sekali-sekali tampilin yang error biar tahu bagaimana memperbaikinya dunk”
Ok dah, sekalian ini sebagai posting kedua tentang bahasa C, kali ini masih membahas IO. Kalau posting pertama tentang input, kali ini khusus out put yang saya jelaskan. Ada juga yang protes, turbo c nya gak jalan, sekalian saya jawab disini:
1. Pastikan file masternya tidak corupt.
2. Copy folder Turbo C anda ke drive C, sembarang lah pokoknya di drive C, kalau anda letakkan di drive selain C gak bisa. Alasannya sederhana saja, file sistem berada di drive C.
3. Trus mana yang dijalankan? Lihat gambar ini:
Buka folder TC, kemudian cari TC.exe, klik ganda.
Maka akan terbuka window turbo C, untuk membuka halaman baru, caranya tekan F10 pada keyboard anda sehingga menu bar turbo C akan terbuka, pilih file-new dan tekan enter.
Ohya, juga karena ada permintaan script nya untuk ditulis diposting, bukan berupa gambar, supaya bisa dicopy paste, oke lah saya ketik pada halaman posting, bukan gambar untuk scriptnya. Untuk hasil tampilan tetap saya tampilkan dalam bentuk gambar, biar jelas saja maksud saya..
Teori:
Perintah untuk menampilkan data pada bahasa c ada 3 macam (yang saya tahu), yaitu fungsi printf(), puts(), dan putchar(). Perbedaan dari ketiganya adalah pada fungsi printf() dapat digunakan untuk menampilkan semua jenis data, numerik, maupun karakter atau string bisa ditampilkan. Fungsi puts() digunakan untuk menampilkan data string (string adalah kumpulan karakter) dan secara otomatis akan berpindah baris. Nah untuk putchar() digunakan untuk menampilkan karakter saja.
Ada sedikit tambahan, untuk mengatur tampilan, kasus pada bilangan pecahan:
Bentuk umum nya:
Printf(“%a.bf”,nilai);
% digunakan untuk menentukan format, sebenarnya digabung dengan %f =tipe apa? Masih ingat posting pertama? Ya, data bertipe float atau pecahan.
a = menyatakan panjangnya range data, berapa digit gitu maksudnya.
b = menentukan berapa angka dibelakang koma.
Hasilnya menampilkan isi variabel nilai sebanyak 4 digit dan 2 digit dibelakang tanda koma. Bingung? Langsung praktek aja kalau gitu, ini scriptnya (mohon koreksi kalau ada salah ketik, kalau saya tampilkan dalam bentuk gambar sebenarnya menghindari salah ketik):
#include "stdio.h"
#include "conio.h"
Float a;
Void main()
{
Puts(“masukkan sebuah bilangan pecahan:”); scanf(“%f”,&a);
Printf(“anda memasukkan bil:%4.2f”,a);
Getch();
}
Jalankan programnya dengan Ctrl+F9, berikut ini tidak sengaja saya salah ketik, pas saya jalankan eror yang muncul, sekalian sebagai latihan menangani kesalahan:
Tekan sembarang tombol, maka akan tampil pesan bagian mana yang salah, perhatikan gambar dibawah ini, mana yang salah? Ya, gecth(); harusnya yang benar getch(); untuk mengedit, tekan Alt+F9, kemudian tekan enter.
Setelah dilakukan perbaikan, sekarang jalankan lagi, dan hasilnya seperti berikut ini:
Perhatikan pada bagian yang saya tandai kotak merah. Fungsi puts() maka langsung pindah baris, pengisian nilai dibawahnya.
Kemudian yang saya tuliskan dibelakang koma ada 4 digit, dan yang ditampilkan hanya 2 digit. Lihat kembali fungsi printf(“bla bla bla:%4.2f”,a); pada gambar dibawah ini:
Pada latihan diatas, semua yang kita pelajari hanya ditampilkan di layar monitor, bisakah di cetak dengan printer? Bisa! Menggunakan fungsi fprintf() : digunakan untuk mencetak semua tipe data ke printer, fputs() : untuk mencetak data string ke printer, fputc() : untuk mencetak data karakter ke printer.
Contoh scriptnya:
#include<stdio.h>
#include<conio.h>
Void main()
{
Fprintf(stdprn, “ini akan dicetak di printer”);
Fputs(stdprn,”ini juga tercetak”);
}
Mudah kan belajar bahasa C? kunci utama supaya bisa mahir, lakukan percobaan setiap hari. Semakin banyak error yang anda temukan, semakin anda faham penanganannya. Jika terdapat kebuntuan, he he he istilahnya ngawur nih... bisa searching google, atau hubungi saya, insyaAllah kita bisa diskusi lebih lanjut.
(asmarawati, trims ucapan malamnya, maaf aku tidak mengindahkanmu (dia ngucapin met tidur, padahal aku mau lembur, he he he))