PRAKTIKUM ALGORITMA & PEMROGRAMAN III MODUL_06 Stack (Tumpukan)

dokumen-dokumen yang mirip
STRUKTUR DATA POKOK BAHASAN - 7 STACK ( TUMPUKAN )

STACK atau TUMPUKAN. Pertemuan 5 STACK (TUMPUKAN)

Modul Praktikum Algoritma dan Struktur Data

Algoritma Dan Struktur Data II

MODUL IV STACK A. TUJUAN

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

ALGORITMA DAN STRUKTUR DATA ARRAY STACK DAN QUEUE

STACK (Tumpukan) Tumpukan Koin. Tumpukan Kotak

BAB II STACK (TUMPUKAN)

S T A C K ( T U M P U K A N )

BAB 3 STACK (TUMPUKAN)

Materi 8 : STACK (TUMPUKAN) Dosen:

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

S TA C K Sunu Wibirama

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

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

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

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

Struktur Data Array. Rijal Fadilah S.Si

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

Algoritma dan Struktur Data. Ramos Somya

Algoritma Dan Struktur Data II. Queue

BAB II STACK Atau TUMPUKAN

STACK DAN QUEUE (Muhammad Fachrie, STMIK Amikom Yogyakarta)

Algoritma Pemrograman & Struktur Data

Pertemuan 7. REVIEW dan QUIS

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

MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA STACK

1. Kompetensi Mengenal dan memahami struktur data Stack (tumpukan) dan Queue (antrian).

TUGAS PENDAHULUAN MODUL 12 PENGENALAN DAN IMPLEMENTASI STRUKTUR DATA STACK

POINTER STACK DAN QUEUE. Institut Teknologi Sumatera

LAPORAN PRAKTIKUM RESMI QUEUE

STACK (TUMPUKAN) & QUEUE (ANTRIAN) Altien Jonathan Rindengan, S.Si., M.Kom.

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

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

4. STACK / TUMPUKAN TEORI PENUNJANG

Praktikum 4. Tumpukan (Stack)

STRUKTUR DATA Pertemuan 1 s.d 8

A. TUJUAN PEMBELAJARAN

STACK/TUMPUKAN. R. Denny Ari Wibowo, S.Kom STMIK BINA NUSANTARA JAYA LUBUKLINGGAU

SATUAN ACARA PERKULIAHAN (SAP) Mata Kuliah : Struktur Data Kode : TIS3213 Semester : III Waktu : 2 x 3 x 50 Menit Pertemuan : 4 & 5

STRUKTUR DATA POKOK BAHASAN - 8 QUEUE ( ANTRIAN)

ARNA FARIZA YULIANA SETIOWATI

STACK (TUMPUKAN) Secara sederhana, sebuah tumpukan bisa kita ilustrasikan seperti gambar berikut.

Pendahuluan Struktur Data. Nisa ul Hafidhoh

Stack. Pointer ke node pertama dari stack. Bagian deklarasi di atas kita asumsikan disimpan menjadi sebuah header file dengan nama stack.

Algoritma dan Struktur Data STACK

STACK ATAU TUMPUKAN 3.1 DAFTAR LINEAR

QUEUE (ANTREAN) Pertemuan 6 PENGERTIAN QUEUE (ANTREAN)

TIPE DATA ABSTRAK MENGGUNAKAN BAHASA C

Lab. Teknik Informatika Struktur Data 1

IF PEMROGRAMAN LANJUT TUGAS 1. Oleh : Andri Heryandi, M.T.

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

ARNA FARIZA YULIANA SETIOWATI

DIKTAT KULIAH ALGORITMA dan STRUKTUR DATA II. : Mahasiswa mampu menjelaskan teknik pemrograman menggunakan Queue.

Tipe data dasar merupakan tipe data yang disediakan oleh kompailer, sehingga dapat langsung dipakai Dalam algoritma dan pemrograman yang termasuk dala

KONSEP POINTER DAN LINKED LIST

*Sekumpulan elemen yang diatur secara terurut. *Linear List tidak sama dengan Connected-List

Kode MK/ Pemrograman Terstruktur 2. ZK Abdurahman Baizal. KK Algoritma dan Komputasi. Stack (Tumpukan)

Single Linked List (1)

QUEUE Antrian 1. DEFINISI

5. QUEUE (ANTRIAN) TUJUAN PRAKTIKUM

Algoritma Dan Struktur Data II

DIG1G3 Implementasi Struktur Data

BAB III. Stack. ( Tumpukan )

: Mahasiswa mampu menjelaskan teknik pemrograman menggunakan Linked List. Single Linked List

STACK Tumpukan TOP TOP BOTTOM BOTTOM

# NINE Queue dengan Array

1. Tipe Data Sederhana Hanya dimungkinkan untuk menyimpan sebuah nilai data dalam sebuah variabel Ada 5 macam : int, float, double, char, boolen

Silabus Struktur Data. Bandung 2013

Algoritma dan Struktur Data. Ramos Somya

ALGORITMA DAN STRUKTUR DATA

A. TUJUAN PEMBELAJARAN

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

MODUL III ARRAYLIST TUGAS PENDAHULUAN

Antrian (Queue) Susunan koleksi data dimana proses penambahan data (add) dilakukan dari belakang dan penghapusan data (delete) dilakukan dari depan.

MODUL PRAKTIKUM STRUKTUR DATA

Algoritma dan Struktur Data

LAPORAN PRAKTIKUM IV. Oleh :

LIST LINIER & STACK. Pertemuan 6 Yani sugiyani, M.Kom

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

BAB IX LINKED LIST (SENARAI BERANTAI)

STRUKTUR DATA. Pengajar. Jaidan Jauhari, M.T. Alamat

KONSEP POINTER DAN LINKED LIST

BAB III ANALISIS DAN PERANCANGAN APLIKASI 3.1 ANALISIS

TIF 4201 Algoritma Dan Struktur Data

TIPE, NAMA, DAN NILAI

PERTEMUAN V PEMROGRAMAN TERSTRUKTUR DENGAN VISUAL C Setiap bahasa C mempunyai satu fungsi dengan nama main (program utama).

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

Objek Data, Variabel, dan Konstanta. Konsep Bahasa Pemrograman Materi 4 Yudianto Sujana, M.Kom

BAB IX LINKED LIST (SENARAI BERANTAI)

Implementasi Queue menggunakan Array. Imam Fahrur Rozi

Pertemuan 10. Tumpukan (Stack) Dipersiapkan oleh : Boldson Herdianto. S., S.Kom., MMSI.

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

PERTEMUAN VI POINTER 6.1 Tujuan Praktikum 6.2 Teori Penunjang Pointer

SATUAN ACARA PENGAJARAN

2. Mahasiswa dapat membuat dan menggunakan array dan linked list dalam suatu kasus.

LAPORAN PRAKTIKUM IV. Oleh:

KONSEP POINTER DAN LINKED LIST

Transkripsi:

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). Jadi elemen yang dimasukan terakhir berada di atas (top). Stack dapat direpresentasikan dengan type data array, pointer (list), atau cursor. Operasi operasi yang terdapat pada Stack : 1. Create, membuat stack baru (dengan nilai 0) 2. IsEmpty, mengecek apakah stack kosong (null) 3. IsFull, mengecek apakah stack penuh(null) 4. Push, memasukan elemen pada stack 5. Pop, menghapus elemen pada stack 6. Dan lain lain silakan di eksplorasi. Jika stack direpresentasikan dengan array, maka elemen dari stack S[1..Top]. s merupakan elemen dasar dari stack dan S merupakan elemen puncak atau paling atas dari stack. jika nilai dari Top = 0 berarti stack kosong, sebaliknya jika Top = Max berarti stack penuh. Dimana Max merupakan jumlah elemen yang dapat ditampung dalam stack. Ilustrasi S............................ X S S S merupakan nama dari stack. S merupakan elemen stack puncak dan S merupakan elemen dasar dari stack. Sedangkan X merupakan nilai yang akan dimasukan kedalam elemen stack. ALGORITMA & PEMROGRAMAN III 1

B. Implementasi Bentuk implementasi pada array berarti elemen pertama disimpan pada indeks ke 1, berikutnya jika ada elemen kedua disimpan pada indeks ke 2 seterusnya sampai batas Max stack habis, berarti S = Max. Sebaliknya jika ada elemen yang akan dihapus penghapuasnnya dimulai dari elemen paling atas dan jika akan melakukan penghapusan lagi bergerak kebawah dari elemen stacknya. Deklarasi Stack di Pascal : CONST Max = 5; TYPE Stack = record isi : array[1..max] of integer; Top : integer Var S : Stack; Deklarasi Stack di C++ : #define MAX_STACK 10 typedef struct STACK{ int isi[max_stack]; int Top; ; STACK S; Tambahan Procedure dan Fungsi untuk stack : Procedure BuatStack(Var S : Stack); S.Top := 0; Function IsFull(S : Stack) : boolean; IsFull := (S.Top=Max); Function IsEmpty(S : Stack) : boolean; IsEmpty := (S.Top=0); ALGORITMA & PEMROGRAMAN III 2

1. Algoritma Push, merupakan pengisian elemen pada stack, misalkan kita akan mengisikan nilai dan 7 pada stack dengan Max = Top 5. Ilustrasi: Pada Pascal menjadi : Pada C++ menjadi : Push = 7 7 [2] Push = Procedure Push(Var S : Stack; X : integer); S.Top := S.Top + 1; S.isi[S.Top] := X; void Push(STACK S, int X){ S.Top++; S.isi[S.Top] = X; 2. Algoritma Pop, merupakan penghapusan elemen pada stack, misalkan kita akan mengeluarkan satu elemen dari stack. Ilustrasi: Menjadi Pop 7 Catatan : Untuk penyimpanan file file pekerjaan anda, samakan dengan ketentuan pada modul modul sebelumnya..! ALGORITMA & PEMROGRAMAN III 3

Pada Pascal menjadi : Procedure Pop(Var S : Stack); S.isi[S.Top] := 0; S.Top := S.Top - 1; Pada C++ menjadi : void Pop(STACK S){ S.isi[S.Top] = 0; S.Top--; Procedue untukmenampilkan data dari stack : Procedure Menampilkan Stack di C++ C. Latihan Procedure Tampil(S : Stack); Var i : integer;????? void Tampil(){ For(int i=s.top;i>=0;i--){ printf( Data : %d\n,s.isi[i]); 1. Pada procedure diatas buat ke dalam satu program. 2. Modifikasi program yang telah dibuat pada latihan 1 agar dapat menerima inputar berupa karakter / string. 3. Buat procedure untuk dapat mencari nilai rata rata dari jumlah elemen pada stack (type elemen pada stack berupa integer). Gunakan sisa waktu untuk bertanya kepada Asisten. jika masih tidak mengerti mengenai Algoritma Stack ALGORITMA & PEMROGRAMAN III 4

D. Soal Soal 1. Buat sebuah program yang dapat melakukan push, pop, dan menampilkan datanya pada bahasa C++ (Lihat procedure procedure diatas). inputan data berupa integer 2. Buat program stack dengan pascal menggunakan type data pointer(list). program dapat melakukan push, pop, dan menampilkn datanya. 3. Buat Program Untuk dapat mengecek apakah kata yang dimasukan termasuk POLINDROM atau bukan 4. Buat program pada pascal yang dapat menampung data data keluarga (field data keluarga bebas minimal 2 field), Max data yang dapat ditampung 10. Ilustrasi [Field_nama] [Field_umur] [Field_nama] [Field_umur] Deklarasi TYPE Keluarga = record Nama : String; Umur : integer; Stack = record isi : array[1..max] of Keluarga; Top : integer Soal diatas 1 4 kerjakan dirumah kemudian kirimkan melalui E mail. ketentuannya samakan dengan pengiriman E Mail sebelumnya. Paling lambat 5 hari setelah praktikum hari ini pukul 12:00. Diam bukan berarti tidak mengetahui apa apa ALGORITMA & PEMROGRAMAN III 5