Jumat, November 18, 2011

Daftar Tabel Penjualan Pulsa Dengan Linked List C C++

Deskripsi: Daftar Tabel Penjualan Pulsa Dengan Linked List [50] (dibikin seluruh kode nya)

Menu:
1.Input di awal.
2.Input di akhir.
3.Hapus Di Awal
4.Hapus Di Akhir
5.Jumlah.
6.rata-rata.
7.Tampilkan Semua Data

Keterangan
Daftar Pulsa


Telkomsel 
 
  PULSA -----------------> HARGA 
  5.000 -----------------> 6.000 
  10.000 ----------------> 11.000 
  20.000 ----------------> 21.000 
  25.000 ----------------> 26.000 
  50.000-----------------> 50.000 
  100.000----------------> 100.000 
 
  Indosat 
 
  PULSA -----------------> HARGA 
  2.000 ------------------>3.000 
  5.000 ----------------> 6.000 
  10.000 ----------------> 11.000 
  25.000 ----------------> 26.000 
  50.000-----------------> 50.000 
  100.000----------------> 100.000


Source:

#include <iostream>
#include <string.h>

using namespace std;

struct data{
char nama[20];
char kode[5];
int harga;
data* next;
};

typedef data* pointer;
typedef pointer List;


void createElement(pointer& pBaru){
pBaru=new data;
cout<<"masukkan data"<<endl;
cout<<"nama = ";cin>>pBaru->nama;
cout<<"kode = ";cin>>pBaru->kode;
if(strcmp(pBaru->kode,"TK5")==0)
pBaru->harga=6000;
else if(strcmp(pBaru->kode,"TK10")==0)
pBaru->harga=11000;
else if(strcmp(pBaru->kode,"TK20")==0)
pBaru->harga=21000;
else if(strcmp(pBaru->kode,"TK25")==0)
pBaru->harga=26000;
else if(strcmp(pBaru->kode,"TK50")==0)
pBaru->harga=50000;
else if(strcmp(pBaru->kode,"TK100")==0)
pBaru->harga=100000;
else if(strcmp(pBaru->kode,"IS2")==0)
pBaru->harga=3000;
else if(strcmp(pBaru->kode,"IS5")==0)
pBaru->harga=6000;
else if(strcmp(pBaru->kode,"IS10")==0)
pBaru->harga=11000;
else if(strcmp(pBaru->kode,"IS25")==0)
pBaru->harga=26000;
else if(strcmp(pBaru->kode,"IS50")==0)
pBaru->harga=50000;
else if(strcmp(pBaru->kode,"IS100")==0)
pBaru->harga=100000;
else
pBaru->harga=0;
pBaru->next=NULL;
}

void insertFirst(List& First, pointer pBaru){
if(First==NULL)
First=pBaru;
else{
pBaru->next=First;
First=pBaru;
}
}

void insertLast(List& First, pointer pBaru){
pointer Last;
if(First==NULL)
First=pBaru;
else{
Last=First;
while(Last->next!=NULL){
Last=Last->next;
}
Last->next=pBaru;
}
}

void DeleteLast(List& First,pointer& pHapus){
pointer Last,PrecLast;
if(First==NULL)
{
pHapus = NULL;
cout<<"List Kosong"<<endl;
}
else if(First->next==NULL){
pHapus=First;
First=NULL;
}
else{
Last = First->next;
PrecLast = First;
while(Last->next!=NULL){
PrecLast = Last;
Last = Last -> next;
}
pHapus = Last;
PrecLast->next=NULL;
}
}
void DeleteFirst(List& First,pointer& pHapus){
if(First==NULL)
{
pHapus = NULL;
cout<<"List Kosong"<<endl;
}
else if(First->next==NULL){
pHapus=First;
First=NULL;
}
else{
pHapus=First;
First=First->next;
pHapus->next=NULL;
}
}
void traversal(List First){
pointer pBantu;
int i=1;
pBantu=First;
cout<<"No.\tNama\t\tKode\tHarga\n";
while(pBantu!=NULL){
cout<<i<<"\t"<<pBantu->nama<<"\t\t"<<pBantu->kode<<"\tRp "<<pBantu->harga<<endl;
pBantu=pBantu->next;
i++;
}
}

void jumlah2(List First, int& jumlah, int& i){
pointer pBantu;
pBantu=First;
i=0;
jumlah=0;
while(pBantu!=NULL){
jumlah+=pBantu->harga;
pBantu=pBantu->next;
i++;
}
}
int main(){
List First=0;
pointer p,pHapus;
int pilih,jumlah,i;
char pilih2;
do{
system("cls");
cout<<"Program Penghitung Harga Pulsa"<<endl;
        cout<<"Menu : "<<endl<<"1. Insert First"<<endl<<"2. Insert Last"<<endl<<"3. Delete First"<<endl<<"4. Delete Last"<<endl<<"5. Jumlah"<<endl<<"6. Rata rata"<<endl<<"7. Tampilkan"<<endl<<"Pilih 1-7:";
cout<<"pilihan(1-7):";cin>>pilih;
switch(pilih){
case 1:
{
createElement(p);
insertFirst(First,p);
break;
}
case 2:
{
createElement(p);
insertLast(First,p);
break;
}
case 3:
{
DeleteFirst(First,pHapus);
traversal(First);
break;
}
case 4:
{
DeleteLast(First,pHapus);
traversal(First);
break;
}
case 5:
{
jumlah2(First,jumlah,i);
cout<<"Jumlah = Rp "<<jumlah;
break;
}
case 6:
{
jumlah2(First,jumlah,i);
cout<<"Rata-rata = Rp "<<jumlah/i;
break;
}
case 7:
{
traversal(First);
break;
}
}
cout<<endl<<"Input Lagi?";cin>>pilih2;
}while(pilih2=='y'||pilih2=='Y');
return 0;
}

Tidak ada komentar:

Posting Komentar