## Flowgorithm Sebagai Penunjang Pembelajaran Algoritma dan Pemrograman
Ni Nyoman Emang Smrti 1 , I Putu Gd Sukenada Andisana 2 , Ni Kadek Dwi Trisna Rahayu 3 , Adnan 4 , Pande Putu Ode Juliantara. KW 5
1,5 Jurusan Teknik Informatika STMIK Bandung Bali
2-4 Jurusan Sistem Informasi STMIK Bandung Bali Jln. P.B Sudirman Blok C no. 7X Denpasar
1 smrtinyoman@stmikbandungbali.ac.id
2 sukenadaandisana@stmikbandungbali.ac.id
3 trisnarahayu@stmikbandungbali.ac.id
4 adnan@stmikbandungbali.ac.id
5 odejuliantara@stmikbandungbali.ac.id
Intisari— Perkembangan teknologi  sangat pesat, banyaknya perangkat lunak yang memudahkan orang untuk belajar. Salah satunya belajar algoritma dan pemrograman yang mempelajari tahapan penyelesaian masalah yang efektif sehingga dapat diterjemahkan ke dalam  Bahasa  Pemrograman.  Salah  satu  standard yang  digunakan  untuk  menggambarkan  algoritma adalah  flowchart.  Flowchart adalah diagram yang digunakan untuk menggambarkan secara rinci tahapan penyelesaian masalah. Dengan menggunakan gambar suatu  tahapan  masalah  akan  lebih  mudah  untuk  dipahami.  Banyak  perangkat  lunak  yang  memberikan  kemudahan  dalam menggambar  flowchart  salah  satunya  adalah  Microsoft  Visio.  Manfaat  dari  Microsoft  Visio  adalah  memudahkan  orang  dalam menggambar flowchart, akan tetapi apa yang telah digambarkan tidak bisa diketahui hasilnya secara langsung.
Perangkat lunak yang memberikan kemudahan untuk membuat flowchart adalah  Flowgorithm. Sebelum Flowgorithm Logika  dan Algoritma  adalah  dasar  dari  Perangkat  lunak  ini  Penggunaannya  sangat  mudah  dan  juga  gratis,  sehingga  aplikasi  ini  banyak digunakan  pemula  dalam  mempelajari  algoritma.  Flowchart  yang  dibuat  dengan  menggunakan  flowgorithm  langsung  dapat dijalankan.  Flowgorithm  dapat  secara  interaktif  mengkonversi  flowchart  ke  lebih  dari  18  bahasa.  Ini  termasuk:  C#,  C++,  Java, JavaScript, Lua, Perl, Python, Ruby, Swift, Visual Basic.NET. Tujuan dari karya tulis ini adalah memberikan alternatif mempelajari algoritma pemrograman sebelum mempelajari bahasa pemrograman dengan menggunakan aplikasi flowgorithm.
Kata kunci— Aplikasi Flowgorithm, Flowchart, Algoritma, Bahasa Pemrograman, Logika Pemrograman
Abstract— Technological developments are very fast, there is a lot of software that makes it easier for people to learn. One of them is learning  algorithms  and  programming  which  studies  the  stages  of  effective  problem  solving  so  that  it  can  be  translated  into Programming Language. One of the standards used to describe algorithms is a flowchart. A flowchart is a diagram used to describe in detail the stages of solving a problem. By using a picture of a stage of the problem it will be easier to understand. Many  software programs  that  make  it  easy  to  draw  flowcharts,  one  of  which  is  Microsoft  Visio.  The  benefit  of  Microsoft  Visio  is  that  it  makes  it easier for people to draw flowcharts, but what has been described cannot be known directly. Software that makes it easy to  create flowcharts is Flowgorithm. Before Flowgorithm Logic and Algorithm is the basis of this software. Its use is very easy and also free, so this  application  is  widely  used  by  beginners  in  learning  algorithms.  Flowcharts  created  using  flowgorithm  can  be  run  directly. Flowgorithm can interactively convert flowcharts to more than 18 languages. These include: C#, C++, Java, JavaScript, Lua, Perl, Python, Ruby, Swift, Visual Basic .NET. The purpose of this paper is to provide an alternative to learning programming algorithms before learning programming languages using the flowgorithm application.
Keywords— Flowgorithm Application, Flowchart, Algorithm, Programming Language, Programming Logic

