Professional Documents
Culture Documents
Soalan 1
Merekabentuk aturcara memerlukan perancangan. Aturcara yang dibina
hendaklah mengambilkira aspek-aspek seperti :
1.1 Analisis masalah
1.2 Carta alir dan Pseudokod
1.3 Kod sumber : Menyunting dan Pengkompilan
1.4 Menguji
1.5 Mengawal silap
1.6 Mendokumen
1.7 Menyenggara
Berikan definisi dan huraian bagi setiap aspek yang dinyatakan di atas.
JAWAPAN
Analisis masalah ialah penyelidikan atau penghuraian sesuatu masalah untuk mengetahui
pelbagai aspeknya (ciri-cirinya, dan lain-lain) secara terperinci atau mendalam.
Langkah yang penting dalam membentuk sesuatu aturcara ialah memahami masalah
yang hendak diselesaikan, apa yang diperlukan untuk menyelesaikan masalah, apakah
hasil daripada penyelesaian itu dan syarat-syarat serta kekangan-kekangan yang wujud
dalam masalah tersebut. Dengan kata lain, kita perlu betul-betul memahami skop masalah
atau bertanyakan tentang masalah tersebut dengan pakar dalam bidang masalah tersebut.
Setelah jelas tentang masalah yang ingin diselesaikan, dan mempunyai keperluan
spesifikasi aturcara, fasa analisis cuma perlu mengenal pasti yang berikut:
a. Keperluan input
Mengenal pasti nilai-nilai data masukan yang akan digunakan. Pemilihan jenis dan
format data
yang akan dimasukkan dan cara data dimasukkan sama ada dari papan kekunci atau
dari
sesuatu fail data ditentukan.
b. Keperluan output
Memastikan nilai-nilai data yang akan dihasilkan. Kita perlu pastikan bentuk paparan
data yang
dikehendaki serta perwakilan data tersebut. Selain daripada itu, adakah paparan skrin
diperlukan
atau data keluaran akan dihantar ke sumber lain seperti fail output.
c. Keperluan pemprosesan dan kekangan
Mengenalpasti rumusan atau persamaan tertentu yang perlu digunakan semasa
pemprosesan
data. Kita perlu menyenaraikan kekangan-kekangan aturcara dari segi julat data yang
boleh
diterimanya serta keadaan-keadaan yang boleh menimbulkan masalah-masalah lain.
Carta alir adalah satu penghuraian mengenai langkah-langkah yang perlu diambil untuk
menyelesaikan satu tugas, dengan menggunakan simbol-simbol yang tertentu. Ia juga
boleh ditakrifkan sebagai graf yang terdiri daripada bentuk-bentuk geometri yang
disambung oleh garis aliran.
Carta alir merupakan satu teknik yang biasa digunakan untuk mewakilkan algoritma. Ia
berbeza daripada pseudokod yang berbentuk perkataan kerana ia berbentuk gambar rajah.
Bentuk-bentuk ini akan mewakilkan jenis-jenis pernyataan di dalam algoritma. Untuk
menggunakan carta alir, kita perlu mengetahui simbol-simbol asasnya. Simbol-simbol
inilah yang akan disusunatur dan disambung menggunakan garis aliran yang akan
membentuk satu algoritma aturcara. Simbol-simbol yang biasa digunakan adalah seperti
berikut:
Jadual 1 ( Simbol-simbol dalam Carta alir )
Pseudokod ialah kod separuh formal yang hampir kepada bahasa tabii seperti Bahasa
Melayu atau Bahasa Inggeris dengan perkataan-perkataan yang terhad. Ia digunakan
untuk merekabentuk dan menerangkan algoritma.
Walaupun bahasa biasa sudah mencukupi untuk menyatakan algoritma, kebanyakan ahli
matematik dan sains komputer memilih pseudokod kerana lebih berstruktur dan
universal. Pseudokod dinamakan demikian kerana hampir menyamai bahasa kod sebenar
(aturcara). Pseudokod diterima asalkan tidak mengelirukan sesiapa. Pseudokod tidak
menitikberatkan semi-kolon, titik dan sebagainya seperti bahasa pengaturcaraan.
Pseudokod biasa digunakan untuk memperincikan takrifan logik sesuatu algoritma
kepada pengguna yang tidak pakar dalam bahasa pengaturcaraan. Matlamat pseudokod
adalah untuk diterjemahkan kepada suatu bahasa pengaturcaraan dan kemudian
dilaksanakan oleh komputer. Antara kegunaan pseudokod ialah :
a. merekabentuk algoritma
b. menerangkan tentang algoritma kepada pengguna
c. menjejak ralat logik dalam algoritma
d. sebagai pendokumenan aturcara untuk kegunaan penyelenggaraan dan perkembangan
aturcara.
Menyunting ialah aktiviti menulis aturcara menggunakan kod sumber dengan sesuatu
program editor.
Pengkompilan ialah proses menterjemahkan fail kod sumber kepada fail kod objek, iaitu
menukarkan aturcara dalam bahasa aras tinggi ke bahasa mesin.
1.4 Menguji
Pengujian aturcara ialah satu proses pelaksanaan aturcara untuk memastikan aturcara itu
betul.
Mengawal silap ialah proses mencari dan membetulkan ralat di dalam aturcara.
Biasanya aturcara yang kita hasilkan terdedah kepada beberapa kesalahan atau ralat.
Ralat-ralat ini merupakan satu halangan yang mesti ditempuh oleh semua pengaturcara.
Pengaturcara perlu mengawal kesilapan aturcara iaitu mencari dan membetulkan
kesalahan-kesalahan yang berlaku secara tidak sengaja atau yang tidak disangka-
sangkakan. Kesalahan-kesalahan ini boleh menyebabkan aturcara tidak dapat dikompil
dan dijalankan. Dengan itu, keputusan yang kita kehendaki tidak dapat dihasilkan.
Terdapat tiga jenis ralat pengaturcaraan:
a. Ralat rekabentuk
Ralat ini biasa berlaku semasa langkah analisis, rekabentuk dan pelaksanaan. Antara
kesalahan yang boleh berlaku ialah seperti memilih kaedah penyelesaian yang salah,
terjemahan yang salah ke dalam pernyataan bahasa pengaturcaraan atau kita
menggunakan data input yang salah. Ralat ini agak susah untuk dikesan dan memerlukan
kita melihat semula secara teliti langkah-langkah yang diambil semasa analisis,
rekabentuk dan pelaksanaan aturcara.
1.6 Mendokumen
Mendokumen ialah menghuraikan sebuah aturcara supaya pengguna lain boleh
memahami, menggunakan dan mengubahsuai aturcara tersebut dengan mudah.
1.7 Menyenggara
Sekiranya sesuatu aturcara itu telah lengkap didokumenkan, senang dibaca dan betul,
akan terdapat lagi ruang-ruang untuk memperbaiki aturcara terutamanya sekiranya
keperluan-keperluan baru timbul atau aturcara itu dikehendaki menyelesaikan ruang
masalah yang lebih umum. Sesuatu aturcara itu yang telah dibina masih lagi memerlukan
pengubahsuaian dan perlu diselenggarakan dengan baik mengikut keperluan yang
berubah. Oleh itu, pendokumenan yang baik pasti dapat menolong dalam tugas ini.
Soalan 2
Pembinaan algoritma melibatkan beberapa proses :
2.1 spesifikasi input, proses dan output
2.2 membina algoritma
2.3 kegunaan carta alir
2.4 kegunaan pseudokod
2.5 rekabentuk penyelesaian atas-bawah : carta struktur
2.6 struktur kawalan asas dalam binaan : jujukan, pilihan dan gelungan
2.7 pengaturcaraan berstruktur
2.8 pengaturcaraan bermodul
2.9 pendokumentasian
Huraikan konsep bagi proses-proses dalam pembinaan algoritma di atas.
JAWAPAN
Algoritma adalah satu jujukan langkah-langkah yang terhingga, disusun dalam tertib
yang tertentu dan apabila dilaksanakan akan menghasilkan penyelesaian kepada masalah.
Ia merupakan satu tatacara untuk melakukan suatu tugas. Istilah ini selalunya
dihubungkaitkan dengan pengaturcaraan komputer. Suatu arahan yang berdiri sendiri
tidak akan dapat melakukan sesuatu tindakan. Komputer mestilah menerima satu jujukan
arahan yang dikenali sebagai aturcara. Untuk mendapat hasil yang kita kehendaki,
aturcara yang tepat dan baik perlu dibina. Kita perlu membuat perancangan penyelesaian
masalah dengan teliti jika mahukan aturcara yan baik. Kita perlu terlebih dahulu
memahami masalah yang ingin diselesaikan dengan menggariskan secara terperinci
langkah demi langkah untuk menyelesaikan masalah tersebut. Dengan lain perkataan,
untuk mendapatkan aturcara yang baik, kita perlu membuat algoritma penyelesaian
masalah itu terlebih dahulu. Satu aturcara akan melaksanakan sesuatu tugas yang tertentu.
Arahan yang diberikan dalam satu aturcara mestilah ditulis berdasarkan satu algoritma
yang tertentu.
Membina algoritma bukanlah satu kerja yang mudah kecuali sekiranya masalah yang
ingin diselesaikan itu sangat mudah. Kita bukan sahaja perlu membina algoritma tetapi
memastikan bahawa algoritma itu betul dan akan menghasilkan output yang kita
kehendaki. Oleh itu tidak cukup kita membayangkan sahaja sesuatu algoritma tersebut di
dalam pemikiran kita, tetapi kita perlu menulisnya di atas kertas. Disebabkan kita perlu
menulisnya, kita juga memerlukan satu bahasa pengantaraan untuk mempersembahkan
algoritma yang kita hasilkan tadi.
Sebuah algoritma mesti mempunyai beberapa syarat yang mesti dipatuhi, iaitu:
a. Susunan langkah yang dilaksanakan mestilah jelas.
b. Mesti mempunyai suatu titik permulaan dan sekurang-kurangnya satu titik
pengakhiran.
c. Mesti berhenti selepas sebilangan langkah yang terhingga.
d. Setiap pernyataan mestilah jelas.
Ada tiga perkara yang perlu dijelaskan tentang cara membuat carta aliran. Pertama, kita
perlu memahami dengan jelas perkara yang hendak dilakukan dan tatacara
melaksanakannya. Maknanya, kita perlu mengetahui bentuk input yang perlu diberi dan
bentuk output yang perlu dihasilkan. Kedua, kita tidak boleh mengabaikan mana-mana
peristiwa yang penting, jika tidak tugas yang hendak dilaksanakan tidak akan berhasil.
Maknanya, semua jujukan tindakan yang perlu dilakukan, perlu dinyatakan satu persatu
dengan jelas. Selain itu, kita perlu memastikan susunan peristiwa itu dibuat berdasarkan
tertib kejadiannya. Ketiga, mana-mana bahagian di dalam carta aliran itu dapat
dikembangkan apabila penjelasan yang lebih lanjut diperlukan.
Setiap masalah yang dipecahkan itu disebut modul. Setiap modul pada taraf atas boleh
memanggil perkhidmatan modul taraf bawah. Setiap modul boleh dilaksanakan dan diuji
secara berasingan. Misalnya, satu modul boleh membaca nilai input, satu modul lagi
boleh membuat penghitungan dan satu modul yang lain boleh mencetak keputusan. Jika
berlaku ralat pada salah satu modul, maka hanya modul itulah yang patut diawas silap.
Langkah-langkah rekabentuk atas ke bawah adalah seperti berikut:
a. Kenal pasti matlamat sistem dan spesifikasinya.
b. Pisahkan sistem kepada modul-modul yang diperlukan untuk mencapai matlamat-
matlamat ini. Setiap satu modul diberikan cuma satu tugas tertentu. Catatkan kaitan-
kaitan antara modul dalam bentuk carta struktur berhierarki.
c. Kenal pasti tugas-tugas pada aras yang lebih rendah daripada aras modul. Pada
peringkat ini, bahagian-bahagian kerja berupa struktur-struktur kawalan. Asingkan
sesuatu modul menjadi lebih banyak modul jika perlu. Bagi setiap modul, kenal pasti
kesemua parameter input dan parameter output.
d. Laksanakan struktur-struktur kawalan dengan pernyataan-pernyataan. Pernyataan-
pernyataan ialah blok binaan yang paling primitif bagi membina aturcara.
e. Uji modul-modul secara berasingan dan gabungkan modul-modul yang telah diuji ke
dalam aturcara. Pastikan modul-modul yang digabungkan menghasilkan sistem yang
boleh mencapai matlamatnya. Jika tidak, ulang proses rekabentuk dari langkah (a). Ubah
matlamat sistem jika perlu.
f. Dokumenkan kerja.
2.6 Struktur Kawalan Asas Dalam Binaan : Jujukan, Pilihan dan Gelungan
Dalam tahun 1966, dua orang penyelidik iaitu C. Bohm dan G. Jacopini telah
menunjukkan bahawa semua algoritma boleh diterangkan dengan menggunakan cuma
tiga struktur kawalan, iaitu jujukan, pilihan dan gelungan. Oleh itu, teknik-teknuk
persembahan algoritma kita iaitu penggunaan pseudokod juga perlu menyediakan
kemudahan mempersembahkan ketiga-tiga struktur kawalan tersebut.
a. Struktur Kawalan Jujukan
Struktur kawalan jujukan ialah satu siri langkah-langkah atau pernyataan-pernyataan
yang dilaksanakan dengan tertib yang ditulis dalam algoritma. Langkah-langkah ini
termasuklah masukan, pengiraan dan keluaran data.
b. Struktur Kawalan Pilihan
Struktur kawalan pilihan mentakrifkan dua tindakan yang boleh diambil bergantung
kepada hasil dari sesuatu syarat. Syarat di sini ialah ungkapan yang sama ada benar atau
palsu. Struktur kawalan ini lebih dikenali sebagai struktur IF. Struktur IF ini juga
mempunyai beberapa variasi seperti IF-THEN dan IF-THEN-ELSE. Bentuk umum untuk
IF-THEN ialah
IF syarat
THEN pernyataan
Struktur kawalan IF-THEN bermaksud sekiranya nilai yang dihasilkan daripada syarat itu
benar, maka pernyataan yang berada di dalam bahagian THEN itu dilaksanakan.
Bentuk umum untuk IF-THEN-ELSE ialah
IF syarat
THEN pernyataan 1
ELSE pernyataan 2
WHILE syarat
badan gelung
tamat while
Dalam struktur WHILE, badan gelung boleh terdiri dari satu pernyataan atau lebih dari
satu pernyataan dan ia akan diulang selama mana syarat yang ditulis itu benar. Istilah
tamat while menandakan akhirnya struktur WHILE tersebut. Ulangan perlu ditamatkan
apabila syarat di dalam gelung sudah tidak benar lagi. Ini cuma boleh berlaku sekiranya
terdapat pernyataan di dalam gelung yang mengubah syarat tersebut supaya menjadi tidak
benar. Sekiranya syarat itu sentiasa benar dan tiada pernyataan di dalam badan gelung
yang mengubah syarat, sudah pasti gelung itu tidak berhenti dan kita mendapat gelung
yang tak terhingga.
DO
badan gelung
WHILE (syarat)
Struktur FOR yang ditunjukkan di atas mengandungi tiga bahagian. Dalam ungkapan 1,
nilai awal diberikan kepada pembilang kawalan gelung. Ungkapan 2 merupakan satu
syarat yang perlu dinilai selepas ungkapan 1 dilaksanakan. Sekiranya ungkapan 2
menghasilkan benar, badan gelung dan ungkapan 3 dilaksanakan. Kemudian, kawalan
dihantar semula ke bahagian atas gelung untuk memeriksa semula ungkapan 2. Oleh itu,
ungkapan 2 merupakan ungkapan yang mengawal pengulangan. Proses ini berulang
sehinggalah ungkapan 2 menjadi tidak benar.
Sekiranya kita mempunyai satu masalah yang besar, penyelesaian masalah itu agak sukar
dan mengelirukan. Adalah wajar sekiranya kita melihat masalah itu secara keseluruhan
dan kemudian membahagikan masalah tersebut kepada bahagian-bahagian yang kecil dan
kemudian mencari penyelesaian masalah kepada setiap bahagian yang kecil ini. Kaedah
rekabentuk ini disebut rekabentuk atas-bawah. Bahagian masalah yang lebih kecil ini
disebut modul. Modul juga kadangkala dirujuk sebagai sub-aturcara atau subrutin. Setiap
modul boleh dilaksanakan dan diuji secara berasingan. Misalnya, satu modul boleh
membaca nilai input, satu modul lagi boleh membuat penghitungan dan satu modul yang
lain boleh mencetak keputusan. Jika berlaku ralat pada salah satu modul, maka hanya
modul itulah yang patut diawas silap.
Setelah tiap-tiap modul yang kecil diuji dan didapati mengikut spesifikasi yang
ditentukan, maka modul-modul boleh digabungkan ke dalam aturcara untuk
menghasilkan sistem yang boleh mencapai matlamatnya.
2.9 Pendokumentasian
Dokumentasi ialah huraian tentang sebuah aturcara supaya pengguna yang lain boleh
memahami, menggunakan dan mengubahsuai aturcara tersebut dengan mudah.
Setiap modul perlu didokumentasikan dengan lengkap supaya difahami tanpa merujuk
dokumentasi lain. Ramai pengaturcara tidak mendokumentasikan modul-modul walaupun
setelah digabungkan ke dalam sistem. Terdapat juga pengaturcara yang menulis catatan
dalam buku. Ini menyukarkan pengaturcara lain yang akan memperbaiki modul tersebut
kerana catatan tersebut mungkin tidak ada lagi apabila diperlukan.