0

Contoh Tampilan Program & Source Code "Linked List" di C++

Posted by jujur on 7:24 PM
Tampilan Program Linked List














Berikut source code nya :

#include<constream.h>
#include<stdlib.h>
#include<string.h>
#include<ctype.h>
struct titik{
    char kode[4];
    char nama[15];
    int harga;
    int satuan;
    struct titik *berikut;
    };
struct barang{
    char kode[4];
    char nama[15];
    int harga;
    int satuan;
    };
struct titik *awal=NULL, *akhir=NULL;
void tambahlist(struct barang x);
void isilist();
void sisiplist(struct titik *first,struct barang x, char *posisi);
void sisipisi();
void tampillist();
void hapuslist();

void main()
{
clrscr();
int pilih;
do {
clrscr();
cout<<"Programmer : Kurnia Sulaeman\n\n";
cout<<"Menu\n";
cout<<"1. Isi List\n";
cout<<"2. Sisip List\n";
cout<<"3. Tampil List\n";
cout<<"4. Hapus List\n";
cout<<"5. Exit\n";
cout<<"Tentukan Pilihan : "; cin>>pilih;
switch(pilih){
    case 1 : isilist(); break;
    case 2 : sisipisi(); break;
    case 3 : tampillist(); break;
    case 4 : hapuslist(); break;
    case 5 : cout<<"Terimakasih Telah menggunakan Program ini"; break;
    default : cout<<"Inputan salah"; break;
    }
getch();
}
while(pilih!=5);
getch();
}

void tambahlist(struct barang x)
{
struct titik *baru;
baru= new titik;
strcpy(baru->kode, x.kode);
strcpy(baru->nama, x.nama);
baru->harga=x.harga;
baru->satuan=x.satuan;
if(awal==NULL)
 {
 awal=baru;
 }
 else
 {
 akhir->berikut=baru;
 }

akhir=baru;
akhir->berikut=NULL;
}

void isilist()
{
char jawab;
struct barang data;
do{
clrscr();
cout<<"Kode Barang : "; cin>>data.kode;
cout<<"Nama Barang : "; cin>>data.nama;
cout<<"Harga : "; cin>>data.harga;
cout<<"Satuan : "; cin>>data.satuan;
tambahlist(data);
cout<<"\nTambah Data (Y/T) : "; cin>>jawab;
}
while(toupper(jawab)!='T');
}

void sisiplist(struct titik *first,struct barang x, char *posisi)
{
struct titik *bantu, *baru;
baru = new titik;
strcpy(baru->kode, x.kode);
strcpy(baru->nama, x.nama);
baru->harga=x.harga;
baru->satuan=x.satuan;
bantu=first;
do{
if(strcmp(posisi,bantu->kode)!=0) {bantu=bantu->berikut;}
}
while(bantu!=NULL && strcmp(posisi, bantu->kode)!=0);
baru->berikut=bantu->berikut;
bantu->berikut=baru;

}


void sisipisi()
{
char *cari;
struct barang ganti;
cout<<"Disisipkan setelah kode barang : "; cin>>cari;
cout<<"Kode Barang : "; cin>>ganti.kode;
cout<<"Nama Barang : "; cin>>ganti.nama;
cout<<"Harga : "; cin>>ganti.harga;
cout<<"Satuan : "; cin>>ganti.satuan;
sisiplist(awal, ganti, cari);
}

void tampillist()
{
struct titik *baca;
int i;
baca = awal;
i = 1;
while(baca!=NULL){
    cout<<"\n\nData yang dibaca ke-"<<i;
    cout<<"\nKode Barang : "<<baca->kode;
    cout<<"\nNama Barang : "<<baca->nama;
    cout<<"\nHarga : "<<baca->harga;
    cout<<"\nSatuan : "<<baca->satuan;
    i++;
    baca=baca->berikut;
    }
}

void hapuslist()
{
struct titik *hapus;
hapus=awal;
while(hapus!=NULL){
    hapus=hapus->berikut;
    free(hapus);
    hapus=awal;
}
}
 

0 Comments

Copyright Jujur Soaloon Sitangang Lipan All rights reserved. Theme by Sitanggang. | Bloggerized by Soalparna.