Multiple Linked List
Hello teman-teman,disini saya akan sharing sedikit tentang contoh program Multiple List,
ini dia code nya teman.
Multiple
Linked List
|
#include<iostream>
#include<conio.h>
using namespace std;
typedef struct nodep
{ char nama[20];
struct nodep *next;
} *peserta;
typedef struct node
{ char pelatihan[20];
struct node *next;
peserta down;
} *list;
list L;
void InsertPelatihan(list &l)
{
int i,n;
list b;
cout<<"banyak pelatihan : ";cin>>n;
for (i=1;i<=n;i++){
b=new node;
b->next=NULL;b->down=NULL;
cout<<"Nama Pelatihan :
";cin>>b->pelatihan;
if (l==NULL) l=b;
else {b->next=l;
l=b;}
}
}
void cetakdata(list l)
{list p;peserta q;
if (l!=NULL) {
p=l;cout<<endl;
while (p!=NULL) {
cout<<p->pelatihan<<" : ";
q=p->down;
while (q!=NULL) {
cout<<q->nama<<",
";q=q->next;}
p=p->next;cout<<endl;
}
}
else cout<<"kosong";
}
void InsertPeserta(list &l)
{
int i,n;char namapelatihan[20];
list p;peserta b;
cout<<"Insert Peserta "<<endl;
cout<<"Nama pelatihan: ";cin>>namapelatihan;
p=l;
while (p!=NULL &&
strcmp(p->pelatihan,namapelatihan)!=0) p=p->next;
if (p==NULL) cout<<"nama pelatihan belum ada\n";
else
if(strcmp(p->pelatihan,namapelatihan)==0) {
cout<<"banyak peserta : ";cin>>n;
for (i=1;i<=n;i++){
b=new nodep; b->next=NULL;
cout<<"Nama peserta :
";cin>>b->nama;
if (p->down==NULL) p->down=b;
else {b->next=p->down;
p->down=b;
}
}
}
}
//Tugasnya adalah melengkapi subprogram utk menghapus satu peserta
berikut
void HapusPeserta(list &l) {
char namapelatihan[20],namapeserta[20];
list p,t;
}
main()
{ int x;
L=NULL;
InsertPelatihan(L);
InsertPeserta(L);
InsertPeserta(L);
InsertPeserta(L);
cetakdata(L);
getch();
}
|
EmoticonEmoticon