## I. P ENDAHULUAN
Algoritma  dipelajari  secara  khusus  pada  rumpun  ilmu komputer, karena algoritma menjadi dasar dari pemrograman. Definisi  algoritma  pada  buku Introduction  to  Algorithm [1], algoritma  adalah  prosedur  komputasi  yang  terdefinisi  dengan baik  yang  mengambil  beberapa  nilai,  atau  kumpulan  nilai, sebagai  masukan  dan  menghasilkan  beberapa  nilai,  atau kumpulan  nilai  sebagai  keluaran.  Dengan  kata  lain, memahami  algoritma  seperti  membuat  rute  jalan  untuk menuju  suatu  tujuan  dengan  lintasan  yang  terpendek  dan tepat .
Perkembangan teknologi  sangat pesat, banyaknya perangkat lunak  yang  memudahkan  orang  untuk  belajar.  Salah  satunya belajar  algoritma  yang  mempelajari  tahapan  penyelesaian masalah  yang  efektif  sehingga  dapat  diterjemahkan  ke  dalam Bahasa  Pemrograman.  Salah  satu  standard  yang  digunakan untuk  menggambarkan algoritma adalah flowchart. Flowchart adalah  diagram  yang  digunakan  untuk  menggambarkan sebuah  algoritma  yang  terstruktur  dan  mudah  dipahami  oleh orang  lain[2].  Dengan  menggunakan  gambar  suatu  tahapan masalah akan lebih mudah untuk dipahami. Banyak perangkat lunak  yang  memberikan  kemudahan  dalam  menggambar flowchart  salah satunya adalah Microsoft  Visio. Manfaat  dari
Microsoft Visio adalah memudahkan orang dalam menggambar  flowchart,  akan  tetapi  apa  yang  telah digambarkan  tidak  bisa  diketahui  hasilnya  secara  langsung, hanya  memudahkan  dalam  menggambar.  Perangkat  lunak yang dapat digunakan untuk menggambar flowchart sekaligus dapat  dijalankan  sehingga  dapat  diketahui  apakah  flowchart yang digambarkan sudah benar adalah flowgorithm. Perangkat lunak flowgorithm dapat  di download secara gratis pada situs Flowgorithm.org.  Flowgorithm  menampilkan  hal-hal  berikut: mudah  memahami  output;  dapat  menghasilkan code secara interaktif;  mendukung  rekursi, loop , array dan flexible expresion
Ketika  belajar  algoritma  khususnya  menggambar  flowchart, kesulitan  yang  dihadapai  adalah  apakah  gambar  flowchart yang  dibuat  itu  sudah  benar?  Apakah  output  yang  dihasilkan sudah  sesuai  dengan  yang  diharapkan?  Dari  permasalahan yang  dihadapi  tersebut  maka  dalam  karya  tulis  ini diperkenalkan perangkat lunak flowgorithm.

## II. M ETODOLOGI P ENELITIAN
Metode  dalam  penelitian  ini  adalah  kajian  pustaka  serta berdasarkan  penelitian  terdahulu  yang  membahas  tentang strategi  dalam mempelajari algoritma.
Pada  buku  Dasar  Logika  [4],  definisi        algoritma        adalah sekumpulan      langkah      rinci      yang      ditujukan      untuk komputer        dalam        menyelesaikan        suatu        masalah. Algoritma    dibuat    pada    tahapan    peracangan    program. Algoritma  memiliki  peranan  penting  untuk  menghubungkan antara    keluaran    yang    dikehendaki  dan  masukan-masukan yang tersedia.
Karakteristik    algoritma    pada  buku The  Art  of  Computer Programming : [5], yaitu:
1. Finiteness (Keterbatasan):  Algoritma  harus berakhir      setelah      melakukan     sejumlah      langkah proses.
2. Definiteness (Kepastian):  Setiap  langkah  algoritma harus    didefinisikan    dengan    tepat    dan    tidak menimbulkan makna ganda.
3. Input (Masukan):  Sebuah  algoritma  memiliki  nol atau  lebih  masukan  (input)  yang  diberikan  kepada algoritma sebelum dijalankan.
4. Output (Keluaran):  Setiap    algoritma    memberikan satu atau beberapa hasil keluaran
5. Effectiveness (Efektivitas) Langkah-langkah
algoritma        dikerjakan        dalam  waktu  yang “wajar”Menurut
Pada Buku Algoritma dan Pemrograman [6], sebuah algoritma dapat  dibangun    dari    tiga    buah    struktur    dasar,    yaitu struktur runtunan  ( sequence ),  struktur  pemilihan  ( selection ) dan      struktur      pengulangan  ( repetition ).      Runtunan  terdiri satu  atau  lebih  instruksi  yang  dikerjakan  secara  berurutan dengan        urutannya        dalam        algoritma.  Pemilihanya  itu instruksi  yang  dikerjakan  berdasarkan  kondisi    tertentu    atau syarat    tertentu    dimana   suatu  kondisi   atau   syarat    tersebut dapat    bernilai    benar    atau  salah.    Instruksi    akan dilaksanakan    manakala    kondisi  atau    syarat    bernilai  benar, dan  suatu  instruksi  tidak akan  dikerjakan  apabila  kondisi atau    syarat    tidak  terpenuhi.        Pengulangan        merupakan
pengulangan sejumlah   aksi   yang   sama   sebanyak   jumlah yang ditentukan atau kondisi yang diinginkan.
Pada  buku Fundamentals  of  System  Analysis [7]  definisi Flowchart  adalah  bagan  yang  menunjukkan  alir  di  dalam program  atau  prosedur  sistem  secara  logika.  Bagan  alir digunakan  terutama  untuk  alat  bantuk  komunikasi  dan  untuk komunikasi.
Menurut Jogiyanto [8] Ada lima macam bagan alir yaitu: 1. Bagan alir sistem ( system flowchart )
2. Bagan alir dokumen ( document flowchart )
3. Bagan alir skematik ( schematic flowchart )
4. Bagan alir program (program flowchart)
5. Bagan alir proses ( process flowchart )
Flowchart  yang  akan  dibahas  dalam  penelitian  ini  adalah program  flowchart.  Bagan  alir  program  ( program  flowchart ) merupakan  bagan  yang  menjelaskan  secara  rinci  Langkah- langkah  dari  proses  program.  Bagan  alir  program  dibuat  dari derivikasi  bagan  alir  sistem.  Bagan  alir  program  dibuat dengan menggunakan simbol-simbol berikut ini:
T ABEL I

