Apa perbedaan antara Pseudocode dan Algorithm? Perbedaan Antara

Anonim

Dalam istilah yang sangat sederhana, Pseudocode adalah narasi yang menggambarkan logika algoritma.

Pseudocode is kode yang tidak dapat dieksekusi jadi tidak wajib menggunakan sintaks yang tepat, namun sangat membantu untuk mengikuti standar penggunaan yang banyak digunakan di industri ini, yang dapat dengan mudah dipahami oleh tim solusi.

< Unified Modeling Language (UML) dan metodologi pemodelan bisnis lainnya juga dapat disebut contoh pseudocode. Meskipun tidak berbasis teks murni, alat ini digunakan untuk memberikan representasi visual dari tugas atau proses yang dapat dijalankan.

Yang terbaik praktekkan untuk mendokumentasikan dengan jelas pseudocode terstruktur dan lengkap untuk membantu menerjemahkannya secara akurat dan ini adalah bagian penting dalam merencanakan solusi dan logika pemrograman.

Jika pseudokode tidak ada untuk Algoritma, maka waktu yang tidak perlu dihabiskan untuk memikirkan solusinya, atau mengeluarkan beberapa gagasan samar saat berada di t Ia coding stage, biasanya dengan tenggat waktu menjulang.

Saat memecahkan masalah algoritma, pseudocode memberikan pemikiran latar belakang bagaimana disatukan dan pengembang mungkin atau mungkin tidak selalu ada untuk membantu mengatasinya.

Lihatlah contoh pseudocode ini dari Akademi Khan

[i]

:

Ini adalah pseudocode berbasis teks yang ditulis dalam alat pengembangan perangkat lunak. Tekanan sebelumnya // menunjukkan teks itu adalah komentar (atau dikomentari dalam persyaratan pengembangan) dan karena itu bukan bagian dari kode yang dapat dieksekusi.

Teks tebal di bawah menunjukkan sintaks dan dimensi pengembang saat mereka menafsirkannya dari persyaratan dalam kode pseudocode ke kode yang dapat dieksekusi.

// Bagaimana kita memasukkan ide ke dalam kode?

// Gambarlah wajah, sebuah oval di tengah

elips (lebar /

2, tinggi /

2 , 200 , 300 ); // Gambarkan kedua mata, dua oval, sekitar 2/3 di wajah, dan 1/5 ukuran wajah elips (lebar / 2

-

40 <, tinggi / 2 - 50 , 40 , 40 ); elips (lebar / 2 + 40 , tinggi / 2 - 50 , 40 , < 40 ); Contoh lain di bawah ini menunjukkan pendekatan yang lebih teknis dan terstruktur untuk menulis pseudocode: Jika nilai siswa lebih besar dari atau sama dengan 60 Print "Well Done! " lain Cetak" Maaf, Anda gagal "

Bila mengacu pada pseudocode terstruktur, ada istilah standar yang mewakili logika algoritmanya, seperti

SEQUENCE

WHILE >, IF-THEN-ELSE

dan konstruksi tambahan yang juga berguna mencakup REPEAT-UNTIL , KASUS , dan UNTUK . Istilah ini dipahami oleh pengembang dan bermanfaat untuk membangun persyaratan tanpa menggunakan bahasa gaul atau istilah pribadi yang mungkin tidak dapat dipahami oleh orang lain. SEQUENCE menunjukkan eksekusi tugas paling atas ke bawah secara berurutan. WHILE adalah loop berulang yang dijalankan sampai suatu kondisi, yang didefinisikan pada awal terpenuhi. IF-THEN-ELSE

adalah keputusan yang diambil antara dua kondisi:

  • Contoh IF HoursWorked> NormalWeek THEN
  • Tampilkan pesan overtime overtime ELSE
  • Tampilkan pesan absen biasa < REPEAT-UNTIL adalah loop berulang yang dijalankan sampai suatu kondisi, yang didefinisikan pada akhir, terpenuhi.
Contoh

REPEAT

urutan

SAMPAI kondisi

