Terus ke kandungan
IGCSE·Tuition
Sains Komputer · Pelajaran

Terangkan algoritma tanpa bergantung pada bahasa pengaturcaraan

Anda sering boleh menulis kodnya, tetapi soalan meminta anda menerangkan apa yang dilakukannya, dan perkataan tidak muncul.

Dalam halaman ini
  1. Bagaimana menerangkan dengan baik?
  2. Contoh penyelesaian
  3. Kesilapan yang perlu diawasi
  4. Semak sendiri
  5. Ke mana selepas ini

Untuk menerangkan algoritma tanpa bahasa, huraikan setiap langkah dalam perkataan biasa yang menamakan data dan keputusan, kemudian tunjukkan langkah yang sama dalam pseudokod. Penerangan itu mesti masih betul jika seseorang kemudian melaksanakannya dalam Python, Java atau hamparan.

Pelajaran ini menyatukan penguraian, spesifikasi, surihan dan ujian sempadan menjadi satu tabiat.

Bagaimana menerangkan dengan baik?

  1. Nyatakan tujuan algoritma dalam satu ayat: input dan output.
  2. Senaraikan langkah mengikut susunan, setiap satu bermula dengan kata kerja dan menamakan pemboleh ubah.
  3. Nyatakan setiap keputusan dengan syaratnya, contohnya “jika nombor baharu lebih kecil daripada Smallest”.
  4. Nyatakan bagaimana ia berhenti.
  5. Sokong dengan surihan pada data kecil.

Elakkan frasa yang bergantung pada satu bahasa, seperti “panggil fungsi min”. Ia menyembunyikan logik yang anda diminta tunjukkan.

Contoh penyelesaian

Cari yang terkecil daripada empat nombor yang dimasukkan satu demi satu.

Langkah biasa:

  1. Masukkan nombor pertama dan simpan sebagai Smallest.
  2. Ulang tiga kali lagi: masukkan nombor; jika lebih kecil daripada Smallest, simpan sebagai Smallest.
  3. Keluarkan Smallest.

Pseudokod:

INPUT Number
Smallest ← Number
FOR Count ← 2 TO 4
   INPUT Number
   IF Number < Smallest THEN
      Smallest ← Number
   ENDIF
NEXT Count
OUTPUT Smallest

Logik yang sama dalam Python:

smallest = int(input())
for count in range(2, 5):
    number = int(input())
    if number < smallest:
        smallest = number
print(smallest)

Surih dengan 14, 9, 21, 9:

CountNumberNumber < SmallestSmallest
mula1414
29benar9
321palsu9
49palsu9

Outputnya 9. Nombor 9 yang terakhir tidak lebih kecil daripada 9, jadi Smallest kekal sama. Nombor terkecil dalam senarai ialah 9, jadi jawapannya betul.

Kesilapan yang perlu diawasi

Satu kesilapan lazim ialah memulakan Smallest dengan nombor tetap.

Permulaan yang salah: Smallest ← 0, dengan nombor 14, 9, 21, 9.

Tiada nombor lebih kecil daripada 0, jadi outputnya 0, nilai yang tidak pernah dimasukkan.

Pembetulannya ialah bermula daripada nilai sebenar yang pertama, seperti di atas. Penerangan langkah biasa menunjukkan ini dengan jelas: “simpan nombor pertama sebagai Smallest”. Penerangan yang melangkau langkah ini tidak memberi cara untuk melihat kesalahan itu.

Semak sendiri

1. Terangkan dalam langkah biasa algoritma yang mengira berapa banyak daripada lima nombor ialah negatif.

Show answer

Tetapkan Count kepada 0. Ulang lima kali: masukkan nombor; jika kurang daripada 0, tambah 1 kepada Count. Selepas lima nombor, keluarkan Count.

2. Surih yang berikut untuk input −3, 4, 0, −1, 7 dan nyatakan apa yang dilakukan algoritma.

Count ← 0
FOR I ← 1 TO 5
   INPUT N
   IF N < 0 THEN
      Count ← Count + 1
   ENDIF
NEXT I
OUTPUT Count
Show answer

Count ialah 0, kemudian 1 selepas −3, kekal 1 selepas 4 dan 0, kemudian 2 selepas −1, kekal 2 selepas 7. Output 2. Ia mengira nombor negatif.

3. Tulis semula “guna fungsi len untuk mencari berapa banyak item” sebagai langkah yang tidak bergantung pada bahasa.

Show answer

“Kira item dengan memulakan pembilang pada 0 dan menambah 1 bagi setiap item.” Ini menghuraikan logik tanpa menamakan fungsi terbina dalam.

Ke mana selepas ini

Dengan tabiat reka bentuk yang mantap, teruskan ke pengulangan dan tatasusunan, kemudian cuba set latihan campuran. Kotak pasir Python selamat membolehkan anda menjalankan versi pendek contoh di atas dan membandingkannya dengan surihan anda.

Guru yang mendengar penerangan anda boleh mengesan langkah yang hilang dengan cepat, dan itu sebahagian daripada tuisyen Computer Science dalam talian satu dengan satu kami.

Soalan lazim

Mengapa menerangkan algoritma tanpa kod?

Algoritma yang sama boleh ditulis dalam banyak bahasa. Penerangan dalam langkah biasa atau pseudokod menunjukkan anda faham logiknya, bukan hanya sintaks satu bahasa. Soalan peperiksaan sering meminta tepat perkara ini.

Apakah perbezaan antara algoritma dan atur cara (program)?

Algoritma ialah set langkah yang menyelesaikan masalah, tidak bergantung pada sebarang bahasa. Atur cara ialah satu pelaksanaan algoritma dalam bahasa tertentu yang boleh dijalankan komputer.

Adakah saya perlu tahu Python untuk pelajaran ini?

Tidak. Pseudokod ialah bentuk utama. Python ditunjukkan di sebelahnya supaya anda nampak logiknya sama, yang berguna jika kursus atau kerja kelas anda menggunakan Python. Semak tatatanda mana yang digunakan tahun peperiksaan anda.

Dikemas kini:

Langkah seterusnya

Jika anda boleh mengekodkan satu idea tetapi sukar menerangkannya dengan perkataan, guru sesi satu dengan satu boleh mendengar penerangan anda dan membantu memperkemaskannya menjadi langkah yang jelas.

Kelas percubaan berbayar satu jam pada kadar guru yang disahkan, bermula RM80. Yuran lain, jadual dan susunan seterusnya disahkan terus bersama guru selepas kelas percubaan.

Tuisyen diatur bersama ibu bapa atau penjaga. Hantar halaman ini kepada mereka melalui WhatsApp supaya mereka boleh bertanya bagi pihak anda.

Ibu bapa atau penjaga? Tanya di sini

9,000+ pelajar telah dibantu melalui perkhidmatan kami