## SIMBOL PROGRAM FLOWCHART
Simbol Keterangan
Input/Output Simbol  digunakan  untuk  mewakili  data input/output Proses Simbol proses digunakan untuk mewakili suatu proses Simbol garis alir ( flow lines symbol ) digunakan untuk menunjukan arus dari proses
Simbol penghubung ( connector symbol ) digunakan untuk menunjukkan sambungan dari bagan  alir  yang  terputus  di  halaman  yang masih sama atau di halaman yang berbeda Simbol keputusan (decision) Digunakan untuk suatu penyeleksian kondisi di dalam program Simbol  Proses  Terdefinisi  (predefined  process symbol)
Digunakan  untuk  menunjukkan  suatu  operasi yang rinciannya ditunjukkan di tempat lain Simbol persiapan (preparation symbol) Digunakan  untuk  memberi  nilai  awal  suatu besaran Simbol Titik Terminal (terminal point symbol)
Digunakan untuk menunjukkan awal dan akhir dan suatu proses Artikel jurnal Pembelajaran Dasar Algoritma dan Pemrograman  Menggunakan  El-Goritma  Berbasis  Web  di Jurnal  Teknik Mesin  [9]  Pengertian algoritma adalah susunan yang  logis  dan  sistematis  untuk  memecahkan  suatu  masalah atau  untuk  mencapai  tujuan  tertentu.  Dalam  dunia  komputer, algoritma  sangat  berperan  penting  dalam  pembangunan  suatu software.  Dalam  dunia  sehari-hari,  mungkin  tanpa  kita  sadari algoritma telah masuk dalam kehidupan kita.
Artikel  jurnal  Pengaruah  Penerapan  Algoritma  terhadap Pembelajaran  Pemrograman  Komputer  di  jurnal  Inovasi Pendidikan  Matematika  (INDIKTIKA)  [10],  disimpulkan bahwa  bahwa  hasil  belajar  mahasiswa  setelah  diterapkan algoritma  dalam  setiap  penyelesain  pemrograman  lebih  baik
daripada mahasiswa yang memperoleh pembelajaran konvensional.
Paper seminar Pengenalan Algoritma Pemrograman Melalui Simulasi  Robot  di  Seminar  Nasional  Informatika  [11], dikatakan  dengan  menggunakan  metode  simulasi  robot diharapkan  dapat  menumbuhkan  minat  programmer  terhadap pemrograman.  Karena  dengan  visualisasi  secara  langsung akan memicu para pengguna untuk  bisa selalu mencoba-coba dengan metode yang bermacam-macam.
Artikel jurnal Memahami Algoritma Pemrograman (Analisis Pembelajaran  dalam  Implementasi    Software)  di  Jurnal Teknologi  Pendidikan  (Teknodik)  [12],  dikatakan  bahwa melalui  Pembelajaran  Algoritma  Pemrograman  diharapkan dapat  menemukan    dan    merekonstruksi    konsep-konsep logika  pemrograman    atau  pengetahuan  pemograman  formal. Selanjutnya  diberi    kesempatan    menerapkan   konsep-konsep logika  pemrograman    untuk    memecahkan    masalah-masalah sehari-hari atau masalah dalam bidang lain. Dengan kata lain, pembelajaran  algoritma        pemograman    berorientasi    pada logika   pengalaman  sehari-hari,   dan   menerapkan    algoritma pemrograman    dalam  kehidupan    sehari-hari,    sehingga mahasiswa  belajar  dengan bermakna

