Skip to content

praktikum-tiunpad-2021/tugas-06b-andaru20001

Repository files navigation

Tugas Praktikum Struktur Data 06

Materi: Stack
Pengajar: Asisten Praktikum 2021

ANDARU DANURDARA WIBISANA - 140810200020

Harap untuk membaca instruksi terlebih dahulu sampai dipahami!


Deskripsi Tugas

Tugas ini berisi latihan-latihan dalam mengimplementasikan konsep stack dengan linked list menggunakan template pada bahasa pemrograman C++.

Tugas

  • Isi nama dan NPM pada file README.md
  • Baca dokumentasi pada file-file stack.hpp kemudian implementasikan pada file tersebut.
  • Baca juga dokumentasi pada file-file problem_*.hpp kemudian implementasikan pada file problem_*.cpp yang terkait sesuai dengan deklarasinya.
  • Implementasikan kode sampai semua test berhasil/passing.
    • Contoh jika ada test yang gagal:
    • Contoh semua test berhasil:
  • GitHub Action akan menampilkan cek hijau jika semua test berhasil dan silang merah jika ada test yang gagal.
  • Jika test berjalan di lokal tapi tidak pada GitHub, harap hubungi asisten praktikum!

Petunjuk

Praktikan hanya bisa mengubah file-file berikut:

  • main.cpp
  • README.md
  • stack.hpp
  • problem_*.cpp

Isi main.cpp tidak akan diperhatikan oleh penilaian atau asisten. Jadi boleh digunakan sebagai tempat untuk testing atau debugging pribadi praktikan.

Penjelasan untuk file lainnya:

  • problem_*.hpp adalah header file tugas (jangan diubah, kecuali diinstruksikan!)
  • main_test.cpp berisi spesifikasi test untuk tugas (JANGAN DIUBAH!)
  • catch.hpp berisi library testing Catch2 (JANGAN DIUBAH!)
  • Makefile digunakan untuk mengeksekusi perintah-perintah tugas (JANGAN DIUBAH!)
  • Direktori img/ berisi gambar-gambar untuk README.md (JANGAN DIUBAH!)

File hasil kompilasi ada dua executable dan beberapa file .o:

  • tugas (atau tugas.exe pada Windows) berasal dari main.cpp.
  • tugas_test (atau tugas_test.exe pada Windows) berasal dari main_test.cpp yang akan dijalankan oleh GitHub autograder untuk penilaian. Akan tetapi bisa dijalankan juga oleh praktikan untuk testing secara lokal.
  • File-file .o adalah object code atau object file yang dihasilkan oleh proses kompilasi, jadi tidak perlu diperhatikan, hiraukan saja. Secara kasar,

    Source Code: code for humans
    Object Code: code for machines

Perintah yang Dapat Digunakan

  • Kompilasi terhadap main.cpp dan main_test.cpp:
    make
  • Kompilasi terhadap main.cpp saja:
    make tugas
    Untuk Windows:
    make tugas.exe
  • Kompilasi terhadap main_test.cpp saja:
    make tugas_test
    Untuk Windows:
    make tugas_test.exe
  • Untuk menjalankan semua test yang diberikan pada tugas:
    make test
    Perintah diatas akan menjalankan tugas_test. Jika file tugas_test belum ada, maka akan secara otomatis dilakukan kompilasi terlebih dahulu.

    Perintah ini akan dijalankan oleh GitHub autograder untuk penilaian.

  • Untuk menjalankan main.cpp:
    make run
    Perintah diatas akan menjalankan tugas. Jika file tugas belum ada, maka akan secara otomatis dilakukan kompilasi terlebih dahulu.
  • Untuk menghapus file-file hasil kompilasi:
    make clean

Catatan

  • Kode hanya akan dievaluasi jika dapat dikompilasi! Karena jika tidak berhasil dalam proses kompilasi maka tidak akan ada file executable untuk melakukan test.
  • Pencatatan nilai akan dilakukan oleh asisten pada commit terakhir saat deadline.
  • Tugas juga akan dievaluasi secara manual oleh asisten.
  • Penilaian juga akan dilakukan terhadap kualitas kode.
  • Deadline dapat dicek pada GitHub Classroom. Jika tidak dapat ditemukan, hubungi asisten.
  • Aturan dan instruksi lain yang disampaikan pada pertemuan praktikum juga berlaku.
  • Jika ada kendala, segera hubungi asisten!

Lisensi

MIT License 2021

About

tugas-06b-andaru20001 created by GitHub Classroom

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages