TUGAS Latihan 1 - Debug
Tujuan:
- Membiasakan diri Anda dengan sintaks bahasa C
- Mempelajari apa arti pesan error pada kompiler bahasa C
- Mempraktikkan debugging
Latar Belakang
Ada dua jenis kesalahan yang dapat terjadi saat menulis program. Kesalahan pertama yang mungkin Anda temui adalah kesalahan syntax. Selain kesalahan syntax, juga dapat terjadi kesalahan logika.
Dalam ilmu komputer, penulisan syntax sangat penting agar komputer dapat memahami apa yang Anda perintahkan. Setiap bahasa pemrograman memiliki aturan syntax sendiri, termasuk kombinasi kata dan tanda baca.
Latihan ini dimulai dengan kode distribusi yang memiliki beberapa kesalahan syntax. Ide dari latihan ini adalah untuk mencoba mengompilasi (membuat) program, belajar mengartikan pesan kesalahan yang agak samar yang dihasilkan oleh complier, dan memperbaiki program tersebut.
Kemungkinan besar kesalahan pertama yang akan Anda lihat setelah mencoba mengompilasidebug.c
adalah debug.c:9:5: error: use of undeclared identifier 'name'
. Angka 9 setelah debug.c:
menunjukkan bahwa ada masalah pada baris ke-9. Kira-kira, mengapa compiler mengatakan 'undeclared identifier' (identifikasi tidak dideklarasikan)?
Anda bisa mencoba memperbaiki error dengan mencari kesalahan seperti simbol yang hilang, library yang hilang, atau deklarasi variabel yang hilang.
Jika Anda masih terjebak, coba ketikkan help50 make debug
di terminal.Demo
Cara Mengerjakan
- Klik di dalam jendela terminal dan jalankan perintah
cd
. - Pada prompt
$
, ketikmkdir debug
. Selanjutnya jalankan perintahcd debug
. - Kemudian copy dan paste
wget https://cdn.cs50.net/2022/fall/labs/1/debug.c
ke terminal Anda untuk mengunduh kode distribusi latihan ini. - Sekarang coba kompilasi program
debug.c
, dengan mengetikkanmake debug
dan lihat apa yang terjadi! - Anda kemungkinan melihat error yang mengatakan:
debug.c:9:5: error: use of undeclared identifier 'name'
Error ini berarti ada kesalahan yang berkaitan dengan "nama variabel tidak dideklarasikan", pada baris ke-9. - Perbaiki bug ini, lalu coba kompilasi lagi.
- Ingatlah bahwa debugging adalah proses berulang. Anda mungkin perlu memperbaiki kesalahan, mengompilasi, kemudian memperbaiki kesalahan lain, mengompilasi lagi, berkali-kali!
Pertanyaan untuk Dipertimbangkan
"Mengapa menurut Anda bahasa pemrograman C (serta bahasa pemrograman lainnya) memiliki aturan yang sangat khusus terkait syntax?"
Cara Menguji Kebenaran Jawaban
Program Anda harus berperilaku sesuai dengan contoh di bawah ini.
Anda dapat memeriksa kode Anda menggunakan check50, sebuah program yang kita gunakan untuk menguji kode program Anda sebelum Anda mengumpulkannya, dengan mengetik berikut di prompt $
. Tapi pastikan Anda juga mengujinya sendiri!
check50 cs50/labs/2023/x/debug
Senyum hijau berarti program Anda telah lulus uji! Kerutan merah menunjukkan program Anda menghasilkan sesuatu yang tidak terduga. Kunjungi URL yang menampilkan check50, untuk melihat input check50 yang diinputkan otomatis oleh sistem ke program Anda, output apa yang diharapkan, dan output apa yang sebenarnya diberikan oleh program Anda.
Untuk mengevaluasi apakah style kode Anda, ketik perintah berikut ini di prompt $
.style50 debug.c
Cara Mengumpulkan
Download file debug.c (klik kanan, download) lalu upload di kolom jawaban, atau tuliskan kode programnya di kolom jawaban.