Wednesday, May 27, 2009

Contoh Program Bahasa C

Kecewa .............. Ngonduk .............. Mangkel .............. Jengkel .............. itulah yang kurasakan malam ini di dalam hatiku. Semua jadi satu seakan hati ini ingin berontak. Ingin hati ku mo ngerusak laptop yang tak pake untuk bikin ni program. Percuma kamu nemenin aku tiap malem untuk bikin program. kamu yang setiap hari g pernah tidur walaupun aku sudah tertidur. Malem ga tidur, paginya g tidur, siang g tidur, sampai sore pun kamu g tidur bahkan sampai malam lagi kamu juga belum tidur. Kamu memang sudah banyak berkorban demi aku untuk bikin ni program. Mulai tanggal 24 Mei kamu sudah nemenin aku setiap saat, sampai sekarang tanggal 27 Mei kamu juga masih nemenin aku di malam yang sunyi ini. Namun kali ini kamu menemani aku bukan untuk bikin program lagi, tapi kamu sebagai teman curhatku malam ini.

Bayangin aja, pengorbananmu yang beberapa hari g tidur, cuma mo nemeni aku bikin program bahasa C, tapi apa hasilnya program yang sudah jadi dan bisa berjalan dengan baik ( bagi aku ). Ternyata tidak jadi digunakan. tidak jadi dipake, tidak jadi dipresentasikan. Sungguh aku sangat kecewa banget malam ini, sudah capek ... ngantuk ... pusing ... mumet ... ngelamun ... tanya temen ... buka buku ... cuma buat mikirn gimana caranya program ni bisa jalan.


Astaghfirullah ... Astaghfirullah ... Astaghfirullahal adzim. Hanya kata itu yang bisa menenangkan hatiku untuk nggak lagi kecewa ... ngonduk ... mangkel ... jengkel. Mungkin memang belum waktunya bagi aku untuk mempresentasikan program telah kubuat. Atau mungkin ini memang peringatanku untuk tidak sombong, tidak angkuh, dan selalu ingat kembali yang Sang Pencipta.

Daripada mubazir, program ini aku publis di blog ini, semoga dengan dipublisnya contoh program ini bisa bermanfaat bagi temen-temen yang masih belajar tentang bahasa C dan menjadi pembelajaran terpenting dalam diri saya sendiri.

contoh program bahasa C.
------------------------->
/*
program : Penjualan barang
author : Thofu && Mucis
tanggal : 20 Mei 2009
*/

#include
#include

/* =================== kamus global =========================*/
struct data
{
int no_angg,jml_beli,hrg_brg,jml_byr;
char nama[15],alamat[15],nm_brg[15];
};
struct data barang[20];
struct data temp;
int i,j,x,d;
/* =================== end kamus global ====================*/

void main()
{
menu();
}

menu()
{
/*kamus lokal*/
int pil;

/*algoritma*/
i=-1;
while (pil != 4)
{
clrscr();
garis();
judul();
gotoxy(2,24); printf("Jumlah data : %d",i+1);
gotoxy(1,4);printf (" Menu Data \n");
gotoxy(1,5);printf (" (1) Input Data \n");
gotoxy(1,6);printf (" (2) Urutkan Data \n");
gotoxy(1,7);printf (" (3) Laporan \n");
gotoxy(1,8);printf (" (4) Keluar \n");
gotoxy(1,10);printf (" Pilih : "); scanf ("%d",&pil);
if (pil==1)
input();
else if (pil==2)
urutkan();
else if (pil==3)
tampil();
else
selesai();

}
getch();
return 0;
}

judul()
{
gotoxy(18,2);printf("P R O G R A M J U A L B E L I B A R A N G");
return 0;
}

input()
{
// Jika nilai i lebih besar atau sama dengan 14 maka proses input akan dihentikan.
if (i >= 14)
{
gotoxy(30,10); printf("Maaf Database Penuh");
} else {
i=i+1;
gotoxy(23,4); printf("Formulir Jual-beli Barang");
gotoxy(23,6); printf("No. Anggota : ");
gotoxy(23,7); printf("Nama : ");
gotoxy(23,8); printf("Alamat : ");
gotoxy(23,10); printf("Nama Barang : ");
gotoxy(23,11); printf("Jumlah Beli : ");
gotoxy(23,12); printf("Harga Barang : ");
gotoxy(23,13); printf("Total Bayar : ");

gotoxy(37,6); scanf("%d",&barang[i].no_angg);
gotoxy(37,7); scanf("%s",&barang[i].nama);
gotoxy(37,8); scanf("%s",&barang[i].alamat);
gotoxy(38,10); scanf("%s",&barang[i].nm_brg);
gotoxy(38,11); scanf("%d",&barang[i].jml_beli);
gotoxy(38,12); scanf("%d",&barang[i].hrg_brg);
// Menghitung total pembayaran, jumlah beli dikalikan harga barang
barang[i].jml_byr = barang[i].jml_beli * barang[i].hrg_brg;
gotoxy(38,13); printf("%d\n",barang[i].jml_byr);
}
getch();
return 0;
}

tampil()
{
/* Kamus Lokal */
int c;
/* Algoritma */
for (c=23; c<=79; c++)
{
gotoxy(c,4); printf("-");
gotoxy(c,6); printf("-");
}

gotoxy(23,5); printf("no");
gotoxy(28,5); printf("nama");
gotoxy(38,5); printf("alamat");
gotoxy(47,5); printf("nm.barang");
gotoxy(60,5); printf("jml");
gotoxy(65,5); printf("harga");
gotoxy(73,5); printf("total");

for (x=0; x<=i; x++)
{
d = x + 7;
gotoxy(23,d);printf("%d",barang[x].no_angg);
gotoxy(28,d);printf("%s",barang[x].nama);
gotoxy(38,d);printf("%s",barang[x].alamat);
gotoxy(47,d);printf("%s",barang[x].nm_brg);
gotoxy(60,d);printf("%d",barang[x].jml_beli);
gotoxy(65,d);printf("%d",barang[x].hrg_brg);
gotoxy(73,d);printf("%d",barang[x].jml_byr);
}

getch();
return 0;
}

urutkan()
{
/* kamus lokal */
int pil2;
/* algoritma */
while (pil2 != 3)
{
gotoxy(1,12);printf (" Berdasarkan: \n");
gotoxy(1,13);printf (" (1) No Anggota \n");
gotoxy(1,14);printf (" (2) Nama \n");
gotoxy(1,15);printf (" (3) Menu Utama \n");
gotoxy(1,17);printf (" Pilih : "); scanf ("%d",&pil2);
if (pil2==1)
insertionsort_no_angg();
else if (pil2==2)
insertionsort_nama();
else
rampung();
}

getch();
return 0;
}

insertionsort_nama()
{
/* kamus lokal */
int v,w;
/* algoritma */
for (v=0; v<=i; v++)
{
temp=barang[v];
for (w=v-1; w>=0 && strcmp(barang[w].nama,temp.nama); w--)
{
barang[w+1] = barang[w];
}
barang[w+1] = temp;
}
tampil();
getch();
return 0;
}

insertionsort_no_angg()
{
/* kamus lokal */
int t,f;
/* Algoritma */
for (t=1; t<=i; t++)
{
temp=barang[t];
for (f=t-1; f>=0 && barang[f].no_angg > temp.no_angg; f--)
{
barang[f+1] = barang[f];
}
barang[f+1] = temp;
}
tampil();
getch();
return 0;
}

selesai()
{
clrscr();
gotoxy(28,12); printf(" T E R I M A K A S I H ");
return 0;
}

rampung()
{ return 0; }

garis()
{
/* Kamus Lokal */
int a,b;
/* Algoritma */
for (b=4; b<=25; b++)
{ gotoxy(20,b);printf("|"); }
return 0;
}
-----------------> end program <--------------------------------