Algoritma

 
1.2 Algoritma
 
Pengenalan kepada Algoritma
  • Algoritma ialah satu set arahan yang digunakan untuk menyelesaikan sesuatu masalah.
  • Contoh algoritma dalam kehidupan seharian:
    • Menjerang air.
    • Menaiki lif.
    • Membeli air minuman tin daripada mesin layan diri.
  • Contoh algoritma bagi menaiki lif:
    1. Mula.
    2. Tekan butang.
    3. Tunggu lif.
    4. Masuk ke dalam lif dan tekan nombor aras.
    5. Tunggu sehingga pintu lif terbuka di aras yang dikehendaki
    6. Keluar lif
    7. Tamat
  • Ciri-ciri algoritma ialah:

Gambar ini menunjukkan tiga ciri-ciri algoritma dalam bentuk carta. Terdapat tiga kotak berwarna yang disusun secara mendatar. Kotak pertama berwarna biru tua dengan nombor 1 dan teks ‘Maklumat yang dinyatakan jelas dan nyata’. Kotak kedua berwarna putih dengan nombor 2 dan teks ‘Set arahan yang dapat dilakukan’. Kotak ketiga berwarna biru muda dengan nombor 3 dan teks ‘Arahan-arahan yang mempunyai batasan’. Di atas kotak-kotak ini, terdapat tajuk ‘CIRI-CIRI ALGORITMA’. Di bahagian bawah kiri gambar, terdapat logo ‘Pandai’.

  • Arahan-arahan untuk menghasilkan algoritma berdasarkan ciri-ciri algoritma adalah seperti yang berikut:
    1. Analisis masalah yang perlu diselesaikan. Kenal pasti input, matlamat proses dan output.
    2. Tulis arahan-arahan umum untuk memproses input kepada output.
    3. Analisis setiap arahan umum untuk menilai kejelasan arahan itu sehingga boleh dilaksanakan:
      • Jika kurang jelas, halusi arahan umum dengan menulis arahan-arahan yang terperinci.
      • Untuk setiap arahan terperinci, buat penilaian sama ada arahan terperinci masih perlu dihalusi atau tidak.
    4. Buat penghalusan bagi setiap arahan umum yang masih kurang jelas.
    5. Arahan terakhir mestilah menghasilkan output yang dikehendaki oleh proses dan perkara ini ialah batasan algoritma yang direka cipta.
 
1.2.1  Penggunaan Algoritma untuk Menyelesaikan Masalah
  • Model IPO iaitu konsep Input - Proses - Ouput  
    • Input iaitu pengguna menghantar input ke komputer melalui papan kekunci. 
    • Kemudian (Proses) menghasilkan output daripada input yang diubah melalui formula matematik dan logik.
    • Output merupakan nilai yang akan terpapar pada skrin komputer.
    •  Terdapat dua perwakilan algoritma iaitu:
      • Pseudokod: Senarai struktur kawalan komputer yang ditulis dalam bahasa pertuturan manusia dan mempunyai nombor turutan.
      • Carta alir: Menggunakan simbol grafik untuk mewakili arahan-arahan penyelesaian.
 
1.2.2  Struktur Kawalan dalam Pengaturcaraan
Tiga Struktur Kawalan Komputer 
  • Struktur kawalan urutan.
  • Struktur kawalan pilihan.
  • Struktur kawalan pengulangan.
Struktur Kawalan Urutan
  • Melakukan arahan-arahan komputer secara teratur dan mengikut urutan.
  • Urutan arahan yang betul sangat penting kerana urutan yang berlainan akan memberi output berlainan.
Struktur Kawalan Pilihan
  • Pengaturcara memberikan keupayaan perisian komputer untuk membuat keputusan berasaskan syarat yang telah ditentukan.
  • Struktur kawalan pilihan membolehkan arahan-arahan lain komputer dilakukan dalam situasi masalah yang berbeza.
  • Setiap cabang mengandungi urutan arahan komputer yang berbeza.
  • Jika satu urutan sudah terpilih, maka urutan yang lagi akan diabaikan.
Struktur Kawalan Pengulangan
  • Mengulang arahan-arahan komputer dalam blok.
  • Ulangan akan terhenti apabila menerima syarat berhenti atau mencapai bilangan yang sudah ditetapkan.
 
