April 24, 2012

PROGRAM STACK C++

#include
#include
#include
#include
#include
#include

#define PANJANG_CODE 15
#define PANJANG_NAMA 20
#define ENTER 13

struct daftar_barang
{char code[PANJANG_CODE + 1];
char nama[PANJANG_NAMA + 1];
struct daftar_barang *lanjutan;
};

struct daftar_barang *ptr_kepala= NULL;
struct daftar_barang *ptr_pos_data;
struct daftar_barang *ptr_pendahulu;

void pemasukan_data(void);
void masukan_string(char *keterangan, char*masukan,int panjang_maks);
void tampilkan_data(void);
void cari_data(char*nama);
void hapus_data(void);
void menu_pilihan(void);

main()
{
for(; ;)
{
menu_pilihan();
puts("Tekanlah ENTER untuk melanjutkan.");
while ( getch() !=ENTER );
puts("");
}


}

void pemasukan_data(void)
{
clrscr();
char jawaban;
struct daftar_barang *ptr_baru;

do
{
ptr_baru=(struct daftar_barang*)
malloc(sizeof(struct daftar_barang));
if ( ptr_baru)
{
masukan_string("CODE Barang:",ptr_baru->code, PANJANG_CODE);
masukan_string("Nama Barang :", ptr_baru->nama, PANJANG_NAMA);

ptr_baru->lanjutan= ptr_kepala;
ptr_kepala=ptr_baru;

printf("Ingin masukkan data lagi (Y/T)?");
do
jawaban= toupper(getch());
while(!(jawaban=='Y'|| jawaban=='T'));
printf("%c\n", jawaban);
}
else
{
puts("Memory is not enough!");
break;
}
}

while (jawaban=='Y');

}

void masukan_string(char*keterangan, char*masukan, int panjang_maks)

{

char st[50];

do
{
printf(keterangan);
gets(st);
if (strlen(st)> panjang_maks)
printf("Terlalu panjang. Maksimum %d karakter\n", panjang_maks);

}

while (strlen(st)>panjang_maks);

strcpy(masukan,st);

}

void tampilkan_data(void)
{
clrscr();
struct daftar_barang *ptr_sementara;
puts("\n Isi Daftar Barang:\n");
ptr_sementara=ptr_kepala;
while (ptr_sementara)

{
printf("%s %s\n", ptr_sementara->code, ptr_sementara->nama);
ptr_sementara=ptr_sementara->lanjutan;
}

}

void cari_data(char*code)

{

ptr_pendahulu=NULL;
ptr_pos_data=ptr_kepala;

while (ptr_pos_data)
if (strcmp(code, ptr_pos_data->code)!=0)
{
ptr_pendahulu=ptr_pos_data;
ptr_pos_data= ptr_pos_data->lanjutan;
}

else

break;

}


void hapus_data(void)

{
clrscr();
char code[9];

masukan_string( "Masukkan CODE yang akan dihapus:", code, 15);
cari_data(code);
if(ptr_pos_data==NULL)
puts("CODE tak ditemukan pada daftar barang.");

else

{

if(ptr_pendahulu==NULL)

ptr_kepala=ptr_kepala->lanjutan;
else
ptr_pendahulu->lanjutan = ptr_pos_data->lanjutan;

free(ptr_pos_data);

puts("OK. Penghapusan Sudah dilakukan.");

}

}

void menu_pilihan(void)
{

char pilihan;

clrscr();


puts ("**************************************");
puts ("* BETA MART *");
puts ("* 201153133 *");
puts ("**************************************");
puts ("* MENU PILIHAN *");
puts ("*************-------------************");
puts ("* *");
puts ("* [1] Push *");
puts ("* [2] Pop *");
puts ("* [3] Display *");
puts ("* [4] Exit *");
puts ("* *");
puts ("**************************************");
printf (" Your Chance is..... (1/2/3/4):");


do

pilihan=getch();

while(pilihan < '1' || pilihan > '4');
printf ( "%c\n\n", pilihan);

switch (pilihan-'0')

{
case 1: pemasukan_data();
break;
case 2: hapus_data();
break;
case 3: tampilkan_data();
break;
case 4: exit(0);

}

}


2 komentar:

Goresanku,,,, mengatakan...

try it....^_^

Anonim mengatakan...

youtube - Vimeo
youtube - Vimeo.com. The Best VideoGame.com youtube to mp3 android YouTube is a social media platform where you can connect with the people who are in your life,

