Penjualan Produk Dengan C++


Ini adalah lanjutan dari postingan sebelumnya tentang pemrograman terstruktur. Kali ini saya akan membuat sebuah program penjualan produk sederhana seperti pada mini market.Dalam program ini di gunakan beberapa header seperti windows.h, conio.h, stdio.h dan beberapa fungsi-fungsi dalam bahasa C/C++ seperti For, Do While, If dan Clreol (clrear end of line)

Saya menggunakan Microsoft Visual Studio 2010. Untuk program compile yang lainnya seperti Borland atau Visual C++, ada beberapa header dan kode-kode yang mesti dirubah atau dihilangkan tapi tidak pada sourcecode dasarnya.

Berikut adalah contoh sourcecode-nya:

#include “stdafx.h”
#include<windows.h>
#include<stdio.h>
#include<conio.h>

void setcolor(unsigned short color)
{
HANDLE hCon = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hCon,color);
}

HANDLE g_hConsole = 0;
DWORD  g_dwScreenChars = 0;

int getch( void );
void clreol(void );
void gotoxy(SHORT nX, SHORT nY);
void clreol(void )
{
CONSOLE_SCREEN_BUFFER_INFO sInfo={0};
GetConsoleScreenBufferInfo( g_hConsole , &sInfo);
SHORT nDistance = sInfo.dwSize.X -
sInfo.dwCursorPosition.X ;
DWORD dwNumberOfCharsWritten=0;
FillConsoleOutputCharacter( g_hConsole,
‘ ‘,
nDistance,
sInfo.dwCursorPosition,
&dwNumberOfCharsWritten);
SetConsoleCursorPosition( g_hConsole,sInfo.dwCursorPosition);
}

void gotoxy(SHORT nX, SHORT nY)
{
COORD sCoord = {nX,nY};
SetConsoleCursorPosition( g_hConsole,sCoord);
}

int main(void)
{
g_hConsole = GetStdHandle( STD_OUTPUT_HANDLE );
CONSOLE_SCREEN_BUFFER_INFO sInfo={0};
GetConsoleScreenBufferInfo( g_hConsole , &sInfo);
g_dwScreenChars = sInfo.dwMaximumWindowSize.X *
sInfo.dwMaximumWindowSize.Y ;

char jawab;
char nama_barang[20];
int i=1;
int qty;
int kode;
float total_harga;
float harga_satuan;
float diskon=0.1;
float total_bayar=0;
float pembayaran;
float kembalian;
float potongan;
int total_item=0;
setcolor(7);
gotoxy(15,1);printf(“\” TOKO BUKU SEJAHTERA \””);
setcolor(10);
gotoxy(1,3);printf(“===============================================”);
gotoxy(2,4); printf(“No|\n”);
gotoxy(5,4); printf(“Kode|\n”);
gotoxy(12,4); printf(“Nama Item  |\n”);
gotoxy(24,4); printf(”  Harga  |\n”);
gotoxy(34,4); printf(“Qty|\n”);
gotoxy(40,4); printf(“Total  |\n”);
gotoxy(1,5);printf(“===============================================”);
do
{
gotoxy(2,5+i); printf(“%i”,i);
gotoxy(4,5+i); printf(“|”);
gotoxy(6,5+i); scanf(“%d”,&kode);

if
(kode==1)
{ strcpy(nama_barang,”BUKU TULIS”); harga_satuan=7000; }
else if
(kode==2)
{ strcpy(nama_barang,”PENSIL 2B”); harga_satuan=2150; }
else if
(kode==3)
{ strcpy(nama_barang,”BALLPOINT”); harga_satuan=4300; }
else if
(kode==4)
{ strcpy(nama_barang,”MISTAR”); harga_satuan=6200; }
else if
(kode==5)
{ strcpy(nama_barang,”HVS”); harga_satuan=32500; }
else if
(kode==6)
{ strcpy(nama_barang,”LAKBAN”); harga_satuan=11000; }
else if
(kode==7)
{ strcpy(nama_barang,”GUNTING”); harga_satuan=3000; }
else if
(kode==8)
{ strcpy(nama_barang,”STAPLER”); harga_satuan=8500; }
else if
(kode==9)
{ strcpy(nama_barang,”PENGHAPUS”); harga_satuan=1750; }
else if
(kode==10)
{ strcpy(nama_barang,”STABILLO”); harga_satuan=3300; }
else if
(kode>10)
{strcpy(nama_barang,”ERORR ERORR ERORR ERORR”);harga_satuan=000000;}

gotoxy(9,5+i);printf(“|”);
gotoxy(11,5+i);printf(“%s”,nama_barang);
gotoxy(23,5+i); printf(“|”);
gotoxy(24,5+i);printf(“%7.3lf”,harga_satuan/1000);
gotoxy(33,5+i); printf(“|”);
gotoxy(35,5+i); scanf(“%d”,&qty);
gotoxy(37,5+i); printf(“|”);
total_harga=qty*harga_satuan;
gotoxy(39,5+i); printf(“%7.3lf”,total_harga/1000);
gotoxy(47,5+i); printf(“|”);
gotoxy(1,7+i);printf(“——————————————- (+)”);
gotoxy(1,6+i);
clreol();
total_item+=qty;
total_bayar+=total_harga;
gotoxy(2,8+i);printf(” Sub Total Item “);
gotoxy(35,8+i);printf(“%d”,total_item);
gotoxy(39,8+i);printf(“%7.3lf”,total_bayar/1000);
i++;
gotoxy(2,14+i);printf(“Tambah Data [Y/T]: “);scanf(“%s”,&jawab);
gotoxy(2,14+i);
clreol();
}
while(jawab==’y’ || jawab==’Y’);
if (total_bayar>=50000)
{
gotoxy(2,9+i);printf(” Diskon 10 %”);
potongan=(total_bayar/1000)*diskon;
gotoxy(39,9+i);printf(“%7.3lf”,potongan);
}
else
{
gotoxy(2,9+i);printf(” Diskon 0 %”);
potongan=total_bayar*0;
gotoxy(39,9+i);printf(“%7.2f”,potongan/1000);
}

gotoxy(1,10+i);printf(“——————————————- (-)”);
gotoxy(2,11+i);printf(” TOTAL”);
gotoxy(39,11+i);printf(“%7.3lf”,(total_bayar/1000)-potongan);
gotoxy(2,13+i);printf(” Tunai”);
gotoxy(1,14+i);printf(“——————————————- (-)”);
gotoxy(40,13+i); scanf(“%f”,&pembayaran);
gotoxy(39,13+i);printf(“%7.3lf”,pembayaran/1000);
kembalian=(pembayaran/1000)-((total_bayar/1000)-potongan);
gotoxy(2,15+i);printf(” Kembalian”);
gotoxy(39,15+i);printf(“%7.3lf”,kembalian);
gotoxy(1,17+i);printf(“===============================================”);
setcolor(7);
gotoxy(15,20+i);printf(“- TERIMA KASIH -“);

getch();
}

Silahkan dicoba. Anda boleh menyalinnya dengan copy paste tetapi jangan melupakan sumbernya. Itu diharamkan Hahahah… :D

Jangan segan beri komentar ya….

Sampai ketemu di postingan selanjutnya

About these ads

One thought on “Penjualan Produk Dengan C++

Berikan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Logout / Ubah )

Twitter picture

You are commenting using your Twitter account. Logout / Ubah )

Facebook photo

You are commenting using your Facebook account. Logout / Ubah )

Google+ photo

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s