LAPORAN PRAKTIKUM IV. Oleh :

Ukuran: px
Mulai penontonan dengan halaman:

Download "LAPORAN PRAKTIKUM IV. Oleh :"

Transkripsi

1 LAPORAN PRAKTIKUM IV STACK Disusun untuk Memenuhi Matakuliah Praktikum Algoritma dan Struktur Data Dibimbing oleh Bapak Utomo Pujianto Oleh : Anidia Wulan Sari ( ) Dimas Galih Ramadhan ( ) S1 PTI 15 OFF A UNIVERSITAS NEGERI MALANG FAKULTAS TEKNIK JURUSAN TEKNIK ELEKTRO PRODI S1 PENDIDIKAN TEKNIK INFORMATIKA Maret 2016

2 1. TUJUAN MODUL IV STACK 1. Memahami terminologi yang terkait dengan struktur data stack. 2. Memahami operasi-operasi yang ada dalam stack. 3. Dapat mengidentifikasi permasalahan-permasalahan pemrograman yang harus diselesaikan dengan menggunakan stack, sekaligus menyelesaikannya. 2. DASAR TEORI 1. Pengertian Stack Stack merupakan sebuah kumpulan data yang diletakkan di atas data lainya, seperti sebuah tumpukan. Dengan demikian, stack merupakan salah satu struktur data yang menerapkan prinsip LIFO (Last In First Out). Dimana elemen yang terakhir disimpan dalam stack, menjadi elemen yang pertama diambil. Untuk meletakkan sebuah elemen pada bagian atas dari stack, maka dilakukan operasi push. Sedangkan untuk memindahkan sebuah elemen dari tempat atas tersebut dalam sebuah stack, maka dilakukan operasi pop. 2. Operasi Dasar Pada Stack Create Merupakan operator yang berfungsi untuk membuat sebuah stack kosong. IsEmpty

3 Merupakan operator yang berfungsi untuk menentukan apakah suatu stack merupakan stack kosong. Tanda bahwa sebuah stack kosong adalah Top bernilai kurang dari nol (-1). IsFull Merupakan operator yang digunakan untuk memeriksa apakah stack yang ada sudah penuh. Stack akan penuh jika puncak stack terletak tepat dibawah jumlah maksimum yang dapat ditampung stack (Top = MAX_STACK-1). Push Merupakan operator yang berfungsi untuk menambahkan satu elemen ke dalam stack dan tidak dapat dilakukan jika stack dalam keadaan penuh. Pop Merupakan operator yang berfungsi untuk mengeluarkan satu elemen teratas dari dalam stack dengan syarat stack tidak dalam kondisi kosong.

4 Clear Fungsi yang digunakan untuk mengosongkan stack dengan cara mengeset Top dengan -1. Jika Top bernilai kurang dari nol maka stack dianggap kosong. Retrieve Fungsi yang digunakan untuk melihat nilai yang berada pada posisi tumpukan teratas. 3. Pointer Sebagai Penunjuk Stack Selain menggunakan indeks, untuk menunjuk sebuah Top atau posisi teratas dari stack, dapat juga digunakan pointer sebagai berikut. Membuat Stack Dengan Pointer Proses Push

5 Proses Pop 4. Representasi Proses Stack Stack adalah salah satu dari contoh struktur data yang terdiri dari satu collection, yang juga menerapkan prinsip LIFO. Bila stack tersebut menggunakan array satu dimensi, maka stack tersebut dapat diilustrasikan sebagai berikut : Pada gambar 4.2 diatas diilustrasikan ada sebuah indeks array yang masih kosong pada awal pembuatan stcak dimana n[10], variabel Top berada pada -1 yang menunjukkan indeks masih dalam keadaan kosong.

6 Pada gambar 4.3 adalah keadaan ketika stack sudah diisi data. Pada kondisi ini data pertama yang diinputkan adalah S[0]=11, data kedua S[1]=7, data ketiga S[2]=15, data keempat S[23]=23. Kondisi Top sudah berubah menjadi data yang terakhir diinputkan (data keempat) sehingga Top[3] X=23. Variabel Top digunakan sebagai indeks untuk menunjuk nomor elemen array yang berisi nilai stack yang berada paling kanan atau Top, yang ditunjukan dengan angka 3. Variabel X bertipe integer digunakan sebagai perantara, dimana data yang akan disimpan kedalam stack harus berasal dari X. Demikian juga data yang baru diambil dari dalam stack harus diterima terlebih dahulu oleh variabel X, kemudian baru diberikan ke variabel lain untuk diolah. Oleh karena itu, jika ada instruksi PUSH, maka data baru (yang diambil dari isi variabel X) akan disimpan dalam elemen S[4] sehingga indeks Top harus diarahkan ke posisi no.4. Artinya, Top maju terlebih dahulu satu langkah ke S[4], kemudian baru mengisi nilai pada S[4]. Sedangkan jika ada instruksi Pop, maka yang akan diambil adalah isi dari S[3] dan datanya akan disimpan terlebih dahulu dalam variabel X, kemudian indeks Top menjadi mundur satu langkah sehingga akan menunjuk S[2]. 5. Double Stack Double Stack atau Stack Ganda adalah dua stack yang berada dalam satu array. Satu array digunakan untuk dua stack dimana dasar Stack1 berada pada sisi indeks yang terkecil dan dasar Stack2 berada pada sisi indeks yang terbesar. Sama halnya dengan Single Stack, Double Stack juga menerapkan prinsip LIFO (Last in Firt Out).

7 Pada gambar 4.4 diatas adalah ilustrasi indeks array pada double stack. Padastack 1 kondisi data pertama yang diinputkan adalah S[0], data kedua S[1], data ketiga S[2] dan Top=data input terakhir S[2]. Sedangkan pada stack 2 data pertama adalah S[9], data kedua S[8], data ketiga S[7], data keempat S[6] dan Top=data input terakhir S[6]. 6. Operasi Dasar Pada Double Stack Inisialisasi Proses awal adalah proses menyiapkan indeks petunjuk stack untuk pertama kali. Pada tahap ini ditetapkan Top1=-1 (sama seperti single stack) dan Top2=banyak jumlah data. Is Empty Sama dengan single stack, yaitu proses pengecekan stack dalam kondisi kosong Is Full Sama dengan single stack, yaitu proses pengecekan stack dalam kondisi kosong

8 Push (Stack1 dan Stack2) Proses mengisi data pada stack1 maupun 2 Pop (Stack1 dan Stack2) Proses mengambil data pada stack1 maupun 2 3. Latihan Praktikum Nama Program Latihan Praktikum 1 Pemrograman C++ : Single Stack

9 Bahasa Pemrogramam Compiler Script program : : C++ #include <iostream> #include <stdio.h> #include <conio.h> #include <windows.h> #define maxstack 4 : MinGW Developer Studio using namespace std; struct STACK //Membuat jenis data abstrak 'STACK' int top; float data[4]; ; float dta; struct STACK stackbaru; void inisialisasi() stackbaru.top=-1; bool isfull() if(stackbaru.top==maxstack) return true; else return false; bool isempty() if(stackbaru.top==1) return true; else return false; void push(float dta) if(isfull()==true) puts("maaf, stack penuh"); getch(); else stackbaru.top++; stackbaru.data[stackbaru.top]=dta;

10 void pop() if(isempty()==true) cout<<"data telah kosong!"; getch(); else cout<<"data yang terambil adalah data ke: "<<stackbaru.data[stackbaru.top]<<endl; stackbaru.top--; getch(); void print() for(int i=0;i<=stackbaru.top;i++) cout<<stackbaru.data[i]<<" "; void clear() stackbaru.top=-1; int main() inisialisasi(); char menu; char uulang; do system("cls"); printf("\t \n"); printf("\t STACK \n"); printf("\t \n"); printf("\n\ --> Menu STACK :\n\n"); puts("1. push stack"); puts("2. pop stack"); puts("3. cetak"); puts("4. bersihkan stack"); puts("5. exit"); cout<<"menu pilihan anda: "; cin>>menu; if(menu=='2') pop(); uulang='y'; else if(menu=='1')

11 cout<<"data yang akan disimpan di stack: "; cin>>dta; push(dta); uulang='y'; else if(menu=='3') print(); cout<<"\nulang?(y/t) "; cin>>uulang; else if(menu=='4') clear(); cout<<"\nulang?(y/t) "; cin>>uulang; else if(menu=='5') exit(0); while(uulang=='y' uulang=='y'); Output Program :

