Anda di halaman 1dari 17

Nama Kelompok : I Gede Bagas Karang Wijaya (210030288)

I Putu Diva Andika Putra (210030284)


I Kadek Rizki Juliana Putra (210030289)
I Kadek Farrel Ambara Bagus Nugraha (210030322)

Algoritma Queue :

#include <iostream>

using namespace std;

struct QUEUE{

int data[5];

int head, tail;

};

QUEUE antrian;

void inisialisasi() //membuat inisialisasi void

antrian.head = 0;

antrian.tail = -1;

bool isEmpty() //menentukan isi data (kosong)

if(antrian.tail < antrian.head)

return true;

else

return false;

bool isFull() //menentukan isi data (full)

if(antrian.tail == 4)

return true;

else
return false;

void Enqueue() //memasukkan antrian

if(isFull() == true)

cout<<"Antrian masih PENUH !!!"<<endl;

else{

int bil;

cout<<"Masukkan sebuah bilangan : ";

cin>>bil;

antrian.tail = antrian.tail+1;

antrian.data[antrian.tail] = bil;

cout<<"Bilangan "<< bil <<" sudah masuk ke dalam antrian ke-";

cout<< antrian.tail <<endl;

void Dequeue() //mengeluarkan antrian

if(isEmpty() == true)

cout<<"Antrian masih KOSONG !!!"<<endl;

else{

cout<<"Bilangan pada antrian yang keluar mengantri ke- ";

cout<<antrian.data[antrian.head] << endl;

for(int i=1; i<=antrian.tail; i++)

antrian.data[i-1] = antrian.data[i];

antrian.tail = antrian.tail - 1;

void Print() //menampilkan semua antrian

if(isEmpty() == true)
cout<<"Antrian masih KOSONG !!!"<<endl;

else{

cout<<"Jumlah data dalam antrian : "<<antrian.tail + 1<<endl;

cout<<"Data pada antrian : ";

for(int i=antrian.head; i<=antrian.tail; i++)

cout<<antrian.data[i] << " ";

cout<<endl;

void Clear() //membersihkan semua antrian

char a;

cout<<"Apakah ingin menghapus semua data antrian [y/t] ? ";

cin>>a;

if(a == 'y' || a=='Y')

antrian.tail = - 1;

cout <<"Data telah dihapus!!!"<<endl;

else

cout<<"Data batal untuk dihapus" << endl;

int main() //program utama

int pilihan;

char ulang;

inisialisasi();

do{

cout<<"=========="<<endl;

cout<<"1. Enqueue "<<endl;

cout<<"2. Dequeue "<<endl;


cout<<"3. Print "<<endl;

cout<<"4. Clear"<<endl;

cout<<"=========="<<endl;

cout<<"Pilih menu yang diinginkan : ";

cin>>pilihan;

switch(pilihan)

case 1: { Enqueue(); break; }

case 2: { Dequeue(); break; }

case 3: { Print(); break; }

case 4: { Clear(); break; }

default: { cout<<"Pilihan tidak ditemukan : "<<endl; break;}

cout<<"Apakah ingin mengulang program [y/t] ? ";

cin>>ulang;

system("cls"); //membersihkan screen

}while(ulang == 'y' || ulang == 'Y');

return 0;

}
Algoritma STACK :

#include <iostream>

using namespace std;

struct STACK

int data[5];

int top, maks;

};

STACK tumpukan; //deklarasi stack

void inisialisasi() //membuat void inisialisasi

tumpukan.maks = 4;

tumpukan.top = -1;

bool isEmpty() //menentukan tumpukan kosong

if(tumpukan.top == -1)

return true;

else

return false;

bool isFull() //menentukan tumpukan full

if(tumpukan.top == tumpukan.maks)

return true;

else

return false;
}

void Push(int data)//menambahkan tumpukan

if(isFull() == true)

cout<<"Tumpukan PENUH !!! "<<endl;