1.2.3  Menguji dan Membaiki Ralat dalam Algoritma
  • Algoritma diuji selepas ditulis bertujuan untuk melakukan pembaikan.
  • Pengujian dilakukan sebelum algoritma diubah menjadi kod komputer.
  • Pengujian ini dilaksanakan untuk memastikan logik algoritma adalah betul dan memikirkan pembaikan algoritma supaya lebih cekap.
Ciri-ciri Algoritma yang telah Diuji
  • Mudah difahami, maka mudah ditulis sebagai atur cara komputer.
  • Lengkap, yakni memenuhi semua keperluan penyelesaian masalah.
  • Efisien, yakni algoritma berfungsi dengan pantas dan tidak memakan banyak ruang memori.
  • Memenuhi kriteria reka bentuk perisian yang ingin dibangunkan.
Ralat dalam Algoritma
  • Algoritma yang tidak memenuhi kriteria akan sukar difahami, tidak lengkap, kurang efisien dan tidak memenuhi kriteria reka bentuk perisian.
  • Perkara ini akan mengakibatkan perisian yang dihasilkan mengandungi ralat.
  • Hal ini kerana pengatur cara bergantung kepada algoritma untuk menghasilkan atur cara.
  • Algoritma yang mengandungi ralat akan menyebabkan pengatur cara menghasilkan atur cara yang juga mengandungi ralat.
  • Ujian algoritma boleh mencegah ralat algoritma.
  • Ralat algoritma boleh menyebabkan dua jenis ralat dalam atur cara yang bakal dihasilkan daripada algoritma tersebut:
    • Ralat sintaks – tidak wujud dalam algoritma. Ralat sintaks berlaku kerana menggunakan bahasa pengaturcaraan seperti Java dengan cuai. Ralat sintaks biasanya ditemui secara automatik oleh perisian kompiler bahasa pengaturcaraan. Ralat algoritma tidak menyebabkan ralat sintaks.
    • Ralat logik – ralat logik berlaku kerana perisian yang dihasilkan tidak menjalankan fungsi-fungsi yang sepatutnya, tidak lengkap ataupun fungsi menghasilkan output yang tidak tepat.
    • Ralat masa larian – ralat yang timbul apabila atur cara dijalankan. Ralat masa larian termasuklah atur cara yang tidak dapat dimulakan, menjadi sangat perlahan ataupun tidak responsif. Ralat ini boleh dikenal pasti daripada kegagalan output dan paparan amaran dalam atur cara.
Langkah-langkah Pengujian Algoritma
  1. Kenal pasti "Output Dijangka".
  2. Kenal pasti "Output Diperoleh".
  3.  Bandingkan "Output Diperoleh" dengan "Output Dijangka".
  4. Analisis dan baiki algoritma.
 
1.2.4  Pengesanan Nilai Pemboleh Ubah pada Setiap Tahap dalam Algoritma
  • Algoritma mengumpuk dan boleh mengubah nilai sesuatu pemboleh ubah.
  • Oleh yang demikian, nilai pemboleh ubah tidak tetap.
  • Setiap baris algoritma mungkin membuat perubahan pada pemboleh ubah tertentu.
  • Pengesanan nilai pembolehubah setiap tahap dalam algoritma boleh dikesan melalui jadual pemboleh ubah.
 
1.2.5  Mengenalpasti Output yang Betul dari Algoritma Berdasarkan Input yang Diberi
  • Output yang benar bergantung kepada nilai pemboleh ubah ketika algoritma papar dipanggil.
  • Satu kaedah untuk menentukan kesahihan output algoritma melalui kaedah membandingkan output dijangka.
  • Output dijangka diperoleh melalui hitungan manual.
  • Output algoritma adalah benar sekiranya output algoritma bersamaan dengan output dijangka.
 
1.2.6  ​​​​​​Terjemahan Algoritma ke dalam Bahasa Pengaturcaraan
  • Setiap baris algoritma dicipta boleh diubah kepada kod komputer.
  • Algoritma berbentuk universal.
  • Oleh hal demikian, simbol dan perkataan yang digunakan tidak perlu bersandarkan kepada mana-mana bahasa pengaturcaraan.
  • Contoh bahasa pengaturcaraan seperti Visual Basic (VB), Java, C#,  dan lain-lain.

Algoritma

 
1.2 Algoritma
 
Pengenalan kepada Algoritma
  • Algoritma ialah satu set arahan yang digunakan untuk menyelesaikan sesuatu masalah.
  • Contoh algoritma dalam kehidupan seharian:
    • Menjerang air.
    • Menaiki lif.
    • Membeli air minuman tin daripada mesin layan diri.
  • Contoh algoritma bagi menaiki lif:
    1. Mula.
    2. Tekan butang.
    3. Tunggu lif.
    4. Masuk ke dalam lif dan tekan nombor aras.
    5. Tunggu sehingga pintu lif terbuka di aras yang dikehendaki
    6. Keluar lif
    7. Tamat
  • Ciri-ciri algoritma ialah:

Gambar ini menunjukkan tiga ciri-ciri algoritma dalam bentuk carta. Terdapat tiga kotak berwarna yang disusun secara mendatar. Kotak pertama berwarna biru tua dengan nombor 1 dan teks ‘Maklumat yang dinyatakan jelas dan nyata’. Kotak kedua berwarna putih dengan nombor 2 dan teks ‘Set arahan yang dapat dilakukan’. Kotak ketiga berwarna biru muda dengan nombor 3 dan teks ‘Arahan-arahan yang mempunyai batasan’. Di atas kotak-kotak ini, terdapat tajuk ‘CIRI-CIRI ALGORITMA’. Di bahagian bawah kiri gambar, terdapat logo ‘Pandai’.

  • Arahan-arahan untuk menghasilkan algoritma berdasarkan ciri-ciri algoritma adalah seperti yang berikut:
    1. Analisis masalah yang perlu diselesaikan. Kenal pasti input, matlamat proses dan output.
    2. Tulis arahan-arahan umum untuk memproses input kepada output.
    3. Analisis setiap arahan umum untuk menilai kejelasan arahan itu sehingga boleh dilaksanakan:
      • Jika kurang jelas, halusi arahan umum dengan menulis arahan-arahan yang terperinci.
      • Untuk setiap arahan terperinci, buat penilaian sama ada arahan terperinci masih perlu dihalusi atau tidak.
    4. Buat penghalusan bagi setiap arahan umum yang masih kurang jelas.
    5. Arahan terakhir mestilah menghasilkan output yang dikehendaki oleh proses dan perkara ini ialah batasan algoritma yang direka cipta.
 
1.2.1  Penggunaan Algoritma untuk Menyelesaikan Masalah
  • Model IPO iaitu konsep Input - Proses - Ouput  
    • Input iaitu pengguna menghantar input ke komputer melalui papan kekunci. 
    • Kemudian (Proses) menghasilkan output daripada input yang diubah melalui formula matematik dan logik.
    • Output merupakan nilai yang akan terpapar pada skrin komputer.
    •  Terdapat dua perwakilan algoritma iaitu:
      • Pseudokod: Senarai struktur kawalan komputer yang ditulis dalam bahasa pertuturan manusia dan mempunyai nombor turutan.
      • Carta alir: Menggunakan simbol grafik untuk mewakili arahan-arahan penyelesaian.
 
1.2.2  Struktur Kawalan dalam Pengaturcaraan
Tiga Struktur Kawalan Komputer 
  • Struktur kawalan urutan.
  • Struktur kawalan pilihan.
  • Struktur kawalan pengulangan.
Struktur Kawalan Urutan
  • Melakukan arahan-arahan komputer secara teratur dan mengikut urutan.
  • Urutan arahan yang betul sangat penting kerana urutan yang berlainan akan memberi output berlainan.
Struktur Kawalan Pilihan
  • Pengaturcara memberikan keupayaan perisian komputer untuk membuat keputusan berasaskan syarat yang telah ditentukan.
  • Struktur kawalan pilihan membolehkan arahan-arahan lain komputer dilakukan dalam situasi masalah yang berbeza.
  • Setiap cabang mengandungi urutan arahan komputer yang berbeza.
  • Jika satu urutan sudah terpilih, maka urutan yang lagi akan diabaikan.
Struktur Kawalan Pengulangan
  • Mengulang arahan-arahan komputer dalam blok.
  • Ulangan akan terhenti apabila menerima syarat berhenti atau mencapai bilangan yang sudah ditetapkan.
 