12 Algoritma : 1. Mulai. 2. Membaca file header. 3. Membaca fungsi struct STACK. 4. Membaca tipe data integer top, float data yang berisikan array dengan elemen berjumlah 4 (float data [4]). 5. Membaca tipe data float dta. 6. Membaca fungsi struct STACK stackbaru. 7. Membaca fungsi inisialisasi. 8. Membaca fungsi bool isfull. 9. Membaca fungsi bool isempty. 10. Membaca fungsi push(float dta) 11. Membaca fungsi pop. 12. Membaca fungsi print ( untuk mencetak data ). 13. Membaca fungsi clear (untuk menghapus/ mengosongkan data). 14. Membaca fungsi utama. 15. Pemanggilan fungsi inisialisasi. 16. Membaca tipe data charr menu dan uulang. 17. Membaca pemanggilan percabangan do-while, yand didalamnya terdapat pilihan menu dengan menggunakan perulangan if else. 18. Jika 1 maka pemanggilan fungsi pop dan uulang berfungsi. 19. Jika 2 maka fungsi push dan uulang, serta inputan data yang akan disimpan. 20. Jika 3 maka fungsi print dan uulang. 21. Jika 4 maka fungsi clear dan uulang. 22. Jika 5 maka fungsi exit (keluar). 23. Cetak hasil. 24. Selesai. Diskripsi : Pada program ini menggunakan 4 file header. Penggunaan logika Boolean pada fungsi pop dan push harus benar, jika tidak maka program saat dijalankan akan error(outputnya tidak akan keluar dengan benar/ sesuai dengan yang ditargetkan). Penulisan fungsi pop dan push perlu diperhatikan. Untuk menjalankan setiap menu yang disediakan menggunakan percabangan do- while dengan perulangan if else. Menu 1 apabila memilih pop maka fungsi pop akan berfungsi mulai menjalankan logika Boolean yang ada pada deklarasi fungsi pop. Jika benar maka data telah kosong jika salah maka data yang terambil diambl dengan pembacaan fungsi stackbaru.data[stackbaru.top]. Menu 2 apabila memilih menu push, maka fungsi push akan berfungsi, jika logika Boolean benar maka stack,

13 penuh jika tidak maka akan berfungsi stackbaru.top++; stackbaru.data[stackbaru.top]=dta;. Nama Program Bahasa Pemrogramam Compiler Script program : Latihan Praktikum 2 Pemrograman C++ : Double Stack : C++ #include <stdio.h> #include <conio.h> #include <stdlib.h> #define MAX 10 #define true 1 #define false 0 char stack[max]; int top1, top2; : MinGW Developer Studio void init(void); void push(char data, int nomorstack); char pop(int nomorstack); void clear(int nomorstack); int full(void); int empty(int nomorstack); void baca(); int main() char data; int pilih, nomorstack; init(); do system("cls"); printf("contoh program double stack"); printf("\n1. Push"); printf("\n2. Pop"); printf("\n3. Clear"); printf("\n4. Cetak Data"); printf("\n5. Selesai"); printf("\npilihan anda: "); scanf("%i", &pilih); switch(pilih) case 1: printf("push\n"); printf("masukkan datanya:\n");

14 atau 2? \n"); scanf("%s", &data); printf("mau dimasukkan ke stack berapa? 1 scanf("%i", &nomorstack); push(data, nomorstack); %s", &data); case 2: printf("pop\n"); printf("masukkan nomor stack\n"); scanf("%i", &nomorstack); printf("\ndata yang akan dikeluarkan adalah pop(nomorstack); getch(); dikosongkan\n"); case 3: printf("clear\n"); printf("nomor stack yang akan scanf("%s", &nomorstack); clear(nomorstack); case 4: printf("cetak Data:\n\n"); baca(); case 5: printf("exit"); ada"); default: printf("pilihan yang anda masukkan tidak while(pilih!=5); getch(); void init() top1=-1; top2=max+1; void push(char data, int nomorstack)

15 if(full()!=true) switch(nomorstack) case 1: top1++; stack[top1]=data; case 2: top2--; stack[top2]=data; default: printf("\nnomor stack salah"); else printf("\nstack penuh"); getch(); char pop(int nomorstack) char data; if(empty(nomorstack)!=true) switch(nomorstack) case 1: data=stack[top1]; top1--; return data; case 2: data=stack[top2]; top2++; return data; default: printf("\nnomor stack salah"); else printf("\nstack masih kosong"); getch(); return 0;

16 int full(void) if(top2-top1==1) return true; else return false; int empty(int nomorstack) switch(nomorstack) case 1: if(top1==0) return true; else return false; case 2: if(top2==max+1) return true; else return false; void clear(int nomorstack) switch(nomorstack) case 1: top1=1; case 2: top2=max; default: printf("nomor stack salah"); void baca() int i; printf("cetak isi stack pertama:\n");

17 for(i=0;i<=top1;i++) printf("%c", stack[i]); printf("\n"); printf("cetak isi stack kedua:\n"); for(i=max; i>=top2; i--) printf("%c",stack[i]); printf("\n"); getch(); Output Program : Algoritma :

18 1. Mulai. 2. Membaca file header. 3. Membaca fungsi utama. 4. Membaca fungsi push 5. Membaca fungsi pop. 6. Membaca fungsi clear 7. Membaca fungsi print ( untuk mencetak data ). 8. Menampilkan Menu program double stack 9. Membaca tipe data charr menu dan uulang. 10. Membaca pemanggilan percabangan do-while, yand didalamnya terdapat pilihan menu dengan menggunakan perulangan if else. 11. Jika 1 maka fungsi push dan uulang, serta inputan data yang akan disimpan. 12. Jika 2 maka pemanggilan fungsi pop dan uulang berfungsi. 13. Jika 3 maka fungsi clear dan uulang. 14. Jika 4 maka fungsi print dan uulang. 15. Jika 5 maka fungsi exit (keluar). 16. Cetak hasil. 17. Selesai. Diskripsi : Pada program ini menggunakan 3 file header. Penggunaan logika pada fungsi pop dan push harus benar, jika tidak maka program saat dijalankan akan error(outputnya tidak akan keluar dengan benar/ sesuai dengan yang ditargetkan). Penulisan fungsi pop dan push perlu diperhatikan. Untuk menjalankan setiap menu yang disediakan menggunakan percabangan Menu 2 apabila memilih pop maka fungsi pop akan berfungsi mulai menjalankan logika yang ada pada deklarasi fungsi pop. Menu 1 apabila memilih menu push, maka fungsi push akan berfungsi, jika logika benar. Nama Program Bahasa Pemrogramam Compiler Script program : Latihan Praktikum 3 Pemrograman C++ : Program pembalik kata dengan stack : C++ #include <stdio.h> #include <conio.h> #include <iostream> : MinGW Developer Studio

19 #include <string.h> #include <stdlib.h> #define MAX 75 #define true 1 #define false 0 char stack[max]; int top; void init(void); int full(void); int empty(void); char pop(void); void clear(void); void push(char info); main() char pilih; char kal[75]; int k,p; printf("-*- PROGRAM MEMBALIK KATA DENGAN STACK -*-\n\n"); init(); do printf(" ======================\n"); printf(" MENU PILIHAN \n"); printf(" ======================\n"); printf(" [1] Masukan Kata \n"); printf(" [2] Balik Kata \n"); printf(" [3] Selesai \n"); printf(" ======================\n"); printf(" Pilihan: "); scanf("%s",&pilih); system("cls"); switch(pilih) case '1': printf("\nmasukkan data: "); scanf("%s",&kal); p=strlen(kal); for(k=0;k<=p;k++) push(kal[k]); printf("\nkata yang masuk: "); for(k=0;k<=p;k++) printf("%c", stack[k]); printf("\n"); case '2': if(empty()!=true) printf("\nkata setelah dibalik: ");

20 for(k=top;k>=0;k--) printf("%c", pop()); printf("\n"); else printf("\nstack kosong!!\n"); case '3': default: printf("\npilihan anda salah!!\n"); printf("\n"); while(pilih!='3'); void init(void) top=0; void push(char info) if(full()!=true) top++; stack[top]=info; else printf("\nstack overlow...\n"); char pop(void) char info; if(empty()!=true) info=stack[top]; top--; return(info); else printf("\nstack underflow...\n"); int full(void) if(top==max) return(true); else return(false);

21 int empty(void) if(top==0) return(true); else return(false); Output Program : Algoritma : 1. Mulai. 2. Membaca file header. 3. Membaca tipe data char stack[max]. 4. Membaca fungsi utama 5. Mencetak Menu dari program membalik kata denagn stack 6. Membaca pemanggilan percabangan 7. Jika 1 maka masuk pada case 1 masukkan kata 8. Jika 2 maka masuk pada case 2 balik kata 9. Jika 3 maka exit (keluar). 10. Cetak hasil. 11. Selesai. Diskripsi : Program diatas merupaka program yang berfungsi membalikkan kalimat dengan memanfaatkan fungsi- fungsi dalam stack. Penggunaan fungsi operasioperasi dasar dari stack, kemudia penggunaan tipe data char stack[max] yang

22 berfungsi menampung kalimat yang akan dibalik sebanyak 75 elemen yang tersedia. Kemudian Penggunaan fungsi perulangan for yang digunakan untuk membalikkan kata, yaitu : for(k=0;k<=p;k++) printf("%c", stack[k]); 4. Tugas Rumah Tugas Rumah Pemrograman C++ Nama Program : Program Penyimpanan Data Mahasiswa Bahasa Pemrogramam : C++ Compiler : MinGW Developer Studio Script program : #include <iostream> #include <windows.h> #include <conio.h> using namespace std; struct mahasiswachar nim[50]; char nama[50];int data_nilai;; void tmbh_mhs(); void push(mahasiswa); void init(); bool isfull(); bool isempty(); void sorting(int); void baca_mhs(); mahasiswa pop(); void baca_sorting();

23 int flag = -1; const int MAX = 10; mahasiswa db_mhs[max]; int main() system("cls"); char inputan; cout << "\t Program stack mahasiswa \n"; cout << endl << endl; cout << "\tjumlah stack : " << flag+1 << " Batas Maksimum : " << MAX; cout << endl << endl; cout << "\t MENU UTAMA \n"; cout << "\t NO PILIHAN \n"; cout << "\t \n"; cout << "\t 1 Tambahkan data mahasiswa (Push Stack) \n"; cout << "\t 2 Tampilkan data mahasiswa (Pop stack) \n"; cout << "\t 3 Tampilkan data dan sorting (Pop sorting) \n"; cout << "\t \n"; cout << "\tpilih menu : ";cin >> inputan; switch(inputan) case '1' : tmbh_mhs(); case '2' : baca_mhs(); case '3' : baca_sorting();

24 void push(mahasiswa mhs) flag++; db_mhs[flag] = mhs; cout << db_mhs[flag].nim; void tmbh_mhs() int ipt; mahasiswa mhs; system("cls"); cout << "\t tambah Mahasiswa Menu (Push Menu) \n"; cout << endl << endl; cout << "\tmasukkan jumlah data : ";cin >> ipt;cout<<endl; for(int i = 0;i < ipt;i++) if(!isfull()) cout << "\tmahasiswa ke : " << i+1 << endl; cout << "\tmasukkan NIM : ";cin >> mhs.nim; cout << "\tmasukkan Nama : ";cin >> mhs.nama; cout << "\tmasukkan Nilai : ";cin >> mhs.data_nilai; push(mhs); cout << "\tdata telah di push " << endl << endl; else cout << "\tdata penuh."<<endl; system("pause"); system("cls"); main(); bool isempty() if(flag == -1) return true; else return false; bool isfull() if(flag == MAX-1) return true; else return false;

25 mahasiswa pop() return db_mhs[flag--]; void baca_mhs() int ipt; mahasiswa mhs; system("cls"); cout << "\t baca Mahasiswa Menu (Pop menu) \n"; cout << endl << endl; if(isempty()) cout << "Data kosong\n"; system("pause"); main(); cout << "\tmasukkan jumlah data yang dikeluarkan : ";cin >> ipt;cout<<endl; if(ipt <= flag+1) cout << "\t \n"; cout << "\t Nim Mahasiswa Nama Mahasiswa Nilai Mahasiswa \n"; cout << "\t \n"; for(int i = 0;i < ipt;i++) if(!isempty()) mhs = pop(); cout << "\t " << mhs.nim << " \t\t " << mhs.nama << " \t\t " << mhs.data_nilai << endl << endl; cout << "\t Data telah di pop " << endl << endl; cout << "\t \n"; else cout << "\tdata kosong."<<endl;

26 else cout << "Data tidak sebanyak itu\n"; system("pause"); main(); void sorting(int jml) int j; int temp; char temp_i[2][50]; for(int i=0; i<jml; i++) temp = db_mhs[i].data_nilai; strcpy(temp_i[0],db_mhs[i].nim); strcpy(temp_i[1],db_mhs[i].nama); j = i-1; while (db_mhs[j].data_nilai>temp && j>=0) db_mhs[j+1].data_nilai = db_mhs[j].data_nilai; strcpy(db_mhs[j+1].nama,db_mhs[j].nama); strcpy(db_mhs[j+1].nim,db_mhs[j].nim); j--; db_mhs[j+1].data_nilai = temp; strcpy(db_mhs[j+1].nim,temp_i[0]); strcpy(db_mhs[j+1].nama,temp_i[1]); void baca_sorting() int ipt; mahasiswa mhs; system("cls"); cout << "\t baca Mahasiswa Sorting Menu (Pop menu) \n"; cout << endl << endl; if(isempty()) cout << "Data kosong\n"; system("pause"); main();

27 >> ipt;cout<<endl; cout << "\tmasukkan jumlah data yang dikeluarkan : ";cin if(ipt <= flag+1) cout << "Sebelum sorting : \n\n"; cout << "\t \n"; cout << "\t Nim Mahasiswa Nama Mahasiswa Nilai Mahasiswa \n"; cout << "\t \n"; for(int i = ipt;i >= 0;i--) if(!isempty()) mhs = db_mhs[i]; cout << "\t " << mhs.nim << " \t\t " << mhs.nama << " \t\t " << mhs.data_nilai << endl << endl; cout << "\t Data tidak di pop " << endl << endl; cout << "\t \n"; else cout << "\tdata kosong."<<endl; sorting(ipt); cout << "Sesudah Sorting : \n\n"; cout << "\t \n"; cout << "\t Nim Mahasiswa Nama Mahasiswa Nilai Mahasiswa \n"; cout << "\t \n"; for(int i = 0;i < ipt;i++) if(!isempty()) mhs = pop(); cout << "\t " << mhs.nim << " \t\t " << mhs.nama << " \t\t " << mhs.data_nilai << endl << endl;

28 cout << "\t Data telah di pop " << endl << endl; cout << "\t \n"; else cout << "\tdata kosong."<<endl; else cout << "Data tidak sebanyak itu\n"; system("pause"); main(); Output Program :

29 Algoritma Program : 1. Mulai program 2. Menampilkan Menu Utama 3. Apabila memasukkan inputan 1 maka akan masuk pada Menu Push Stack 4. Pada menu ini diminta inputan jumlah data 5. Memasukkan NIM 6. Memasukkan Nama 7. Memasukkan Nilai 8. Tekan keyboard untuk kembali ke Menu Utama 9. Apabila memasukkan inputan 2 maka akan masuk pada Menu Pop Stack 10. Pada menu ini diminta memasukkan inputan Jumlah data yang dikeluarkan 11. Tekan keyboard untuk kembali ke Menu Utama 12. Apabila memasukkan inputan 3 maka akan masuk pada Menu delete barang 13. Pada menu ini ini diminta memasukkan inputan Jumlah data yang dikeluarkan 14. Menampilkan data sebelum sorting 15. Menampilkan data setelah sorting 16. Tekan keyboard untuk kembali ke manu 17. Selesai Penjelasan Program : Program ini kita menggunakan header iostream, windows.h, dan conio.h. untuk header iostream digunakan untuk menampilkan fungsi cout dan cin, windows digunakan

30 untuk memberikan warna, sedangkan conio.h digunakan untuk menampilkan fungsi getch dan clscr. Dalam program ini kita membuat sebuah program stack mahasiswa, dengan jumlah stack 0 dan batas maksimumnya 10. Pada program ini akan disajikan pilihan menu yaitu (1) Tambahkan data mahasiswa (Push Stack), pilihan (2) Tampilkan data mahasiswa (Pop Stack), pilihan (3) Tampilkan data dan sorting (Pop Sorting). Pada menu pilihan (1) diminta inputan jumlah data dengan rincian inputan yang dimasukkan adalah NIM, Nama, dan Nilai. Untuk pilihan (2) diminta inputan jumlah data yang dikeluarkan yaitu data telah di pop. Untuk pilihan (3) diminta inputan jumlah data yang dikeluarkan, setelah itu program akan menampilkan data sebelum di sorting dan data sesudah di sorting.

31 KESIMPULAN 1. Stack merupakan sebuah kumpulan data yang diletakkan di atas data lainya, seperti sebuah tumpukan. 2. Untuk meletakkan sebuah elemen pada bagian atas dari stack, maka dilakukan operasi push. Sedangkan untuk memindahkan sebuah elemen dari tempat atas tersebut dalam sebuah stack, maka dilakukan operasi pop. DAFTAR RUJUKAN 1. Tim Asisten Dosen Modul II, Sorting. Malang: Unversitas Negeri Malang. 2. Tim Asisten Dosen Modul III, Searching. Malang: Unversitas Negeri Malang. 3. Tim Asisten Dosen Modul IV, Stack. Malang: Unversitas Negeri Malang. 4. Kadir, Abdul Buku Pintar C++ Untuk Pemula. Yogyakarta: MediaKom. 5. Shalahuddin, M. dan Rosa A. S Belajar Bahasa Pemrograman dengan Bahasa C++ dan Java Karya.Bandung : Informatika.

Modul Praktikum Algoritma dan Struktur Data

Modul Praktikum Algoritma dan Struktur Data MODUL IV STACK A. TUJUAN 1. Memahami terminologi yang terkait dengan struktur data stack. 2. Memahami operasi-operasi yang ada dalam stack. 3. Dapat mengidentifikasi permasalahan-permasalahan pemrograman

Lebih terperinci

MODUL IV STACK A. TUJUAN

MODUL IV STACK A. TUJUAN MODUL IV STACK A. TUJUAN 1. Memahami terminologi yang terkait dengan struktur data stack. 2. Memahami operasi-operasi yang ada dalam stack. 3. Dapat mengidentifikasi permasalahan-permasalahan pemrograman

Lebih terperinci

LAPORAN PRAKTIKUM IV. Oleh:

LAPORAN PRAKTIKUM IV. Oleh: LAPORAN PRAKTIKUM IV QUEUE Disusun untuk Memenuhi Matakuliah Praktikum Algoritma dan Struktur Data Dibimbing oleh Ibu Triyanna Widyaningtyas Oleh: MUHAMMAD BAKHRUR RIZKI 150533604505 S1 PTI-C /2015 UNIVERSITAS

Lebih terperinci

E STRUKTUR DATA & E PRAKTIK STRUKTUR DATA. Stack using Array. Alfa Faridh Suni, S.T., M.T. PTIK