## III. H ASIL DAN P EMBAHASAN
A. Cara Download Flowgorithm Flowgorithm  dapat  di  download  pada  situs  flowgorithm[3] Setelah  halaman  web  flowgorithm  terbuka  akan  terlihat seperti pada gambar 1 di bawah ini.
Gambar 1. Halaman Web Flowgorithm
Langkah berikutnya sebagai berikut:
1. Klik menu download .
2. Pilih  sesuai  dengan  sistem  operasi  yang  digunakan, kemudian download.
3. Apabila  sudah  sukses  download  seperti  terlihat  pada gambar  2  di  bawah  ini,  kemudian  lanjutkan  dengan setup.
4. Selanjutnya klik next.
5. Dilanjutkan dengan pilih I Agree , kemudian tekan next.
Gambar 2 Proses Setup
B. Simbol-simbol pada flowgorithm (shapes )
Simbol-simbol  yang  digunakan  pada  flowgorithm,  sama dengan  simbol-simbol  yang  digunakan  pada  flowchart. Berikut simbol-simbol yang digunakan pada flowgorithm 1. Assignment Shape
Simbol Assignment digunakan untuk menyimpan hasil perhitungan ke dalam sebuah variabel. Ini adalah salah satu tugas paling umum yang ditemukan dalam program. Berikut gambar Assignment Shape

## Gambar 3 Assignment

## 2. Breakpoint Shape
Breakpoint  Shape  menghentikan  eksekusi  program.  Ini berguna  baik  untuk  program  debugging  dan  untuk demonstrasi.  Sebagian  besar  aplikasi  pengembangan perangkat  lunak  profesional  memiliki  beberapa  bentuk breakpoint. Berikut gambar breakpoin shape.

## Gambar 4 Breakpoint Shape

## 3. Call Shape
Pernyataan Panggilan mentransfer kontrol ke suatu fungsi. Informasi  yang  diteruskan  ke  fungsi  disebut  'argumen'. Berikut gambar call shape.

## Gambar 5 Call Shape

## 4. Comment Shape
Komentar  tidak  memengaruhi  cara  program  berjalan.  Call shape  digunakan  untuk  memasukkan  dokumentasi.  Berikut gambar comment shape

## 5. Declare Shape
Simbol  deklarasi  digunakan  untuk  mendefinisikan  variabel dan array. Apabila ada lebih dari satu variabel yang memiliki tipe  data  yang  sama  dapat  mendeklarasikan  sekaligus  yaitu dengan  memisahkan  nama  variabel  dengan  koma.  Berikut gambar simbol declare

## Gambar 7 Declare Shape

## 6. Do Shape
Do  digunakan  untuk  perulangan.  Perulangan  Do    mirip dengan  Perulangan  While,  perbedaannya  adalah  pengecekan ekspresi perulangannya ada di akhir dari perulangan, sehingga blok pernyataan dieksekusi sedikitnya sekali sebelum ekspresi diperiksa. Berikut gambar dari Do Shape

## Gambar 8 Do Shape
7. For Shape
Perulangan yang  menaikkan variabel secara otomatis pada rentang nilai yang dapat ditentukan. Perulangan ini sama dengan while hanya saja jumlah perulangannya sudah ditentukan dengan memasukkan nilai awal dan nilai akhir perulangan. Berikut gambar for shape.

## Gambar 9 For Shape
8. While Shape
While  shape  mengevaluasi  ekspresi  Boolean  dan  kemudian, jika benar, mengeksekusi blok pernyataan. Setelah pernyataan dieksekusi,  Pernyataan  Sementara  memeriksa  ulang  ekspresi. Ketika ekspresi salah, perulangan akan  berakhir. Berikut gambar dari while shape

## Gambar 10 While Shape
9. If Shape
If Shape memeriksa ekspresi Boolean dan kemudian mengeksekusi cabang benar atau salah berdasarkan hasilnya. Berikut gambar dari If shape.
Gambar 11 If Shape 10. Input Shape Pernyataan Input membaca nilai dari keyboard dan menyimpan hasilnya dalam variabel. Berikut gambar input shape. Berikut gambar Input Shape
Gambar 12 Input Shape
11. Output Shape Pernyataan Output mengevaluasi ekspresi dan kemudian menampilkan hasilnya di layar. Berikut gambar output shape.

## Gambar 13 Output Shape
C. Cara menggunakan perangkat lunak flowgorithm Setelah  proses  download  dan  setup  perangkat  lunak flowgorithm sukses, maka flowgorithm siap untuk digunakan. Tampilan  awal  setelah  program  flowgorithm  di  buka  akan tampak seperti gambar 14 di bawah ini

## Gambar 14 Tampilan Awal Flowgorithm
Pada  gambar  14  tampak  awal  dan  akhir  dari  flowchart  sudah tersedia  yaitu  main  dan  end.  Simbol  awal  dan  akhir  sebuah flowchart  disebut  terminal.  Selanjutnya  untuk  dapat menuliskan flowchart  dengan menggunakan flowgorithm  klik pada  garis  antara  main  dan  end,  sehingga  tampak  seperti gambar 15 di bawah ini.