KASUS

  • menyediakan beberapa keputusan berdasarkan nilai sebuah ekspresi. FOR
adalah loop penghitung berulang

Perhatikan bahwa untuk setiap tugas atau proses, gunakan

END

/

  • ENDIF (di mana IF digunakan) pada akhir Menunjukkan itu adalah titik penghentian atau hasil keluaran.
  • Bila konstruksi saling bertautan satu sama lain, mereka harus jelas-jelas menjorok dari konstruksi orang tua mereka, jadi dengan kata lain, semua pernyataan yang menunjukkan ketergantungan harus diindikasikan. Dengan kata kerja, kata 'melakukan', gunakan istilah seperti Process, Computer, Reset, Increment, Add, Multiply, Print, Display dll dan perhatikan indentasi mempromosikan pseudocode yang diinginkan.

Sekarang mari kita lihat algoritma dan bagaimana perbedaannya dengan pseudocode. Pertama, apa algoritma ? "Secara informal, algoritma adalah prosedur komputasi yang didefinisikan dengan baik yang membutuhkan beberapa nilai, atau kumpulan nilai, sebagai masukan dan menghasilkan beberapa nilai, atau kumpulan nilai, sebagai output

. Algoritma dengan demikian merupakan urutan langkah-langkah komputasi yang mengubah input

ke output

. "

[ii] Jadi dengan istilah yang lebih sederhana, algoritma adalah logika kode yang dapat dieksekusi yang didefinisikan oleh urutan langkah untuk menyelesaikan masalah atau menyelesaikan sebuah tugas. Tidak seperti pseudocode, orang yang menulis algoritma membutuhkan pengetahuan pemrograman karena ditafsirkan oleh komputer -

bukan pengembang

- untuk mengeksekusi tugas, memanipulasi, mengenkripsi, dan mengekstrak data. Algoritma pada dasarnya menginstruksikan sebuah program komputer untuk melakukan suatu tugas, seperti yang didefinisikan dalam logika kode. Kesalahan dalam sintaks pemrograman akan mencegah keberhasilan pelaksanaan tugas ini, yang mana pengetahuan pemrograman diperlukan.

Saat menulis pseudocode dalam tahap perencanaan, ingatlah algoritma ini harus efektif, fokus dan mencapai hasil akhir; semua aspek solusinya harus selalu diperhatikan.

Apa yang dilakukan algoritma? Pada dasarnya, dijalankan oleh pemicu, atau proses, atau algoritma lain dan menerima data sebagai masukannya. Data berjalan melalui langkah-langkah instruksi dan manipulasi untuk menghasilkan output. Data disimpan dalam variabel dan setiap variabel dinamai agar algoritma menetapkan data ke dalamnya selama proses eksekusi. Algoritma juga dinamai karena dapat mencakup referensi dan panggilan ke algoritma lain. Ada banyak kerumitan dan teknis saat mengembangkan algoritma, terlepas dari perangkat lunak pengkodean yang digunakan dan oleh karena itu perlu didefinisikan dengan baik untuk menghasilkan hasil yang akurat dan yang diinginkan. Aspek penting lainnya yang perlu dipertimbangkan dengan perancangan dan implementasi algoritma adalah seberapa cepat dijalankannya. Hal ini semakin nyata dengan pengguna akhir yang semakin terbiasa dengan perangkat lunak dan perangkat yang lebih cepat.

Misalnya, menerapkan filter untuk mencari kriteria dan menunggu waktu yang sangat lama sehingga hasil yang ditampilkan dapat menjadi pengalaman yang tak tertahankan. Pengembang kemudian akan menyelidiki bagaimana dan kapan data tersebut diterima, dapatkah data disaring dalam sub-proses, dll.

Menulis logika kode yang memperlambat proses apapun memiliki dampak negatif pada pengguna, pengembang, dan bisnis. Singkatnya, pseudocode adalah narasi penting untuk perencanaan logika kode dan menerapkan solusi yang kuat. Solusi ini diimplementasikan dengan menggunakan algoritma yang terstruktur, cepat, dan efektif yang menghasilkan hasil yang akurat dan diinginkan.