Chapter 1

Strategi Penyelesaian Masalah

Sebelum menulis sebarang program, seorang pengaturcara perlu memahami masalah dengan jelas dan merancang penyelesaian secara berstruktur menggunakan model input-proses-output serta teknik penguraian.

Memahami Masalah

Langkah pertama dalam penyelesaian masalah ialah memahami masalah itu sendiri. Seorang pengaturcara perlu membaca pernyataan masalah dengan teliti untuk mengenal pasti apa yang dikehendaki, data yang tersedia dan hasil yang perlu dihasilkan. Tanpa kefahaman yang jelas, penyelesaian yang dibina mungkin tidak menepati kehendak sebenar.

Untuk memahami masalah, tanya soalan seperti: Apakah maklumat yang diberi? Apakah keputusan yang dikehendaki? Apakah syarat atau kekangan yang wujud?

Model Input-Proses-Output (IPO)

Kebanyakan masalah pengkomputeran boleh dihuraikan menggunakan model Input-Proses-Output:

  • Input — data yang dimasukkan ke dalam sistem, contohnya markah pelajar.
  • Proses — pengiraan atau pemprosesan yang dilakukan ke atas input, contohnya mengira purata.
  • Output — hasil yang dipaparkan kepada pengguna, contohnya purata markah.

Konsep

Model IPO memisahkan setiap masalah kepada tiga bahagian jelas: apa yang dimasukkan (input), apa yang dilakukan (proses) dan apa yang dihasilkan (output). Ini memudahkan perancangan penyelesaian.

Penguraian Masalah

Penguraian (decomposition) ialah teknik memecahkan masalah besar dan rumit kepada beberapa sub-masalah yang lebih kecil dan mudah dikendalikan. Setiap bahagian kecil boleh diselesaikan secara berasingan, kemudian digabungkan semula. Pendekatan ini menjadikan masalah lebih mudah difahami, dikongsi dalam pasukan dan diuji.

Contoh

Untuk membina sistem kehadiran pelajar, masalah boleh diuraikan kepada: (1) mendaftar nama pelajar, (2) merekod kehadiran harian, (3) mengira peratus kehadiran, dan (4) memaparkan laporan. Setiap sub-masalah lebih mudah diselesaikan berbanding masalah keseluruhan.

Kitaran Penyelesaian Masalah

Penyelesaian masalah biasanya mengikut satu kitaran berulang: memahami masalah, merancang penyelesaian (algoritma), melaksana (menulis kod) dan menguji serta menilai. Jika keputusan tidak memuaskan, pengaturcara kembali ke langkah awal untuk menambah baik.

Ingat

Jangan tergesa-gesa menulis kod. Fahami masalah dan kenal pasti input, proses dan output dahulu — ini menjimatkan masa dan mengurangkan ralat.

Stuck on this topic? A verified JomKelas tutor can walk you through it.

Find a verified tutor