## Gambar 16 Tampilan pilihan shape
Pada  Gambar  16  di  atas  tampak  piliha  shape  yang  akan digunakan, sesuai dengan flowchart yang akan dibuat.
D. Tipe Data pada Flowgorithm
Tipe  data  yang  tersedia  pada  flowgorithm  lebih  sederhana dibandingkan  dengan  bahasa  pemrograman,  berikut  tipe  data pada Flowgorithm.
1. Integer
Tipe data Integer adalah salah satu tipe yang paling umum digunakan  dalam  pemrograman. Tipe  data  integer  dapat menyimpan bilangan bulat positif atau negatif, tetapi tidak
dapat menyimpan nilai pecahan. Jadi, ia dapat menyimpan nilai seperti a. 5
b. 42 c. 1945
tetapi tidak dapat menyimpan angka seperti
a. 3,2 b. 4,5
Jika  angka  dengan  nilai  pecahan  disimpan  menjadi bilangan  bulat,  nilai  pecahan  akan  dibuang. Oleh  karena itu,  jika  3,2  disimpan  menjadi  bilangan  bulat,  itu  hanya akan mempertahankan 3.
2. Real
Tipe  data  Real  dapat  menyimpan  bilangan  apa  saja,  baik bilangan bulat maupun bilangan dengan nilai pecahan. Dalam  banyak  bahasa,  ini  disebut  Double,  ada juga yang menyebutnya float.
3. String
Tipe  data  String  digunakan  untuk  menyimpan  data  teks apa pun. Ini  termasuk kata-kata, huruf, atau apa pun yang berbentuk teks.
Dalam  pemrograman,  teks  dibatasi  dengan  tanda  kutip ganda.  Misalnya:  "Jl.  Jendral  Sudirman  99  ",  "komputer" dan "Dayu Santi"
4. Boolean Tipe Data Boolean dapat menyimpan "benar" atau "salah".
Tipe  data  ini  digunakan  sebagai    dasar  pengambilan keputusan dalam program komputer.
5. Array
Tipe  data ini  digunakan  untuk  menyimpan  data  lebih  dari satu  tetapi  memiliki  tipe  yang  sama.  Nama  variabel  tipe data  array  ini  sama,  untuk  membedakan  antara  data pertama  dengan  kedua  dan  seterusnya  ditandai  dengan index di mulai dari 0 hingga batas tertentu yang ditentukan oleh programmer yang sesuai dengan kebutuhan.
E. Pengidentifikasi ( Identifiers )
Setiap kali mendefinisikan fungsi atau variabel, harus diberi nama  unik  yang  disebut  "pengidentifikasi".  Untuk  mencegah pengidentifikasi  menjadi  sama  dengan  item  lain  dalam ekspresi,  maka  harus  mengikuti  aturan  atau  konvensi penamaan.
Dalam  Flowgorithm,  pengidentifikasi  harus  mematuhi  aturan berikut:
1. Harus mulai dengan huruf
2. Setelah huruf pertama, pengenal dapat berisi huruf atau angka tambahan.
3. Spasi tidak diperbolehkan
4. Beberapa  bahasa  pemrograman  mengijinkan  garis bawah ( underscore ) dapat digunakan untuk pengidentifikasi, namun pada Flowgorithm penggunakan garis bawah tidak diperkenankan.
5. Pengidentifikasi  tidak  peka  huruf  besar  maupun  kecil ( identifiers are not case-sensitive ), sama seperti Bahasa Pascal.
6. Sama  seperti  bahasa  pemrograman,  pengidentifikasi tidak  diperkenan  menggunakan reserved  word atau keyword . Reserved  word atau keyword adalah  kata-kata  yang  tidak boleh  digunakan  sebagai  pengidentifikasi,  karena  kata-kata
tersebut telah digunakan sebagai statement pada flowgorithm. Berikut reserved  word atau keyword pada  flowgorithm:  And, Not, Or, False, True, Phi, Mod, Boolean. Integer, Real, String Flowgorithm  tidak  mengizinkan  nama-nama  fungsi  intrinsik untuk  digunakan  sebagai  pengidentifikasi    yaitu  abs,  arccos, arcsin, arctan, char, cos, int len, log, log10, random, sgn, sin, size, sqrt, tan, tochar, tocode, tofixed, tointerger, tostring  dan toreal.
F. Pedoman membuat flowchart
Jika  seorang  analis  dan  programmer  akan  membuat flowchart,  ada  beberapa  petunjuk  yang  harus  diperhatikan, seperti : [13]
1. Flowchart  digambarkan  dari  halaman  atas  ke  bawah  dan dari kiri ke kanan.
2. Aktivitas  yang  digambarkan  harus  didefinisikan  secara hati-hati  dan  definisi  ini  harus  dapat  dimengerti  oleh pembacanya.
3. Kapan  aktivitas  dimulai  dan  berakhir  harus  ditentukan secara jelas.
4. Setiap  langkah  dari  aktivitas  harus  diuraikan  dengan menggunakan  deskripsi  kata  kerja,  misalkan  Melakukan penggandaan diri.
5. Setiap  langkah  dari  aktivitas  harus  berada  pada  urutan yang benar.
6. Lingkup dan range dari aktifitas yang sedang digambarkan harus ditelusuri dengan hati-hati.
Percabangan-percabangan  yang  memotong  aktivitas  yang sedang  digambarkan  tidak  perlu  digambarkan  pada flowchart yang sama.
Simbol  konektor  harus  digunakan  dan  percabangannya diletakan  pada  halaman  yang  terpisah  atau  hilangkan seluruhnya  bila  percabangannya  tidak  berkaitan  dengan sistem.
7. Gunakan simbol-simbol flowchart yang standar.
G. Struktur Dasar Algoritma
Pada pedoman pembuatan flowchart dikatakan bahwa untuk membuat  flowchart  diperlukan  ketelitian  dan  ketaatan penggunaan  simbol-simbol  flowchart,  akan  tetapi  dengan menggunakan  flowgorithm  ketaatan  dalam  menggunakan simbol  diberikan  kemudahan  dengan  setiap  shape  diberikan keterangan serta format sintaknya.
Sebuah algoritma dapat  dibangun  dari  tiga  buah  struktur dasar,  yaitu:
1. Struktur runtunan  ( sequence )
Struktur  runutan  adalah  struktur  algoritma  yang      terdiri satu atau lebih instruksi yang dikerjakan secara berurutan. Contohnya  algoritma  runtunan  adalah  algoritma  untuk menghitung luas segitiga. Rumus menghitung luas segitiga adalah sebagai berikut: Luas = ½ * alas * tinggi. Jadi untuk menghitung luas segitiga diperlukan dua varibel yang  untuk  menampung  nilai  alas  dan  tinggi.    Satu  buah variable  luas  digunakan  untuk  menampung  hasil  dari perhitungan luas. Berikut flowchart untuk menghitung luas segitiga yang menggunakan flowgorithm.

## Gambar 17 Flowchart Menghitung Luas Segitiga
Flowchart yang digambarkan pada gambar 17, jika di-run maka hasilnya akan tampak pada gambar 18, dengan catatan alas di-input-kan 10 dan tinggi di-input-kan 20.
Gambar 18 Hasil dari flowchart pada
Bila dihitung secara manual Alas  =  10  dan  tinggi  =  20  maka  hasil  yang  diperoleh adalah luas = 0,5 * 20 * 10 =10. Kesimpulannya flowchart yang  pada  gambar  17  hasilnya  sesuai  dengan  yang diharapkan.
2. Struktur  Pemilihan  ( selection )
Struktur  pemilihan  adalah  instruksi  yang  dikerjakan berdasarkan kondisi  tertentu  atau  syarat  tertentu  dimana suatu kondisi  atau  syarat  tersebut  dapat  bernilai  benar atau  salah.    Instruksi    akan    dilaksanakan    manakala kondisi  atau    syarat    bernilai  benar,   dan   suatu   instruksi tidak akan  dikerjakan  apabila  kondisi  atau  syarat  tidak terpenuhi.   Berikut gambar flowchart kondisi [14]