1.2.3  Menguji dan Membaiki Ralat dalam Algoritma
  • Algoritma diuji selepas ditulis bertujuan untuk melakukan pembaikan.
  • Pengujian dilakukan sebelum algoritma diubah menjadi kod komputer.
  • Pengujian ini dilaksanakan untuk memastikan logik algoritma adalah betul dan memikirkan pembaikan algoritma supaya lebih cekap.
Ciri-ciri Algoritma yang telah Diuji
  • Mudah difahami, maka mudah ditulis sebagai atur cara komputer.
  • Lengkap, yakni memenuhi semua keperluan penyelesaian masalah.
  • Efisien, yakni algoritma berfungsi dengan pantas dan tidak memakan banyak ruang memori.
  • Memenuhi kriteria reka bentuk perisian yang ingin dibangunkan.
Ralat dalam Algoritma
  • Algoritma yang tidak memenuhi kriteria akan sukar difahami, tidak lengkap, kurang efisien dan tidak memenuhi kriteria reka bentuk perisian.
  • Perkara ini akan mengakibatkan perisian yang dihasilkan mengandungi ralat.
  • Hal ini kerana pengatur cara bergantung kepada algoritma untuk menghasilkan atur cara.
  • Algoritma yang mengandungi ralat akan menyebabkan pengatur cara menghasilkan atur cara yang juga mengandungi ralat.
  • Ujian algoritma boleh mencegah ralat algoritma.
  • Ralat algoritma boleh menyebabkan dua jenis ralat dalam atur cara yang bakal dihasilkan daripada algoritma tersebut:
    • Ralat sintaks – tidak wujud dalam algoritma. Ralat sintaks berlaku kerana menggunakan bahasa pengaturcaraan seperti Java dengan cuai. Ralat sintaks biasanya ditemui secara automatik oleh perisian kompiler bahasa pengaturcaraan. Ralat algoritma tidak menyebabkan ralat sintaks.
    • Ralat logik – ralat logik berlaku kerana perisian yang dihasilkan tidak menjalankan fungsi-fungsi yang sepatutnya, tidak lengkap ataupun fungsi menghasilkan output yang tidak tepat.
    • Ralat masa larian – ralat yang timbul apabila atur cara dijalankan. Ralat masa larian termasuklah atur cara yang tidak dapat dimulakan, menjadi sangat perlahan ataupun tidak responsif. Ralat ini boleh dikenal pasti daripada kegagalan output dan paparan amaran dalam atur cara.
Langkah-langkah Pengujian Algoritma
  1. Kenal pasti "Output Dijangka".
  2. Kenal pasti "Output Diperoleh".
  3.  Bandingkan "Output Diperoleh" dengan "Output Dijangka".
  4. Analisis dan baiki algoritma.
 
1.2.4  Pengesanan Nilai Pemboleh Ubah pada Setiap Tahap dalam Algoritma
  • Algoritma mengumpuk dan boleh mengubah nilai sesuatu pemboleh ubah.
  • Oleh yang demikian, nilai pemboleh ubah tidak tetap.
  • Setiap baris algoritma mungkin membuat perubahan pada pemboleh ubah tertentu.
  • Pengesanan nilai pembolehubah setiap tahap dalam algoritma boleh dikesan melalui jadual pemboleh ubah.
 
1.2.5  Mengenalpasti Output yang Betul dari Algoritma Berdasarkan Input yang Diberi
  • Output yang benar bergantung kepada nilai pemboleh ubah ketika algoritma papar dipanggil.
  • Satu kaedah untuk menentukan kesahihan output algoritma melalui kaedah membandingkan output dijangka.
  • Output dijangka diperoleh melalui hitungan manual.
  • Output algoritma adalah benar sekiranya output algoritma bersamaan dengan output dijangka.
 
1.2.6  ​​​​​​Terjemahan Algoritma ke dalam Bahasa Pengaturcaraan
  • Setiap baris algoritma dicipta boleh diubah kepada kod komputer.
  • Algoritma berbentuk universal.
  • Oleh hal demikian, simbol dan perkataan yang digunakan tidak perlu bersandarkan kepada mana-mana bahasa pengaturcaraan.
  • Contoh bahasa pengaturcaraan seperti Visual Basic (VB), Java, C#,  dan lain-lain.