Friday, August 12, 2011

Linklist in C++, Example program

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

class linklist{
private:
struct data{
char kode;
char nama[20], nm[20], kod[20];
double mdl, total, harga, biaya;

int jml;
data*link;
}*p;
public:
linklist();
void input();
void proses();
void output();

int count;
};
linklist::linklist(){
p=NULL;
}

void linklist::input(){

clrscr();
cout<<"Input Data"<<endl;
data *q, *t;
char kode1[]="Exel Level 1";
char kode2[]="Exel Level 2";
char kode3[]="Office Level 1";
char kode4[]="Office Level 2";
char kode5[]="Exel + Office Level 1";
char kode6[]="Exel + Office Level 2";
char kd1[]="EX1";
char kd2[]="EX2";
char kd3[]="OF1";
char kd4[]="OF2";
char kd5[]="EO1";
char kd6[]="EO2";


cout<<"-------------------------------"<<endl;
cout<<"Kode : "<<endl;
cout<<"A = EX1   B = EX2     C = OF1 "<<endl;
cout<<"D = OF2    E = EO1     F = EO2 "<<endl;
cout<<"-------------------------------"<<endl;
cout<<"-------------------------------"<<endl;
if(p==NULL){
p=new data;
cout<<"Nama          : ";cin>>p->nama;
cout<<"Kode Kursus   : ";cin>>p->kode;
cout<<"Jumlah Modul  : ";cin>>p->jml;

if(p->kode=='A'){
strcpy(p->kod,kd1);
strcpy(p->nm,kode1);
p->harga=20000;
p->biaya=100000;
p->mdl=p->harga * p->jml;
p->total=p->biaya + p->mdl;
}
else if(p->kode=='B'){
strcpy(p->kod,kd2);
strcpy(p->nm,kode2);
p->harga=20000;
p->biaya=100000;
p->mdl=p->harga * p->jml;
p->total=p->biaya + p->mdl;

}
else if(p->kode=='C'){
strcpy(p->kod,kd3);
strcpy(p->nm,kode3);
p->harga=20000;
p->biaya=75000;
p->mdl=p->harga * p->jml;
p->total=p->biaya + p->mdl;
}
else if(p->kode=='D'){
strcpy(p->kod,kd4);
strcpy(p->nm,kode4);
p->harga=20000;
p->biaya=75000;
p->mdl=p->harga * p->jml;
p->total=p->biaya + p->mdl;
}
else if(p->kode=='E'){
strcpy(p->kod,kd5);
strcpy(p->nm,kode5);
p->harga=20000;
p->biaya=150000;
p->mdl=p->harga * p->jml;
p->total=p->biaya + p->mdl;
}
else{
strcpy(p->kod,kd6);
strcpy(p->nm,kode6);
p->harga=20000;
p->biaya=150000;
p->mdl=p->harga * p->jml;
p->total=p->biaya + p->mdl;
}
cout<<"-----------------------------"<<endl;
cout<<"Tekan ENTER untuk kembali"<<endl;
p->link=NULL;
}
else{
q=p;
while(q->link!=NULL)
q=q->link;
t=new data;
cout<<"Nama          : ";cin>>t->nama;
cout<<"Kode Kursus   : ";cin>>t->kode;
cout<<"Jumlah Modul  : ";cin>>t->jml;
if(t->kode=='A'){
strcpy(t->kod,kd1);
strcpy(t->nm,kode1);
t->harga=20000;
t->biaya=100000;
t->mdl=t->harga * t->jml;
t->total=t->biaya + t->mdl;
}
else if(t->kode=='B'){
strcpy(t->kod,kd2);
strcpy(t->nm,kode2);
t->harga=20000;
t->biaya=100000;
t->mdl=t->harga * t->jml;
t->total=t->biaya + t->mdl;
}
else if(t->kode=='C'){
strcpy(t->kod,kd3);
strcpy(t->nm,kode3);
t->harga=20000;
t->biaya=75000;
t->mdl=t->harga * t->jml;
t->total=t->biaya + t->mdl;
}
else if(t->kode=='D'){
strcpy(t->kod,kd4);
strcpy(t->nm,kode4);
t->harga=20000;
t->biaya=75000;
t->mdl=t->harga * t->jml;
t->total=t->biaya + t->mdl;
}
else if(t->kode=='E'){
strcpy(t->kod,kd5);
strcpy(t->nm,kode5);
t->harga=20000;
t->biaya=150000;
t->mdl=t->harga * t->jml;
t->total=t->biaya + t->mdl;
}
else{
strcpy(t->kod,kd6);
strcpy(t->nm,kode6);
t->harga=20000;
t->biaya=150000;
t->mdl=t->harga * t->jml;
t->total=t->biaya + t->mdl;
}
   cout<<"-----------------------------"<<endl;
cout<<"Tekan ENTER untuk kembali"<<endl;
t->link=NULL;
q->link=t;
}


getch();
}


void linklist::output(){
clrscr();
cout<<"Data Yang Telah Diinput"<<endl;
cout<<"----------------------------------------"<<endl;
data *q;
for(q=p;q!=NULL;q=q->link){
cout<<"----------------------------------------"<<endl;
cout<<"Nama               : "<<q->nama<<endl;
cout<<"Kode Kursus        : "<<q->kod<<endl;
cout<<"Nama Kursus        : "<<q->nm<<endl;
cout<<"Biaya Kursus       : "<<q->biaya<<endl;
cout<<"Jumlah Modul       : "<<q->jml<<endl;
cout<<"Harga Satuan Modul : "<<q->harga<<endl;
cout<<"Total Harga Modul  : "<<q->mdl<<endl;
cout<<"Total Biaya Kursus : "<<q->total<<endl;
cout<<"-----------------------------------------"<<endl;
cout<<endl;
}
getch();
}

void main(){
clrscr();
char jwb;
linklist ll;
do{
clrscr();
cout<<"Menu Utama "<<endl;
cout<<"==================="<<endl;
cout<<"[1] : Input Data "<<endl;
cout<<"[2] : Cetak Data "<<endl;
cout<<"[3] : Keluar "<<endl;
cout<<"==================="<<endl;
cout<<"Pilih : ";cin>>jwb;
if(jwb=='1'){
ll.input();

}
if(jwb=='2'){
ll.output();
}
}
while(jwb!='3');
getch();
}

Labels: