Top Banner
HOW TO THINK Algoritma dan Flowchart DASAR PEMROGRAMAN by: Ahmad Syauqi Ahsan Modified : Dian Syafitri Khasnur Hidjah Den Askhari
25

01 pengantar algoritma & flowchart

Dec 18, 2014

Download

Documents

Den Askhari

 
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 01 pengantar algoritma & flowchart

HOW TO THINK

Algoritma dan Flowchart

DASAR PEMROGRAMANby: Ahmad Syauqi Ahsan

Modified : Dian Syafitri Khasnur Hidjah

Den Askhari

Page 2: 01 pengantar algoritma & flowchart

Objectives2

Setelah menyelesaikan bab ini,anda diharapkan dapat: Mengerti tentang algoritma. Membuat algoritma dari suatu

permasalahan. Mengerti tentang flowchart. Membuat flowchart dari suatu

permasalahan.

Page 3: 01 pengantar algoritma & flowchart

Sistem Komputer• Sebuah sistem komputer terdiri dari:

3

Hardware

Page 4: 01 pengantar algoritma & flowchart

Sistem Komputer• Software dapat dikelompokkan menjadi:

4

Operating System

Programming Language

AplicationProgram

Page 5: 01 pengantar algoritma & flowchart

Tahapan Pembuatan Program5

Mengerti permasalahan yang akan diselesaikan. Input layout Proses-proses Output layout

Menganalisa penyelesaian masalah.Membuat algoritma dan flowchart.Menulis program.Melakukan testing program selesai.Membuat dokumentasi

Page 6: 01 pengantar algoritma & flowchart

Algoritma• Asal kata Algoritma

berasal dari nama Abu Ja’far Mohammed Ibn Musa al-Khowarizmi

• Ilmuan Persia yang menulis kitab al jabr w’al-muqabala (rules of restoration and reduction)

• Tahun 825 M • Berasal dari Iran

6

Page 7: 01 pengantar algoritma & flowchart

Definisi Algoritma7

Algoritma adalah urutan langkah logis tertentu untuk memecahkan suatu masalah. Urutan langkah logis, yang berarti algoritma harus

mengikuti suatu urutan tertentu, tidak boleh melompat-lompat.

(Dari Microsoft Press Computer and Internet Dictionaary 1997, 1998)

Alur pemikiran dalam menyelesaikan suatu pekerjaan yang dituangkan secara tertulis. Alur pikiran, sehingga algoritma seseorang dapat juga

berbeda dari algoritma orang lain. Tertulis, yang artinya dapat berupa kalimat, gambar, atau

tabel tertentu. (Dari Algoritma dan Struktur Data dengan C, C++, dan

Java oleh Moh Sjukani hal 1)

Page 8: 01 pengantar algoritma & flowchart

Contoh Algoritma

dalamkehidupansehari-hari

8

Page 9: 01 pengantar algoritma & flowchart

Algoritma dalam bidang Komputer9

Dalam bidang komputer, algoritma sangat diperlukan dalam menyelesaikan berbagai masalah pemrograman, terutama dalam komputasi numeris.

Tanpa algoritma yang dirancang baik maka proses pemrograman akan menjadi salah, rusak, atau lambat dan tidak efisien

Page 10: 01 pengantar algoritma & flowchart

Manusia - Komputer10

Pelaksana algoritma adalah Komputer.Manusia dan komputer berkomunikasi dengan

cara: manusia memberikan perintah-perintah kepada komputer berupa instruksi-instruksi yang disebut program.

Alat yang digunakan untuk membuat program tersebut adalah bahasa pemrograman.

Bahasa pemrograman sangat bermacam-macam: C, C++, Pascal, Java, C#, Basic, Perl, PHP, ASP, JSP, J#, J++ dan masih banyak bahasa lainnya. Dari berbagai bahasa pemrograman cara memberikan instruksinya berbeda-beda namun bertujuan menghasilkan output yang sama

Page 11: 01 pengantar algoritma & flowchart

Tingkat Bhs Pemrograman

Bahasa tingkat rendah (mesin) : Assembler

Bahasa tingkat tinggi (bahasa manusia)Semua bahasa pemrograman selain

assembler

11

Page 12: 01 pengantar algoritma & flowchart

Berdasarkan Platform BP dibagi menjadi

Pemrograman Desktop : Pascal, delphi, VB, Java (J2SE), Fortran dll

Pemrograman Mobile : Java (J2ME), Flash.

Pemrograman Web : PHP, JSP, Javascript, XML, HTML, Ajax, CSS dll

Pemrograman Network : Delphi, VD, JAva, PHP.

12

Page 13: 01 pengantar algoritma & flowchart

Kriteria Algoritma (Donald E. Knuth)

13