Posting Komentar

April 24, 2012

PROGRAM STACK C++

#include
#include
#include
#include
#include
#include

#define PANJANG_CODE 15
#define PANJANG_NAMA 20
#define ENTER 13

struct daftar_barang
{char code[PANJANG_CODE + 1];
char nama[PANJANG_NAMA + 1];
struct daftar_barang *lanjutan;
};

struct daftar_barang *ptr_kepala= NULL;
struct daftar_barang *ptr_pos_data;
struct daftar_barang *ptr_pendahulu;

void pemasukan_data(void);
void masukan_string(char *keterangan, char*masukan,int panjang_maks);
void tampilkan_data(void);
void cari_data(char*nama);
void hapus_data(void);
void menu_pilihan(void);

main()
{
for(; ;)
{
menu_pilihan();
puts("Tekanlah ENTER untuk melanjutkan.");
while ( getch() !=ENTER );
puts("");
}


}

void pemasukan_data(void)
{
clrscr();
char jawaban;
struct daftar_barang *ptr_baru;

do
{
ptr_baru=(struct daftar_barang*)
malloc(sizeof(struct daftar_barang));
if ( ptr_baru)
{
masukan_string("CODE Barang:",ptr_baru->code, PANJANG_CODE);
masukan_string("Nama Barang :", ptr_baru->nama, PANJANG_NAMA);

ptr_baru->lanjutan= ptr_kepala;
ptr_kepala=ptr_baru;

printf("Ingin masukkan data lagi (Y/T)?");
do
jawaban= toupper(getch());
while(!(jawaban=='Y'|| jawaban=='T'));
printf("%c\n", jawaban);
}
else
{
puts("Memory is not enough!");
break;
}
}

while (jawaban=='Y');

}

void masukan_string(char*keterangan, char*masukan, int panjang_maks)

{

char st[50];

do
{
printf(keterangan);
gets(st);
if (strlen(st)> panjang_maks)
printf("Terlalu panjang. Maksimum %d karakter\n", panjang_maks);

}

while (strlen(st)>panjang_maks);

strcpy(masukan,st);

}

void tampilkan_data(void)
{
clrscr();
struct daftar_barang *ptr_sementara;
puts("\n Isi Daftar Barang:\n");
ptr_sementara=ptr_kepala;
while (ptr_sementara)

{
printf("%s %s\n", ptr_sementara->code, ptr_sementara->nama);
ptr_sementara=ptr_sementara->lanjutan;
}

}

void cari_data(char*code)

{

ptr_pendahulu=NULL;
ptr_pos_data=ptr_kepala;

while (ptr_pos_data)
if (strcmp(code, ptr_pos_data->code)!=0)
{
ptr_pendahulu=ptr_pos_data;
ptr_pos_data= ptr_pos_data->lanjutan;
}

else

break;

}


void hapus_data(void)

{
clrscr();
char code[9];

masukan_string( "Masukkan CODE yang akan dihapus:", code, 15);
cari_data(code);
if(ptr_pos_data==NULL)
puts("CODE tak ditemukan pada daftar barang.");

else

{

if(ptr_pendahulu==NULL)

ptr_kepala=ptr_kepala->lanjutan;
else
ptr_pendahulu->lanjutan = ptr_pos_data->lanjutan;

free(ptr_pos_data);

puts("OK. Penghapusan Sudah dilakukan.");

}

}

void menu_pilihan(void)
{

char pilihan;

clrscr();


puts ("**************************************");
puts ("* BETA MART *");
puts ("* 201153133 *");
puts ("**************************************");
puts ("* MENU PILIHAN *");
puts ("*************-------------************");
puts ("* *");
puts ("* [1] Push *");
puts ("* [2] Pop *");
puts ("* [3] Display *");
puts ("* [4] Exit *");
puts ("* *");
puts ("**************************************");
printf (" Your Chance is..... (1/2/3/4):");


do

pilihan=getch();

while(pilihan < '1' || pilihan > '4');
printf ( "%c\n\n", pilihan);

switch (pilihan-'0')

{
case 1: pemasukan_data();
break;
case 2: hapus_data();
break;
case 3: tampilkan_data();
break;
case 4: exit(0);

}

}


2 komentar:

  1. youtube - Vimeo
    youtube - Vimeo.com. The Best VideoGame.com youtube to mp3 android YouTube is a social media platform where you can connect with the people who are in your life,

    BalasHapus