else{

tumpukan.top = tumpukan.top + 1;

tumpukan.data[tumpukan.top] = data;

cout<<"Data "<< data <<" "<<endl;

cout<<"Tumpukan data yang masuk adalah yang ke- ";

cout<<tumpukan.top<<endl;

void Pop() //mengeluarkan tumpukan

if(isEmpty() == true)

cout<<"Tumpukan KOSONG !!!"<<endl;

else{

cout<<"Bilangan yang dikeluarkan adalah ";

cout<<tumpukan.data[tumpukan.top]<<endl;

tumpukan.top = tumpukan.top - 1;

void Print() //menampilkan tumpukan

cout<<"Data pada tumpukkan :";

for(int i=1; i<=tumpukan.top; i++)

cout<<tumpukan.data[i]<<" ";
}

cout<<endl;

void Clear() //membersihkan tumpukan

char isClear;

cout<<"Apakah tumpukkan ingin dikosongkan [y/t] ?";

cin>>isClear;

if(isClear == 'y' || isClear == 'Y')

tumpukan.top = -1;

cout<<"Data telah berhasil dikosongkan";

else{

cout<<"Data batal dikosongkan";

int main() // program utama

int pilihan;

char ulang;

inisialisasi();

do{

system("cls");

cout<<"=========="<<endl;

cout<<"1. Push "<<endl;

cout<<"2. Pop"<<endl;

cout<<"3. Print"<<endl;

cout<<"4. Clear"<<endl;
cout<<"=========="<<endl;

cout<<"Masukkan pilihan : ";

cin>>pilihan;

switch(pilihan)

case 1:

int data;

cout<<"Masukkan Bilangan : ";

cin>>data;

Push(data);

break;

case 2:

Pop();

break;

case 3:

Print();

break;

case 4:

Clear();

break;

default:
{

cout<<"Tidak ada dalam pilihan"<<endl;

cout<<"Apakah ingin mengulang kembali [y/t] ?";

cin>>ulang;

}while(ulang== 'y' || ulang=='Y');

return 0;

}
Algoritma Lingked List :

#include<iostream>

#include<stdlib.h>

#include<conio.h>

using namespace std;

int nr,isi,ch;

struct node

int norek;

string nama;

string alamat;

int saldo;

struct node *next;

}*front=NULL,*rear,*temp;

void ins()

temp=new node;

string asal;

string n;

cout<<" Input no.rekening\t: ";

cin>>nr;

cin.ignore(1,'\n');

cout<<" Input nama\t\t: ";

getline(cin,n);

cout<<" Input alamat\t\t: ";

getline(cin,asal);

cout<<" Input saldo awal\t: ";

cin>>isi;

temp->norek=nr;
temp->nama=n;

temp->saldo=isi;

temp->next=NULL;

if(front==NULL)

front=rear=temp;

else

rear->next=temp;

rear=temp;

void del()

if(front==NULL)

{cout<<" Belum ada nasabah!\n";

getch();}

else

temp=front;

front=front->next;

cout<<" No.rekening "<<temp->norek<<" dihapus beserta datanya\n";

delete(temp);

getch();

void dis()

if(front==NULL)

{cout<<" Belum ada nasabah!\n";

getch();}
else

temp=front;

while(temp!=NULL)

cout<<" No.rek\t: "<<temp->norek<<endl;

cout<<" Nama\t: "<<temp->nama<<endl;

cout<<" Saldo\t: "<<temp->saldo<<endl;

cout<<" ------------------------------"<<endl;

temp=temp->next;

getch();

void cari()

node *temp;

temp=front;

int caridata;

int ketemu=0;

if(front != NULL)

cout<<"\n Input no.rekening yang dicari\t: ";

cin>>caridata;

while(temp!=NULL)

temp->norek;

if(caridata==temp->norek)

cout<<"\n\n>>> Data Yang Anda Cari Ditemukan <<<"<<endl;

cout<<" Nama\t: "<<temp->nama<<endl;


cout<<" Saldo\t: "<<temp->saldo<<endl;

cout<<" ------------------------------"<<endl;

cout<<"\n\n";

ketemu=1;

temp=temp->next;

if(ketemu==0)

cout<<" Data tidak ditemukan";

else cout<<" Belum ada nasabah!";

getch();

void transaksi()

node *temp;

temp=front;

int ketemu=0;

if(front != NULL)

cout<<"\n Input no.rekening\t: ";

cin>>nr;

cout<<endl;

while(temp!=NULL)

temp->norek;

if(nr==temp->norek)

cobalagi:
cout<<" 1.Isi Saldo";

cout<<"\n 2.Tarik Tunai";

cout<<"\n Masukkan Pilihan : ";

cin>>ch;

if(ch==1)

cout<<" Saldo awal\t\t: "<<temp->saldo<<endl;

cout<<" Input Nominal Setoran\t: ";

cin>>isi;

temp->saldo=temp->saldo+isi;

cout<<" Total saldo\t\t: "<<temp->saldo<<endl;

cout<<" ------------------------------"<<endl;

cout<<"\n";

ketemu=1;

}else if(ch==2)

cout<<" Saldo awal\t\t: "<<temp->saldo;

lagi:

cout<<"\n Input jumlah penarikan\t: ";

cin>>isi;

if(temp->saldo<isi)

cout<<" Maaf Saldo Anda Kurang";

goto lagi;

}else

temp->saldo=temp->saldo-isi;

cout<<" Sisa saldo\t\t: "<<temp->saldo<<endl;

cout<<" ------------------------------"<<endl;

cout<<"\n";

}
ketemu=1;

}else {cout<<"Pilihan Salah!\n"; goto cobalagi;}

temp=temp->next;

if(ketemu==0)

cout<<" Data tidak ditemukan";

else cout<<" Belum ada nasabah!";

getch();

void cek()

node *temp;

temp=front;

int ketemu=0;

if(front != NULL)

cout<<"\n Input no rekening\t: ";

cin>>nr;

while(temp!=NULL)

temp->norek;

if(nr==temp->norek)

cout<<" Sisa saldo saat ini\t: "<<temp->saldo;

ketemu=1;

temp=temp->next;
}

if(ketemu==0)

cout<<" Data tidak ditemukan";

else cout<<" Belum ada nasabah!";

getch();

int main()

int ch,nr,isi;

while(1)

system("cls");

cout<<"\n Program C++ BANK PTI ";

cout<<"\n Menu : ";

cout<<"\n 1.Input Data Nasabah ";

cout<<"\n 2.Hapus Data Nasabah";

cout<<"\n 3.Transaksi";

cout<<"\n 4.Cek Saldo";

cout<<"\n 5.Tampilkan Daftar Nasabah";

cout<<"\n 6.Cari Data Nasabah";

cout<<"\n 7.Keluar";

cout<<"\n\n Masukkan Pilihan (1-4): ";

cin>>ch;

switch(ch)

case 1:

ins();

break;
case 2:

del();

break;

case 3:

transaksi();

break;

case 4:

cek();

break;

case 5:

dis();

break;

case 6:

cari();

break;

case 7:

exit(0);

break;

default:

cout<<"Input salah, silahkan input ulang!(press any key)";

getch();

return 0;

Anda mungkin juga menyukai