E STRUKTUR DATA & E PRAKTIK STRUKTUR DATA. Stack using Array. Alfa Faridh Suni, S.T., M.T. PTIK E3024015 - STRUKTUR DATA & E3024016 PRAKTIK STRUKTUR DATA Stack using Array Alfa Faridh Suni, S.T., M.T. PTIK - 2014 Stack = tumpukan Suatu susunan koleksi data dimana data dapat ditambahkan dan dihapus

Lebih terperinci

Algoritma dan Struktur Data. Ramos Somya

Algoritma dan Struktur Data. Ramos Somya Algoritma dan Struktur Data Ramos Somya Stack atau tumpukan adalah suatu stuktur data yang penting dalam pemrograman eksekusi suatu fungsi menggunakan prinsip Stact. Bersifat LIFO (Last In First Out) Benda

Lebih terperinci

STACK atau TUMPUKAN. Pertemuan 5 STACK (TUMPUKAN)

STACK atau TUMPUKAN. Pertemuan 5 STACK (TUMPUKAN) Pertemuan 5 STACK atau TUMPUKAN STACK (TUMPUKAN) Merupakan bentuk khusus dari Linier List yang pemasukan dan penghapusan elemennya hanya dapat dilakukan pada satu posisi, yaitu posisi akhir dari List (Top)

Lebih terperinci

# NINE Queue dengan Array

# NINE Queue dengan Array HANDOUT ALGORITMA PEMROGRAMAN DAN STRUKTUR DATA 1 PRODI SISTEM INFORMASI UKDW # NINE Queue dengan Array LANJUTAN: DOUBLE STACK dengan Array - Adalah suatu teknik khusus yang dikembangkan untuk menghemat

Lebih terperinci

Algoritma Pemrograman & Struktur Data

Algoritma Pemrograman & Struktur Data MODUL PERKULIAHAN Algoritma Pemrograman & Struktur Data Stack Fakultas Program Studi Tatap Muka Kode MK Disusun Oleh Fakultas Ilmu Informatika Komputer 04 87042 Abstract Penjelasan mengenai stack dan penggunaannya

Lebih terperinci

Algoritma Dan Struktur Data II

Algoritma Dan Struktur Data II Algoritma Dan Struktur Data II List, Stack Putuputraastawa@gmail.com putuastawa.wordpress.com Beberapa Jenis Struktur Data 1. Array 1. Linear List 2. Stack 3. Queue 1. Apa? 2. Bagaimana cara implementasinya?

Lebih terperinci

BAB III. Stack. ( Tumpukan )

BAB III. Stack. ( Tumpukan ) BAB III Stack ( Tumpukan ) Pada algoritma dan pemrograman terutama struktur data kita akan mengenal suatu konsep penyusunan data/array/elemen struktur dengan cara penumpukan atau yang biasa disebut dengan

Lebih terperinci

Materi 8 : STACK (TUMPUKAN) Dosen:

Materi 8 : STACK (TUMPUKAN) Dosen: JURNAL PRAKTIKUM (LAB. ACTIVITY) STRUKTUR DATA SI025 Materi 8 : STACK (TUMPUKAN) Dosen: Acihmah, M.Kom Agung Nugroho, M.Kom Ikmah, M.Kom Lilis Dwi Farida, S.Kom,M.Eng Ninik Tri. H, M.Kom Prof. Dr. Ema

Lebih terperinci

STACK DAN QUEUE (Muhammad Fachrie, STMIK Amikom Yogyakarta)

STACK DAN QUEUE (Muhammad Fachrie, STMIK Amikom Yogyakarta) STACK DAN QUEUE (Muhammad Fachrie, STMIK Amikom Yogyakarta) A. Stack 1. Pendahuluan Stack (tumpukan) dan queue (antrian) sebenarnya adalah sebuah cara dalam mengorganisasikan data-data yang dimiliki. Ibarat

Lebih terperinci

SOAL C++ Created by Yuli Astuti,S.Kom Copyright 2009

SOAL C++ Created by Yuli Astuti,S.Kom Copyright 2009 SOAL C++ 1. Penulisan Preprocessor yang benar di awali dengan tanda pound atau tanda : a. # c. @ b. & d. = 2. Contoh penulisan file header yang benar yaitu : a. &include c. =include

Lebih terperinci

Struktur Data Array. Rijal Fadilah S.Si

Struktur Data Array. Rijal Fadilah S.Si Struktur Data Array Rijal Fadilah S.Si Array Berdimensi Satu Array Satu dimensi tidak lain adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris. Elemen-elemen tersebut memiliki tipe data

Lebih terperinci

PRAKTIKUM ALGORITMA & PEMROGRAMAN III MODUL_06 Stack (Tumpukan)

PRAKTIKUM ALGORITMA & PEMROGRAMAN III MODUL_06 Stack (Tumpukan) PRAKTIKUM ALGORITMA & PEMROGRAMAN III MODUL_06 Stack (Tumpukan) inslls_05@yahoo.co.id A. Pembahasan Stack Algoritma stack merupakan struktur data yang mengimplementasi dari aturan LIFO (Last In First Out).

Lebih terperinci

Struktur Data. Stack STMIK AMIKOM YOGYAKARTA. Bayu Setiaji, S.Kom

Struktur Data. Stack STMIK AMIKOM YOGYAKARTA. Bayu Setiaji, S.Kom Struktur Data Stack Bayu Setiaji, S.Kom STMIK AMIKOM YOGYAKARTA 1. Tujuan 1. Mamahami konsep stack 2. Memahami operasi dasar stack 3. Dapat mengaplikasikan stack dalam kasus nyata 2. Penjelasan Bab ini

Lebih terperinci

QUEUE (ANTREAN) Prinsip Antrean : FIFO (First In First Out) FCFS (First Come First Serve) Yang Tiba lebih awal Maka akan dilayani Terlebih Dahulu

QUEUE (ANTREAN) Prinsip Antrean : FIFO (First In First Out) FCFS (First Come First Serve) Yang Tiba lebih awal Maka akan dilayani Terlebih Dahulu QUEUE (ANTREAN) Struktur Data Antrean (Queue) adalah suatu bentuk khusus dari List Linier dengan operasi pemasukan data hanya diperbolehkan pada salah satu sisi, yang disebut sisi Belakang / ekor (Tail)

Lebih terperinci

STRUKTUR DATA POKOK BAHASAN - 7 STACK ( TUMPUKAN )

STRUKTUR DATA POKOK BAHASAN - 7 STACK ( TUMPUKAN ) STRUKTUR DATA POKOK BAHASAN - 7 STACK ( TUMPUKAN ) Oleh : NAZARUDDIN AHMAD, S.T, M.T Referensi : Antonius Rachmat C, S.Kom Design By mytemplate 2013 Stack Stack atau tumpukan adalah suatu struktur yang

Lebih terperinci

LAPORAN PRAKTIKUM RESMI QUEUE

LAPORAN PRAKTIKUM RESMI QUEUE LAPORAN PRAKTIKUM RESMI QUEUE Disusun oleh : Amin Setyaningrum 201301052 Dosen pengampu : Yosef Murya Kusuma Ardhana.S.T., M.Kom JURUSAN SISTEM INFORMASI SEKOLAH TINGGI ILMU KOMPUTER YOS SUDARSO PURWOKERTO

Lebih terperinci

STACK (Tumpukan) Tumpukan Koin. Tumpukan Kotak

STACK (Tumpukan) Tumpukan Koin. Tumpukan Kotak STACK (Tumpukan) Tumpukan Koin Tumpukan Kotak Defenisi : Secara sederhana, tumpukan bisa diartikan sebagai suatu kumpulan data yang seolah-olah ada data yang diletakan diatas data yang lain. Satu hal yang

Lebih terperinci

ALGORITMA DAN STRUKTUR DATA ARRAY STACK DAN QUEUE

ALGORITMA DAN STRUKTUR DATA ARRAY STACK DAN QUEUE ALGORITMA DAN STRUKTUR DATA ARRAY STACK DAN QUEUE STACK = TUMPUKAN SUATU SUSUNAN KOLEKSI DATA DIMANA DATA DAPAT DITAMBAHKAN DAN DIHAPUS SELALU DILAKUKAN PADA BAGIAN AKHIR DATA, YANG DISEBUT DENGAN TOP

Lebih terperinci

Tumpukan (Stack) Stack bersifat LIFO (Last In First Out) LIFO Data yang terakhir masuk ke dalam stack menjadi data yang pertama keluar dari stack

