Selamat Datang di Blog Wijaya Kusumah

Untuk Pelayanan Informasi yang Lebih Baik, maka Isi Blog Wijaya Kusumah juga tersedia di blog baru di http://wijayalabs.com

Kamis, 05 November 2026

Pertemuan Omjay Dengan Pak Dedi Dwitagama

### Dari Pertemuan dengan Pak Dedi Dwitagama, Saya Belajar Menulis dan Mengenal Dunia Blog

Kisah perjalanan Omjay Guru Blogger Indonesia dalam menemukan jalan panjang menuju dunia literasi digital.

Ada pertemuan yang awalnya terasa biasa saja, tetapi ternyata menjadi pintu pembuka perjalanan panjang dalam kehidupan. Ada pula seseorang yang kehadirannya mungkin tidak pernah kita duga, tetapi ilmunya terus melekat hingga bertahun-tahun kemudian.

Begitulah kisah perjalanan saya, Wijaya Kusumah, yang lebih dikenal dengan panggilan Omjay, ketika pertama kali mengenal dunia blog.

Semua bermula ketika saya menempuh pendidikan S2 di Pascasarjana Universitas Negeri Jakarta (UNJ).

Saat itu, saya masih seorang guru yang sedang berusaha meningkatkan kompetensi dan memperluas wawasan. Saya memiliki semangat belajar yang tinggi, tetapi belum mengetahui bahwa suatu hari nanti kegiatan menulis di internet akan menjadi bagian penting dalam kehidupan saya.

Di lingkungan Pascasarjana UNJ itulah saya dipertemukan dengan seorang sosok yang menginspirasi, yaitu Pak Dedi Dwitagama.

Beliau bukan sekadar seorang pendidik. Beliau juga dikenal sebagai praktisi pendidikan, pembicara, fotografer, dan blogger yang aktif berbagi pengalaman melalui dunia digital.

Dari perkenalan tersebut, saya mulai mengenal sesuatu yang saat itu belum terlalu akrab bagi sebagian guru, yaitu blog.

### Pertemuan yang Mengubah Jalan Hidup

Saya masih ingat bagaimana awalnya saya tertarik mempelajari blog. Melihat orang lain bisa menuliskan pengalaman, gagasan, dan pemikirannya di internet membuat saya penasaran.

Saya kemudian belajar membuat blog.

Pak Dedi Dwitagama menjadi salah satu sosok yang memperkenalkan dan menginspirasi saya untuk memanfaatkan blog sebagai media berbagi ilmu pengetahuan.

Saya mulai mengenal bagaimana membuat tulisan, menerbitkannya di internet, dan membagikan pengalaman kepada orang lain.

Dari proses belajar itulah saya kemudian memiliki blog:

\*\*https://wijayalabs.blogspot.com\*\*

Mungkin bagi sebagian orang, membuat blog hanyalah kegiatan sederhana. Tinggal membuat akun, menulis beberapa kalimat, lalu menekan tombol publikasi.

Namun, bagi saya, blog adalah sebuah pintu menuju dunia yang sangat luas.

Saya mulai memahami bahwa seorang guru tidak harus menunggu menjadi penulis terkenal untuk berbagi ilmu. Seorang guru bisa memulai dari pengalaman sehari-hari di kelas, cerita tentang murid, pengalaman mengikuti pelatihan, hingga refleksi sederhana tentang kehidupan.

Saya belajar bahwa tulisan yang baik tidak selalu harus menggunakan bahasa yang rumit. Tulisan yang baik adalah tulisan yang mampu menyampaikan pesan dan memberikan manfaat bagi pembacanya.

### Dari Blog Sederhana Menjadi Guru Blogger Indonesia

Perjalanan saya tidak langsung berjalan mulus.

Ada kalanya saya bingung mencari ide. Ada saatnya saya merasa tulisan saya tidak menarik. Bahkan, terkadang saya sudah menulis panjang lebar, tetapi tidak banyak orang yang membacanya.

Namun, saya tidak ingin berhenti.

Saya terus belajar, membaca tulisan orang lain, mengikuti perkembangan teknologi, dan mencoba menulis setiap hari.

Sejak tahun 2007, blog menjadi salah satu teman perjalanan saya dalam dunia pendidikan dan literasi.

Saya semakin yakin bahwa guru perlu memiliki ruang untuk menyampaikan gagasan. Jangan sampai pengalaman mengajar selama puluhan tahun hanya tersimpan dalam ingatan, lalu hilang begitu saja ketika kita memasuki masa pensiun.

Melalui blog, pengalaman itu bisa diabadikan.

Seorang guru bisa menulis tentang murid yang menginspirasinya, rekan kerja yang memberikan teladan, kepala sekolah yang bijaksana, hingga pengalaman menghadapi berbagai tantangan pendidikan.

Tulisan-tulisan sederhana itu kelak bisa menjadi sumber inspirasi bagi guru lainnya.

Dari perjalanan panjang itulah saya semakin dikenal sebagai Omjay, Guru Blogger Indonesia.

Saya juga berkesempatan berbagi pengalaman dalam berbagai seminar, pelatihan, workshop, dan komunitas belajar guru.

Saya kemudian ikut mengembangkan Komunitas Belajar Menulis Nusantara (KBMN PGRI) dan Komunitas Guru Informatika dan Koding (KOGTIK).

Semua itu berawal dari kemauan untuk belajar.

### Menjadi Guru yang Suka Menulis, Bagaimana Caranya?

Pertanyaan ini menjadi tema materi KBMN PGRI Gelombang 35 hari kelima.

Menurut saya, menjadi guru yang suka menulis tidak harus dimulai dengan membeli buku mahal atau mengikuti pelatihan yang rumit.

Mulailah dari hal-hal sederhana.

Pertama, biasakan mengamati kehidupan di sekitar kita. Setiap hari guru memiliki banyak pengalaman yang bisa dijadikan bahan tulisan.

Kedua, catat pengalaman tersebut. Jangan menunggu sampai lupa. Tuliskan ide yang muncul, meskipun hanya beberapa kalimat.

Ketiga, luangkan waktu untuk membaca. Penulis yang baik biasanya juga merupakan pembaca yang baik.

Keempat, jangan takut tulisan kita dikritik. Kritik adalah bagian dari proses belajar. Jangan mudah tersinggung ketika ada orang yang memberikan masukan.

Kelima, manfaatkan teknologi secara bijaksana. Kita boleh menggunakan blog, media sosial, bahkan kecerdasan artifisial untuk membantu proses menulis. Namun, pengalaman, pemikiran, dan suara hati kita tetap harus menjadi ruh tulisan.

Keenam, bergabunglah dengan komunitas menulis. Di sana kita bisa saling menyemangati, belajar dari pengalaman orang lain, dan menemukan sahabat baru.

Yang tidak kalah penting, jangan hanya menulis ketika ada tugas atau lomba. Menulislah karena kita memiliki sesuatu yang ingin dibagikan kepada orang lain.

### Jangan Lupakan Orang yang Pernah Membukakan Jalan

Dalam perjalanan hidup, kita sering bertemu dengan orang-orang hebat.

Ada yang mengajarkan ilmu pengetahuan di ruang kelas. Ada yang memberikan nasihat ketika kita sedang menghadapi kesulitan. Ada pula yang memperkenalkan sesuatu yang akhirnya mengubah arah kehidupan kita.

Bagi saya, pertemuan dengan Pak Dedi Dwitagama di Pascasarjana UNJ merupakan salah satu peristiwa yang patut disyukuri.

Saya tidak ingin melupakan bagaimana awal mula mengenal blog dan belajar memanfaatkannya sebagai media berbagi.

Saya percaya bahwa ilmu yang bermanfaat tidak akan pernah habis ketika dibagikan.

Justru semakin banyak kita berbagi, semakin banyak pula kesempatan untuk belajar dari orang lain.

Hari ini, ketika saya mengajak guru-guru mengikuti KBMN PGRI Gelombang 35, saya seperti sedang meneruskan kebaikan yang dahulu pernah saya terima.

Dahulu saya belajar membuat blog dari orang lain. Sekarang saya ingin mengajak semakin banyak guru untuk berani menulis dan menerbitkan karya mereka sendiri.

Saya ingin guru tidak hanya menjadi pembaca, tetapi juga menjadi penulis.

Saya ingin pengalaman guru di seluruh Indonesia terdokumentasikan dengan baik. Sebab setiap guru memiliki cerita yang berharga dan setiap cerita memiliki pelajaran kehidupan.

### Menulislah dengan Hati, Menginspirasi Tanpa Henti

Bapak dan Ibu guru yang saya banggakan,

Jangan pernah merasa terlambat untuk mulai menulis.

Tidak ada batas usia untuk belajar. Tidak ada kata terlambat untuk berkarya. Selama kita masih memiliki kesempatan, selama itu pula kita bisa menghasilkan tulisan yang bermanfaat.

Mungkin hari ini tulisan kita hanya dibaca oleh lima orang. Besok bisa dibaca lima puluh orang. Lusa mungkin dibaca ribuan orang.

Namun, jangan jadikan jumlah pembaca sebagai satu-satunya ukuran keberhasilan.

Bisa jadi satu tulisan sederhana mampu mengubah cara pandang seseorang. Bisa jadi pengalaman kita memberikan kekuatan kepada guru lain yang sedang menghadapi kesulitan.

Itulah keindahan berbagi melalui tulisan.

Saya selalu percaya bahwa guru yang hebat bukan hanya guru yang pandai mengajar, tetapi juga guru yang mau terus belajar dan berbagi.

Terima kasih, Pak Dedi Dwitagama, atas inspirasi dan pengalaman belajar yang menjadi salah satu bagian penting dalam perjalanan saya mengenal dunia blog.

Semoga kebaikan yang pernah saya terima dapat terus saya teruskan kepada guru-guru lainnya.

Dari sebuah pertemuan di Pascasarjana UNJ, lahirlah perjalanan panjang seorang guru yang jatuh cinta pada dunia menulis.

Mari kita terus menulis. Jangan biarkan pengalaman berharga kita hilang ditelan waktu.

Menulislah dengan hati, bagikan ilmu dengan ikhlas, dan jadilah guru yang menginspirasi sepanjang hayat.

Salam blogger persahabatan.

Omjay

Guru Blogger Indonesia Sekjen IGTIK PGRI Founder KBMN PGRI