Input: algoritma dapat memiliki nol atau lebih inputan dari luar.

Output: algoritma harus memiliki minimal satu buah output keluaran.

Definiteness (pasti): algoritma memiliki instruksi-instruksi yang jelas dan tidak ambigu.

Finiteness (ada batas): algoritma harus memiliki titik berhenti (stopping role).

Effectiveness (tepat dan efisien): algoritma sebisa mungkin harus dapat dilaksanakan dan efektif. Contoh instruksi yang tidak efektif adalah: A = A + 0 atau A = A * 1

Namun ada beberapa program yang memang dirancang untuk

unterminatable: contoh Sistem Operasi

Page 14: 01 pengantar algoritma & flowchart

Struktur Algoritma

Bagian Kepala (Header) memuat nama dan informasi tentang algoritma yang

dibuat

Bagian Deklarasi/Definisi Variabel memuat definisi tentang nama variabel, konstanta,

prosedur, fungsi, tipe data yang digunakan

Bagian Deskripsi/Rincian Langkah memuat langkah-langkah penyelesaian masalah

Page 15: 01 pengantar algoritma & flowchart

Contoh Algoritma

Algoritma Luas Lingkaran{menghitung luas lingkaran apabila jari-jarinya diketahui}Deklarasi1.Deklarasi phi = 3.142.Deklarasi jari-jari, luas;Deskripsi3.Input jari-jari4.Hitung luas = phi * jari-jari * jari-jari5.Cetak luas;

Algoritma Luas Lingkaran{menghitung luas lingkaran apabila jari-jarinya diketahui}Deklarasi{Definisi nama tetapan}

const phi = 3.14;{Definisi nama variabel}

real jari-jari, luas;Deskripsi

read(jari-jari);luas = phi * jari-jari * jari-jariwrite(luas);

Page 16: 01 pengantar algoritma & flowchart

Flowchart16

Bagan-bagan yang mempunyai arus yang menggambarkan langkah-langkah penyelesaian suatu masalah.

Merupakan cara penyajian dari suatu algoritma.

Ada 2 macam Flowchart: System Flowchart Flowchart yang

menggambarkan prosedur dari sebuah proses pengolahan data.

Program Flowchart urutan instruksi yang digambarkan dengan symbol tertentu untuk memecahkan masalah dalam suatu program.

Page 17: 01 pengantar algoritma & flowchart

SIMBOL FLOWCHART SYSTEM

17

Page 18: 01 pengantar algoritma & flowchart

18

Page 19: 01 pengantar algoritma & flowchart

Contoh Flowchart System

19

Datajawaban

ujian

Koreks i

Daftar Koreks iData

Fileutamaujian

Tabel Siswa

PeriksaUjian

Files iswalulus

LaporanHasilUjian

Page 20: 01 pengantar algoritma & flowchart

SIMBOL FLOWCHART PROGRAM

20

Page 21: 01 pengantar algoritma & flowchart

Contoh Program Flowchart

21

Start

Print Judul

READData

Akhirfile ?

End

Kode = "P"PRINT

Nama, Alamat"Perempuan"

Ya

Tidak

Ya

Tidak

Page 22: 01 pengantar algoritma & flowchart

Pembuatan Flowchart 22

Tidak ada kaidah yang baku.Flowchart = gambaran hasil analisa suatu

masalah Flowchart dapat bervariasi antara satu pemrogram dengan pemrogram lainnya.

Secara garis besar ada 3 bagian utama: Input Proses Output

Page 23: 01 pengantar algoritma & flowchart

Pembuatan Flowchart - continued23

Hindari pengulangan proses yang tidak perlu dan logika yang berbelit sehingga jalannya proses menjadi singkat.

Jalannya proses digambarkan dari atas ke bawah dan diberikan tanda panah untuk memperjelas.

Sebuah flowchart diawali dari satu titik START dan diakhiri dengan END.

Page 24: 01 pengantar algoritma & flowchart

Contoh Flowchart24

Hitung lagi ?

START

END

x2 = x * x

Readx = ?

Writex2

Buat variabelx, x2 = integer

T

Y

1. Mulai

2. Buat variabel X dan X2

3. Masukkan nilai X

4. Hitung X2 = X*X

5. Cetak X2

6. Pertanyaan Kondisi :Hitung Lagi?

7. Jika Ya mengulang langkah 2

8. Jika Tidak selesai

Page 25: 01 pengantar algoritma & flowchart

Again Another Example

Cetak B

Mulai

Selesai

Input A,B

A > B ? Cetak AY

N

1. Mulai

2. Masukkan nilai A dan B

3. Pertanyaan seleksi : apakah A>B

4. Jika Benar Cetak A

5. Jika Salah Cetak B

6. Selesai