Kamis, 10 Desember 2009

ALGORITMA DAN FLOWCHART

ALGORITMA DAN FLOWCHART

Algoritma dan Flowchart

Pendahuluan

Beberapa langkah dalam proses pembuatan suatu program atau software :

1. Mendefinisikan masalah dan menganalisanya
Langkah awal yang harus dilakukan adalah mengidentifikasikan masalah antara lain tujuan dari pembuatan program, parameter-parameter yang digunakan, fasilitas apa saja yang akan disediakan oleh program. Kemudian menentukan metode atau algoritma apa yang akan diterapkan untuk menyelesaikan masalah tersebut dan terakhir menentukan bahasa program yang digunakan untuk pembuatan program.

2. Merealisasikan dengan langkah-langkah berikut :




Secara umum, struktur suatu program terdiri dari beberapa bagian yaitu :

1. Input
Bagian ini merupakan proses untuk memasukkan data ke komputer melalui device yang ada misalnya keyboard, mouse, scanner dll.
Program melakukan proses membaca data yang akan diolah dari device tersebut.

2. Output
Bagian ini merupakan proses untuk menampilkan data yang telah diolah, melaporkan hasil pegolahan data melalui device seperti monitor, printer dll. Program melakukan proses mencetak data ke device tersebut.

3. Proses Pengolahan Data
Bagian ini merupakan proses mengolah data yang diinputkan dengan nenerapkan metode-metode, teknik-teknik, algoritma-algoritma yang ada. Proses ini menghasilkan data output yang akan dioutputkan kepada pengguna program.

4. Penyimpanan Data
Bagian ini merupakan proses menyimpan data dalam memori atau device penyimpanan data seperti disket, harddisk, CD dll.

Berikut ini adalah blok diagram struktur dari suatu program secara umum.




ALGORITMA

Definisi:
Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis.
System flowchart adalah urutan proses dalam system dengan menunjukkan alat media input, output serta jenis media penyimpanan dalam proses pengolahan data.
Program flowchart adalah suatu bagan dengan simbol-simbol tertentu yang menggambarkan urutan proses secara mendetail dan hubungan antara suatu proses (instruksi) dengan proses lainnya dalam suatu program.
Pada umumnya algoritma kurang lebih sama dengan suatu prosedur yang sering dilakukan setiap hari, misalnya prosedur untuk mengganti ban bocor/pecah, prosedur pemakaian telepon umum, prosedur membuat kue dan lain-lain.
Langkah-langkah tersebut harus logis, ini berarti nilai kebenarannya harus dapat ditentukan, benar atau salah, karena langkah-langkah yang tidak benar dapat memberikan hasil yang salah.
Pedoman-pedoman dalam membuat flowchart
Jika seorang analis dan programmer akan membuat flowchart, ada beberapa petunjuk yang harus diperhatikan, seperti :
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.

Sampai sekarang terdapat banyak sekali bahasa pemrograman, berdasarkan terapannya bahasa pemrograman digolongkan dua kelompok;
1. Bahasa pemrograman bertujuan khusus, yang termasuk kelompok ini adalah Cobol (untuk terapan bisniS dan administrasi), Fortran (terapan komputasi ilmiah), prolog (terapan kecerdasan buatan).
2. Bahasa pemrograman bertujuan umum, yang dapat digunakan dalam berbagai aplikasi, contoh pascal, basic, c, c++.

Tahapan pelaksanaan program oleh komputer

Tahap-tahap penyusunan algoritma seringkali dimulai dari langkah yang global lebih dahulu, baru kemudian diperhalus dengan langkah-langkah yang lebih rinci.

Contoh : Buat algoritma untuk menentukan apakah suatu bilangan merupakan bilangan ganjil atau bilangan genap.
Algoritmanya :
1. Bagi bilangan dengan bilangan 2
2. Hitung sisa hasil bagi pada langkah 1.
3. Bila sisa hasil bagi sama dengan 0 maka bilangan itu adalah bilangan genap tetapi bila sisa hasil bagi sama dengan 1 maka bilangan itu adalah bilangan ganjil.