## Gambar 19 Flowchart kondisi
Contoh  algoritma  untuk  menghitung  berat  badan  ideal. Berat badan ideal dihitung berdasarkan jenis kelamin, jika wanita  rumusnya  berat  badan  ideal  sebagai  berikut:  Berat badan ideal wanita = (tinggi badan - 100) -((tinggi badan- 100)*15%)
Jika jenis kelamin laki-laki rumusnya sebagai berikut: Berat badan ideal laki-laki = (tinggi badan - 100) -((tinggi badan-100)*10%).  Untuk  mengetahui  berat  ideal,  diawali dengan mengisi  jenis kelamin serta tingginya[15]. Berikut gambar flowchart untuk menghitung berat badan.
Apabila flowchart yang digambarkan pada gambar 20, jika di- run  maka  hasilnya  akan  tampak  pada  gambar  21,  dengan catatan  jenis  kelamin  yang  di-input-kan  =  W,  yang  artinya Wanita dan berat badan di-input-kan =155.

## Gambar 21 Menghitung Berat Ideal
Bila dihitung manual jika inputnya jenis kelaminnya wanita dan tinggi badannya 155 adalah sebagai berikut: Berat badan ideal wanita = (tinggi badan - 100)-((tinggi badan-100)*15%
Berat badan ideal Wanita = (155-100) – ((155-100)*15/100) = 55 – (55*15/100) = 55 – 8,25 = 46,75 Kesimpulannya flowchart yang pada gambar 20 yaitu menghitung berat badan ideal hasilnya sesuai dengan yang diharapkan.
3. Struktur   pengulangan ( repetition ).
Struktur  pengulangan        merupakan        pengulangan sejumlah   aksi    yang   sama   sebanyak   jumlah   yang ditentukan  atau  kondisi  yang  diinginkan.  Struktur perulangan  pada  flowgorithm  ada  3  yaitu  do,  while  dan for.  Flowchart  untuk  mencetak  angka  1  sampai  5  dengan menggunakan for dapat dilihat pada gambar 22
Gambar 22 Perulangan 1 sampai 5 dengan menggunakan for
Flowchart  pada  gambar  22,  bila  di-run  akan  menghasilkan yang tampak pada gambar 23.

## Gambar 23 Perulangan For
H. Error pada Flowgorithm Dalam  menggambar  flowchart  dengan  menggunakan flowgorithm,  apabila  ada  salah  dalam  penulisan  atau  tidak sesuai dengan ketentuan, maka akan tampil pesan error. Berikut pesan error pada flowgorithm 1. Variable Not Declared
Pesan  error  ini  disebabkan  varibel  yang  digunakan  tidak dideklarasikan.  Contoh  dari  kesalahan  Varibel  Not Declared dapat dilihat pada gambar 24 di bawah ini:

## Gambar 24 Error Variable Not Declared
Dari  gambar  flowchart  pada  gambar  24  terlihat  variabel  i digunakan, tetapi tidak dideklarasikan.
2. Type Mismatch Error Type Mismatch akan muncul, bila tipe data  variabel yang  dideklarasikan  tidak  sesuai.  Contoh  flowchart  salah yang menimbulkan error type mismatch dapat dilihat pada gambar 25

## Gambar 25 Type Mismatch

## 3. Incomplete Statement
Error  Incomplete  Statemen t  akan  muncul,  bila  perintah yang  dituliskan  dalam  flowchart  tidak  lengkap.  Berikut contoh  kasus  error  incomplete  statement  terlihat  pada gambar 26

## Gambar 26 Error Incomplete Statement
Error  incomplete  statement yang  terlihat  pada  gambar  26, karena pada shape assign tidak ada perintah yang dituliskan.

## I. Konversi ke Bahasa Pemrograman
Flowgorithm  juga  menyediakan  konversi  ke  lebih  dari  20 bahasa  pemrograman  termasuk  C#,  C++,  Java,  JavaScript, Lua,  Perl,  Python,  Ruby,  Swift,  Visual  Basic.NET.  Berikut contoh  flowchart  yang  Digambar  menggunakan  flowgorithm dan  dikonversi  ke  Bahasa  C++.  Flowchart  ini  menginputkan sembarang  bilangan  dan  outputnya  genap  atau  ganjil  sesuai dengan bilangan yang diinputkan.
Gambar 27 Flowchart menentukan bilangan genap dan ganjil
Hasil  konversi  flowchart  pada  gambar  27  ke  bahasa  C++ dapat dilihat pada gambar 28
Gambar 29 Hasil konversi ke bahasa pemrograman C++

## IV. KESIMPULAN
Dari  hasil  kajian  Pustaka,  flowgorithm  sangat  membantu pemula  dalam  belajar  algoritma  dan  pemrograman,  khsusnya pada  materi  flowchart,  kemudahan  tersebut  adalah  sebagai berikut:
1. Untuk  membuktikan  kebenaran  dari  flowchart  yang digambar  tidak  diperlukan  bahasa  pemrograman.  Dengan menggunakan  flowgorithm  gambar  flowchart  yang  dibuat bisa langsung dikonversi ke banyak bahasa pemrograman.
2. Dalam menggambar flowchart harus mengikuti aturan dari simbol-simbol yang baku. Dengan menggunakan flowgorithm dapat dipastikan simbol yang digunakan pasti baku.
3. Kesalahan  tata  penulisan  (sintak)  pada  saat  menggambar flowchart  sangat  mungkin  terjadi,  namun  dengan menggunakan  flowgorithm,  gambar  flowchart  dapat  di complie, sehingga  kesalahan  dalam  penulisan  dapat terdeteksi,  sehingga  pengguna  dapat  dengan  mudah memperbaikinya
4. Gambar  yang  dihasilkan  lebih  rapi  bila  menggunakan flowgorithm.

## R EFERENSI
[1] Thomas  H.  Cormen,  Charles  E.  Leiserson,  Ronald  L.  Rivest,  Clifford Stein,  Introduction  to  Algorithms,  The  MIT  Press;  3rd  edition  July  31, 2009
[2] Lamhot Sitorus, Algoritma dan Pemrograman, Andi, Yogyakarta, 2015
[3] Flowgorithm. http://www.flowgorithm.org/
[4] Abdul Kadir, Dasar   Logika   Pemrograman Komputer, Cetakan Kedua. Elexmedia Komputindo, 2018
[5] Donald  E.  Knuth,  The  art  of  computer  programming:  Vol,  Addison- Wesley Publishing Company, 1973
[6] Rinaldi Munir, Leony Lidya, Algoritma dan pemrograman : dalam bahasa pascal, C, dan C++, Edisi keenam, Cekakan Pertama,
Bandung:Informatika,2016
[7] Jerry FitzGerald, Ardra FitzGerald, Warren D. Stalling, Fundamentals of System Analysis, Edisi kedua, New York, John Willey & Sons, 1981
[8] Jogiyanto HM, Analisa dan Desain, Andi, Yogyakarta, 1989
[9] Gun-gun  Maulana,  Pembelajaran  Dasar  Algoritma  dan  pemrograman Menggunakan  El-Goritma  Berbasis  Web,  Jurnal  Teknik  Mesin(JTK), Vol.06, Edisi Spesial 2017
[10] Allen  Marga  Retta,  Asnurul  Isroqmi,  Tika  Dwi  Nopriyanti,  Pengaruh Penerapan  Algoritma  Terhadap  Pembelajaran  Pemrograman  Komputer, Jurnal  Inovasi  Pendidikan  Matematika  (Indiktika)  Vol2,  No2,  Hl.  126- 135, Palembang, 2020
[11] Abdi  Nugroho,  Pengenalan  Algoritma  Pemrograman  Melalui  Simulasi Robot,  15th  Seminar  Nasional  Informatika,  Prosiding  Semnasif,
Yogyakarta, 2022
[12] Yuni Sugiarti,
Memahami Algoritma Pemrograman (Analisis
Pembelajaran  dalam  Implementasi    Software),  Jurnal  Teknologi Pendidikan  (Teknodik),  No.    16/IX/TEKNODIK/JUNI/2005,  Tangerang Selatan, 2005.
[13] . Flowcart,https://ilmukomputer.org/wpcontent/uploads/2009/06/anharku- flowchart.pdf
[14] Lina Firliana, M.Kom dkk, Algoritma dan Pemrograman C++, Aji Media Nusantaran, Nganjuk, 2018
[15] Helodoc, https://www.halodoc.com/artikel/catat-begini-cara-hitung-berat- badan-ideal-yang-tepat
[16] Renaldi Munir dkk, Algoritma dan Pemrograman Edisi Keenam, Cetakan Pertama, Informatika Bandung, 2016