BAB 5 KERJASAMA DALAM BERBAGAI BIDANG KEHIDUPAN.pptx
Makalah struktur data
1. PROGRAM STRUKTUR DATA
“ANGKRINGAN MADHEP MANTEP”
“JOGJAKARTA”
MAKALAH STRUKTUR DATA
Diajukan untuk memenuhi mata kuliah Struktur Data pada Semester II
Disusun oleh :
1. Galih Eka Saputra ( 12134649 )
2. Tri Okta Vilandika ( 12135153 )
3. Isnaini Nisa Ismi L. ( 12135655 )
4. Ina Yuliyani ( 12135839 )
5. Siti Makrifatul Arifah ( 12136654 )
Jurusan Manajemen Informatika
Akademi Manajemen Informatika dan Komputer Bina Sarana Informatika
Yogyakarta
2014
2. A. PENJELASAN PROGRAM
1. Tipe Data
Digunakan untuk mendeklasikan variable dalam program :
a. Integer
- int data[MAX]; = untuk membatasi maksimal antrian
- int head; = untuk nilai awal atrian
- int tail; = untuk nilai akhir antrian
- int isempty(); = untuk mengetahui apakah antrian kosong
- int isfull(); = untuk mengetahui apakah antrian penuh
- int i; = untuk pengulangan
- int enqueue(); = untuk menambah antrian
- int dequeue(); = untuk mengurangi antrian
- int view(); = untuk melihat tampilan
- int clear(); = untuk mengosongkan antrian
- int e=antrian.data[antrian.head]; = untuk menampilkan nomer
antrian
- int jminput,i; = untuk memasukkan jumlah jenis pesanan
- int pil; = untuk melakukan pilihan
b. Character
- char abc,nmkasir[30]; = untuk mendeklarasikan pilihan dan
nama kasir
- char *menu; = untuk
c. Float
- float hs,total; = untuk mendeklarasikan harga satuan, total
dalam bentuk desimal
2. Operasi Aritmatika
Digunakan untuk mengoperasikan variable yang bertipe data integer
dan float.
a. Penjumalahan (+)
- total_bayar=total_bayar+(ang[i].hs*ang[i].jmpesan);
3. b. Pengurangan (-)
- uk=ub-total_bayar;
c. Perkalian ( x )
- total_bayar=total_bayar+(ang[i].hs*ang[i].jmpesan);
3. Array Dimensi 2
Digunakan untuk mendeklarasikan jumlah dan jenis pesanan yang
lebih dari satu tipe pesanan.
4. QUEUE
Digunakan untuk mendeklarasikan antrian pembayaran.
a. ENQUEUE
Untuk menambah jumlah antrian pembayaran.
b. DEQUEUE
Untuk mengurangi daftar antrian pembayaran dengan melakukan
transaksi pembayaran.
c. TAMPILAN (VIEW)
Untuk menampilkan daftar antrian.
d. CLEAR
Untuk mengosongkan daftar antrian.
e. KELUAR
Untuk keluar dari program queue.
B. TAMPILAN PROGRAM
1. SINTAK
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
#define MAX 5
daftar_menu()
{ cout<<" NASI KUCINGAN MINUMAN
"<<endl;
7. }
}
gotoxy(25,8);cout<<"PRESS any key for back to MENU";
}
int dequeue()
{
if (isempty()==1){
cout<<"n**** ERROR :: QUEUE IS EMPTY ****";
}
else if(isempty()==0){
int i;
int e=antrian.data[antrian.head];
for(i=antrian.head;i<=antrian.tail-1;i++)
{
antrian.data[i]=antrian.data[i+1];
}
antrian.tail--;
clrscr();
cout<<"nnAntrian yang mau dilayani =>
"<<e<<endl<<endl;
}
char abc,nmkasir[30];
int jminput,i;
float total_bayar,ub,uk;
struct
{
8. char *menu;
int pilmenu,jmpesan;
float hs,total;
}
ang[16];
awal:
judul();
cout<<"tttMenu Utama : "<<endl;
cout<<"nttt A. Input Pesanan"<<endl;
cout<<"ttt B. Pembayaran"<<endl;
cout<<"ttt C. Lihat Nota Pembayaran"<<endl;
cout<<"ttt D. Kembali ke menu sebelumnya"<<endl;
cout<<"ntttPilihan Kamu : ";cin>>abc;
if(abc=='a'||abc=='A')
{
goto A;
}
else if(abc=='b'||abc=='B')
{
goto B;
}
else if (abc=='c'||abc=='C')
{
goto C;
}
else
{
goto D;
}
A:
clrscr();
12. ang[i].menu="Rokok LA ";
ang[i].hs=1000;
}
else
{
ang[i].menu="SALAH INPUT BOS ! ";
ang[i].hs=0;
}
}
cout<<"tt tekan enter untuk kembali ke menu pesan";getch();clrscr();
goto awal;
B:
clrscr();
judul();
cout<<" Nama Kasir : ";cin>>nmkasir;
cout<<"============================================
========="<<endl;
cout<<"No Pilihan Menu Harga Jumlah_Pesan Total
"<<endl;
cout<<"============================================
========="<<endl;
for (i=1;i<=jminput;i++)
{
ang[i].total=ang[i].hs*ang[i].jmpesan;
cout<<" "<<i<<" "<<ang[i].menu<<" "<<ang[i].hs<<"
"<<ang[i].jmpesan
<<" "<<ang[i].total<<endl;
total_bayar=total_bayar+(ang[i].hs*ang[i].jmpesan);
13. }
cout<<"==========================================
==========="<<endl<<endl;
cout<<" total bayar : "<<total_bayar<<endl;
cout<<" uang Bayar : ";cin>>ub;
uk=ub-total_bayar;
cout<<" uang kembali : "<<uk<<endl<<endl;
cout<<"tttekan enter untuk kembali ke menu utama";getch();clrscr();
goto awal;
C:
clrscr();
judul();
cout<<" Nama Kasir : "<<nmkasir<<endl;
cout<<"============================================
========="<<endl;
cout<<"No Pilihan Menu Harga Jumlah_Pesan Total
"<<endl;
cout<<"============================================
========="<<endl;
for (i=1;i<=jminput;i++)
{
ang[i].total=ang[i].hs*ang[i].jmpesan;
cout<<" "<<i<<" "<<ang[i].menu<<" "<<ang[i].hs<<"
"<<ang[i].jmpesan
<<" "<<ang[i].total<<endl;
total_bayar=total_bayar+(ang[i].hs*ang[i].jmpesan);
}
cout<<"==========================================
14. ==========="<<endl<<endl;
cout<<" total bayar : "<<total_bayar<<endl;
cout<<" uang Bayar : "<<ub<<endl;
cout<<" uang kembali : "<<uk<<endl<<endl;
cout<<"tttekan enter untuk kembali ke menu utama";getch();clrscr();
goto awal;
D:
cout<<"tttPRESS any key for back to MENU";
}
void clear()
{
antrian.head=antrian.tail=-1;
printf("nn**** DATA CLEAR ****");
gotoxy(25,8);cout<<"PRESS any key for back to MENU";
}
void tampil()
{
int i;
if(isempty()==0)
{
cout<<"Data Yang ada Dalam QUEUE :
"<<endl<<endl;
for(i=antrian.head;i<=antrian.tail;i++)
{
printf("| %d |",antrian.data[i]);
}
}
else
{
15. printf("n**** QUEUE IS EMPTY ****n");
}
gotoxy(25,8);cout<<"PRESS any key for back to MENU";
}
void main()
{
int pil;
int data;
create();
do
{
clrscr();
gotoxy(25,2);cout<<"========MENU
PILIHAN========"<<endl<<endl;
gotoxy(25,4);cout<<"============================"<<endl;
gotoxy(30,6);cout<<" 1. ENQUEUE "<<endl;
gotoxy(30,7);cout<<" 2. DEQUEUE "<<endl;
gotoxy(30,8);cout<<" 3. TAMPILAN "<<endl;
gotoxy(30,9);cout<<" 4. CLEAR "<<endl;
gotoxy(30,10);cout<<" 5. KELUAR "<<endl;
gotoxy(25,12);cout<<"============================"<<endl;
gotoxy(25,14);cout<<" Masukan Pilihan Anda => ";cin>>pil;
switch(pil){
case 1:
clrscr();
printf("nn Masukan Data => "); scanf("%d",&data);
enqueue(data);
break;
case 2: