Senin, 20 Desember 2010

INPUT DAN OUTPUT DATA

Posted by Ayo Belajar at 15.15
Pemasukan (Input) Data
Umumnya suatu program mempunyai proses pemasukan data. Dalam program berbahasa C, pemasukan data  dapat dilakukan dengan perintah scanf. Fungsi scanf merupakan fungsi yang dapat digunakan untuk memasukan berbagai jenis data, tergantung dengan format penentunya.
Format-format penentu tipe data yang umum dipakai adalah :
Format
Kegunaan
%c
Digunakan untuk pemasukan data bertipe char
%i atau %d
Digunakan untuk pemasukan data bertipe int, char.
%u
Digunakan untuk pemasukan data berupa unsigned int atau unsigned char.
%f
Digunakan untuk pemasukan data berupa bilangan pecahan (float)
%o
Digunakan untuk pemasukan data angka berbasis oktal
%x
Digunakan untuk pemasukan data angka berbasis hexadesimal
%s
Digunakan untuk pemasukan data berupa string.
Bentuk umum penggunaan fungsi scanf adalah

scanf(“format”,&namavariabel);
Contoh :
int i,jam,menit,detik; unsigned int j;
float f;
char nama[60];
scanf(“%i”,&i);
scanf(“%u”,&j);
scanf(“%f”,&f);
scanf(“%i %i %i”,&jam,&menit,&detik);
scanf(“%s”,nama);
Fungsi scanf() kurang begitu bagus jika dipakai untuk pembacaan string. Karena data yang tersimpan adalah hanya sampai menemukan spasi, maksudnya jika kita mengisikan 2 buah kata dengan pemisah spasi, maka data yang masuk ke variabel tersebut hanyalah kata yang pertama.
Oleh karena itu, pembacaan data bertipe string biasanya menggunakan perintah gets() yang bentuk umumnya adalah :

gets(namavariabel);

Contoh :