Tumpukan (Stack) Stack bersifat LIFO (Last In First Out) LIFO Data yang terakhir masuk ke dalam stack menjadi data yang pertama keluar dari stack Tumpukan (Stack) Susunan koleksi data dimana proses penambahan data (add) dan penghapusan data (delete) selalu dilakukan melalui posisi akhir data. Posisi akhir data top of stack Stack bersifat LIFO (Last

Lebih terperinci

S TA C K Sunu Wibirama

S TA C K Sunu Wibirama STACK Sunu Wibirama Jadwal ujian MID Hari Rabu, 6 April 2011 Pkl. 07.30-09.30 WIB Ruangan E3 Open Book, tapi tidak diperkenankan menggunakan internet, membuka laptop, atau handphone Bahan ujian Logika

Lebih terperinci

Pertemuan 7. REVIEW dan QUIS

Pertemuan 7. REVIEW dan QUIS Pertemuan 7 REVIEW dan QUIS 1. Type data dibawah ini, yang tidak termasuk dalam tipe data sederhana tunggal, adalah : a. Boolean d. Integer b. String e. float c. Char 2. ==, =,!=, termasuk dalam operator

Lebih terperinci

Masukan Judul... Infotype àsebuah tipe terdefinisi yang menyimpan informasi sebuah elemen list

Masukan Judul... Infotype àsebuah tipe terdefinisi yang menyimpan informasi sebuah elemen list Universitas Muhammadiyah Sukabumi Artikel Struktur Data Oleh : fahmi fauzi Masukan Judul... 1. STACK DAN QUEUE DENGAN LINKED LIST Pengertian Linked list : sekumpulan elemen bertipe sama, yang mempunyai

Lebih terperinci

LAPORAN PRAKTIKUM I. Oleh:

LAPORAN PRAKTIKUM I. Oleh: LAPORAN PRAKTIKUM I PENGENALAN SISTEM OPERASI, IDE VISUAL C++, DAN ALGORITMA PEMROGRAMAN Disusun untuk Memenuhi Matakuliah Praktikum Dasar Pemrograman C++ Dibimbing oleh Bapak Wahyu Sakti Gunawan Irianto

Lebih terperinci

PRAKTIKUM STRUKTUR DATA QUEUE. SULIDAR FITRI, M.Sc

PRAKTIKUM STRUKTUR DATA QUEUE. SULIDAR FITRI, M.Sc PRAKTIKUM STRUKTUR DATA QUEUE SULIDAR FITRI, M.Sc QUEUE Secara harafiah, queue berarti antrian, queue merupakan salah satu contoh aplikasi dari pembuatan double linked list yang cukup sering kita temui

Lebih terperinci

LAPORAN PRAKTIKUM V. Oleh:

LAPORAN PRAKTIKUM V. Oleh: LAPORAN PRAKTIKUM V ARRAY (LARIK) Disusun untuk Memenuhi Matakuliah Praktikum Dasar Pemrograman C++ Dibimbing oleh Bapak Wahyu Sakti Gunawan Irianto Oleh: Dwitha Fajri Ramadhani 160533611410 S1 PTI 16

Lebih terperinci

Praktikum Algoritma dan Struktur Data

Praktikum Algoritma dan Struktur Data BAB 7 DOUBLE LINKED LIST (SENARAI BERKAIT GANDA) 1. Tujuan Instruksional Umum a. Mahasiswa dapat melakukan perancangan aplikasi menggunakan struktur Linked List (Senarai Berkait) b. Mahasiswa mampu melakukan

Lebih terperinci

STRUKTUR DATA Pertemuan 1 s.d 8

STRUKTUR DATA Pertemuan 1 s.d 8 STRUKTUR DATA Pertemuan 1 s.d 8 Sasaran: Meningkatkan: pemahaman pengetahuan tentang teori dasar struktur data dan penanganan data serta pembuatan algoritma dan penggunaan strukturd dalam pemrograman Materi

Lebih terperinci

STACK dan QUEUE MODUL PRAKTIKUM STRUKTUR DATA 09 UNIVERSITAS KRISTEN DUTA WACANA. Daftar Isi: Stack dan Queue. Latihan soal. Guided.

STACK dan QUEUE MODUL PRAKTIKUM STRUKTUR DATA 09 UNIVERSITAS KRISTEN DUTA WACANA. Daftar Isi: Stack dan Queue. Latihan soal. Guided. STACK dan QUEUE Daftar Isi: Stack dan Queue Latihan soal Guided Unguided Take home Kunci jawaban soal guided MODUL PRAKTIKUM STRUKTUR DATA 09 UNIVERSITAS KRISTEN DUTA WACANA PENGANTAR Definisi Stack disebut

Lebih terperinci

REVIEW ARRAY. Institut Teknologi Sumatera

REVIEW ARRAY. Institut Teknologi Sumatera REVIEW ARRAY DASAR PEMROGRAMAN Institut Teknologi Sumatera TUJUAN PERKULIAHAN Mahasiswa mengingat kembali konsep dan cara kerja array Mahasiswa mampu membuat program menggunakan array PRE TEST Tuliskan,

Lebih terperinci

PENGANTAR KOMPUTER & SOFTWARE II. Array (Part II) Tim Pengajar KU Institut Teknologi Sumatera

PENGANTAR KOMPUTER & SOFTWARE II. Array (Part II) Tim Pengajar KU Institut Teknologi Sumatera PENGANTAR KOMPUTER & SOFTWARE II Array (Part II) Tim Pengajar KU1102 - Institut Teknologi Sumatera Tujuan Mahasiswa mampu memahami proses-proses yang dapat dilakukan terhadap array. Mahasiswa dapat menggunakan

Lebih terperinci

Materi 9 : QUEUE (ANTREAN) Dosen:

Materi 9 : QUEUE (ANTREAN) Dosen: JURNAL PRAKTIKUM (LAB. ACTIVITY) STRUKTUR DATA SI025 Materi 9 : QUEUE (ANTREAN) Dosen: Acihmah, M.Kom Agung Nugroho, M.Kom Ikmah, M.Kom Lilis Dwi Farida, S.Kom., M.Eng Ninik Tri. H, M.Kom Prof. Dr. Ema

Lebih terperinci

MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA STACK

MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA STACK MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA STACK Deskripsi Singkat merupakan bentuk struktur data seperti tumpukan yang memiliki konsep Last In First Out (LIFO). Bermakna data yang terakhir masuk merupakan

Lebih terperinci

A. TUJUAN PEMBELAJARAN

A. TUJUAN PEMBELAJARAN Praktikum 2 Stack (Tumpukan) A. TUJUAN PEMBELAJARAN Setelah mempelajari materi dalam bab ini, mahasiswa diharapkan mampu: 1. Memahami terminologi yang terkait dengan struktur data stack. 2. Memahami operasi-operasi

Lebih terperinci

PRAKTIKUM ALGORITMA DAN STRUKTUR DATA MODUL KE-2 STACK DAN QUEUE

PRAKTIKUM ALGORITMA DAN STRUKTUR DATA MODUL KE-2 STACK DAN QUEUE PRAKTIKUM ALGORITMA DAN STRUKTUR DATA MODUL KE-2 STACK DAN QUEUE LABORATORIUM PEMROGRAMAN PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS MUHAMMADIYAH MALANG 2015 I. TUJUAN II. Mahasiswa mampu

Lebih terperinci

Praktikum 4. Tumpukan (Stack)

Praktikum 4. Tumpukan (Stack) Praktikum 4 Tumpukan (Stack) POKOK BAHASAN: Konsep Tumpukan (Stack) Struktur data untuk Tumpukan Algoritma merubah Infix menjadi Postfix Implementasi Tumpukan dalam Bahasa C TUJUAN BELAJAR: Setelah melakukan

Lebih terperinci

Algoritma Shell Sort Ascending Dan Binary Sequential Search Menggunakan C

Algoritma Shell Sort Ascending Dan Binary Sequential Search Menggunakan C TUGAS STRUKTUR DATA Shell Sort Ascending Dan Binary Sequential Search Menggunakan C IF-5 Nama Anggota : - Rohendi 10107193 - Andri Andriyan 10107210 - Yuli Yanti A 10107218 - Jajang Kusmita 10107227 JURUSAN

Lebih terperinci

Seharusnya. if (antrian.tail==max-1) return 0;

Seharusnya. if (antrian.tail==max-1) return 0; Nama : Dimas Angger Prabowo NPM : 143112706450026 Kesalahan program int isempty() { int isempty() { 0; if (antrian.tail==-1) return 1; if (antrian.tail==-1) return Seharusnya int isfull() { if (antrian.tail==max-1)

Lebih terperinci

PERTEMUAN VI POINTER 6.1 Tujuan Praktikum 6.2 Teori Penunjang Pointer

PERTEMUAN VI POINTER 6.1 Tujuan Praktikum 6.2 Teori Penunjang Pointer PERTEMUAN VI POINTER 6.1 Tujuan Praktikum Praktikan mengenal type data Pointer, mengerti tentang konsep dasar dari pointer, dapat mendeklarasikan pointer di Pascal serta dapat menggunakannya di dalam sebuah

Lebih terperinci

ARRAY PENGANTAR PROGRAM STUDI. Institut Teknologi Sumatera

ARRAY PENGANTAR PROGRAM STUDI. Institut Teknologi Sumatera ARRAY PENGANTAR PROGRAM STUDI Institut Teknologi Sumatera TUJUAN PERKULIAHAN Mahasiswa memahami konsep dan cara kerja array Mahasiswa mampu membuat program sederhana menggunakan array satu dimensi PRE

Lebih terperinci

Tipe Data dan Operator

Tipe Data dan Operator Tipe Data dan Operator Dasar Algoritma dan Pemrogrman Eka Maulana, ST, MT, MEng. Klasifikasi Tipe Data 1 Tipe Data Tipe data adalah jenis data yang dapat diolah oleh komputer untuk memenuhi kebutuhan dalam

Lebih terperinci

STACK (TUMPUKAN) Tumpukan uang koin Tumpukan kotak Tumpukan Buku. Gambar 1. Macam-macam tumpukan

STACK (TUMPUKAN) Tumpukan uang koin Tumpukan kotak Tumpukan Buku. Gambar 1. Macam-macam tumpukan STACK (TUMPUKAN) adalah suatu urutan elemen yang elemennya dapat diambil dan ditambah hanya pada posisi akhir (top) saja. Contoh dalam kehidupan sehari-hari adalah tumpukan piring di sebuah restoran yang

Lebih terperinci

Implementasi Queue menggunakan Array. Imam Fahrur Rozi

Implementasi Queue menggunakan Array. Imam Fahrur Rozi Implementasi Queue menggunakan Array Imam Fahrur Rozi Preprocessor Directive Di-include-kan library iostream.h, karena program akan menggunakan perintah cin dan cout Di-include-kan juga library conio.h,

Lebih terperinci

PENGENALAN BAHASA C DAN C++

PENGENALAN BAHASA C DAN C++ PRAKTIKUM KE 1 PENGENALAN BAHASA C DAN C++ TUJUAN PRAKTIKUM 1. Praktikan mengetahui sejarah bahasa C dan C++. 2. Praktikan mengerti struktur program bahasa C / C++. 3. Praktikan mengerti konsep tipe data

Lebih terperinci

STACK DAN QUEUE. Pengertian Stack Dan Queue. stack & queue. Last saved by KENKEINA Created by KENKEINA

STACK DAN QUEUE. Pengertian Stack Dan Queue. stack & queue. Last saved by KENKEINA Created by KENKEINA Page 1 of 6 STACK DAN QUEUE Pengertian Stack Dan Queue Tumpukan dapat diartikan sebagai suatu kumpulan data yang seolah-olah terlihat seperti ada data yang diletakkan di atas data yang lain seperti pada

Lebih terperinci

DASAR PEMROGRAMAN. Institut Teknologi Sumatera

DASAR PEMROGRAMAN. Institut Teknologi Sumatera DASAR PEMROGRAMAN REVIEW STRUKTUR DASAR, PERCABANGAN, DAN PERULANGAN Institut Teknologi Sumatera TUJUAN KULIAH Mengenalkan konsep dasar pemrograman: dekomposisi problem, modularisasi, rekurens; skill/praktek

Lebih terperinci

KONSEP POINTER DAN LINKED LIST

KONSEP POINTER DAN LINKED LIST Pertemuan 3 KONSEP POINTER DAN LINKED LIST Untuk mengolah data yang banyaknya tidak bisa ditentukan sebelumnya, maka disediakan satu fasilitas yang memungkinan untuk menggunakan suatu perubah yang disebut

Lebih terperinci

Struct Lanjutan: Studi Kasus

Struct Lanjutan: Studi Kasus Struktur Data Struct Lanjutan: Studi Kasus Bayu Setiaji, S.Kom STMIK AMIKOM YOGYAKARTA 1. Tujuan 1. Pendalaman struct 2. Review fungsi 3. Dapat mengaplikasikan konsep struct dalam kasus nyata 2. Penjelasan

Lebih terperinci

PENGANTAR KOMPUTER & SOFTWARE II

PENGANTAR KOMPUTER & SOFTWARE II PENGANTAR KOMPUTER & SOFTWARE II PERULANGAN 2 (WHILE & DO-WHILE) Tim Pengajar KU1202 - Institut Teknologi Sumatera Tujuan Kuliah 1. Mahasiswa memahami pengulangan (while dan do-while) dan penggunaannya

Lebih terperinci

# EIGHT ADT (Abstract Data Type) dan Stack Array

# EIGHT ADT (Abstract Data Type) dan Stack Array HANDOUT ALGORITMA PEMROGRAMAN DAN STRUKTUR DATA 1 PRODI SISTEM INFORMASI UKDW # EIGHT ADT (Abstract Data Type) dan Stack Array ADT (Abstract Data Type) atau Tipe Data Bentukan - Bahasa C memiliki tipe

Lebih terperinci

STRUKTUR DATA POKOK BAHASAN - 8 QUEUE ( ANTRIAN)

STRUKTUR DATA POKOK BAHASAN - 8 QUEUE ( ANTRIAN) STRUKTUR DATA POKOK BAHASAN - 8 QUEUE ( ANTRIAN) Oleh : NAZARUDDIN AHMAD, S.T, M.T Referensi : Antonius Rachmat C, S.Kom Andri Heryamdi Design By mytemplate 2013 Queue Queue atau antrian adalah barisan

Lebih terperinci

VARIABEL & TIPE DATA PEMROGRAMAN C++

VARIABEL & TIPE DATA PEMROGRAMAN C++ VARIABEL & TIPE DATA PEMROGRAMAN C++ ruliriki@gmail.com VARIABEL Suatu nama yang menyatakan tempat dalam memori komputer Menyimpan nilai yang dapat diubah VARIABEL Pengenal (identifier) yang digunakan

Lebih terperinci

Pengenalan C++ Oleh : Dewi Sartika

Pengenalan C++ Oleh : Dewi Sartika Pengenalan C++ Oleh : Dewi Sartika Pendahuluan Bahasa Pemrograman C++ merupakan bahasa tingkat menengah dimana bahasa ini didasarkan atas bahasa C, keistimewaan dari bahasa C++ adalah bahasa ini mendukung

Lebih terperinci

DIKTAT KULIAH ALGORITMA dan STRUKTUR DATA II. Tujuan Pembelajaran : Mahasiswa mampu menjelaskan teknik pemrograman menggunakan Stack.

DIKTAT KULIAH ALGORITMA dan STRUKTUR DATA II. Tujuan Pembelajaran : Mahasiswa mampu menjelaskan teknik pemrograman menggunakan Stack. Pertemuan 7 Waktu : 135 menit Tujuan Pembelajaran : Mahasiswa mampu menjelaskan teknik pemrograman menggunakan Stack. Substansi Materi : Stack Tabulasi Kegiatan Perkuliahan No Tahap Kegiatan Kegiatan Pengajar

Lebih terperinci

# FOUR LOOPING. JAWABAN 1. #include <stdio.h> #include <conio.h> #define pi void main(){

# FOUR LOOPING. JAWABAN 1. #include <stdio.h> #include <conio.h> #define pi void main(){ HANDOUT ALGORITMA PEMROGRAMAN DAN STRUKTUR DATA 1 PRODI SISTEM INFORMASI UKDW # FOUR LOOPING Soal-soal minggu lalu: 1. Buatlah program untuk menghitung luas segitiga dan luas lingkaran (gunakan konstanta

Lebih terperinci

MODUL PRAKTIKUM. MODUL I - VIII Modul penuntun dan bahan praktikum matakuliah algoritma dan pemograman

MODUL PRAKTIKUM. MODUL I - VIII Modul penuntun dan bahan praktikum matakuliah algoritma dan pemograman I - VIII Modul penuntun dan bahan praktikum matakuliah algoritma dan pemograman Jurusan Teknik Informatika Fakultas Teknik Universitas Maritim Raja Ali Haji ALGORITMA DAN PEMOGRAMAN I. ALGORITMA II. BAHASA

Lebih terperinci

Array dan Matriks. IF2121 / Algoritma dan Struktur Data Sem / /7/2017 IF2121/sem /2018 1

Array dan Matriks. IF2121 / Algoritma dan Struktur Data Sem / /7/2017 IF2121/sem /2018 1 Array dan Matriks IF2121 / Algoritma dan Struktur Data Sem. 1 2017/2018 9/7/2017 IF2121/sem. 1 2017/2018 1 Array 9/7/2017 IF2121/sem. 1 2017/2018 2 Definisi Array adalah koleksi objek yang terdiri dari

Lebih terperinci

Tumpukan(Stack)!! " # $ %&' $ %& ( ) ( * +, / ( (

Tumpukan(Stack)!!  # $ %&' $ %& ( ) ( * +, / ( ( BAB III Tumpukan(Stack) Tujuan: 1. Memahami terminologi yang terkait dengan struktur data stack 2. Memahami operasi-operasi yang ada dalam stack 3. Dapat mengidentifikasi permasalahan-permasalahan pemrograman

Lebih terperinci

Instalasi Code::Blocks, Tipe Data, Variabel, Konstanta, Operator, Input-Output dan Flowchart

Instalasi Code::Blocks, Tipe Data, Variabel, Konstanta, Operator, Input-Output dan Flowchart Instalasi Code::Blocks, Tipe Data, Variabel, Konstanta, Operator, Input-Output dan Flowchart Pertemuan ke-1 Praktikum Algoritma dan Pemrograman Laboratorium Pemrograman dan Informatika Teori Pengumuman

Lebih terperinci

POINTER STACK DAN QUEUE. Institut Teknologi Sumatera

POINTER STACK DAN QUEUE. Institut Teknologi Sumatera POINTER STACK DAN QUEUE ALGORITMA DAN STRUKTUR DATA Institut Teknologi Sumatera PRE TEST Apakah yang disebut dengan array? Bagaimana cara deklarasi dan pengacuan dari sebuah array? Apa kekurangan array?

Lebih terperinci

ARRAY / LARIK. Oleh : Agus Priyanto, M.Kom SEKOLAH TINGGI TEKNOLOGI TELEMATIKA TELKOM. Smart, Trustworthy, And Teamwork

ARRAY / LARIK. Oleh : Agus Priyanto, M.Kom SEKOLAH TINGGI TEKNOLOGI TELEMATIKA TELKOM. Smart, Trustworthy, And Teamwork ARRAY / LARIK Oleh : Agus Priyanto, M.Kom SEKOLAH TINGGI TEKNOLOGI TELEMATIKA TELKOM Smart, Trustworthy, And Teamwork Tujuan Mahasiswa memahami makna dan kegunaan array (tabel) Mahasiswa dapat menggunakan

Lebih terperinci

MAKALAH STRUKTUR DATA. DOSEN PEMBIMBING Nisa miftachurohmah, S.kom., M.Si PENYUSUN SITI JAMILATUL MU ADDIBAH ( )

MAKALAH STRUKTUR DATA. DOSEN PEMBIMBING Nisa miftachurohmah, S.kom., M.Si PENYUSUN SITI JAMILATUL MU ADDIBAH ( ) MAKALAH STRUKTUR DATA DOSEN PEMBIMBING Nisa miftachurohmah, S.kom., M.Si PENYUSUN SITI JAMILATUL MU ADDIBAH (14.1.03.03.0024) FAKULTAS TEKNIK PROGRAM STUDI SISTEM INFORMASI UNIVERSITAS NUSANTARA PGRI KEDIRI

Lebih terperinci

Kisi-Kisi Ujian Tengah Semester Algoritma dan Pemrograman Lanjut

Kisi-Kisi Ujian Tengah Semester Algoritma dan Pemrograman Lanjut Kisi-Kisi Ujian Tengah Semester Algoritma dan Pemrograman Lanjut 1. Pengenalan Bahasa C++ a. Elemen Bahasa C+ Bahasa C++ ditulis dari beberapa elemen, antara lain: Pernyataan Satu atau beberapa ekspresi

Lebih terperinci

LAPORAN PRAKTIKUM IX. Oleh:

LAPORAN PRAKTIKUM IX. Oleh: LAPORAN PRAKTIKUM IX LINKED LIST Disusun untuk Memenuhi Matakuliah Praktikum Algoritma Struktur Data Dibimbing oleh Ibu Annisa Puspa Kirana, S. Kom, M. Kom Oleh: Dwitha Fajri Ramadhani 160533611410 Ika

Lebih terperinci

UJIAN TENGAH SEMESTER GANJIL TAHUN STMIK AMIKOM YOGYAKARTA

UJIAN TENGAH SEMESTER GANJIL TAHUN STMIK AMIKOM YOGYAKARTA UJIAN TENGAH SEMESTER GANJIL TAHUN 2012 2013 STMIK AMIKOM YOGYAKARTA Mata Ujian : Algoritma dan Pemrograman Kelas : 12-S1TI-12 s/d 14 Sifat : Open Book (Close Laptop) Jurusan : S1 Teknik Informatika Hari

Lebih terperinci

Pengenalan Array. Array Satu Dimensi

Pengenalan Array. Array Satu Dimensi Bab 1 Array/ Larik Pengenalan Array Array adalah suatu data terstruktur yang terdiri dari sejumlah elemen yang memiliki tipe data yang sama. Elemen-elemen array tersusun secara sekuensial dalam memori

Lebih terperinci

1. Mempelajari konsep dasar array, array ganda, pengiriman array ke fungsi dan string 2. Membuat program menggunakan array, array ganda

1. Mempelajari konsep dasar array, array ganda, pengiriman array ke fungsi dan string 2. Membuat program menggunakan array, array ganda Pertemuan ke-8 Array TUJUAN 1. Mempelajari konsep dasar array, array ganda, pengiriman array ke fungsi dan string 2. Membuat program menggunakan array, array ganda 8. 1. PENDAHULUAN Array adalah sebuah

Lebih terperinci

Array (Larik) Modul 7

Array (Larik) Modul 7 Array (Larik) Modul 7 Array adalah suatu tipe data terstuktur yang berupa sejumlah data sejenis (bertipe data sama) yang jumlahnya tetap dan diberi suatu nama tertentu, elemen-elemen array tersusun secara

Lebih terperinci

Senarai berantai. linked list. Pertemuan keenam Struktur data st3telkom.ac.id. by : tenia wahyuningrum & Sisilia Thya Safitri

Senarai berantai. linked list. Pertemuan keenam Struktur data st3telkom.ac.id. by : tenia wahyuningrum & Sisilia Thya Safitri Senarai berantai linked list Pertemuan keenam Struktur data st3telkom.ac.id by : tenia wahyuningrum & Sisilia Thya Safitri Senarai berantai Dalam pemakaian sehari-hari istilah senarai berantai (list) adalah

Lebih terperinci

P3 Dasar Struktur Data TIF42/SIF42

P3 Dasar Struktur Data TIF42/SIF42 P3 Dasar Struktur Data TIF42/SIF42 A. Sidiq P. Prodi teknik Informatika & Prodi Sistem Informasi Fakultas Teknologi Informasi Universitas Mercu Buana Yogyakarta Pembahasan Struktur Data Primitif Struct

Lebih terperinci

PRAKTIKUM ALGORITMA DAN STRUKTUR DATA DOUBLE LINKED LIST CIRCULAR

PRAKTIKUM ALGORITMA DAN STRUKTUR DATA DOUBLE LINKED LIST CIRCULAR PRAKTIKUM ALGORITMA DAN STRUKTUR DATA DOUBLE LINKED LIST CIRCULAR TUJUAN 1. Mahasiswa memahami dan mengerti mengenai double linked list circular dalam C++ 2. Mahasiswa mampu membuat program dengan menggunakan

Lebih terperinci

Pertemuan 3. Perubah Dinamis (Dinamic variable) Suatu perubah yang akan dialokasikan hanya pada saat diperlukan, yaitu setelah program dieksekusi.

Pertemuan 3. Perubah Dinamis (Dinamic variable) Suatu perubah yang akan dialokasikan hanya pada saat diperlukan, yaitu setelah program dieksekusi. Pertemuan 3 KONSEP POINTER DAN LINKED LIST Untuk mengolah data yang banyaknya tidak bisa ditentukan sebelumnya, maka disediakan satu fasilitas yang memungkinan untuk menggunakan suatu perubah yang disebut

Lebih terperinci

Komentar, Identifier, Konstanta dan Variabel

Komentar, Identifier, Konstanta dan Variabel PEMROGRAMAN BERORIENTASI OBJEK Komentar, Identifier, Konstanta dan Variabel Budhi Irawan, S.Si, M.T KOMENTAR PROGRAM Dalam proses pengembangan sebuah program, pasti akan disibukan dengan penulisan kode-kode

Lebih terperinci

LAPORAN PRAKTIKUM ALGORITMA DAN STRUKTUR DATA Searching ( Pencarian ) Modul III

LAPORAN PRAKTIKUM ALGORITMA DAN STRUKTUR DATA Searching ( Pencarian ) Modul III LAPORAN PRAKTIKUM ALGORITMA DAN STRUKTUR DATA Searching ( Pencarian ) Modul III UNTUK MEMENUHI TUGAS MATAKULIAH PRAKTIKUM ALGORITMA DAN STRUKTUR DATA yang dibina oleh Bapak Didik Dwi Prasetya Oleh: Adhe

Lebih terperinci

Data structure :Metode LINK LIST. Kusnawi, S.Kom, M.Eng STMIK AMIKOM Yogyakarta

Data structure :Metode LINK LIST. Kusnawi, S.Kom, M.Eng STMIK AMIKOM Yogyakarta Data structure :Metode LINK LIST Kusnawi, S.Kom, M.Eng STMIK AMIKOM Yogyakarta Pengelolaan Memori : Konsep Dasar Secara Statis, sebagai Contoh penggunaan tipe array menempati lokasi memory yang tetap(

Lebih terperinci

KONSEP POINTER DAN LINKED LIST

KONSEP POINTER DAN LINKED LIST Pertemuan 3 KONSEP POINTER DAN LINKED LIST Untuk mengolah data yang banyaknya tidak bisa ditentukan sebelumnya, maka disediakan satu fasilitas yang memungkinan untuk menggunakan suatu perubah yang disebut

Lebih terperinci

BAB II STACK (TUMPUKAN)

BAB II STACK (TUMPUKAN) BAB II STACK (TUMPUKAN) Stack merupakan metode dalam menyimpan atau mengambil data ke dan dari memori. Stack dapat dibratkan sebuah tumpukan barang dalam sebuah tempat yang hanya memiliki satu pintu diatsnya

Lebih terperinci

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER STMIK AMIKOM YOGYAKARTA

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER STMIK AMIKOM YOGYAKARTA SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER STMIK AMIKOM YOGYAKARTA S1-TI ALGORITMA & PEMROGRAMAN MODUL VI ARRAY ( LARIK) SEM I WAKTU 100 MNT I. STRUKTUR DASAR ARRAY Array merupakan kumpulan dari

Lebih terperinci

BAB VI BAHASA C Pendahuluan

BAB VI BAHASA C Pendahuluan BAB VI BAHASA C2 6.1 Pendahuluan Bahasa C merupakan evolusi dari bahasa BCPL yang dibuat oleh Martin Richards pada tahun 1967. Bahasa ini memberikan ide kepada Ken Thompson yang kemudian mengembangkan

Lebih terperinci

MODUL 6 SINGLE & DOUBLE LINKED LIST

MODUL 6 SINGLE & DOUBLE LINKED LIST MODUL 6 SINGLE & DOUBLE LINKED LIST 1. Tujuan Instruksional Umum a. Mahasiswa dapat melakukan perancangan aplikasi menggunakan struktur Linked List (Senarai Berkait) b. Mahasiswa mampu melakukan analisis

Lebih terperinci

Lab. Teknik Informatika Struktur Data 1

Lab. Teknik Informatika Struktur Data 1 2. POINTER dan SINGLE LINK LIST TUJUAN PRAKTIKUM 1. Praktikan mengetahui tipe struktur data baru yaitu tipe data Pointer. 2. Praktikan menggunakan pointer didalam pembuatan program dan dapat menerapkannya

Lebih terperinci

Struktur Data. Tumpukan : Definisi & Operasi. Pertemuan 4 PROBLEM ALGORITHM DATA IMPLEMENTATION. Pert. 4b Struktur Data - FMIPA USD

Struktur Data. Tumpukan : Definisi & Operasi. Pertemuan 4 PROBLEM ALGORITHM DATA IMPLEMENTATION. Pert. 4b Struktur Data - FMIPA USD Pertemuan 4 : Definisi & Operasi Disusun oleh : PH. Prima Rosa, S.Si., M.Sc. Sri Hartati Wijono, S.Si. 2003/2004 Pert. 4b Struktur Data - FMIPA USD - 2003 Hal. 1 Struktur Data PROBLEM ALGORITHM DATA IMPLEMENTATION

Lebih terperinci

KU-1072 PENGENALAN TEKNOLOGI INFORMASI B (PTI B)

KU-1072 PENGENALAN TEKNOLOGI INFORMASI B (PTI B) KU-1072 PENGENALAN TEKNOLOGI INFORMASI B (PTI B) 2008 MATERI I PENGENALAN BAHASA C++ Materi Praktikum Durasi TIU/TIK Referensi Pengenalan Bahasa C++ 180 menit 1. Pendahuluan 2. Instruksi Output Sederhana

Lebih terperinci

MODUL PRAKTIKUM STRUKTUR DATA. Dosen Pengampu M.Bahrul Ulum, S.Kom., M.Kom. Asisten Lab Mia Kastina PROGRAM STUDI TEKNIK INFORMATIKA

MODUL PRAKTIKUM STRUKTUR DATA. Dosen Pengampu M.Bahrul Ulum, S.Kom., M.Kom. Asisten Lab Mia Kastina PROGRAM STUDI TEKNIK INFORMATIKA 2018 MODUL PRAKTIKUM STRUKTUR DATA Dosen Pengampu M.Bahrul Ulum, S.Kom., M.Kom Asisten Lab Mia Kastina PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS ILMU KOMPUTER UNIVERSITAS ESA UNGGUL JAKARTA DAFTAR ISI

Lebih terperinci

PRAKTIKUM 2. perubah (variabel), konstanta, fungsi, atau obyek lain yang didefinisikan oleh

PRAKTIKUM 2. perubah (variabel), konstanta, fungsi, atau obyek lain yang didefinisikan oleh PRAKTIKUM 2 1. Variabel Pengenal (identifier) merupakan nama yang biasa digunakan untuk suatu perubah (variabel), konstanta, fungsi, atau obyek lain yang didefinisikan oleh pemrogram. Variabel adalah suatu

Lebih terperinci

PENGANTAR KOMPUTER & SOFTWARE II PERCABANGAN

PENGANTAR KOMPUTER & SOFTWARE II PERCABANGAN PENGANTAR KOMPUTER & SOFTWARE II PERCABANGAN Tim Pengajar KU1202 - Institut Teknologi Sumatera tujuan perkuliahan Mahasiswa memahami pengertian dan percabangan Mahasiswa dapat menggunakan notasi percabangan

Lebih terperinci

JURUSAN SISTEM INFORMASI SEKOLAH TINGGI ILMU KOMPUTER YOS SUDARSO PURWOKERTO 2014

JURUSAN SISTEM INFORMASI SEKOLAH TINGGI ILMU KOMPUTER YOS SUDARSO PURWOKERTO 2014 LAPORAN PRAKTIKUM RESMI ALGORITMA DAN STRUKTUR DATA II POHON (TREE) Disusun oleh : Unggul Budi Suryanto 201301011 Dosen pengampu : Yosef Murya Kusuma Ardhana.S.T., M.Kom JURUSAN SISTEM INFORMASI SEKOLAH

Lebih terperinci

Implementasi Struktur Data Stack (Tumpukan) dalam Tower of Hanoi Game

Implementasi Struktur Data Stack (Tumpukan) dalam Tower of Hanoi Game Implementasi Struktur Data Stack (Tumpukan) dalam Tower of Hanoi Game Oleh: Adnan w Anadrep Selamat datang di tutorial ini, kali ini saya akan memberikan tutorial tentang pengimplementasian struktur data

Lebih terperinci

KONSEP POINTER DAN LINKED LIST

KONSEP POINTER DAN LINKED LIST Pertemuan 4 KONSEP POINTER DAN LINKED LIST Untuk mengolah data yang banyaknya tidak bisa ditentukan sebelumnya, maka disediakan satu fasilitas yang memungkinan untuk menggunakan suatu perubah yang disebut

Lebih terperinci

KONSEP POINTER DAN LINKED LIST

KONSEP POINTER DAN LINKED LIST Pertemuan 4 KONSEP POINTER DAN LINKED LIST Untuk mengolah data yang banyaknya tidak bisa ditentukan sebelumnya, maka disediakan satu fasilitas yang memungkinan untuk menggunakan suatu perubah yang disebut

Lebih terperinci

TUTORIAL DASAR C++ BELAJAR C++ DARI NOL. Nor Kandir. Lab B201 - Teknik Elektro ITS Surabaya

TUTORIAL DASAR C++ BELAJAR C++ DARI NOL. Nor Kandir. Lab B201 - Teknik Elektro ITS Surabaya TUTORIAL DASAR C++ BELAJAR C++ DARI NOL Nor Kandir Lab B201 - Teknik Elektro ITS Surabaya Daftar Isi Daftar Isi... 1 Pendahuluan... 2 Kegunaan... 2 Persiapan... 3 Mulai Belajar... 3 Tipe Data... 6 Ekpresi

Lebih terperinci

1.4 Struktur Program Pada C++ Program C maupun C++ secara umum tersusun dari beberapa bagian utama, yaitu :

1.4 Struktur Program Pada C++ Program C maupun C++ secara umum tersusun dari beberapa bagian utama, yaitu : 1.2 Dasar Teori 1.2.1 Sejarah Bahasa C/C++ Bahasa C++ diciptakan oleh Bjarne Stroustrup di AT&T Bell Laboratories awal tahun 1980-an berdasarkan C ANSI (American National Standard Institute). Pertama kali

Lebih terperinci

STRUKTUR DASAR PEMROGRAMAN

STRUKTUR DASAR PEMROGRAMAN STRUKTUR DASAR PEMROGRAMAN P E N G E N A L A N P R O G R A M S T U D I Institut Teknologi Sumatera 15/09/2017 PENGANTAR PROGRAM STUDI 1 TUJUAN KULIAH Subtopik Input Proses Output dalam program Deklarasi

Lebih terperinci

KONSEP POINTER DAN LINKED LIST

KONSEP POINTER DAN LINKED LIST Pertemuan 4 KONSEP POINTER DAN LINKED LIST Untuk mengolah data yang banyaknya tidak bisa ditentukan sebelumnya, maka disediakan satu fasilitas yang memungkinan untuk menggunakan suatu perubah yang disebut

Lebih terperinci

PERCABANGAN P E N G E N A L A N P R O G R A M S T U D I T E K N I K I N F O R M AT I K A. Institut Teknologi Sumatera

PERCABANGAN P E N G E N A L A N P R O G R A M S T U D I T E K N I K I N F O R M AT I K A. Institut Teknologi Sumatera PERCABANGAN P E N G E N A L A N P R O G R A M S T U D I T E K N I K I N F O R M AT I K A Institut Teknologi Sumatera PRE TEST Apa itu tipe data? Apa itu variabel? Apa itu konstanta? Sebuah lingkaran memiliki

Lebih terperinci

PENGANTAR KOMPUTER & SOFTWARE II PERCABANGAN

PENGANTAR KOMPUTER & SOFTWARE II PERCABANGAN PENGANTAR KOMPUTER & SOFTWARE II PERCABANGAN Tim Pengajar KU1202 - Institut Teknologi Sumatera tujuan perkuliahan Mahasiswa memahami pengertian dan percabangan Mahasiswa dapat menggunakan notasi percabangan

Lebih terperinci

Perulangan, Percabangan, dan Studi Kasus

Perulangan, Percabangan, dan Studi Kasus Perulangan, Percabangan, dan Studi Kasus Perulangan dan percabangan merupakan hal yang sangat penting dalam menyusun suatu program Pada pertemuan kali ini akan dibahas secara detail tentang perulangan

Lebih terperinci

BAB VI. STATEMENT CONTROL

BAB VI. STATEMENT CONTROL BAB VI STATEMENT CONTROL A Statement IF Seperti halnya Pascal, perintah IF dalam C++ juga digunakan untuk menyatakan pernyataan kondisional (bersyarat) Sintaks sederhana IF adalah if (kondisi) statement;

Lebih terperinci