#include
"stdio.h"
#include
"stdlib.h"
#include
"conio.h"
struct node{
struct node
*previous;
int info;
struct node
*next;
};
typedef struct
node *simpul;
void main()
{
simpul baru,
awal=NULL, akhir=NULL, temp;
int pilih;
do
{
cout("MENU\n");
cout("1. Isi
depan\n");
cout("2.
tampil\n");
cout("3.
cari\n");
cout("4.
hapus Depan\n");
cout("PILIH:
");
scanf("%d",
&pilih);
switch(pilih)
{
case 1:
int data;
cout("Data
Masuk: ");
scanf("%i",
&data);
baru = (simpul)
malloc(sizeof (struct node));
baru->info =
data;
baru->next =
NULL;
baru->previous
= NULL;
if (awal == NULL)
{
awal = baru;
akhir = baru;
}
else
{
baru->next =
awal;
awal->previous
= baru;
awal = baru;
}
break;
case 2:
clrscr();
cout("Dari
AWAL\n");
temp = awal;
while(temp!=NULL)
{
cout("%i
", temp->info);
temp =
temp->next;
}
cout("\nDari
AKHIR\n");
temp = akhir;
while(temp!=NULL)
{
cout("%i
", temp->info);
temp =
temp->previous;
}
cout("\n");
break;
case 3:
clrscr();
int cari;
cout("Cari
Angka: ");
scanf("%i",
&cari);
temp = awal;
while((temp!=NULL)&&(temp->info!=cari))
{
temp =
temp->next;
}
if(temp != NULL
&& temp->info == cari)
cout("Data
Ditemukan");
else
cout("Data
Tidak Ditemukan");
cout("\n");
break;
case 4:
clrscr();
temp = awal;
awal =
awal->next;
if (awal != NULL)
awal->previous
= NULL;
if (awal == NULL)
akhir = NULL;
free(temp);
break;
}
}while
(pilih!=5);
}

Tidak ada komentar:
Posting Komentar