Assalamu'alaikum...Selamat Datang di Electrical Engineering Community 04...Take your Coment Bro...

Monday, August 31, 2009

Memasukkan Data


Fungsi2 yang digunakan

Seperti halnya menampilkan hasil di alat2 output yang menggunakan fungsi2 pustaka, proses memasukkan data juga dilakukan dengan cara yang sama, yaitu dengan menggunakan fungsi2 pustaka. Fungsi2 pustaka yang digunkan untuk memasukkan data melalui alat input keyboard, prototypenya ada di file judul stdio.h dan conio.h.

stdio.h : gets() dan scanf()
conio.h : getche(), getchar() dan getch()


Memasukkan Data Terformat

Memasukkan data terformat berarti data yang diterima akan diatur bentuk dan lebarnya dengan kode2 format. Fungsi yang
digunakan untuk memasukkan data terformat adalah fungsi scanf()

Kode Format······Kegunaan
%cMembaca sebuah karakter
%sMembaca data String
%dMembaca nilai desimal integer
%iMenampilkan nilai desimal integer
%hMembaca nilai short integer desimal
%xMembaca nilai heksadesimal
%oMembaca nilai oktal
%fMembaca nilai pecahan
%eMembaca nilai pecahan
%gMembaca nilai pecahan


Fungsi scanf() menggunakan pengiriman nilai secara acuan. Di C, pengiriman secara acuan dilakukan dengan menggunakan pointer, sehingga variabel2 yang digunakan di fungsi scanf() harus berupa variabel pointer. VAriabel pointer diawali dengan operator '&'. Misalnya variabel I adalah variabel tipe integer yang digunakan untuk menerima data yang dimasukkan di fungsi scanf(), variabel ini harus dituliskan sebagai &I. Pengecualian adalah untuk nilai string. Nilai string sebenarnya adalah larik karakter dimensi satu. Jika nama larik string dituliskan tanpa indek dari larik, ini berarti menunjukkan alamat memori dari elemen pertama karakter nilai string tersebut, sehingga sudah berbentuk pointer dan operator '&' tidak perlu digunakan lagi.

Contoh :
/* program C sederhana */

# include stdio.h
# include conio.h
main()
{
char C;
printf("Masukkan sebuah nilai karakter ? ");
scanf("%c",&C);
printf("Nilai karakter yang anda masukkan adalah: %c\n",C);
getch();
return 0;
}


Mendeteksi penekanan tombol keyboard

Fungsi pustaka kbhit() dapat digunakan untuk mendeteksi apakah suatu tombol keyboard sudah ditekan atau belum. Berbeda dengan fungsi2 pustaka sebelumnya untuk memasukkan data lewat keyboard yang akan menyebabkan proses program berhenti menunggu data dimasukkan, fungsi kbhit() tidak menyebabkan proses dari program berhenti untuk menunggu penekanan tombol keyboard. Jika tombol keyboard di tekan, fungsi kbhit() akan memberikan nilai bukan 0 dan sebaliknya jika tombol keyboard belum ditekan, fungsi ini akan memberikan nilai 0. prototype dari fungsi ini ada di file judul conio.h.
/* program C sederhana */

# include stdio.h
# include conio.h
main()
{
int I;
for (I=1; I<=1000; I++){
printf("I=%d\n",I);
if(kbhit()){ /* sama dengan if(kbhit())!=0*/
printf("Berhenti karena ada tombol keyboard ditekan !\n");
break;
}
}
}

Program ini akan menampilkan nilai dari 1 sampai dengan 1000 jika suatu tombol tidak pernah di tekan selama prosesnya dan sebaliknya. Proses menampilkan hasil berulang2 ini dapat dilakukan dengan menggunakan statement for. Jika tombol ditekan proses akan dihentikan dengan mengeluarkannya dari perulangan. Statemen untuk memaksa keluar dari perulangan dapat dilakukan dengan statemen break.