gets(nama);
gets(alamat);
Untuk pembacaan data bertipe char, selain dengan menggunakan scanf() dengan format %c, bisa juga dengan menggunakan fungsi getch() atau getche(). Perbedaan dari getch() dan getche() adalah getch() digunakan untuk membaca data bertipe char tanpa menampilkannya di layar, dan getche() digunakan untuk membaca data bertipe char dengan menampilkan data karakternya di layar.
Contoh :
#include #include
main()
{
char a,b;
printf(“Masukan Huruf pertama : “);
a=getch();
printf(“Masukan Huruf kedua : “);
b=getche();
printf(“Data yang dimasukan adalah %c dan %d\n”,a,b);
getch();
return 0;
}
Pengeluaran (Output) Data
Untuk output data, perintah yang bisa dipakai adalah printf(). Untuk menampilkan data dengan fungsi printf(), kita harus mengatur format tampilannya, dengan format-format penentu. Untuk lebih jelas perhatikan program di bawah ini.
#include #include
main()
{
int a=25000;
unsigned int b=50000;
float c=12345.678;
char nama[50]=”Universitas Komputer Indonesia”;
char alamat[10]=”Bandung”;
clrscr();
printf(“Penampilan data tanpa di format\n”);
printf(“Nilai a : %d\n”,a);
printf(“Nilai b : %u\n”,b);
printf(“Nilai c : %f\n”,c);
printf(“String  : %s %s\n”,nama,alamat);//rata kanan
printf(“Penampilan data setelah di format\n”);
printf(“Nilai a : %8d\n”,a);
printf(“Nilai b : %8u\n”,b);
printf(“Nilai c : %11.2f\n”,c);
printf(“String 1: %40s %10s\n”,nama,alamat);//rata kanan
printf(“String 2: %-40s %-10s\n”,nama,alamat);//rata kanan
getch();
return 0;
}
Program di atas akan menampilkan hasil eksekusi seperti di bawah ini :
Penampilan data tanpa di format Nilai a : 25000
Nilai b : 50000
Nilai c : 12345.677734
String  : Universitas Komputer Indonesia Bandung
Penampilan data setelah di format
Nilai a :    25000
Nilai b :    50000
Nilai c :    12345.68
String 1:           Universitas Komputer Indonesia    Bandung
String 2: Universitas Komputer Indonesia           Bandung
Contoh Program
Contoh Kasus :
Di suatu perusahaan, data penggajian dihitung dengan ketentuan sebagai berikut :
Gaji Pokok : Rp. 5000000
Gaji Lembur/jam : Rp. 5000
Total Gaji Lembur : Lama Lembur * Gaji Lembur/jam
Gaji Kotor : Gaji Pokok + Total Gaji Lembur
Pajak : 10%
Gaji Bersih : Gaji Kotor – Pajak
Data yang diinputkan adalah : Nama Pegawai, Lama Lembur.
Program ke-1 (tanpa memformat tampilan data).
#include #include
main()
{
int jamlembur;
long int gajipokok=500000,gajikotor,totalgajilembur;
float pajak,gajibersih;
char nama[50];
clrscr();
printf(“Nama Pegawai : “);gets(nama);
printf(“Lama Lembur  : “);scanf(“%i”,&jamlembur);
totalgajilembur=(long int)5000*jamlembur;
gajikotor=gajipokok+totalgajilembur;
pajak=0.1*gajikotor;
gajibersih=gajikotor-pajak;
clrscr();
printf(“Hasil Perhitungan\n”);
printf(“Nama Pegawai      : %s\n”,nama);
printf(“Gaji Pokok        : Rp. %li\n”,gajipokok);
printf(“Lama Lembur       : %i jam\n”,jamlembur);
printf(“Total Gaji Lembur : Rp. %li\n”,totalgajilembur);
printf(“Gaji Kotor        : Rp. %li\n”,gajikotor);
printf(“Pajak (10%%)       : Rp. %f\n”,pajak);
printf(“Gaji Bersih       : Rp. %f\n”,gajibersih);
getch();
return 0;
}
Program di atas akan menghasilkan tampilan program seperti di bawah ini :
Hasil Perhitungan Nama Pegawai      : Shelly Septiani
Gaji Pokok        : Rp. 500000
Lama Lembur       : 50 jam
Total Gaji Lembur : Rp. 250000
Gaji Kotor        : Rp. 750000
Pajak (10%)       : Rp. 75000.000000
Gaji Bersih       : Rp. 675000.000000
Program Ke-2 (dengan memformat tampilan datanya).
#include #include
main()
{
int jamlembur;
long int gajipokok=500000,gajikotor,totalgajilembur;
float pajak,gajibersih;
char nama[50];
clrscr();
printf(“Nama Pegawai : “);gets(nama);
printf(“Lama Lembur  : “);scanf(“%i”,&jamlembur);
totalgajilembur=(long int)5000*jamlembur;
gajikotor=gajipokok+totalgajilembur;
pajak=0.1*gajikotor;
gajibersih=gajikotor-pajak;
clrscr();
printf(“Hasil Perhitungan\n”);
printf(“Nama Pegawai      : %s\n”,nama);
printf(“Gaji Pokok        : Rp. %10li\n”,gajipokok);
printf(“Lama Lembur       : %i jam\n”,jamlembur);
printf(“Total Gaji Lembur : Rp. %10li\n”,totalgajilembur);
printf(“Gaji Kotor        : Rp. %10li\n”,gajikotor);
printf(“Pajak (10%%)       : Rp. %10.0f\n”,pajak);
printf(“Gaji Bersih       : Rp. %10.0f\n”,gajibersih);
getch();
return 0;
}
Tampilan data ketika program di atas di eksekusi.
Hasil Perhitungan Nama Pegawai      : Shelly Septiani
Gaji Pokok        : Rp.     500000
Lama Lembur       : 50 jam
Total Gaji Lembur : Rp.     250000
Gaji Kotor        : Rp.     750000
Pajak (10%)       : Rp.      75000
Gaji Bersih       : Rp.     675000

0 comments:

Posting Komentar

 

Copyright © 2011 Blog Amburadul | Design by Kenga Ads-template