contoh lain:

Diberikan n buah data bilangan bulat yang tersusun secara acak, diminta untuk menyusun sebuah algoritma untuk mengurutkan sekumpulan data tersebut sehingga tersusun terurut dari nilai yang kecil ke nilai yang besar, misalkan n = 5, dengan data bilangan bulat yang yang belum terurut.

Data ke-1 = 10

Data ke-2 = 15

Data ke-3 = 5

Data ke-4 = 17

Data ke-5 = 2

Buat algoritma untuk mengurutkan data tersebut.

Penyelesaian:

Dari permasalahan tersebut dapat diselesaikan dengan menggunakan 3 algoritma berikut ini:

Algoritma Bahasa Manusia (Human Languages)

1. Mulai.

2. Memasukkan jumlah data (N) yang diinputkan.

3. Inisialisasi data (N) yang diinputkan.

4. Memasukkan data ke-1.

5. Memasukkan data ke-2.

6. Memasukkan data ke-3.

7. Memasukkan data ke-4.

8. Memasukkan data ke-5.

9. Inisialisasi data ke-1 sampai ke-5.

10. Jika data ke-5 <>

11. Jika data ke-4 <>

12. Jika data ke-3 <>

13. Jika data ke-2 <>

14. Jika data ke-1 > data ke-5, maka tukar data.

15. Ulangi proses pertukaran data dari akhir ke awal.

16. Cetak hasil data ke-1 hingga ke-5.

17. End (stop).

Ø Algoritma Pseudocode

1. Begin.

2. (Input) data N.

3. Inisialisation data N.

4. (Input) data ke-1=’10’.

5. (Input) data ke-2=’15’.

6. (Input) data ke-3=’5’.

7. (Input) data ke-4=’17’.

8. (Input) data ke-5=’2’.

9. Inisialisation data ke-1 (until) data ke-5.

10. Jika (if) data ke-5 > data ke-4, sorting.

11. Jika (if) data ke-4 > data ke-3, sorting.

12. Jika (if) data ke-3 > data ke-2, sorting.

13. Jika (if) data ke-2 > data ke-1, sorting.

14. Jika (if) data ke-1 <>

15. Ulangi (repeat).

16. Cetak (print) sorting value.

17. End (stop).


FLOWCHART
Flowchart adalah gambaran dalam bentuk diagram alir dari algoritma-algoritma dalam suatu program, yang menyatakan arah alur program tersebut.
Berikut adalah beberapa simbol yang digunakan dalam menggambar suatu flowchart :




Dari contoh algoritma di atas tentang menentukan apakah suatu bilangan adalah bilangan ganjil atau bilangan genap, flowchart dari program adalah sebagai berikut :




Untuk membuat flowchart banyak sekali aplikasi yang dapat digunakan, dari aplikasi yang offline maupun online. semua diciptakan dan disediakan untuk mempermudah dalam pembuatan flowchart. Dengan menggunakan microsoft word misalkan, kita sudah dapat memakainya tetapi kadang keterbatasan tools sehingga kita mengalami kesulitan. Alplikasi lain misalnya visio, merupakan salah satu aplikasi offline yang dapat digunakan, Aplikasi secara online salah satunya adalah Lovelychart. Software secara online ini menyediakan kemudahan untuk membuat flowchart.


3 komentar:

  1. kalo mo translete dari pseudo code ke flowchart tentang mengurutkan data tsb. gmn?

    BalasHapus
  2. bgus gan ... ada mengenai aljabar gan?

    BalasHapus
  3. Apa kata lain dari tanda berikut
    Count <<
    Cin >>

    Saya kurang paham.
    Yang saya paham hanya
    Printf(
    Scantf(

    Mohon pencerahannya ???

    BalasHapus