Blog: [https://wijayalabs.blogspot.com](https://wijayalabs.blogspot.com?utm_source=chatgpt.com)

Catatan untuk peserta KBMN PGRI Gelombang 35:

Cobalah menuliskan kisah tentang seseorang yang pernah mengubah perjalanan hidup Bapak dan Ibu. Siapa orangnya? Apa yang diajarkannya? Mengapa pertemuan itu begitu berkesan?

Jangan hanya menceritakan siapa orang tersebut. Ceritakan pula bagaimana kehadirannya membuat kita menjadi pribadi yang lebih baik.

Sebab, tulisan yang lahir dari pengalaman dan ketulusan hati sering kali lebih lama tinggal di hati pembaca.

Soal Soal Kelas 8 smp materi memahami struktur data bertumpuk

Berikut saya susun paket evaluasi pembelajaran Informatika berdasarkan tema “Memahami Struktur Data Bertumpuk” untuk siswa SMP.

Soal terdiri atas:

* 50 soal pilihan ganda (A, B, C, D).

* 10 soal esai.

* Kunci jawaban pilihan ganda dan esai dipisahkan di bagian paling bawah agar mudah digunakan sebagai lembar ujian siswa.

### SOAL EVALUASI INFORMATIKA KELAS VIII

### Materi: Memahami Struktur Data Bertumpuk (STACK)

Nama: ....................................................

Kelas: ....................................................

Hari/Tanggal: ..........................................

Petunjuk pengerjaan:

* Bacalah setiap soal dengan teliti.

* Pilihlah satu jawaban yang paling tepat untuk soal pilihan ganda.

* Jawablah soal esai dengan jelas dan menggunakan bahasa sendiri.

* Kerjakan secara mandiri.

### A. Pilihan Ganda (50 Soal)

Pilihlah jawaban A, B, C, atau D yang paling tepat!

### Bagian 1 – Pemahaman Konsep Dasar

1. Apa yang dimaksud dengan struktur data dalam Informatika?

A. Cara mempercepat koneksi internet.

B. Cara menyimpan dan mengatur data agar mudah digunakan.

C. Alat untuk memperbaiki komputer.

D. Program untuk menggambar.

2. Struktur data stack memiliki bentuk seperti ....

A. Antrean kendaraan.

B. Tumpukan buku.

C. Jaringan komputer.

D. Tabel angka.

3. Prinsip utama yang digunakan dalam stack adalah ....

A. FIFO.

B. LIFO.

C. Random Access.

D. First Come, First Served.

4. Kepanjangan LIFO adalah ....

A. Last In, First Out.

B. Last In, Final Output.

C. List In, First Output.

D. Last Input, Final Order.

5. Arti prinsip Last In, First Out adalah ....

A. Data pertama masuk akan keluar pertama.

B. Data terakhir masuk akan keluar pertama.

C. Semua data keluar bersamaan.

D. Data keluar berdasarkan urutan abjad.

6. Bagian paling atas dari sebuah stack disebut ....

A. Bottom.

B. Front.

C. Top.

D. Rear.

7. Bagian paling bawah dalam stack disebut ....

A. Top.

B. Bottom.

C. Front.

D. Rear.

8. Jika data A, B, C, dan D dimasukkan secara berurutan ke dalam stack, data yang berada paling atas adalah ....

A. A.

B. B.

C. C.

D. D.

9. Jika data A, B, C, dan D dikeluarkan dari stack, urutannya adalah ....

A. A, B, C, D.

B. B, C, D, A.

C. D, C, B, A.

D. C, B, A, D.

10. Mengapa stack disebut struktur data bertumpuk?

A. Karena data disimpan secara acak.

B. Karena data disimpan seperti susunan benda yang bertumpuk.

C. Karena data hanya berbentuk angka.

D. Karena data selalu disimpan di internet.

### Bagian 2 – Operasi Dasar Stack

11. Operasi untuk menambahkan data ke dalam stack disebut ....

A. Pop.

B. Push.

C. Peek.

D. Dequeue.

12. Operasi untuk mengambil sekaligus menghapus data paling atas disebut ....

A. Push.

B. Peek.

C. Pop.

D. Enqueue.

13. Operasi yang digunakan untuk melihat data paling atas tanpa menghapusnya adalah ....

A. Push.

B. Pop.

C. Peek.

D. Delete.

14. Fungsi isEmpty digunakan untuk ....

A. Memeriksa apakah stack kosong.

B. Menambahkan data baru.

C. Menghapus semua data.

D. Mengubah data menjadi angka.

15. Fungsi isFull digunakan untuk ....

A. Memeriksa apakah stack sudah penuh.

B. Memeriksa apakah komputer menyala.

C. Menghapus data terakhir.

D. Melihat data paling bawah.

16. Stack berisi data 10 dan 20. Jika dilakukan push(30), isi stack dari bawah ke atas menjadi ....

A. 30, 10, 20.

B. 20, 10, 30.

C. 10, 20, 30.

D. 30, 20, 10.

17. Stack berisi angka 5, 10, dan 15. Jika dilakukan pop(), angka yang keluar adalah ....

A. 5.

B. 10.

C. 15.

D. Semua angka.

18. Stack berisi angka 4, 8, dan 12. Jika dilakukan peek(), hasilnya adalah ....

A. 4.

B. 8.

C. 12.

D. 24.

19. Perbedaan antara pop dan peek adalah ....

A. Pop menambahkan data, peek menghapus data.

B. Pop mengambil dan menghapus data, peek hanya melihat data.

C. Keduanya menambahkan data.

D. Keduanya menghapus seluruh data.

20. Jika stack tidak memiliki elemen, hasil pemeriksaan isEmpty adalah ....

A. True.

B. False.

C. 1.

D. 100.

### Bagian 3 – Penerapan Stack dalam Kehidupan

21. Contoh penerapan stack dalam kehidupan sehari-hari adalah ....

A. Antrean pembelian tiket.

B. Antrean kasir.

C. Tumpukan piring.

D. Antrean kendaraan.

22. Ketika seseorang meletakkan buku di atas tumpukan buku, kegiatan tersebut menyerupai operasi ....

A. Pop.

B. Push.

C. Peek.

D. Dequeue.

23. Ketika mengambil buku yang berada paling atas, kegiatan tersebut menyerupai operasi ....

A. Push.

B. Pop.

C. Enqueue.

D. isFull.

24. Fitur Undo pada aplikasi pengolah kata memiliki konsep yang berkaitan dengan ....

A. FIFO.

B. LIFO.

C. Random.

D. Sorting.

25. Ketika pengguna menekan Ctrl+Z, perubahan yang paling terakhir dilakukan biasanya akan ....

A. Disimpan permanen.

B. Dibatalkan terlebih dahulu.

C. Digandakan.

D. Dicetak.

26. Tombol Back pada browser memiliki penerapan konsep yang berkaitan dengan ....

A. Stack.

B. Printer.

C. Monitor.

D. Keyboard.

27. Dalam pemrograman, call stack digunakan untuk ....

A. Mengatur pemanggilan dan penyelesaian fungsi.

B. Mengatur warna layar.

C. Menghapus sistem operasi.

D. Mempercepat jaringan internet.

28. Mengapa stack cocok digunakan untuk fitur Undo?

A. Karena data pertama selalu dihapus.

B. Karena tindakan terakhir dapat dibatalkan terlebih dahulu.

C. Karena semua data dihapus bersamaan.

D. Karena data diurutkan berdasarkan abjad.

29. Kegiatan menyusun piring kotor secara bertumpuk merupakan contoh sederhana dari ....

A. Queue.

B. Stack.

C. Tree.

D. Graph.

30. Manakah kegiatan yang lebih tepat menggunakan konsep queue daripada stack?

A. Mengambil buku paling atas.

B. Membatalkan perubahan terakhir.

C. Antrean siswa membeli makanan di kantin.

D. Mengambil piring paling atas.

### Bagian 4 – Stack dalam Python

31. Dalam bahasa pemrograman Python, stack sederhana dapat dibuat menggunakan ....

A. List.

B. Monitor.

C. Mouse.

D. Printer.

32. Perintah append() dalam Python digunakan untuk ....

A. Menghapus data terakhir.

B. Menambahkan elemen ke dalam list.

C. Melihat kapasitas RAM.

D. Menghapus seluruh program.

33. Perintah pop() dalam Python digunakan untuk ....

A. Menambahkan data.

B. Menghapus dan mengambil elemen terakhir list.

C. Menghitung jumlah huruf.

D. Menampilkan semua data tanpa perubahan.

34. Perhatikan kode berikut:

```python
stack = []
stack.append("A")
stack.append("B")
stack.append("C")
print(stack)
```

Hasil yang ditampilkan adalah ....

A. \['C', 'B', 'A'\]

B. \['A', 'B', 'C'\]

C. \['A', 'C', 'B'\]

D. \[\]

35. Perhatikan kode berikut:

```python
stack = ["A", "B", "C"]
print(stack[-1])
```

Hasilnya adalah ....

A. A.

B. B.

C. C.

D. -1.

36. Perhatikan kode berikut:

```python
stack = [10, 20, 30]
stack.pop()
print(stack)
```

Hasilnya adalah ....

A. \[10, 20\].

B. \[20, 30\].

C. \[10, 30\].

D. \[30\].

37. Perintah berikut digunakan untuk memeriksa jumlah elemen dalam list:

```python
len(stack)
```

Fungsi perintah tersebut adalah ....

A. Menghapus elemen.

B. Menghitung jumlah elemen.

C. Menambahkan elemen.

D. Mengurutkan elemen.

38. Perhatikan kode berikut:

```python
stack = []
print(len(stack) == 0)
```

Hasilnya adalah ....

A. True.

B. False.

C. 0.

D. Error.

39. Apa yang terjadi jika pop() dijalankan pada list kosong?

A. Elemen baru otomatis ditambahkan.

B. Muncul kesalahan IndexError.

C. Program selalu berhasil.

D. List berubah menjadi penuh.

40. Mengapa sebelum melakukan pop() sebaiknya kita memeriksa apakah stack kosong?

A. Agar tidak terjadi kesalahan saat mengambil data.

B. Agar data berubah menjadi huruf.

C. Agar kapasitas komputer bertambah.

D. Agar semua data menjadi sama.

### Bagian 5 – Analisis dan Pemecahan Masalah

41. Stack overflow terjadi ketika ....

A. Mengambil data dari stack kosong.

B. Menambahkan data pada stack yang sudah penuh.

C. Melihat data paling atas.

D. Menghapus data yang tersedia.

42. Stack underflow terjadi ketika ....

A. Menambahkan data ke stack kosong.

B. Menambahkan data ke stack penuh.

C. Mengambil data dari stack kosong.

D. Menyimpan data baru.

43. Sebuah stack berisi 2, 4, dan 6. Kemudian dilakukan push(8), pop(), dan peek(). Hasil peek adalah ....

A. 2.

B. 4.

C. 6.

D. 8.

44. Sebuah stack kosong menerima operasi berikut:

* Push(1)

* Push(2)

* Push(3)

* Pop()

Data yang tersisa dari bawah ke atas adalah ....

A. 1, 2.

B. 2, 3.

C. 3, 2.

D. 1, 2, 3.

45. Jika angka 1, 2, dan 3 dimasukkan ke dalam stack secara berurutan, angka yang keluar pertama adalah ....

A. 1.

B. 2.

C. 3.

D. Tidak ada.

46. Stack dapat digunakan untuk membalik sebuah kata karena ....

A. Stack menyusun huruf berdasarkan abjad.

B. Stack menggunakan prinsip LIFO.

C. Stack menghapus huruf vokal.

D. Stack hanya menyimpan huruf terakhir.

47. Jika kata KOMPUTER dimasukkan huruf demi huruf ke dalam stack dan seluruhnya dikeluarkan menggunakan pop(), hasilnya adalah ....

A. KOMPUTER.

B. KOMPUTRE.

C. RETUPMOK.

D. KOMPUTERK.

48. Perbedaan utama stack dan queue adalah ....

A. Stack menggunakan LIFO, sedangkan queue menggunakan FIFO.

B. Stack dan queue sama-sama menggunakan FIFO.

C. Stack tidak dapat menyimpan data.

D. Queue hanya dapat menyimpan angka.

49. Seorang programmer ingin menyimpan riwayat aktivitas agar aktivitas terakhir dapat dibatalkan lebih dahulu. Struktur data yang paling sesuai adalah ....

A. Queue.

B. Stack.

C. Graph.

D. Tree.

50. Kesimpulan yang paling tepat mengenai struktur data stack adalah ....

A. Data pertama masuk harus keluar pertama.

B. Data dapat diambil dari semua posisi.

C. Data terakhir masuk akan keluar pertama.

D. Stack hanya dapat digunakan untuk menyimpan angka.

### B. Soal Esai (10 Soal)

Jawablah pertanyaan berikut dengan benar, jelas, dan lengkap!

1. Jelaskan pengertian struktur data stack dan prinsip kerja LIFO. Berikan satu contoh penerapannya dalam kehidupan sehari-hari.

2. Jelaskan perbedaan antara operasi push, pop, dan peek pada struktur data stack!

3. Sebuah stack kosong menerima operasi berikut:

* Push(A)

* Push(B)

* Push(C)

* Pop()

* Push(D)

* Pop()

Tentukan: a. Data yang keluar pada operasi pop pertama.

b. Data yang keluar pada operasi pop kedua.

c. Isi stack terakhir dari bawah ke atas.

4. Jelaskan perbedaan antara stack dan queue berdasarkan prinsip kerja, proses memasukkan data, dan proses mengeluarkan data!

5. Sebutkan dan jelaskan lima contoh penerapan struktur data stack dalam kehidupan sehari-hari atau penggunaan komputer!

6. Perhatikan kode Python berikut:

```python
stack = []

stack.append(10)
stack.append(20)
stack.append(30)

stack.pop()

print(stack)
```

Jawablah: a. Apa fungsi append()?

b. Apa fungsi pop()?

c. Apa hasil yang ditampilkan?

7. Jelaskan pengertian stack overflow dan stack underflow. Berikan masing-masing satu contoh!

8. Bagaimana cara menggunakan struktur data stack untuk membalik kata INFORMATIKA menjadi AKITAMROFNI? Jelaskan langkah-langkahnya!

9. Mengapa fitur Undo pada Microsoft Word atau aplikasi lainnya dapat dikaitkan dengan konsep stack? Jelaskan menggunakan prinsip LIFO!

10. Buatlah contoh program Python sederhana yang menerapkan stack menggunakan list. Program harus dapat melakukan operasi push untuk memasukkan tiga data dan pop untuk mengeluarkan satu data. Jelaskan hasil program tersebut!

### C. Kunci Jawaban Pilihan Ganda

Khusus untuk guru

| No. | Jawaban | No. | Jawaban |
| --- | ------- | --- | ------- |
| 1   | B       | 26  | A       |
| 2   | B       | 27  | A       |
| 3   | B       | 28  | B       |
| 4   | A       | 29  | B       |
| 5   | B       | 30  | C       |
| 6   | C       | 31  | A       |
| 7   | B       | 32  | B       |
| 8   | D       | 33  | B       |
| 9   | C       | 34  | B       |
| 10  | B       | 35  | C       |
| 11  | B       | 36  | A       |
| 12  | C       | 37  | B       |
| 13  | C       | 38  | A       |
| 14  | A       | 39  | B       |
| 15  | A       | 40  | A       |
| 16  | C       | 41  | B       |
| 17  | C       | 42  | C       |
| 18  | C       | 43  | C       |
| 19  | B       | 44  | A       |
| 20  | A       | 45  | C       |
| 21  | C       | 46  | B       |
| 22  | B       | 47  | C       |
| 23  | B       | 48  | A       |
| 24  | B       | 49  | B       |
| 25  | B       | 50  | C       |

### D. Pedoman Jawaban Esai

1\. Pengertian stack dan LIFO

Stack adalah struktur data yang menyimpan data secara bertumpuk. Stack menggunakan prinsip LIFO (Last In, First Out), yaitu data terakhir yang masuk akan menjadi data pertama yang keluar.

Contoh: tumpukan piring. Piring yang terakhir diletakkan di atas akan diambil terlebih dahulu.

2\. Perbedaan push, pop, dan peek

* Push: menambahkan data ke bagian atas stack.

* Pop: mengambil sekaligus menghapus data paling atas.

* Peek: melihat data paling atas tanpa menghapusnya.

3\. Penelusuran operasi stack

Urutan operasi:

| Operasi | Isi stack (bottom ke top) |
| ------- | ------------------------- |
| Push(A) | A                         |
| Push(B) | A, B                      |
| Push(C) | A, B, C                   |
| Pop()   | A, B                      |
| Push(D) | A, B, D                   |
| Pop()   | A, B                      |

Jawaban:

* a. Pop pertama mengeluarkan C.

* b. Pop kedua mengeluarkan D.

* c. Isi akhir stack adalah A, B.

4\. Perbedaan stack dan queue

| Stack                   | Queue                     |
| ----------------------- | ------------------------- |
| Menggunakan LIFO        | Menggunakan FIFO          |
| Data masuk melalui top  | Data masuk melalui rear   |
| Data keluar melalui top | Data keluar melalui front |
| Contoh tumpukan buku    | Contoh antrean kasir      |

5\. Lima contoh penerapan stack

* Tumpukan buku atau piring.

* Fitur Undo pada aplikasi.

* Fitur Redo pada aplikasi.

* Riwayat halaman pada browser.

* Call stack dalam pemrograman komputer.

6\. Analisis program Python

a. append() digunakan untuk menambahkan data ke dalam list.

b. pop() digunakan untuk mengambil dan menghapus data terakhir.

c. Hasil program:

```python
[10, 20]
```

Angka 30 dihapus karena merupakan data terakhir yang dimasukkan.

7\. Stack overflow dan underflow

* Stack overflow adalah kondisi ketika data ditambahkan ke stack yang sudah penuh.

* Stack underflow adalah kondisi ketika data diambil dari stack yang kosong.

8\. Membalik kata INFORMATIKA

Langkah-langkah:

* Masukkan huruf I, N, F, O, R, M, A, T, I, K, A secara berurutan menggunakan push.

* Huruf A yang terakhir masuk berada di posisi paling atas.

* Keluarkan seluruh huruf menggunakan pop.

* Gabungkan huruf yang keluar.

Hasilnya adalah AKITAMROFNI.

9\. Penerapan stack pada fitur Undo

Fitur Undo menggunakan konsep LIFO karena tindakan yang terakhir dilakukan akan dibatalkan terlebih dahulu.

Misalnya, pengguna mengetik kata, mengubah warna tulisan, kemudian memperbesar ukuran huruf. Ketika tombol Undo ditekan, perubahan ukuran huruf dibatalkan terlebih dahulu, kemudian perubahan sebelumnya.

10\. Contoh program Python

```python
stack = []

# Memasukkan tiga data
stack.append("Buku")
stack.append("Pensil")
stack.append("Penghapus")

print("Isi stack:", stack)

# Mengeluarkan satu data
data = stack.pop()

print("Data yang keluar:", data)
print("Isi stack sekarang:", stack)
```

Hasil program:

```text
Isi stack: ['Buku', 'Pensil', 'Penghapus']
Data yang keluar: Penghapus
Isi stack sekarang: ['Buku', 'Pensil']
```

Penjelasan: Penghapus keluar terlebih dahulu karena merupakan data terakhir yang dimasukkan. Hal ini sesuai dengan prinsip LIFO.

### E. Pedoman Penilaian

| Jenis soal    | Jumlah | Skor per soal | Total |
| ------------- | ------ | ------------- | ----- |
| Pilihan ganda | 50     | 1             | 50    |
| Esai          | 10     | 5             | 50    |
| Total         | 60     |               | 100   |

Kriteria penilaian esai:

* Skor 5: Jawaban benar, lengkap, dan disertai penjelasan.

* Skor 4: Jawaban benar dan cukup lengkap.

* Skor 3: Jawaban benar tetapi kurang lengkap.

* Skor 2: Jawaban sebagian benar.

* Skor 1: Jawaban kurang tepat.

* Skor 0: Tidak menjawab.

Sumber materi: Artikel [Memahami Struktur Data Bertumpuk – Blog Wijayalabs](https://wijayalabs.blogspot.com/2026/11/memahami-struktur-data-bertumpuk.html?utm_source=chatgpt.com).

Soal ini dapat digunakan sebagai bahan evaluasi pembelajaran Informatika kelas VIII SMP Labschool Jakarta, khususnya materi struktur data Stack.

Pesan Omjay untuk murid-murid:

Belajar Informatika bukan sekadar menghafal istilah dan menulis kode program. Kita harus memahami cara berpikir logis, menyelesaikan masalah, dan menerapkannya dalam kehidupan sehari-hari. Teruslah belajar, berlatih, dan jangan takut mencoba!

Salam Blogger Persahabatan.

Dibalik Suami yang Sukses Ada ISTRI YANG Menguatkan

### Di Balik Suami yang Sukses, Ada Istri Hebat yang Selalu Menguatkan

Sebuah renungan tentang cinta, kesetiaan, doa, dan pengorbanan seorang istri.

Ada sebuah ungkapan yang mengatakan, di balik kesuksesan seorang suami, sering kali ada seorang istri hebat yang setia mendampingi perjalanan hidupnya. Ungkapan ini bukan sekadar rangkaian kata indah. Di dalamnya tersimpan kisah panjang tentang kesabaran, pengorbanan, doa, dan cinta yang terkadang tidak terlihat oleh banyak orang.

Ketika seorang suami berhasil meraih cita-citanya, orang-orang mungkin akan memberikan pujian. Namanya disebut, prestasinya dibicarakan, dan keberhasilannya menjadi inspirasi bagi banyak orang. Namun, tidak semua orang mengetahui siapa yang berada di belakang perjalanan panjang tersebut.

Ada seorang perempuan yang mungkin tidak pernah berdiri di atas panggung penghargaan, tetapi selalu hadir ketika suaminya membutuhkan dukungan. Dialah seorang istri.

Istri bukan sekadar pendamping, tetapi teman seperjalanan dalam kehidupan.

Ketika suami berangkat bekerja pada pagi hari, istri mungkin sudah lebih dahulu bangun untuk menyiapkan berbagai kebutuhan keluarga. Ketika suami pulang dengan wajah lelah, istri berusaha menyambutnya dengan senyuman. Bahkan, ketika suami menghadapi persoalan pekerjaan, istri sering menjadi tempat pertama untuk mencurahkan isi hati.

Tidak semua kesedihan suami dapat diceritakan kepada orang lain. Tidak semua kegagalan mudah diungkapkan kepada sahabat. Namun, di hadapan istri, seorang suami seharusnya bisa belajar menjadi dirinya sendiri.

Di sanalah keindahan sebuah rumah tangga.

Doa seorang istri adalah kekuatan yang tidak selalu terlihat.

Dalam gambar yang kita lihat, ada sepasang suami istri sedang membaca Al-Qur'an bersama. Pemandangan sederhana itu mengandung pesan yang sangat dalam. Kesuksesan dalam kehidupan bukan hanya tentang banyaknya harta, tingginya jabatan, atau besarnya penghargaan. Kesuksesan juga tentang bagaimana suami dan istri saling mengajak menuju kebaikan.

Ada doa yang dipanjatkan dalam diam. Ada air mata yang jatuh ketika malam semakin sunyi. Ada harapan yang disampaikan kepada Allah SWT agar suami selalu diberikan kesehatan, keselamatan, kelancaran rezeki, dan kekuatan dalam menjalani kehidupan.

Mungkin suami tidak mengetahui berapa banyak doa yang telah dipanjatkan istrinya. Mungkin pula suami tidak pernah menghitung berapa banyak pengorbanan yang telah dilakukan istrinya.

Namun, Allah Maha Mengetahui segala sesuatu.

Istri hebat bukan berarti tidak pernah lelah.

Ia juga manusia biasa. Ia bisa merasa sedih, kecewa, letih, bahkan menangis ketika menghadapi persoalan rumah tangga. Akan tetapi, ia berusaha tetap kuat karena ada keluarga yang harus dijaga.

Ketika suami sedang menghadapi kegagalan, istri hadir memberikan semangat. Ketika suami kehilangan kepercayaan diri, istri mengingatkan bahwa setiap manusia memiliki kesempatan untuk bangkit. Ketika keadaan ekonomi keluarga sedang sulit, istri berusaha menguatkan hati agar keduanya tidak mudah menyerah.

Kadang-kadang, kalimat sederhana seperti, "Tidak apa-apa, kita jalani bersama. Insyaallah ada jalan keluarnya," bisa menjadi obat yang sangat mujarab bagi seorang suami.

Itulah kekuatan cinta yang sesungguhnya.

Cinta bukan hanya tentang kata-kata romantis atau hadiah mahal. Cinta juga hadir dalam kesediaan untuk saling mendengarkan, saling memahami, saling memaafkan, dan saling menguatkan.

Jangan sampai suami sukses di luar rumah, tetapi gagal membahagiakan istri di dalam rumah.

Ini adalah nasihat penting bagi setiap laki-laki yang telah memiliki pasangan hidup.

Jangan terlalu sibuk mengejar penghargaan hingga lupa memberikan perhatian kepada istri. Jangan terlalu bersemangat membangun karier hingga lupa menemani keluarga. Jangan pula merasa menjadi orang hebat hanya karena memiliki jabatan, gelar, atau penghasilan yang besar.

Sebab, keberhasilan seorang suami tidak hanya diukur dari apa yang berhasil diraihnya, tetapi juga dari bagaimana ia memperlakukan perempuan yang selama ini setia mendampinginya.

Sesekali, genggamlah tangan istri. Tatap wajahnya dengan penuh kasih sayang. Ucapkan terima kasih atas segala pengorbanannya. Jangan menunggu hari ulang tahun atau hari pernikahan untuk menyampaikan rasa cinta.

Katakanlah dengan tulus bahwa kehadirannya sangat berarti.

Bagi seorang istri, perhatian kecil dari suami terkadang jauh lebih berharga daripada hadiah yang mahal.

Rumah tangga adalah perjalanan panjang yang membutuhkan dua hati.

Tidak ada rumah tangga yang selalu berjalan mulus. Ada masa bahagia, ada masa sulit. Ada tawa, ada tangis. Ada keberhasilan, ada pula kegagalan. Semua itu merupakan bagian dari perjalanan kehidupan.

Karena itu, suami dan istri harus belajar berjalan beriringan. Jangan saling menjatuhkan ketika salah satu sedang berada di bawah. Jangan saling menyalahkan ketika masalah datang menghampiri.

Jadikanlah keluarga sebagai tempat pulang yang menenangkan.

Jika suami berhasil, jangan lupa mengajak istri bersyukur. Jika istri berhasil, suami harus menjadi orang pertama yang memberikan apresiasi. Sebab, dalam pernikahan tidak ada perlombaan untuk menentukan siapa yang paling hebat.

Yang ada adalah perjuangan bersama untuk membangun keluarga yang bahagia dan diridai Allah SWT.

Pesan Omjay: Hargailah istri sebelum semuanya terlambat.

Dari gambar sederhana tentang pasangan suami istri yang membaca Al-Qur'an bersama, kita belajar bahwa kebahagiaan rumah tangga bukan hanya dibangun dengan materi. Ada doa, kesetiaan, kesabaran, komunikasi, dan ketulusan yang menjadi fondasinya.

Seorang suami mungkin dikenal hebat oleh banyak orang. Namun, akan jauh lebih indah apabila ia juga menjadi suami yang hebat di mata istrinya.

Begitu pula seorang istri. Mungkin namanya tidak dikenal banyak orang, tetapi pengorbanannya telah menjadi bagian penting dari perjalanan kesuksesan keluarga.

Jangan pernah meremehkan doa seorang istri. Jangan abaikan air matanya. Jangan biarkan ia merasa sendirian ketika sedang berjuang.

Sebab, perjalanan hidup akan terasa lebih ringan apabila dua orang saling menguatkan dalam kebaikan.

Pada akhirnya, bukan seberapa tinggi jabatan yang kita raih, bukan seberapa banyak harta yang kita kumpulkan, dan bukan seberapa terkenal nama kita di hadapan manusia.

Yang jauh lebih penting adalah bagaimana kita saling mencintai, saling menjaga, dan saling menggenggam tangan hingga akhir hayat.

Di balik suami yang sukses, ada istri hebat yang mungkin tidak selalu terlihat. Namun, namanya selalu hidup dalam doa, cinta, dan setiap langkah perjuangan suaminya.

Terima kasih untuk para istri hebat yang tidak pernah lelah mendoakan suaminya.

Semoga Allah SWT menjaga setiap keluarga, melimpahkan keberkahan, memperkuat cinta, dan mempertemukan kembali suami istri dalam kebahagiaan dunia hingga surga-Nya.

Aamiin ya Rabbal 'alamin.

Salam Blogger Persahabatan

Omjay Guru Blogger Indonesia

Menulislah dengan hati, karena tulisan yang lahir dari hati akan sampai pula ke hati pembacanya.

Tiga label artikel:

* Keluarga Harmonis

* Cinta dan Kesetiaan

* Renungan Kehidupan

Rabu, 04 November 2026

kisah omjay; Menulis Sebelum Mata Terpejam

Menulis Sebelum Mata Terpejam: Kisah Omjay Mengajak Guru Mengabadikan Kehidupan Menjadi Buku

Jangan biarkan hari-harimu berlalu begitu saja. Sebab, setiap hari menyimpan cerita, setiap cerita menyimpan kenangan, dan setiap kenangan layak diabadikan menjadi tulisan.

Malam itu, Senin, 4 November 2026, suasana grup WhatsApp KBMN PGRI Gelombang 35 kembali ramai oleh pesan-pesan sederhana dari Omjay, Guru Blogger Indonesia.

Seperti biasa, Omjay menyapa bapak dan ibu peserta dengan salam penuh kehangatan.

"Assalamu'alaikum warahmatullahi wabarakatuh."

"Selamat malam bapak dan ibu semuanya."

Mungkin bagi sebagian orang, sapaan itu hanya pesan biasa di sebuah grup WhatsApp. Namun, bagi Omjay, ada harapan besar di balik setiap pesan yang dikirimkan. Ada keinginan agar para guru tidak sekadar menjalani kehidupan, tetapi juga mampu mengabadikan perjalanan hidupnya melalui tulisan.

Tak terasa, bulan November sudah memasuki hari keempat. Empat hari telah berlalu. Berapa banyak cerita yang sudah kita alami? Berapa banyak pengalaman yang sudah kita lalui? Dan berapa banyak di antaranya yang sempat kita tuliskan?

Pernahkah kita membayangkan bahwa suatu hari nanti anak dan cucu kita ingin mengetahui bagaimana kehidupan kita hari ini?

Mereka mungkin ingin tahu bagaimana kakek dan neneknya berjuang menjadi guru. Bagaimana dahulu mengajar dengan segala keterbatasan. Bagaimana menghadapi murid yang sulit diatur. Bagaimana menangis karena kecewa, tertawa karena bahagia, dan tetap bertahan meskipun kehidupan tidak selalu berjalan sesuai harapan.

Sayangnya, semua kenangan itu bisa hilang apabila tidak pernah dituliskan.

Itulah sebabnya Omjay mengajak peserta KBMN PGRI Gelombang 35 melakukan refleksi diri setiap malam melalui kegiatan menulis.

Hal tersulit dalam menulis adalah memulai

Dalam pesan WhatsApp malam itu, Omjay menuliskan sebuah kalimat yang sederhana, tetapi sangat bermakna.

"Apakah yang sulit dari menulis? Hal yang sulit dari menulis adalah MEMULAI."

Benar sekali.

Banyak orang ingin menjadi penulis. Banyak guru ingin mempunyai buku sendiri. Banyak peserta pelatihan ingin melihat namanya tercetak di sampul sebuah buku.

Namun, ketika diminta menulis, tiba-tiba muncul seribu alasan.

Tidak punya waktu. Tidak punya ide. Takut salah. Takut tulisan jelek. Bingung mencari kalimat pertama. Bahkan ada yang merasa dirinya tidak berbakat menulis.

Padahal, tidak ada penulis hebat yang langsung menghasilkan tulisan sempurna pada awal perjalanan.

Semua penulis pernah menjadi pemula.

Mereka pernah menatap layar komputer tanpa tahu harus menulis apa. Mereka pernah menghapus kalimat yang sudah dibuat. Mereka pernah merasa tulisannya tidak menarik. Bahkan mungkin pernah merasa tidak ada seorang pun yang mau membaca karyanya.

Tetapi ada satu hal yang membedakan penulis dengan orang yang hanya ingin menjadi penulis.

Penulis mau memulai.

Omjay ingin bapak dan ibu memahami bahwa menulis tidak harus menunggu suasana hati menjadi baik. Tidak harus menunggu ide datang seperti hujan. Tidak harus menunggu waktu luang yang entah kapan akan tersedia.

Mulailah sekarang.

Tulislah satu paragraf. Kemudian satu halaman. Besok satu halaman lagi.

Lama-kelamaan, tulisan itu akan terkumpul menjadi sebuah buku.

Dari blog sederhana menjadi buku yang bermakna

Omjay bukanlah orang yang tiba-tiba bisa menghasilkan buku setiap bulan.

Ada perjalanan panjang di balik kebiasaan menulis setiap hari.

Sejak tahun 2007, Omjay mulai menekuni dunia blog. Salah satu rumah digital yang menjadi tempatnya menyimpan cerita adalah:

https://wijayalabs.blogspot.com

Di blog itulah Omjay menuliskan berbagai pengalaman hidup, kegiatan mengajar, perjalanan, pemikiran tentang pendidikan, serta berbagai peristiwa yang dialami setiap hari.

Kadang tulisannya sederhana. Kadang hanya menceritakan kejadian kecil yang mungkin dianggap tidak penting oleh orang lain.

Namun, Omjay percaya bahwa sesuatu yang kecil hari ini bisa menjadi kenangan yang sangat berharga pada masa depan.

Dari tanggal 1 sampai 31 Oktober 2026, Omjay mengajak peserta KBMN PGRI Gelombang 35 menulis setiap hari di blog masing-masing.

Sebulan penuh bukanlah waktu yang sebentar.

Ada hari ketika ide mengalir deras. Ada pula hari ketika kepala terasa kosong. Ada hari ketika pekerjaan menumpuk. Ada pula hari ketika tubuh sudah lelah setelah seharian mengajar dan menjalankan berbagai kegiatan.

Tetapi Omjay terus berusaha memberikan contoh.

Sebab Omjay tidak ingin hanya menyuruh orang lain menulis, sementara dirinya sendiri berhenti menulis.

Apa hasilnya?

Tulisan-tulisan yang dikumpulkan selama Oktober itu kini mulai menjelma menjadi sebuah buku.

Dari tulisan harian menjadi kumpulan artikel. Dari kumpulan artikel menjadi naskah buku. Dari naskah buku menjadi sebuah karya yang bisa dibaca oleh banyak orang.

Inilah keajaiban konsistensi.

Bayangkan jika kebiasaan itu terus dilakukan selama setahun.

Satu bulan menghasilkan satu buku. Dua belas bulan menghasilkan dua belas buku.

Tentu semuanya membutuhkan proses penyuntingan, pemilihan tulisan, dan penyempurnaan naskah. Namun, bukankah perjalanan panjang selalu dimulai dari satu langkah kecil?

Kita tidak harus menjadi orang pintar untuk mulai menulis

Omjay pernah mengingat sebuah pesan dari almarhum Nusa Putra.

Tidak dibutuhkan otak untuk bisa menulis. Kita hanya perlu duduk sebentar dan mulai menulis.

Pesan itu mengingatkan Omjay bahwa menulis bukanlah kegiatan yang hanya boleh dilakukan oleh orang-orang dengan gelar tinggi atau mereka yang memiliki kecerdasan luar biasa.

Setiap orang mempunyai pengalaman.

Seorang guru mempunyai cerita tentang muridnya. Seorang kepala sekolah mempunyai pengalaman memimpin sekolah. Seorang ibu mempunyai kisah tentang perjuangan membesarkan anak. Seorang ayah mempunyai cerita tentang tanggung jawab dan pengorbanan.

Bahkan seorang murid pun mempunyai pengalaman yang layak dituliskan.

Tidak ada kehidupan yang benar-benar kosong dari cerita.

Terkadang, hal yang paling menyentuh justru bukan pengalaman yang luar biasa, melainkan kejadian sederhana yang dilakukan dengan penuh cinta.

Seorang murid yang datang terlambat tetapi tetap berusaha belajar. Seorang guru yang rela pulang sore demi membimbing siswanya. Seorang anak yang diam-diam menyimpan tulisan tangan ibunya. Atau seorang ayah yang tetap tersenyum meskipun sedang menyimpan banyak persoalan.

Semua itu adalah bahan tulisan.

Jangan menunggu menjadi terkenal untuk mulai menulis. Jangan menunggu menjadi profesor untuk menerbitkan buku. Jangan menunggu mendapatkan penghargaan untuk mengabadikan pengalaman.

Tulislah karena kehidupan kita berharga.

AI membantu, tetapi hati manusia tetap menjadi sumber cerita

Pada malam itu, Omjay juga mengingatkan peserta tentang perkembangan kecerdasan artifisial atau Artificial Intelligence (AI).

Sekarang, menulis semakin mudah dengan bantuan teknologi.

Kita bisa menggunakan ChatGPT melalui https://chatgpt.com untuk mencari ide, membuat kerangka tulisan, memperbaiki kalimat, menyusun judul, dan membantu mengembangkan sebuah cerita.

Dahulu, seseorang mungkin membutuhkan waktu berjam-jam hanya untuk menemukan kalimat pembuka. Sekarang, teknologi dapat membantu memberikan beberapa alternatif.

Namun, Omjay ingin mengingatkan satu hal penting.

Jangan sampai kita menyerahkan seluruh pikiran dan perasaan kepada kecerdasan buatan.

AI boleh membantu menyusun kata, tetapi pengalaman hidup tetap milik kita. AI boleh membantu memperbaiki tulisan, tetapi kejujuran cerita harus datang dari hati manusia.

Jangan sampai tulisan kita kehilangan jiwa karena terlalu sibuk mengejar kesempurnaan bahasa.

Tulislah pengalaman sendiri. Ceritakan apa yang benar-benar kita rasakan. Gunakan AI sebagai teman belajar, bukan sebagai pengganti diri kita.

Sebab tulisan yang menyentuh hati pembaca bukan hanya tulisan yang memiliki tata bahasa sempurna, tetapi tulisan yang memiliki kejujuran dan rasa.

Jangan biarkan kenangan kita hilang bersama waktu

Ada satu hal yang sering membuat Omjay berpikir.

Suatu hari nanti, kita semua akan menjadi bagian dari masa lalu.

Rambut yang sekarang masih hitam perlahan memutih. Tubuh yang sekarang masih kuat suatu saat membutuhkan bantuan. Anak-anak yang sekarang masih kecil akan tumbuh dewasa. Murid-murid yang dahulu kita ajar akan menjalani kehidupan mereka sendiri.

Waktu tidak pernah berhenti.

Kita tidak bisa meminta hari kemarin kembali. Kita tidak bisa mengulang percakapan yang sudah berlalu. Kita juga tidak bisa memanggil kembali seseorang yang sudah mendahului kita.

Tetapi kita masih bisa menyimpan kenangan melalui tulisan.

Bayangkan suatu hari nanti cucu kita membuka sebuah buku karya kakeknya.

Ia membaca halaman demi halaman. Ia menemukan cerita tentang perjuangan kakeknya menjadi guru. Ia mengetahui bagaimana kakeknya belajar teknologi, menulis blog, membimbing guru-guru, dan mengajak banyak orang untuk terus belajar.

Mungkin saat membaca tulisan itu, ia akan tersenyum.

Mungkin ia juga akan meneteskan air mata.

Ia akan berkata dalam hati, "Ternyata dahulu kakek pernah mengalami banyak hal. Ternyata kakek juga pernah lelah, pernah gagal, pernah sedih, tetapi tidak pernah berhenti berjuang."

Bukankah itu sebuah warisan yang luar biasa?

Rumah, kendaraan, dan harta benda mungkin suatu saat akan berpindah tangan. Namun, pengalaman dan nilai kehidupan yang kita tuliskan dapat terus dibaca oleh generasi berikutnya.

Itulah alasan Omjay ingin setiap guru meninggalkan jejak digital yang baik.

Bukan untuk mengejar popularitas. Bukan pula semata-mata agar mendapatkan penghargaan.

Melainkan agar kehidupan yang kita jalani tidak berlalu begitu saja tanpa meninggalkan pelajaran.

Pesan Omjay untuk peserta KBMN PGRI Gelombang 35

Bapak dan ibu peserta KBMN PGRI Gelombang 35 yang Omjay banggakan.

Jangan pernah merasa terlambat untuk menulis.

Jika hari ini belum mampu menghasilkan satu halaman, tulislah satu paragraf. Jika belum mampu menulis satu paragraf, tulislah satu kalimat.

Jika hari ini hanya mampu menulis tentang rasa lelah, tuliskanlah rasa lelah itu.

Jika hari ini mengalami kegagalan, ceritakanlah kegagalan itu.

Jika hari ini mendapatkan kebahagiaan, abadikanlah kebahagiaan itu.

Jangan malu dengan tulisan pertama kita. Jangan takut dengan komentar orang lain. Jangan membandingkan perjalanan kita dengan penulis yang sudah menghasilkan puluhan buku.

Setiap orang mempunyai waktunya sendiri.

Omjay juga masih terus belajar. Masih terus membaca. Masih terus menulis. Masih terus memperbaiki diri.

Sebab menjadi penulis bukan berarti sudah mengetahui segalanya. Menjadi penulis berarti bersedia belajar sepanjang hayat.

Malam ini, sebelum mata terpejam, cobalah mengambil telepon genggam atau membuka laptop.

Tuliskan satu pengalaman yang paling berkesan hari ini.

Tidak perlu panjang. Tidak perlu sempurna. Yang penting jujur dan berasal dari hati.

Siapa tahu tulisan sederhana yang kita buat malam ini akan menjadi bagian dari buku yang kelak dibaca anak cucu kita.

Dan siapa tahu, suatu hari nanti, seseorang akan tersenyum sambil membaca tulisan kita, lalu berkata:

"Terima kasih, Ayah. Terima kasih, Ibu. Terima kasih, Guru. Karena engkau pernah menulis, kami masih bisa mengenal perjalanan hidupmu."

Omjay ingin menutup tulisan ini dengan sebuah pesan sederhana.

Jangan hanya menjalani kehidupan. Abadikanlah kehidupan melalui tulisan.

Sebab usia manusia ada batasnya, tetapi tulisan yang baik bisa melampaui usia penulisnya.

Teruslah menulis setiap hari. Mulailah sedikit demi sedikit. Jangan menyerah hanya karena hari ini belum ada yang membaca tulisan kita.

Bisa jadi, tulisan yang kita buat hari ini belum dibaca siapa-siapa. Namun, bertahun-tahun kemudian, tulisan itulah yang akan membuat seseorang mengenang kita dengan penuh cinta.

Salam blogger persahabatan.

Omjay Guru Blogger Indonesia

Blog: https://wijayalabs.com

Blog menulis harian: https://wijayalabs.blogspot.com


Kemana Kalian Peserta KBMN PGRI Gelombang 35?

180 Peserta KBMN PGRI Gelombang 35, Ke Mana Kalian?

??? Ini dari 180 peserta, ke mana yah?

Pertanyaan Pak Putune kepada peserta KBMN PGRI Gelombang 35 patut kita renungkan bersama.

Ketika kelas dimulai, ada sekitar 180 peserta yang mendaftarkan diri. Semuanya tentu memiliki harapan yang sama, yaitu belajar menulis, meningkatkan keterampilan literasi, dan menghasilkan karya.

Namun, seiring berjalannya waktu, mengapa yang terlihat aktif hanya sebagian kecil?

Apakah materinya kurang menarik? Apakah tugasnya terlalu berat? Apakah kesibukan sehari-hari menjadi penghalang? Atau jangan-jangan semangat menulis hanya menyala pada saat awal pendaftaran?

Kami sebagai pengelola kelas tidak ingin menyalahkan siapa pun.

Kami justru ingin mendengar suara peserta.

KBMN PGRI bukan sekadar tempat mengumpulkan tugas. Ini adalah ruang belajar, ruang berbagi pengalaman, dan ruang bertumbuh bersama.

Tidak harus langsung menghasilkan tulisan yang hebat. Tidak perlu takut salah. Sebab, penulis hebat pun pernah menjadi pemula.

Mari kita jujur kepada diri sendiri.

Apa yang membuat teman-teman mulai jarang aktif?

Sampaikan pendapat dengan santun. Kritik dan saran sangat kami butuhkan agar KBMN PGRI Gelombang 35 semakin baik.

Ingatlah, mendaftar adalah langkah pertama. Bertahan dan terus menulis adalah perjuangan sesungguhnya.

Salam literasi!

Omjay
Guru Blogger Indonesia

K-Reward Kompasiana Semakin Menjauh dan Semangat Menulis Omjay Tetap Teguh

K-Reward Kompasiana Semakin Menjauh, Semangat Menulis Omjay Tetap Teguh

Ada satu hal yang tidak pernah berubah dari perjalanan menulis Omjay, yaitu semangat untuk terus menulis setiap hari. Meskipun K-Reward Kompasiana semakin menjauh, semangat Omjay Guru Blogger Indonesia tidak pernah surut. Mengapa begitu?

Sebab, bagi Omjay, menulis bukan semata-mata untuk mendapatkan uang. Menulis adalah jalan untuk berbagi pengalaman, memperluas pertemanan, mendapatkan ilmu baru, dan meninggalkan jejak kebaikan melalui tulisan.

Dahulu, ketika pertama kali bergabung dengan Kompasiana, Omjay merasa sangat senang. Setiap tulisan yang diterbitkan menjadi kebahagiaan tersendiri. Apalagi ketika ada pembaca yang memberikan komentar, menyukai tulisan, atau membagikannya kepada orang lain.

Seiring berjalannya waktu, Omjay semakin rajin menulis. Ada hari ketika satu artikel diterbitkan, bahkan terkadang lebih dari satu artikel. Berbagai pengalaman hidup, kegiatan mengajar, perjalanan, dunia pendidikan, teknologi, dan kisah sehari-hari menjadi bahan tulisan yang menarik.

Namun, perjalanan mendapatkan K-Reward ternyata tidak selalu sesuai harapan. Perubahan sistem penghargaan membuat hasil yang diperoleh dari menulis terkadang terasa semakin kecil dan jauh dari harapan.

Apakah Omjay kemudian berhenti menulis?

Tentu saja tidak!

Rezeki dari Menulis Tidak Hanya Berupa Uang

Omjay percaya bahwa rezeki seorang penulis tidak selalu datang dalam bentuk uang. Ada banyak rezeki lain yang mungkin nilainya jauh lebih besar daripada K-Reward.

Pertama, mendapatkan teman baru.

Melalui Kompasiana, Omjay bertemu dengan banyak penulis dari berbagai daerah. Mereka memiliki latar belakang, profesi, pengalaman, dan keahlian yang berbeda-beda. Ada guru, dosen, mahasiswa, wartawan, praktisi pendidikan, hingga penulis profesional.

Pertemanan seperti ini merupakan rezeki yang luar biasa. Kita bisa saling mengenal, saling membaca tulisan, memberikan komentar, dan berbagi pengalaman.

Kedua, mendapatkan ilmu baru.

Setiap hari membaca tulisan orang lain membuat wawasan kita semakin luas. Ada banyak pengetahuan yang sebelumnya tidak kita ketahui, tetapi akhirnya bisa kita pelajari melalui tulisan para Kompasianer.

Omjay sering mendapatkan ide baru setelah membaca artikel teman-teman di Kompasiana. Bahkan, terkadang sebuah tulisan sederhana bisa memberikan inspirasi untuk membuat artikel berikutnya.

Ketiga, mendapatkan kesempatan dan pengalaman baru.

Menulis bisa membuka pintu silaturahmi. Dari tulisan, orang lain bisa mengenal kemampuan dan pemikiran kita. Tidak jarang, tulisan menjadi awal datangnya undangan berbagi ilmu, kesempatan menjadi narasumber, atau kolaborasi dalam kegiatan literasi.

Keempat, memiliki dokumentasi perjalanan hidup.

Tulisan yang kita buat hari ini bisa menjadi kenangan berharga pada masa depan. Pengalaman mengajar, perjalanan ke berbagai daerah, pertemuan dengan orang-orang hebat, hingga peristiwa sederhana dalam kehidupan sehari-hari dapat dibaca kembali.

Bukankah menyenangkan jika suatu hari anak cucu kita bisa membaca kisah perjalanan hidup melalui tulisan?

Jangan Jadikan K-Reward sebagai Satu-Satunya Motivasi

Omjay ingin mengajak teman-teman Kompasianer, khususnya para penulis pemula, agar tidak menjadikan K-Reward sebagai satu-satunya tujuan menulis.

Silakan berharap mendapatkan penghargaan. Silakan berusaha agar tulisan dibaca banyak orang. Namun, jangan sampai perubahan jumlah penghargaan membuat kita kehilangan semangat berkarya.

Menulis membutuhkan ketekunan. Tidak semua tulisan langsung mendapatkan banyak pembaca. Tidak semua artikel menjadi populer. Bahkan, ada tulisan yang hanya dibaca beberapa orang.

Tidak masalah!

Yang terpenting, kita terus belajar memperbaiki kualitas tulisan. Kita belajar membuat judul yang menarik, menyusun paragraf yang enak dibaca, memilih kata yang tepat, dan menyampaikan gagasan dengan hati.

Omjay selalu percaya bahwa tulisan yang baik akan menemukan pembacanya sendiri.

Teruslah Menulis, Sebab Selalu Ada Rezeki di Baliknya

Bagi Omjay, Kompasiana bukan sekadar tempat menerbitkan artikel. Kompasiana adalah ruang belajar, ruang berbagi, dan ruang silaturahmi.

Kita boleh kecewa dengan perubahan sistem penghargaan. Kita boleh menyampaikan kritik dan saran secara santun. Namun, jangan sampai kekecewaan itu mematikan semangat menulis.

Rezeki setiap orang sudah memiliki jalannya masing-masing. Bisa jadi hari ini kita belum mendapatkan K-Reward seperti yang diharapkan. Akan tetapi, kita mendapatkan sahabat baru, pengetahuan baru, pengalaman baru, dan kesempatan yang tidak pernah kita bayangkan sebelumnya.

Itulah rezeki yang tidak selalu bisa dihitung dengan angka rupiah.

Omjay akan terus menulis selama masih diberikan kesehatan dan kesempatan. Sebab, menulis adalah bagian dari perjalanan hidup Omjay sebagai guru, blogger, dan pegiat literasi.

Ada sebuah kalimat yang selalu Omjay pegang:

Menulislah dengan hati, bukan semata-mata mengejar materi. Sebab tulisan yang lahir dari hati bisa memberikan manfaat bagi banyak orang.

Salam blogger persahabatan.

Salam literasi dari Omjay Guru Blogger Indonesia.

Blog: https://wijayalabs.com

Tiga label artikel:

* Kompasiana

* Motivasi Menulis

* Literasi Digital

Sepatu Baru Omjay

# Sepatu Baru Omjay Seharga Rp300 Ribu: Biasanya Beli di Tukang Loak, Sekarang Naik Kelas!

**Oleh: Dr. Wijaya Kusumah, M.Pd (Omjay Guru Blogger Indonesia)**

Ada kabar gembira dari kehidupan Omjay. Kali ini bukan tentang kegiatan mengajar, bukan pula tentang Olimpiade TIK dan Informatika. Berita besar ini datang dari bawah, tepatnya dari kedua kaki Omjay.

Apa itu?

Omjay akhirnya membeli sepatu baru!

Jangan tertawa dulu. Ini bukan berita biasa. Sebab, selama ini Omjay dikenal sebagai orang yang cukup hemat dalam urusan membeli alas kaki. Kalau membeli sepatu, biasanya Omjay tidak pernah mengeluarkan uang lebih dari Rp100.000.

Bahkan, kalau ada kesempatan, Omjay lebih senang berburu sepatu di tukang loak.

Bagi Omjay, sepatu tidak harus mahal. Yang penting masih bagus, nyaman dipakai, dan bisa diajak berjalan ke mana-mana. Kalau bisa mendapatkan sepatu bagus dengan harga murah, mengapa harus mengeluarkan uang banyak?

Itulah prinsip ekonomi sederhana ala Omjay.

Namun, kali ini prinsip tersebut sedikit mengalami guncangan.

## Mbak Desti Membuat Omjay Tergoda

Ceritanya bermula ketika Mbak Desti menawarkan sepatu baru di sekolah. Sepatu itu terlihat bagus, bersih, dan masih kinclong. Warnanya putih, modelnya menarik, dan kelihatannya nyaman dipakai.

Awalnya Omjay hanya melihat-lihat.

Dalam hati Omjay berkata, "Wah, bagus juga sepatunya. Tetapi, berapa harganya, ya?"

Ternyata harganya Rp300.000.

Omjay langsung berpikir. Waduh, ini harga sepatu atau harga tiket perjalanan ke luar kota?

Biasanya Omjay kalau membeli sepatu hanya mengeluarkan uang Rp50.000 sampai Rp100.000. Itu pun terkadang masih mencari diskon atau menawar harga kepada penjual.

Namun, kali ini Omjay seperti terkena rayuan sepatu putih.

Akhirnya, setelah mempertimbangkan berbagai hal, Omjay memutuskan membeli sepatu tersebut dari Mbak Desti.

Untuk pertama kalinya, Omjay membeli sepatu baru seharga Rp300.000.

Ini sebuah sejarah!

Kalau ada Museum Rekor Omjay, mungkin pembelian sepatu ini layak dicatat sebagai peristiwa penting. Hehehe.

## Sepatu Mahal Pernah Hilang di Masjid

Sebenarnya Omjay punya pengalaman menarik tentang sepatu.

Dahulu, Omjay pernah membeli sepatu baru yang harganya lumayan mahal. Rasanya bangga sekali memakai sepatu tersebut. Maklum, tidak setiap hari Omjay membeli sepatu mahal.

Namun, ada kejadian yang sampai sekarang masih membuat Omjay geleng-geleng kepala.

Sepatu tersebut pernah hilang di masjid dekat rumah.

Bayangkan, Omjay datang ke masjid dengan sepatu bagus. Setelah selesai beribadah dan hendak pulang, ternyata sepatu kesayangan sudah tidak ada di tempatnya.

Omjay pun mencari ke sana kemari.

Barangkali tertukar. Barangkali dipindahkan seseorang. Barangkali ada jamaah yang salah mengambil.

Tetapi, setelah ditunggu, sepatu itu tidak pernah kembali.

Akhirnya Omjay pulang dengan membawa pelajaran berharga.

Sejak saat itu, Omjay semakin berhati-hati kalau meletakkan sepatu di tempat umum.

Kadang-kadang muncul pikiran jahil di kepala Omjay. Jangan-jangan orang yang mengambil sepatu itu punya semboyan sendiri:

"Ambil yang baik, tinggalkan yang buruk!"

Waduh! Kalau benar begitu, berarti si pengambil sepatu sudah melakukan seleksi kualitas barang. Hehehe.

Tentu saja itu hanya candaan Omjay. Kita tidak tahu siapa yang mengambil sepatu tersebut dan apa yang sebenarnya terjadi.

Tetapi, pengalaman itu mengajarkan bahwa barang sebagus apa pun tetap perlu dijaga.

## Dari Tukang Loak Menuju Sepatu Rp300 Ribu

Selama ini Omjay memang lebih sering membeli sepatu dengan harga ekonomis.

Bukan karena tidak suka sepatu bagus, tetapi Omjay merasa bahwa uang bisa digunakan untuk banyak kebutuhan lain.

Sebagai seorang guru, Omjay punya banyak keperluan. Ada kebutuhan keluarga, transportasi, buku, kegiatan pendidikan, dan berbagai aktivitas lainnya.

Omjay juga punya kebiasaan menulis setiap hari. Kadang-kadang uang yang ada lebih baik digunakan untuk membeli buku atau kebutuhan menulis daripada membeli sepatu mahal.

Kalau ada sepatu bekas yang masih bagus di tukang loak, mengapa tidak?

Sepatu bekas bukan berarti tidak layak pakai. Selama kondisinya masih baik, bersih, dan nyaman, sepatu itu tetap bisa menjadi teman perjalanan.

Bahkan, terkadang sepatu bekas punya cerita yang lebih panjang daripada sepatu baru.

Tetapi, hari ini Omjay ingin menikmati pengalaman berbeda.

Memakai sepatu baru yang dibeli dengan uang sendiri.

Sepatu putih seharga Rp300.000 itu kini menemani langkah Omjay.

Rasanya seperti menjadi orang baru.

Kalau biasanya Omjay mencari sepatu murah, sekarang Omjay punya sepatu yang harganya tiga kali lipat dari kebiasaan belanja selama ini.

Apakah langkah Omjay otomatis menjadi lebih cepat?

Tentu tidak!

Sepatu mahal tidak otomatis membuat pemiliknya menjadi pelari cepat. Sepatu baru juga tidak otomatis membuat seseorang menjadi lebih pintar.

Kalau ingin pintar, ya harus belajar.

Kalau ingin sehat, ya harus bergerak.

Kalau ingin menjadi penulis hebat, ya harus rajin menulis.

Sepatu hanya membantu kaki melangkah. Yang menentukan arah perjalanan tetap pikiran dan hati kita.

## Tantangan GoPay Rp100.000 untuk Penulis Kreatif

Nah, ada satu hal lagi yang membuat cerita sepatu Omjay kali ini semakin menarik.

Omjay menyediakan GoPay sebesar Rp100.000 bagi siapa saja yang bisa menulis artikel menarik tentang sepatu baru Omjay.

Wah, lumayan, bukan?

Cukup dengan mengembangkan cerita sederhana menjadi tulisan yang jenaka, menghibur, dan mengandung pesan kehidupan, siapa tahu bisa mendapatkan hadiah.

Tetapi, jangan hanya menulis bahwa sepatu Omjay berwarna putih.

Ceritakan juga bagaimana seorang guru yang biasanya berburu sepatu di tukang loak akhirnya berani mengeluarkan uang Rp300.000 untuk membeli sepatu baru.

Tulislah dengan kreativitas dan gaya bahasa masing-masing.

Sebab, menulis itu bukan sekadar merangkai kata. Menulis juga tentang menghidupkan pengalaman sederhana agar bisa dinikmati banyak orang.

Omjay selalu percaya bahwa pengalaman sehari-hari bisa menjadi bahan tulisan yang menarik.

Bahkan, urusan sepatu pun bisa menjadi artikel.

Bayangkan kalau semua guru rajin menulis pengalaman hidupnya. Ada cerita tentang sepatu, sandal, tas, kendaraan, perjalanan ke sekolah, hingga pengalaman lucu bersama murid.

Semua itu bisa menjadi bahan tulisan yang menghibur sekaligus menginspirasi.

## Sepatu Baru, Semangat Baru

Akhirnya, Omjay ingin menyampaikan satu pesan sederhana.

Jangan pernah malu memakai sepatu murah. Jangan pula merasa bersalah ketika sesekali membeli sepatu yang lebih mahal, selama sesuai kemampuan dan memang dibutuhkan.

Hidup bukan perlombaan memamerkan harga barang. Hidup adalah perjalanan panjang yang harus kita nikmati dengan penuh rasa syukur.

Omjay bersyukur masih diberi kesempatan untuk berjalan, mengajar, menulis, dan berbagi pengalaman dengan banyak orang.

Sepatu baru seharga Rp300.000 ini bukan sekadar alas kaki. Sepatu ini menjadi pengingat bahwa sesekali kita boleh memberikan hadiah kecil kepada diri sendiri.

Namun, Omjay juga belajar dari pengalaman lama. Jangan sampai sepatu baru kembali hilang ketika ditinggalkan di masjid.

Mulai sekarang, Omjay harus lebih teliti menjaga sepatu.

Kalau perlu, sepatu dibawa masuk ke dalam tas!

Lho, kalau begitu, bagaimana cara beribadah dengan khusyuk?

Hehehe.

Sudahlah, yang penting jangan sampai pulang dari masjid memakai sepatu orang lain.

**Sepatu boleh baru, tetapi hati harus tetap sederhana. Harga sepatu boleh Rp300.000, tetapi harga persahabatan, kejujuran, dan pengalaman hidup tidak bisa dibeli dengan uang.**

Salam Blogger Persahabatan.

**Omjay Guru Blogger Indonesia**

Blog: https://wijayalabs.com

*Catatan Omjay: Kalau ada yang bisa membuat artikel lebih lucu daripada tulisan ini, silakan ikut tantangannya. Hadiah GoPay Rp100.000 sudah menanti. Siapa tahu tulisan tentang sepatu bisa menjadi jalan datangnya rezeki. Jangan lupa, menulislah dengan hati, bukan sekadar mengejar hadiah!*

Memahami Struktur Data Bertumpuk

STACK: Memahami Struktur Data Bertumpuk dan Penerapannya dalam Kehidupan Sehari-hari

Pendahuluan

Dalam perkembangan teknologi saat ini, komputer tidak hanya berfungsi untuk mengolah informasi, tetapi juga menyimpan dan mengatur berbagai jenis data. Agar data dapat dikelola dengan baik, diperlukan suatu sistem yang mampu mengatur cara data disimpan, ditambahkan, diakses, dan dihapus. Salah satu konsep penting dalam pengelolaan data adalah struktur data.

Struktur data merupakan cara untuk menyusun dan mengatur sekumpulan data agar dapat digunakan secara lebih teratur dan efisien. Dalam pemrograman, terdapat beberapa jenis struktur data yang memiliki karakteristik dan cara kerja berbeda, di antaranya adalah list, queue, dan stack. Masing-masing memiliki aturan tersendiri dalam mengelola data sesuai dengan kebutuhan.

Salah satu struktur data yang menarik untuk dipelajari adalah stack. Struktur data ini memiliki cara kerja yang menyerupai tumpukan benda dalam kehidupan sehari-hari. Contohnya adalah tumpukan buku, piring, atau barang lainnya. Benda yang terakhir diletakkan di bagian atas akan menjadi benda pertama yang diambil. Prinsip sederhana tersebut menjadi dasar utama dalam cara kerja stack pada komputer.

Melalui pemahaman mengenai stack, kita dapat mengetahui bagaimana komputer mengatur data berdasarkan urutan tertentu serta bagaimana konsep tersebut diterapkan dalam berbagai aplikasi yang sering digunakan.

Pengertian Struktur Data dan Stack

Sebelum memahami stack lebih jauh, kita perlu mengetahui pengertian struktur data. Struktur data adalah metode untuk menyimpan dan mengatur sekumpulan informasi agar dapat diakses dan diolah sesuai kebutuhan. Penggunaan struktur data membantu proses pengelolaan informasi menjadi lebih terorganisasi.

Dalam Python, terdapat beberapa struktur data yang dapat digunakan, salah satunya adalah list. List merupakan struktur data yang digunakan untuk menyimpan sekumpulan data dalam satu variabel secara berurutan. Setiap elemen dalam list memiliki nomor posisi yang disebut indeks. Indeks dimulai dari angka 0 untuk elemen pertama, angka 1 untuk elemen kedua, dan seterusnya.

Sebagai contoh, terdapat sebuah list bernama buah yang berisi data apel, jeruk, dan mangga. Jika kita ingin mengambil elemen kedua, kita dapat menggunakan perintah buah[1]. Hasilnya adalah jeruk. Hal ini menunjukkan bahwa list memungkinkan penggunanya untuk mengakses, menambahkan, mengubah, dan menghapus elemen pada berbagai posisi.

Selain list, terdapat queue atau antrean. Queue merupakan struktur data yang memiliki aturan khusus dalam proses masuk dan keluarnya data. Prinsip yang digunakan adalah FIFO (First In, First Out), yaitu data yang pertama masuk akan menjadi data yang pertama keluar. Contohnya dapat ditemukan pada antrean kasir, antrean pembelian tiket, dan proses pencetakan dokumen menggunakan printer.

Berbeda dengan list dan queue, stack merupakan struktur data yang menyimpan data secara bertumpuk. Penambahan dan pengambilan data hanya dapat dilakukan melalui satu bagian, yaitu bagian paling atas yang disebut top. Stack menggunakan prinsip LIFO (Last In, First Out), yang berarti data yang terakhir masuk akan menjadi data pertama yang keluar.

Misalnya, terdapat empat data berupa A, B, C, dan D yang dimasukkan secara berurutan ke dalam stack. Data A berada di bagian bawah, sedangkan D berada di bagian paling atas. Ketika data dikeluarkan, urutannya dimulai dari D, kemudian C, B, dan terakhir A. Dengan demikian, urutan keluarnya data merupakan kebalikan dari urutan masuknya data.

Prinsip Kerja Stack (LIFO)

Prinsip LIFO merupakan dasar utama yang membedakan stack dari struktur data lainnya. LIFO adalah singkatan dari Last In, First Out, yang berarti elemen yang terakhir dimasukkan akan menjadi elemen pertama yang dikeluarkan.

Untuk mempermudah pemahaman, bayangkan sebuah tumpukan buku di atas meja. Buku pertama diletakkan di bagian bawah, kemudian buku kedua diletakkan di atasnya. Setelah itu, buku ketiga dan keempat ditambahkan secara berurutan. Jika kita ingin mengambil sebuah buku, kita harus mengambil buku yang berada paling atas terlebih dahulu.

Hal tersebut juga berlaku dalam stack pada komputer. Setiap data yang dimasukkan akan ditempatkan pada bagian top. Ketika data diambil, sistem akan mengeluarkan data yang berada di posisi tersebut. Data yang berada di bawahnya tidak dapat diambil sebelum data di atasnya dikeluarkan.

Dalam stack, terdapat dua bagian penting, yaitu top dan bottom. Top merupakan posisi paling atas yang menjadi tempat masuk dan keluarnya data. Sementara itu, bottom adalah posisi paling bawah yang ditempati oleh data pertama yang dimasukkan.

Prinsip LIFO membuat stack cocok digunakan untuk berbagai proses yang membutuhkan pengelolaan data berdasarkan urutan terakhir masuk. Sistem ini membantu komputer mengatur informasi secara teratur tanpa harus mengambil data dari bagian tengah atau bawah tumpukan.

Operasi Dasar pada Stack

Dalam penggunaannya, stack memiliki beberapa operasi dasar yang berfungsi untuk mengelola data. Setiap operasi memiliki tugas yang berbeda, sehingga penting untuk memahami perbedaan dan cara kerjanya.

1. Push

Push merupakan operasi untuk menambahkan data baru ke bagian paling atas stack. Setiap kali operasi push dilakukan, data yang dimasukkan akan menempati posisi top yang baru.

Sebagai contoh, jika stack berisi data A dan B, kemudian dilakukan operasi push(C), maka isi stack menjadi A, B, dan C. Data C berada di posisi paling atas.

2. Pop

Pop merupakan operasi untuk mengambil sekaligus menghapus data yang berada di posisi top. Operasi ini menyebabkan jumlah data dalam stack berkurang satu.

Contohnya, jika stack berisi A, B, dan C, kemudian dilakukan operasi pop(), maka data C akan dikeluarkan. Isi stack setelah operasi tersebut dilakukan menjadi A dan B.

3. Peek

Peek merupakan operasi untuk melihat data yang berada di posisi top tanpa menghapusnya. Berbeda dengan pop, operasi peek tidak mengubah isi stack.

Jika stack berisi A dan B, kemudian dilakukan peek(), hasil yang ditampilkan adalah B. Namun, data B tetap berada di dalam stack.

4. isEmpty

isEmpty merupakan operasi yang digunakan untuk memeriksa apakah stack berada dalam keadaan kosong atau masih memiliki data. Jika stack tidak memiliki elemen, hasil pemeriksaannya adalah True. Sebaliknya, jika masih terdapat data, hasilnya adalah False.

5. isFull

isFull merupakan operasi untuk memeriksa apakah kapasitas stack sudah penuh. Operasi ini berguna terutama pada stack yang memiliki batas kapasitas tertentu. Jika seluruh kapasitas telah digunakan, data baru tidak dapat ditambahkan sebelum tersedia ruang kembali.

Kelima operasi tersebut merupakan dasar dalam penggunaan stack. Dengan memahami fungsinya, kita dapat mengetahui bagaimana data ditambahkan, diperiksa, dan dikeluarkan sesuai aturan LIFO.

Contoh Penelusuran Operasi Stack (Trace)

Untuk memahami cara kerja stack, kita dapat melakukan penelusuran atau trace terhadap beberapa operasi yang dilakukan secara berurutan.

Misalnya, pada awalnya terdapat sebuah stack kosong. Kemudian dilakukan beberapa operasi, yaitu push(5), push(8), push(2), pop(), peek(), dan pop().

Pada langkah pertama, operasi push(5) memasukkan angka 5 ke dalam stack. Isi stack menjadi 5. Selanjutnya, operasi push(8) menambahkan angka 8 sehingga susunannya menjadi 5 dan 8.

Pada langkah ketiga, operasi push(2) memasukkan angka 2 ke posisi paling atas. Sekarang isi stack adalah 5, 8, dan 2. Ketika operasi pop() dilakukan, angka 2 dikeluarkan karena merupakan data yang terakhir dimasukkan.

Setelah itu, operasi peek() digunakan untuk melihat data teratas. Hasilnya adalah angka 8, tetapi angka tersebut tidak dihapus dari stack. Terakhir, operasi pop() kembali dilakukan sehingga angka 8 dikeluarkan. Pada akhir penelusuran, stack hanya menyisakan angka 5.

Dari contoh tersebut, dapat diketahui bahwa setiap operasi memiliki pengaruh yang berbeda terhadap isi stack. Push menambah data, pop mengambil dan menghapus data, sedangkan peek hanya melihat data tanpa mengubah susunannya.

Penerapan Stack dalam Kehidupan Sehari-hari

Meskipun terdengar seperti konsep pemrograman yang rumit, stack sebenarnya banyak ditemukan dalam aktivitas sehari-hari maupun penggunaan komputer.

Salah satu contoh sederhananya adalah kegiatan mencuci piring. Ketika piring kotor ditumpuk di samping wastafel, piring yang terakhir diletakkan biasanya berada di bagian paling atas. Piring tersebut akan menjadi piring pertama yang diambil untuk dicuci. Dalam konsep stack, proses meletakkan piring dapat diibaratkan sebagai push, sedangkan mengambil piring paling atas merupakan pop.

Contoh lainnya adalah fitur undo dan redo pada aplikasi pengolah dokumen seperti Microsoft Word dan Google Docs. Setiap perubahan yang dilakukan pengguna disimpan sehingga dapat dikelola berdasarkan urutannya. Ketika pengguna menekan tombol Ctrl+Z, perubahan yang paling terakhir dilakukan akan dibatalkan terlebih dahulu. Proses ini menggambarkan prinsip LIFO karena tindakan terbaru ditangani sebelum tindakan sebelumnya.

Stack juga diterapkan pada tombol Back dalam browser. Ketika seseorang membuka beberapa halaman website secara berurutan, riwayat halaman tersebut dapat dikelola menggunakan konsep stack. Saat tombol Back ditekan, browser akan kembali ke halaman yang dikunjungi sebelumnya.

Selain itu, terdapat call stack dalam sistem komputer. Call stack digunakan ketika sebuah fungsi memanggil fungsi lainnya. Fungsi yang dipanggil terakhir akan diselesaikan terlebih dahulu sebelum proses kembali ke fungsi sebelumnya. Hal ini menunjukkan bahwa prinsip LIFO juga digunakan dalam pengaturan proses program komputer.

Penggunaan Stack dalam Bahasa Pemrograman Python

Stack dapat dibuat menggunakan list dalam bahasa pemrograman Python. Meskipun list merupakan struktur data yang memungkinkan akses pada berbagai posisi, list juga dapat digunakan untuk menerapkan prinsip stack dengan memanfaatkan operasi tertentu.

Dalam Python, metode append() dapat digunakan sebagai pengganti push karena berfungsi menambahkan elemen ke bagian akhir list. Sementara itu, metode pop() digunakan untuk mengambil sekaligus menghapus elemen terakhir.

Sebagai contoh, perintah stack = [] digunakan untuk membuat stack kosong. Kemudian, perintah stack.append("A"), stack.append("B"), dan stack.append("C") digunakan untuk memasukkan tiga data secara berurutan.

Jika seluruh perintah tersebut dijalankan, isi stack menjadi ['A', 'B', 'C']. Untuk melihat data paling atas tanpa menghapusnya, kita dapat menggunakan stack[-1]. Hasilnya adalah C.

Selanjutnya, jika perintah stack.pop() dijalankan, data C akan dikeluarkan dan dihapus dari list. Isi stack kemudian berubah menjadi ['A', 'B'].

Untuk memeriksa apakah stack kosong, kita dapat menggunakan perintah len(stack) == 0. Jika hasilnya False, berarti stack masih memiliki data. Dengan menggunakan beberapa perintah tersebut, konsep stack dapat diterapkan secara sederhana dalam program Python.

Perbedaan Stack dan Queue

Stack dan queue merupakan dua struktur data yang memiliki aturan berbeda dalam mengatur urutan masuk dan keluarnya data.

Stack menggunakan prinsip LIFO, yaitu data terakhir yang masuk akan menjadi data pertama yang keluar. Sementara itu, queue menggunakan prinsip FIFO (First In, First Out), yaitu data pertama yang masuk akan menjadi data pertama yang keluar.

Perbedaan lainnya terletak pada bagian yang digunakan untuk memasukkan dan mengeluarkan data. Pada stack, kedua proses tersebut dilakukan melalui satu ujung yang disebut top. Sebaliknya, queue menggunakan dua ujung, yaitu rear sebagai tempat masuknya data dan front sebagai tempat keluarnya data.

Operasi penambahan pada stack disebut push, sedangkan pengambilan datanya disebut pop. Pada queue, operasi penambahan disebut enqueue dan operasi pengambilan disebut dequeue.

Sebagai contoh, jika angka 1, 2, dan 3 dimasukkan secara berurutan, stack akan mengeluarkan data dengan urutan 3, 2, dan 1. Sebaliknya, queue akan mengeluarkan data dengan urutan 1, 2, dan 3.

Oleh karena itu, stack lebih sesuai digunakan ketika data terbaru harus diproses terlebih dahulu. Sementara itu, queue lebih tepat digunakan ketika urutan kedatangan data harus dipertahankan, seperti pada antrean layanan.

Kesalahan yang Harus Dihindari dalam Penggunaan Stack

Dalam menggunakan stack, terdapat beberapa kesalahan yang perlu diperhatikan agar proses pengelolaan data berjalan dengan benar.

Kesalahan pertama adalah stack overflow, yaitu kondisi ketika pengguna mencoba menambahkan data menggunakan push pada stack yang sudah penuh. Untuk menghindarinya, kapasitas stack perlu diperiksa terlebih dahulu menggunakan isFull().

Kesalahan kedua adalah stack underflow. Kondisi ini terjadi ketika pengguna mencoba melakukan pop atau peek pada stack yang kosong. Dalam Python, penggunaan pop() pada list kosong dapat menghasilkan error bernama IndexError. Oleh karena itu, pengguna perlu memeriksa keadaan stack menggunakan isEmpty() sebelum mengambil data.

Kesalahan berikutnya adalah mencoba mengambil data dari bagian tengah atau bawah stack. Hal tersebut tidak sesuai dengan aturan stack karena akses hanya diperbolehkan melalui bagian top. Jika kebutuhan program mengharuskan pengambilan data dari berbagai posisi, penggunaan list biasa dapat menjadi pilihan yang lebih sesuai.

Selain itu, pengguna juga harus membedakan operasi pop dan peek. Pop akan mengambil sekaligus menghapus data teratas, sedangkan peek hanya melihat data tersebut. Kesalahan dalam memilih operasi dapat menyebabkan data terhapus tanpa disengaja.

Hal lain yang perlu diperhatikan adalah penggunaan prinsip LIFO. Pengguna harus selalu mengingat bahwa urutan keluarnya data merupakan kebalikan dari urutan masuknya. Stack juga tidak sebaiknya digunakan untuk kasus yang membutuhkan urutan kedatangan data, seperti antrean pelayanan, karena kebutuhan tersebut lebih sesuai ditangani menggunakan queue.

Studi Kasus: Membalik Kata Menggunakan Stack

Salah satu penerapan stack yang menarik adalah membalik urutan huruf dalam sebuah kata. Misalnya, kita ingin mengubah kata "KOMPUTER" menjadi "RETUPMOK".

Langkah pertama adalah memasukkan setiap huruf ke dalam stack secara berurutan dari kiri ke kanan. Huruf yang dimasukkan adalah K, O, M, P, U, T, E, dan R. Proses memasukkan setiap huruf tersebut dilakukan menggunakan operasi push.

Setelah seluruh huruf dimasukkan, huruf R berada di posisi paling atas karena merupakan huruf yang terakhir dimasukkan.

Langkah kedua adalah mengeluarkan seluruh huruf menggunakan operasi pop hingga stack menjadi kosong. Karena stack menggunakan prinsip LIFO, huruf yang pertama keluar adalah R, kemudian E, T, U, P, M, O, dan terakhir K.

Langkah ketiga adalah menggabungkan seluruh huruf yang telah dikeluarkan. Hasil akhirnya adalah RETUPMOK.

Dari studi kasus tersebut, dapat diketahui bahwa stack dapat digunakan untuk membalik urutan data secara sederhana. Hal ini terjadi karena prinsip LIFO secara otomatis membalik urutan elemen yang dimasukkan.

Kesimpulan

Stack merupakan salah satu struktur data yang memiliki peran penting dalam pengelolaan informasi pada komputer. Struktur data ini bekerja menggunakan prinsip LIFO (Last In, First Out), yaitu data yang terakhir dimasukkan akan menjadi data pertama yang dikeluarkan. Seluruh proses penambahan dan pengambilan data dilakukan melalui satu bagian yang disebut top.

Dalam penggunaannya, stack memiliki beberapa operasi dasar, yaitu push, pop, peek, isEmpty, dan isFull. Operasi tersebut memungkinkan pengguna untuk menambahkan, mengambil, melihat, serta memeriksa kondisi stack. Stack juga dapat diterapkan menggunakan list dalam bahasa Python melalui metode append() dan pop().

Penerapan stack dapat ditemukan dalam berbagai kegiatan, seperti menyusun piring, menggunakan fitur undo dan redo, mengakses tombol Back pada browser, serta mengatur pemanggilan fungsi dalam program komputer. Selain itu, stack juga dapat digunakan untuk membalik urutan huruf dalam sebuah kata.

Dengan memahami konsep stack, kita dapat mengetahui bahwa pengelolaan data dalam komputer memiliki aturan dan mekanisme tertentu. Pemilihan struktur data yang tepat sangat penting agar proses pengolahan informasi dapat berjalan sesuai kebutuhan. Stack menjadi pilihan yang tepat ketika data terbaru perlu ditangani terlebih dahulu, sedangkan queue lebih sesuai ketika urutan kedatangan data harus dipertahankan.



Berikut 50 soal pilihan ganda (PG) Informatika kelas VIII berdasarkan artikel “Memahami Stack: Struktur Data Bertumpuk dan Penerapannya dalam Kehidupan Sehari-hari.”

Soal dibuat dengan tingkat kesulitan bervariasi, mulai dari pemahaman dasar, penerapan konsep, analisis, hingga penelusuran kode Python. Setiap soal dilengkapi empat pilihan jawaban, kunci jawaban, dan penjelasan.

50 Soal Pilihan Ganda – Struktur Data Stack

50 soal

4 pilihan jawaban

Dilengkapi pembahasan

A. Pengertian dan Konsep Dasar Stack

1. Apa yang dimaksud dengan struktur data?

A. Metode untuk membuat tampilan program menjadi menarik.

B. Cara menyimpan dan mengatur sekumpulan data agar dapat diakses dan diolah.

C. Proses menghapus seluruh data dari komputer.

D. Bahasa yang digunakan untuk membuat perangkat keras.

2. Stack merupakan struktur data yang memiliki bentuk penyimpanan seperti ....

A. Antrean memanjang.

B. Tabel mendatar.

C. Tumpukan data.

D. Jaringan komputer.

3. Prinsip utama yang digunakan dalam struktur data stack adalah ....

A. FIFO (First In, First Out).

B. LIFO (Last In, First Out).

C. FILO (First In, Last Out) sebagai prinsip yang berbeda dari LIFO.

D. Random In, Random Out.

4. Arti dari prinsip LIFO adalah ....

A. Data pertama yang masuk akan keluar pertama.

B. Data terakhir yang masuk akan keluar pertama.

C. Data pertama yang masuk akan keluar terakhir.

D. Semua data keluar secara bersamaan.

5. Bagian paling atas dalam struktur data stack disebut ....

A. Bottom.

B. Front.

C. Rear.

D. Top.

6. Bagian paling bawah dalam struktur data stack disebut ....

A. Top.

B. Bottom.

C. Front.

D. Rear.

7. Jika data A, B, C, dan D dimasukkan secara berurutan ke dalam stack, data yang berada di posisi top adalah ....

A. A.

B. B.

C. C.

D. D.

8. Jika data A, B, C, dan D dimasukkan secara berurutan, urutan keluarnya adalah ....

A. A, B, C, D.

B. B, C, D, A.

C. D, C, B, A.

D. A, D, C, B.

9. Mengapa data pada bagian bawah stack tidak dapat langsung diambil?

A. Karena stack hanya mengizinkan penambahan dan pengambilan data melalui bagian top.

B. Karena data bagian bawah selalu terhapus otomatis.

C. Karena data bagian bawah tidak dapat disimpan.

D. Karena stack hanya dapat menyimpan satu data.

10. Manakah pernyataan yang paling tepat mengenai karakteristik stack?

A. Data dapat diambil dari semua posisi secara bebas.

B. Data masuk melalui front dan keluar melalui rear.

C. Data ditambahkan dan diambil melalui satu ujung, yaitu top.

D. Data selalu keluar berdasarkan urutan kedatangannya.

B. Operasi Dasar Stack

11. Operasi yang digunakan untuk menambahkan data ke bagian atas stack adalah ....

A. Pop.

B. Push.

C. Peek.

D. Dequeue.

12. Operasi pop() memiliki fungsi untuk ....

A. Menambahkan data baru.

B. Melihat data paling bawah.

C. Mengambil sekaligus menghapus data teratas.

D. Memeriksa kapasitas komputer.

13. Jika ingin melihat data paling atas tanpa menghapusnya, operasi yang digunakan adalah ....

A. Push.

B. Pop.

C. Peek.

D. Enqueue.

14. Fungsi isEmpty() digunakan untuk ....

A. Menambahkan data ke dalam stack.

B. Memeriksa apakah stack kosong.

C. Menghapus data teratas.

D. Memeriksa apakah stack penuh.

15. Fungsi isFull() digunakan untuk ....

A. Memeriksa apakah stack sudah mencapai kapasitas maksimal.

B. Menghapus semua data dalam stack.

C. Melihat data yang terakhir masuk.

D. Mengubah urutan data.

16. Sebuah stack memiliki isi A dan B. Jika dilakukan operasi push(C), isi stack menjadi ....

A. A.

B. B, A, C.

C. A, B, C.

D. C, A, B.

17. Sebuah stack berisi A, B, dan C. Jika dilakukan operasi pop(), data yang keluar adalah ....

A. A.

B. B.

C. C.

D. Tidak ada data yang keluar.

18. Sebuah stack berisi angka 4, 7, dan 9. Jika dilakukan peek(), hasil yang diperoleh adalah ....

A. 4.

B. 7.

C. 9.

D. 0.

19. Apa perbedaan utama antara operasi pop() dan peek()?

A. Pop menambahkan data, sedangkan peek menghapus data.

B. Pop mengambil dan menghapus data, sedangkan peek hanya melihat data.

C. Pop memeriksa kapasitas, sedangkan peek menambahkan data.

D. Keduanya memiliki fungsi yang sama.

20. Jika sebuah stack tidak memiliki data sama sekali, hasil pemeriksaan isEmpty() adalah ....

A. True.

B. False.

C. Null.

D. Error dalam semua kondisi.

C. Penelusuran dan Penerapan Stack

21. Sebuah stack kosong menerima operasi push(5), push(8), dan push(2). Isi stack dari bottom ke top adalah ....

A. 2, 8, 5.

B. 5, 8, 2.

C. 8, 5, 2.

D. 5, 2, 8.

22. Berdasarkan soal nomor 21, jika dilakukan operasi pop(), data yang keluar adalah ....

A. 5.

B. 8.

C. 2.

D. Tidak ada.

23. Berdasarkan soal nomor 21, setelah pop() dilakukan satu kali, kemudian peek() dijalankan. Hasilnya adalah ....

A. 5.

B. 8.

C. 2.

D. 0.

24. Sebuah stack berisi 10, 20, dan 30. Kemudian dilakukan operasi pop() sebanyak dua kali. Data yang tersisa adalah ....

A. 10.

B. 20.

C. 30.

D. Kosong.

25. Jika angka 1, 2, dan 3 dimasukkan secara berurutan ke dalam stack, urutan keluarnya adalah ....

A. 1, 2, 3.

B. 2, 1, 3.

C. 3, 2, 1.

D. 1, 3, 2.

26. Contoh penerapan prinsip stack dalam kehidupan sehari-hari adalah ....

A. Antrean pembelian tiket.

B. Antrean kasir.

C. Tumpukan piring.

D. Antrean kendaraan.

27. Dalam kegiatan mencuci piring, proses mengambil piring paling atas dapat diibaratkan sebagai operasi ....

A. Push.

B. Pop.

C. Peek.

D. isFull.

28. Ketika pengguna menekan Ctrl+Z pada Microsoft Word, perubahan yang paling terakhir dilakukan akan dibatalkan terlebih dahulu. Hal ini merupakan penerapan ....

A. FIFO.

B. LIFO.

C. Enqueue.

D. Dequeue.

29. Pada browser, tombol Back digunakan untuk ....

A. Menghapus seluruh riwayat pencarian.

B. Membuka halaman yang dikunjungi sebelumnya.

C. Menambahkan halaman baru ke daftar favorit.

D. Menutup seluruh aplikasi.

30. Dalam pemrograman, call stack digunakan untuk ....

A. Menyimpan gambar dalam komputer.

B. Mengatur pemanggilan dan penyelesaian fungsi.

C. Menghapus seluruh kode program.

D. Mengatur tampilan halaman website.

D. Stack dalam Bahasa Pemrograman Python

31. Dalam Python, stack dapat dibuat dengan memanfaatkan struktur data ....

A. Integer.

B. String.

C. List.

D. Boolean.

32. Metode append() dalam Python berfungsi sebagai pengganti operasi ....

A. Pop.

B. Push.

C. Peek.

D. isEmpty.

33. Metode pop() dalam Python digunakan untuk ....

A. Menambahkan elemen ke akhir list.

B. Melihat elemen pertama tanpa menghapusnya.

C. Mengambil dan menghapus elemen terakhir list.

D. Menghitung jumlah karakter.

34. Perhatikan kode berikut:

stack = []

stack.append("A")

stack.append("B")

stack.append("C")

print(stack)

Output yang dihasilkan adalah ....

A. ['C', 'B', 'A']

B. ['A', 'B', 'C']

C. ['A', 'C', 'B']

D. []

35. Perhatikan kode berikut:

stack = ["A", "B", "C"]

print(stack[-1])

Output yang dihasilkan adalah ....

A. A.

B. B.

C. C.

D. -1.

36. Perhatikan kode berikut:

stack = ["A", "B", "C"]

data = stack.pop()

print(data)

Output yang dihasilkan adalah ....

A. A.

B. B.

C. C.

D. ['A', 'B', 'C'].

37. Berdasarkan kode pada soal nomor 36, bagaimana isi stack setelah operasi pop()?

A. ['A', 'B'].

B. ['B', 'C'].

C. ['C'].

D. [].

38. Perhatikan kode berikut:

stack = ["A", "B"]

print(len(stack) == 0)

Hasil yang ditampilkan adalah ....

A. True.

B. False.

C. A.

D. B.

39. Apa yang terjadi jika metode pop() digunakan pada list Python yang kosong?

A. Data baru akan otomatis ditambahkan.

B. Program menghasilkan IndexError.

C. Program selalu menghasilkan True.

D. List berubah menjadi penuh.

40. Mengapa pemeriksaan isEmpty() penting sebelum melakukan pop()?

A. Agar data dapat ditambahkan lebih cepat.

B. Agar program dapat menghindari pengambilan data dari stack kosong.

C. Agar seluruh data terhapus.

D. Agar urutan data berubah menjadi FIFO.

E. Analisis, Kesalahan, dan Studi Kasus

41. Stack overflow terjadi ketika ....

A. Mengambil data dari stack kosong.

B. Menambahkan data ke stack yang sudah penuh.

C. Melihat data teratas.

D. Menghapus data dari bagian top.

42. Stack underflow terjadi ketika ....

A. Menambahkan data ke stack kosong.

B. Menambahkan data ke stack penuh.

C. Mengambil atau melihat data dari stack kosong.

D. Melakukan operasi push().

43. Jika pengguna ingin mengambil data dari bagian tengah stack secara langsung, tindakan tersebut ....

A. Sesuai dengan prinsip dasar stack.

B. Tidak sesuai dengan aturan akses stack.

C. Merupakan operasi push.

D. Merupakan operasi peek.

44. Mengapa pop() dan peek() tidak boleh disamakan?

A. Karena keduanya menghasilkan data yang berbeda setiap saat.

B. Karena pop menghapus data, sedangkan peek tidak mengubah isi stack.

C. Karena peek digunakan untuk menambah data.

D. Karena pop hanya digunakan pada queue.

45. Jika sebuah kasus membutuhkan data keluar berdasarkan urutan kedatangannya, struktur data yang lebih tepat digunakan adalah ....

A. Stack.

B. Queue.

C. String.

D. Boolean.

46. Sebuah stack menerima huruf K, O, M, P, U, T, E, dan R secara berurutan. Jika seluruh huruf dikeluarkan menggunakan pop(), hasilnya adalah ....

A. KOMPUTER.

B. KOMPUTERR.

C. RETUPMOK.

D. KOMPURTER.

47. Mengapa stack dapat digunakan untuk membalik sebuah kata?

A. Karena stack mengurutkan huruf berdasarkan abjad.

B. Karena stack menggunakan prinsip LIFO sehingga urutan keluarnya terbalik dari urutan masuknya.

C. Karena stack menghapus huruf pertama secara otomatis.

D. Karena stack hanya dapat menyimpan huruf vokal.

48. Terdapat dua struktur data yang menerima angka 1, 2, dan 3 secara berurutan. Struktur pertama menggunakan stack, sedangkan struktur kedua menggunakan queue. Pernyataan yang benar adalah ....

A. Stack menghasilkan 1, 2, 3 dan queue menghasilkan 3, 2, 1.

B. Stack dan queue menghasilkan urutan yang sama.

C. Stack menghasilkan 3, 2, 1 dan queue menghasilkan 1, 2, 3.

D. Stack menghasilkan 2, 1, 3 dan queue menghasilkan 3, 1, 2.

49. Sebuah program membutuhkan penyimpanan riwayat perubahan agar tindakan terakhir dapat dibatalkan terlebih dahulu. Struktur data yang paling sesuai adalah ....

A. Queue.

B. Stack.

C. List biasa tanpa aturan khusus.

D. Integer.

50. Kesimpulan yang paling tepat mengenai penggunaan stack adalah ....

A. Stack digunakan untuk mengatur data berdasarkan urutan pertama masuk, pertama keluar.

B. Stack hanya dapat digunakan untuk menyimpan angka.

C. Stack cocok digunakan ketika data terakhir yang masuk perlu diproses terlebih dahulu.

D. Stack memungkinkan semua data diakses secara bebas dari berbagai posisi.

Kunci jawaban dan pembahasan

Pembahasan berikut menjelaskan alasan jawaban yang benar agar bisa digunakan untuk belajar, bukan hanya menghafalkan kunci.

Kunci jawaban dan penjelasan

Tutup semua

Nomor 1

Jawaban B

Struktur data merupakan cara menyimpan dan mengatur sekumpulan data agar dapat diakses dan diolah.

Nomor 2

Jawaban C

Stack menyimpan data secara bertumpuk, seperti tumpukan buku atau piring.

Nomor 3

Jawaban B

Stack menggunakan prinsip LIFO (Last In, First Out).

Nomor 4

Jawaban B

LIFO berarti data yang terakhir masuk akan menjadi data pertama yang keluar.

Nomor 5

Jawaban D

Top adalah bagian paling atas stack, tempat data ditambahkan dan diambil.

Nomor 6

Jawaban B

Bottom merupakan bagian paling bawah stack dan biasanya ditempati data pertama yang masuk.

Nomor 7

Jawaban D

Dimasukkan secara berurutan A, B, C, D, sehingga D berada paling atas.

Nomor 8

Jawaban C

Karena menggunakan LIFO, urutan keluarnya menjadi kebalikan dari urutan masuk.

Nomor 9

Jawaban A

Stack hanya mengizinkan akses melalui top. Data di atas harus dikeluarkan terlebih dahulu.

Nomor 10

Jawaban C

Penambahan dan pengambilan data pada stack dilakukan melalui satu ujung, yaitu top.

Nomor 11

Jawaban B

Push merupakan operasi untuk menambahkan data ke bagian paling atas stack.

Nomor 12

Jawaban C

Pop mengambil sekaligus menghapus elemen yang berada di posisi top.

Nomor 13

Jawaban C

Peek hanya melihat data teratas tanpa menghapus atau mengubah isi stack.

Nomor 14

Jawaban B

isEmpty digunakan untuk memeriksa apakah stack kosong atau masih memiliki elemen.

Nomor 15

Jawaban A

isFull memeriksa apakah kapasitas stack sudah mencapai batas maksimal.

Nomor 16

Jawaban C

Push(C) menambahkan C setelah A dan B, sehingga susunannya menjadi A, B, C.

Nomor 17

Jawaban C

C merupakan data terakhir yang dimasukkan sehingga menjadi data pertama yang dikeluarkan.

Nomor 18

Jawaban C

Angka 9 berada di posisi paling atas, sehingga peek() menghasilkan 9.

Nomor 19

Jawaban B

Pop menghapus data teratas, sedangkan peek hanya menampilkan data teratas.

Nomor 20

Jawaban A

True menunjukkan bahwa kondisi stack kosong.

Nomor 21

Jawaban B

Operasi push(5), push(8), dan push(2) menghasilkan susunan bottom ke top: 5, 8, 2.

Nomor 22

Jawaban C

Angka 2 merupakan data terakhir yang dimasukkan sehingga keluar pertama kali.

Nomor 23

Jawaban B

Setelah 2 dikeluarkan, angka 8 menjadi data teratas. Peek hanya melihatnya.

Nomor 24

Jawaban A

Pop pertama mengeluarkan 30, pop kedua mengeluarkan 20, sehingga tersisa 10.

Nomor 25

Jawaban C

Stack mengikuti LIFO, sehingga urutan 1, 2, 3 keluar menjadi 3, 2, 1.

Nomor 26

Jawaban C

Tumpukan piring merupakan contoh sederhana stack karena piring terakhir diletakkan diambil lebih dahulu.

Nomor 27

Jawaban B

Mengambil piring paling atas menggambarkan pop karena elemen diambil sekaligus dikeluarkan.

Nomor 28

Jawaban B

Undo menerapkan konsep LIFO karena perubahan terakhir dibatalkan terlebih dahulu.

Nomor 29

Jawaban B

Tombol Back membawa pengguna kembali ke halaman yang dikunjungi sebelumnya.

Nomor 30

Jawaban B

Call stack mengatur pemanggilan fungsi dan penyelesaiannya dalam program.

Nomor 31

Jawaban C

Stack dapat dibuat menggunakan list dalam Python.

Nomor 32

Jawaban B

append() menambahkan elemen ke akhir list dan berperan sebagai push.

Nomor 33

Jawaban C

pop() mengambil sekaligus menghapus elemen terakhir dalam list.

Nomor 34

Jawaban B

Ketiga append memasukkan A, B, C secara berurutan, sehingga output-nya ['A', 'B', 'C'].

Nomor 35

Jawaban C

Indeks -1 pada Python digunakan untuk mengambil elemen terakhir dalam list, yaitu C.

Nomor 36

Jawaban C

pop() mengambil elemen terakhir, yaitu C, lalu menghapusnya dari list.

Nomor 37

Jawaban A

Setelah C dikeluarkan, list hanya berisi A dan B.

Nomor 38

Jawaban B

List memiliki dua elemen. Karena panjangnya bukan 0, hasil perbandingan adalah False.

Nomor 39

Jawaban B

Memanggil pop() pada list kosong menyebabkan IndexError karena tidak ada elemen yang dapat diambil.

Nomor 40

Jawaban B

Pemeriksaan isEmpty mencegah program mengambil data ketika stack tidak memiliki elemen.

Nomor 41

Jawaban B

Overflow adalah kondisi ketika operasi push dilakukan pada stack yang sudah penuh.

Nomor 42

Jawaban C

Underflow terjadi ketika pop atau peek dilakukan pada stack kosong.

Nomor 43

Jawaban B

Stack hanya mengizinkan akses dari bagian top, bukan mengambil elemen tengah secara langsung.

Nomor 44

Jawaban B

Pop mengubah isi stack dengan menghapus elemen, sedangkan peek tidak mengubah isi stack.

Nomor 45

Jawaban B

Queue menggunakan FIFO sehingga data pertama masuk akan keluar pertama.

Nomor 46

Jawaban C

Huruf terakhir yang masuk adalah R, sehingga urutan keluarnya menjadi RETUPMOK.

Nomor 47

Jawaban B

Prinsip LIFO membalik urutan data saat dikeluarkan dari stack.

Nomor 48

Jawaban C

Stack menghasilkan urutan terbalik (3, 2, 1), sedangkan queue mempertahankan urutan masuk (1, 2, 3).

Nomor 49

Jawaban B

Stack cocok untuk menyimpan riwayat perubahan yang perlu dibatalkan dari tindakan terbaru.

Nomor 50

Jawaban C

Stack tepat digunakan ketika data yang terakhir masuk harus ditangani terlebih dahulu.

Saran pembagian tingkat kesulitan

Tingkat

Nomor soal

Jumlah

Mudah

1–20

20

Sedang

21–40

20

Sulit

41–50

10

Total

1–50

50

Catatan: Soal disusun berdasarkan materi artikel dan PPT Stack Informatika kelas VIII, termasuk konsep LIFO, operasi dasar, Python, perbedaan Stack dan Queue, serta studi kasus. Beberapa soal analisis merupakan pengembangan dari contoh-contoh yang ada dalam materi.