Skip to main content

Merepresentasikan Algoritma dengan Flowchart dan Pseudocode

 Merepresentasikan Algoritma dengan Flowchart

Flowchart adalah jenis diagram (grafis tau simbolik) yang mewakili suatu algoritma atau proses-proses tertentu. Setiap langkah dalam algoritma diwakili oleh simbol yang sama atau berbeda dan berisi penjelasan singkat setiap langkah.
Flowchart merepresentasikan algoritma dalam bentuk desain, simbol dan dijadikan dokumentasi dan kemudian dituangkan menjadi kode-kode program. Sebelum membuat flowchart, kita harus memahami unsur flowchart sebagai berikut :

  • Input
  • Percabangan ( biasanya menggunakan perintah if dan switch)
  • Perulangan ( biasanya menggunakan perintah atau kode while, for, loop, each )
  • Output

Flowchart biasanya digambar menggunakan beberapa simbol standar, namun tidak menutup opsi lain untuk menyertakan simbol-simbol di luar standar untuk digunakan jika memang diperlukan simbol tersebut di desain yang kita buat. Berikut ini simbol – simbol yang biasa digunakan dalam flowchart.



Simbol simbol diatas adalah simbol dasar yang digunakan secara umum. Pedoman dasar untuk menggambar flowchart adalah sebagai berikut :
a. Dalam menggambar flowchart yang tepat, semua persyaratan yang diperlukan harus dicantumkan dalam urutan logis.
b. Diagram alur harus rapi, jelas, dan mudah diikuti. Seharusnya tidak ada ruang ambiguitas dalam memahami flowchart.
c. Flowchart harus dibaca dari kiri ke kanan atau dari atas ke bawah.
d. Sebuah simbol proses hanya dapat memiliki satu garis aliran yang keluar darinya.
e. Untuk simbol keputusan, hanya satu garis aliran yang dapat memasukinya, tetapi garis keluarnya memiliki 2 dengan kemungkinan (true/false)
f. Simbol terminal hanya dapat memiliki satu garis aliran saja.

Merepresentasikan Algoritma dengan Pseudocode

Pseudocode adalah deskripsi tingkat tinggi dan singkat (ringkas) yang ditulis untuk dibaca oleh manusia dan bukan untuk dibaca oleh mesin.
Pseudocode sebagai “kode bahasa Inggris” atau bahasa apa saja yang digunakan oleh manusia. Berbentuk narasi yang pendek-pendek dan sudah mirip dengan bahasa pemrograman apapun, namun pseudocode dapat dikonversi ke bahasa pemrograman apapun, jadi tidak hanya terpaku dengan bahasa pemrograman spesifik, walaupun tidak menutup kemungkinan ketika membuat pseudocode akan ada kecenderungan mendekati bahasa pemrograman tertentu tergantung si pembuat pseudocodenya mahir di bahasa yang dia kuasai.

Berikut cara menulis pseudocode:

  • Ditulis dalam bahasa yang sederhana dan mudah dimengerti

  • Notasi <- dapat digunakan untuk mengisi nilai dalam sebuah variable

  • Setiap pernyataan atau instruksi dapat independe atau ditulisa dalam baris tersendiri

  • Disarankan untuk variable skalar (yang dapat menyimpan nilai yang berubah nilainya) untuk ditulis dengan huruf kecil

  • Disarankan untuk variable larik (array) menggunakan huruf besar semua atau menggunakan huruf besar di depannya

  • Notasi seperti L[i] menyatakan elemen ke-i dari variable larik L. dan larik selalu dimulai dari 0

  • Notasi jumlahElemen(** L**) digunakan sebagai ekspresi untuk mendapatkan jumlah elemen larik.

  • Variable majemuk yang digunakan untuk menyimpan tipe majemuk yang dapat menyimpan beberapa jenis data sekaligus

  • Bisa juga menyertakan nomor urut pada setiap baris, baik pernyataan ataupun komentar. Jika dalam pseudocode mengandung sub blok, maka disarankan ditandai dengan indentasi (menjorok ke dalam)

  • Pembacaan pseudocode dilakukan secara urut. Jika suatu kondisi harus lompat ke urutan tertentu maka harus ditulis lompatannya kemana

  • Simbol // atau /* … */ digunakan untuk komentar

  • Setiap baris instruksi harus jelas, misal variable menyertakan tipe data nya

  • Notasi masukkan(), input(), tampilkan(), output(), mewakili I/O

  • Pseudocode untuk perulangan while loop, selama kondisi bernilai benar maka perulangan akan dijalankan terus

  • Pseudocode perulangan do-loop, blok perulangan akan berjalan minimal sekali, baru kemudia melakukan pengecekan benar/salah, jika kondisi benar maka akan terus melakukan perulangan

  • Pseudocode perulangan for-loop, sebuah perulangan akan berhenti selama nilainya sampai pada akhir yang ditentukan, misal 1 sampai 10, maka akan melakukan perulangan sampai 10

  • Untuk prosedur fungsi/method/class/subclass, ditulis dengan menuliskan nama, parameter, dan isi nya, kemudian isinya juga dituls menjorok ke dalam

  • Untuk logika, jika komponen tersebut adalah sebuah operator pembanding maka operatornya berikut

