Dalam sains komputer, **pseudokod** ialah penerangan bahasa biasa tentang langkah-langkah dalam algoritma atau sistem lain. Pseudokod sering menggunakan konvensyen struktur bahasa pengaturcaraan biasa, tetapi bertujuan untuk bacaan manusia dan bukannya bacaan mesin. Ia biasanya meninggalkan butiran yang penting dalam pemahaman mesin tentang algoritma, seperti deklarasi berubah dan kod khusus bahasa. Bahasa pengaturcaraan ditambah dengan butiran perihalan bahasa semula jadi, jika sesuai, atau dengan tatatanda matematik yang padat. Tujuan menggunakan pseudokod adalah supaya algortima lebih mudah difahami orang berbanding kod bahasa pengaturcaraan konvensional, dan merupakan penerangan yang cekap dan bebas persekitaran bagi prinsip utama algoritma. Ia biasanya digunakan dalam buku teks dan penerbitan saintifik untuk mendokumentasikan algoritma dan dalam perancangan perisian dan algoritma lain.

Tiada piawaian meluas wujud bagi sintaks pseudokod, kerana program pseudokod bukanlah program sebenar; bagaimanapun, piawaian terhad tertentu wujud (seperti bagi penilaian akademik). Pseudokod menyerupai program rangka yang boleh disusun tanpa ralat. Carta alir, carta drakon dan Bahasa Pemodelan Bersepadu (UML) boleh dianggap sebagai alternatif grafik kepada pseudokod, tetapi memerlukan lebih banyak ruang di atas kertas. Bahasa seperti HAGGIS merapatkan jurang antara pseudokod dan kod yang ditulis dalam bahasa pengaturcaraan.

Aplikasi
--------

Buku teks dan penerbitan saintifik berkaitan sains komputer dan pengiraan berangka sering menggunakan pseudokod dalam perihalan algoritma, supaya semua pengaturcara dapat memahaminya, walaupun mereka tidak semua mengetahui bahasa pengaturcaraan yang sama. Dalam buku teks, biasanya terdapat pengenalan yang disertakan menerangkan konvensyen tertentu yang digunakan. Tahap perincian pseudokod mungkin dalam beberapa kes mendekati bahasa tujuan umum yang diformalkan.

Seorang pengatur cara yang perlu melaksanakan algoritma tertentu, terutamanya yang tidak dikenali, selalunya akan bermula dengan penerangan pseudokod, dan kemudian "menterjemahkan" penerangan itu ke dalam bahasa pengaturcaraan sasaran dan mengubahsuainya untuk berinteraksi dengan betul dengan seluruh program. Pengatur cara juga boleh memulakan projek dengan melakar kod dalam bentuk pseudokod di atas kertas sebelum menulisnya dalam bahasa sebenar, sebagai pendekatan penstrukturan atas ke bawah, dengan proses langkah yang perlu diikuti sebagai penghalusan.

Sintaks
-------

Pseudokod secara amnya sebenarnya tidak mematuhi peraturan sintaks mana-mana bahasa tertentu; tiada bentuk piawai yang sistematik. Sesetengah penulis meminjam gaya dan sintaks daripada struktur kawalan daripada beberapa bahasa pengaturcaraan konvensional, walaupun ini tidak digalakkan. Beberapa sumber sintaks termasuk Fortran, Pascal, BASIC, C, C++, Java, Lisp dan ALGOL. Deklarasi pembolehubah biasanya ditinggalkan. Panggilan fungsi dan blok kod, seperti kod yang terkandung dalam gelung, sering digantikan dengan ayat sebaris dalam bahasa semula jadi.

Bergantung kepada penulis, pseudokod mungkin berbeza-beza dalam gaya, daripada tiruan hampir tepat bahasa pengaturcaraan sebenar pada satu ekstrem, kepada penerangan yang menghampiri prosa berformat pada yang lain.

Rujukan
-------

1. ↑  McConnell, Steve (2004). *Code Complete*. m/s. 54. ISBN 978-0-7356-1967-8. Avoid syntactic elements from the target programming language
2. ↑  Invitation to Computer Science, 8th Edition by Schneider/Gersting, "Keep statements language independent" as quoted in this stackexchange question