1. <= : lebih kecil sama dengan 2. > : lebih besar 3. >= : lebih besar sama dengan 4. <> atau != : tidak sama dengan Operator logika: AND dan OR


Selain menggunakan flowchart dan pseudocode, algoritma dapat dipresentasikan menggunakan bahasa alamiah (natural language). Yang merupakan bahasa yang dapat dipahami oleh manusia. Tetapi kekurangannya bersifat ambigu karena tidak ditetapkannya struktur atau tidak mempunyai standar yang baku. Penyajian algoritma dalam dalam bahasa alamiah biasanya diawali dengan kata mulai (start) dan diakhiri dengan kata selseai (end).

Contoh :

Sebuah Angka Acak 3, 1, 4, 2. Buatlah algoritma yang direpresentasikan dalam bentuk flowchart dan pseudocode untuk mengurutkan data tersebut.

start
//definisikan varriabel:
int Data [] ← {3,1,4,2} int i,j,hasil //print Data elemen sebelum diurut: for (i ← 0; i < Data.jumlahdata; i← i+1) Cetak i //proses pengurutan dan perbandingan data: for (i ← 0; i<jumlahElemen(**Data**); i←i+1 for (j ← 0; j<jumlahElemen(**Data**); j←j+1) //pengecekan angka lebih besar / lebih kecil: if (Data[i] < Data[j]) hasil ← Data[i] Data[i]←Data[j] Data[j] ← hasil //Print hasil pengurutan: for (j ← 0; j < jumlahElemen(**Data**); j ←j+1) print j
Finish

Flowchart






loading...

Comments

Popular posts from this blog

Contoh Soal Membuat Algoritma Pseudocode dan Flowchart.

  Sebuah Angka Acak 3, 1, 4, 2. Buatlah algoritma yang direpresentasikan dalam bentuk flowchart dan pseudocode untuk mengurutkan data tersebut. Pseudocode start //definisikan varriabel: int Data [] ← {3,1,4,2} int i,j,hasil //print Data elemen sebelum diurut: for (i ← 0; i < Data.jumlahdata; i← i+1) Cetak i //proses pengurutan dan perbandingan data: for (i ← 0; i<jumlahElemen(**Data**); i←i+1 for (j ← 0; j<jumlahElemen(**Data**); j←j+1) //pengecekan angka lebih besar / lebih kecil: if (Data[i] < Data[j]) hasil ← Data[i] Data[i]←Data[j] Data[j] ← hasil //Print hasil pengurutan: for (j ← 0; j < jumlahElemen(**Data**); j ←j+1) print j Finish Flowchart

Contoh Soal Data dalam Sistem Bahasa Pemrograman R

  Tuliskan pernyataan R untuk membuat deret bilangan berikut : x = [-5 -4 -3 -2 -1 0 1 2 3] y = [5 4 3 2 1] z = [1000000 1166667 1333333 1500000 1666667 1833333 2000000] p = [9 9 9 5 5 5] q = [1 1 1 2 2 2 1 1 1 2 2 2] Jawaban : > x <- seq (from=-5,to=3,length=9) > x [1] -5 -4 -3 -2 -1 0 1 2 3 > y <- seq (from=5,to=1,length=5) > y [1] 5 4 3 2 1 > z <- seq (from=1000000,to=2000000,length=7) > z [1] 1000000 1166667 1333333 1500000 1666667 1833333 2000000 > p <- rep(c(9,5),each=3) > p [1] 9 9 9 5 5 5 > q <- rep(c(1,2,1,2),each=3) > q [1] 1 1 1 2 2 2 1 1 1 2 2 2 Tuliskan pernyataan R untuk membuat frame data siswa berikut : No Jurusan asal_daerah usia 1 Komputer Bogor 25 2 Fisika Bogor 25 3 Komputer Bandung 25 4 Fisika Bandung 25 5 Komputer Bogor 26 6 Fisika Bogor 26 7 Komputer Bandung 26 8 Fisika Bandung 26 Jawaban : > jurusan <- c("Komputer","Fisika","Komputer","Fisika","Komputer...

Contoh Soal Masalah pada Sistem Operasi

  Seorang tenaga IT kantor travel akan memasang sebuah printer baru untuk dapat digunakan oleh staf  frontdesk . Namun setelah dihubungkan, printer tersebut tidak langsung dapat digunakan. Analisis oleh anda mengapa hal tersebut terjadi? Sistem informasi harus dapat berkomunikasi dengan perangkat I/O yang ada. Printer yang baru dihubungkan ke komputer tidak dapat digunakan karena sistem tidak dapat bertukar informasi dengan hardware yang berada didalam komputer yang berhubungan dengan printer. Tenaga IT tersebut harus menginstall program driver khusus untuk printer pada komputer staf frontdesk agar komputer dan printer bisa saling bertukar data sehingga printer dapat digunakan. Dalam sebuah sistem operasi, Budi menjalankan banyak aplikasi sehingga komputer yang digunakan terjadi  “deadlock” . Analisis oleh Anda mengapa hal tersebut bisa terjadi! Deadlock adalah keadaan dimana sistem operasi terhenti karena setiap proses memiliki sumber daya yang tidak bisa dibagi dan me...
loading...