materi 2. pengertian dasar algoritma

28
PENGERTIAN DASAR ALGORITMA PEMROGRAMAN Algoritma Pemrograman Drs. Lamhot Sitorus, M.Kom Fakultas Ilmu Komputer Universitas Katolik Santo Thomas

Upload: melva-amma-kalian

Post on 05-Dec-2014

5.236 views

Category:

Documents


5 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Materi 2. pengertian dasar algoritma

PENGERTIAN DASAR ALGORITMA PEMROGRAMAN

Algoritma Pemrograman

Drs. Lamhot Sitorus, M.KomFakultas Ilmu Komputer

Universitas Katolik Santo Thomas

Page 2: Materi 2. pengertian dasar algoritma

2

Pengertian

• AKSI???• Suatu Aksi adalah kejadian yang terjadi pada suatu

selang waktu terbatas dan menghasilkan efek neto yang telah terdefinisi dengan baik dan memang direncanakan.

• “direncanakan” berarti dititik beratkan pada kegunaannya.

• Jika seseorang tertarik pada suatu aksi, maka jelas bahwa minatnya adalah pada efek netonya.

• Aksi dimulai saat “t0” dan berakhir pada saat “t1”.

Page 3: Materi 2. pengertian dasar algoritma

3

Pengertian

• Contoh suatu aksi adalah “IBU TATI MENGUPAS KENTANG” untuk mempersiapkan makan malam. Pernyataan ini mencakup hal yang luas ruang lingkupnya, misalnya :– Apakah kentangnya harus dibeli lagi atau sudah ada

di dapur?– Apakah yang dimaksud untuk makan malam berarti

sampai terhidang?– Ketika kentangnya terhidang, jadi sup, digoreng atau

direbus saja?

Page 4: Materi 2. pengertian dasar algoritma

4

Pengertian

• Harus dibatasi dengan jelas keadaan awal yang menjadi titik tolak mengupas kentang dan keadaan akhir yang ingin dicapai supaya dapat “merencanakan” efek neto yang diinginkan. Misalnya :– Keadaan awal, t0, adalah kentang sudah ada dikantong

kentang, yang ditaruh di rak di dapur dimana Ibu Tati akan mengupasnya

– Keadaan akhir, t1, kentang dalam keadaan terkupas di panci, siap untuk dimasak dan kantong kentangnya harus dikembalikan ke rak lagi.

– Persediaan kentang Ibu Tati selalu cukup untuk makan malam.

Page 5: Materi 2. pengertian dasar algoritma

5

Pengertian

• Urutan-urutan subaksi yang dilakukan ibu Tati, yaitu :– Ambil kantong kentang dari rak– Ambil panci dari almari– Kupas kentang – Kembalikan kantong kentang ke rak

Page 6: Materi 2. pengertian dasar algoritma

6

Pengertian

• Urutan-urutan langkah harus dapat dimengerti dengan baik

• Tidak boleh ada sedikitpun salah pengertian diantara keduanya supaya dapat dihasilkan efek yang diinginkan.

• Jika pada suatu resep kue terdapat tulisan “Panaskan dulu oven”. Instruksi ini tidak jelas, karena berapa lama dan temperatur oven mencapai berapa derajat hal tersebut harus dilakukan, tidak ditentukan dengan pasti

Page 7: Materi 2. pengertian dasar algoritma

7

Pengertian

• Ketika ibu Tati akan mengupas kentang, ibu Tati memperhatikan pakaian yang dipakai saat itu, maka aksi yang akan dilakukan dapat kita tuliskan :– Ambil kantong kentang dari rak– Ambil panci dari almari– Lakukan persiapan, tergantung pakaian– Kupas kentang – Kembalikan kantong kentang ke rak

Page 8: Materi 2. pengertian dasar algoritma

8

Pengertian

• Kondisional (Depend On) pernyataan dimana suatu aksi akan dilakukan jika tergantung sesuatu kondisi tertentu

• “Lakukan persiapan, tergantung pakaian” Kondisional• Kondisional dinayatakan dengan Kondisi dan aksi

– Ambil kantong kentang dari rak– Ambil panci dari almari– Depend On Baju

• Berwarna muda : Pakai Celemek• Tidak berwarna muda : -

– Kupas kentang – Kembalikan kantong kentang ke rak

Page 9: Materi 2. pengertian dasar algoritma

9

Pengertian

• Didalam aksi kondisional mengandung dua aksi Pengamatan dan Kejadian

• Pengamatan suatu state benar (true) atau salah (false).

• Kejadian sesuatu yang dilakukan sesuai dengan hasil pengamatan. (true atau false)

Page 10: Materi 2. pengertian dasar algoritma

10

Pengertian

• Notasi Perulangan. • Ibu Tati ingin mengupas kentang sebanyak 25 kentang• Di dalam algoritma hal ini dapat dituliskan dengan notasi

Perulangan (While ... Do). – Ambil kantong kentang dari rak– Ambil panci dari almari– Depend On Baju– Berwarna muda : Pakai Celemek– Tidak berwarna muda : -– While jumlah kentang terkupas belum cukup Do– Kupas kentang berikutnya– Kembalikan kantong kentang ke rak

Page 11: Materi 2. pengertian dasar algoritma

11

Struktur Dasar Algoritma

• Algoritma berisi langkah-langkah penyelesaian suatu masalah. Suatu algoritma dapat dibangun dari tiga buah struktur dasar, yaitu :– Runtunan (Sequence)– Pemilihan (Selection)– Pengulangan (repetition)

Page 12: Materi 2. pengertian dasar algoritma

12

Runtunan (Sequence)

• Sebuah runtunan terdiri dari satu atau lebih instruksi. • Tiap instruksi dikerjakan secara berurutan sesuai

dengan urutan penulisannya• Urutan instruksi menentukan keadaan akhir

algoritma.

Page 13: Materi 2. pengertian dasar algoritma

13

Pemilihan (Selection)

• Sebuah instruksi dikerjakan jika kondisi tertentu dipenuhi.

if kondisi Then aksi

if Baju berwarna cerah Then Pakai Celemek

Page 14: Materi 2. pengertian dasar algoritma

14

Perulangan

• Kelebihan komputer kemampuannya untuk mengerjakan pekerjaan yang sama secara berulang-ulang tanpa mengenal lelah.

• Perulangan dalam Algoritma dituliskan dengan menggunakan perulangan for – to (Repeat – N – Times), while – do, atau do – while (repeat – until).

Page 15: Materi 2. pengertian dasar algoritma

15

Aturan Penulisan Algoritma

• Teks algoritma berisi deskripsi langkah-langkah penyelesaian masalah.

• Deskripsi dapat ditulis dalam notasi apapun. • Tidak ada notasi baku dalam penulisan algoritma sebagaimana

dalam bahasa pemrograman, asal dapat dimengerti dan dipahami.

• Teks algoritma tidak sama dengan teks program atau cenderung ke salah satu bahasa pemrograman.

• Namun agar mudah ditranslasi ke teks notasi bahasa pemrograman sebaiknya notasi algoritmik tersebut berkorespondensi dengan notasi bahasa pemrograman secara umum.

Page 16: Materi 2. pengertian dasar algoritma

16

Aturan Penulisan Algoritma

• Contoh :Tulis Nilai_X dan Nilai_Y atau

output(Nilai_X, Nilai_Y)• Ditulis menjadi :

Write(Nilai_X, Nilai_Y); Pascal

cout<<Nilai_X<<Nilai_Y; C++printf(“%d %d”,Nilai_X, Nilai_Y); C

Page 17: Materi 2. pengertian dasar algoritma

17

Aturan Penulisan Algoritma

• Pada dasarnya teks algoritma selalu disusun atas tiga bagian / blok, yaitu :– Kepala Algoritma– Deklarasi– Deskripsi Algoritma

Page 18: Materi 2. pengertian dasar algoritma

18

Aturan Penulisan Algoritma

Kepala Algoritma{Spesifikasi algoritma yang menyatakan apa yang akan dikerjakan oleh

algoritma}

Kamus{mendeklarasikan semua nama yang digunakan dalam algoritma}

Algoritma {Berisi deksripsi langkah-langkah penyelesaian masalah}

Page 19: Materi 2. pengertian dasar algoritma

19

Kepala Algoritma

• bagian yang terdiri atas nama algoritma dan penjelasan (spesifikasi) tentang algoritma tersebut.

• Nama algoritma sebaiknya singkat namun cukup menggambarkan apa yang dilakukan oleh algoritma.

• Di bawah nama algoritma disertai dengan penjelasan singkat (intisari) tentang apa yang dilakukan oleh algoritma yang sering disebut dengan spesifikasi algoritma

Page 20: Materi 2. pengertian dasar algoritma

20

Kepala Algoritma

Algoritma Luas_Lingkaran{Menghitung Luas Lingkaran untuk jari-jari tertentu. Algoritma membaca jari-jari, menghitung luas dan mencetak hasil ke layar}

Algoritma Konversi_Jam{Mengkonversi nilai satuan detik ke satuan Menit dan Detik. Satuan Detik dibaca dari keyboard, menghitung satuan Menit, satuan Jam dan menampilkan dalam format hh:mm:ss di layar}

Page 21: Materi 2. pengertian dasar algoritma

21

Deklarasi

• Bagian untuk mendefinisikan / memperkenalkan semua nama yang dipakai di dalam algoritma.

• Nama tersebut dapat berupa nama konstanta, nama variabel, nama tipe, nama function.

Page 22: Materi 2. pengertian dasar algoritma

22

Deklarasi

KAMUS{nama konstanta}

Const phi = 3.14;{nama tipe}

Type Titik : recordX : integer;Y : integer;

End;{nama variabel}

C : char;Q : Titik;Ketemu : Boolean;

Page 23: Materi 2. pengertian dasar algoritma

23

Deskripsi Algoritma

• Merupakan bagian inti dari suatu algoritma. • Berisi uraian langkah-langkah penyelesaian

masalah. • Setiap langkah notasi algoritmik dibaca dari

atas ke bawah secara berurutan • Urutan penulisan menentukan urutan

pelaksanaan perintah.

Page 24: Materi 2. pengertian dasar algoritma

24

Deskripsi Algoritma

ALGORITMABaca(c, d)If c < d Then E a + bElse E a – b End-ifCetak(e)

Page 25: Materi 2. pengertian dasar algoritma

25

Menuliskan Algoritma ke Teks Program C

• Teks algoritma adalah hasil pemikiran konseptual.

• Agar dapat dilaksanakan oleh komputer, algoritma harus ditranslasi ke notasi bahasa pemrograman.

Page 26: Materi 2. pengertian dasar algoritma

26

Teks AlgoritmaAlgoritma Menghitung_Nilai_Rata_Rata

{Menghitung nilai rata-rata sekumpulan bilangan bulat yang dibaca dari keyboard}

KAMUSX : Integer {variabel bilangan bulat}N : Integer {banyaknya bilangan bulat, N>0}K : Integer {Cacah pengulangan}Jumlah : Integer {jumlah seluruh bilangan bulat}Rata : Real {rata-rata bilangan bulat}

ALGORITMABaca(N) {membaca banyaknya bilangan}K 1 {mulai dari data pertama} Jumlah 0While K N Do

Baca(X)Jumlah Jumlah + XK K + 1 {cacah pengukangan selanjutnya}

End-while{K > N}Rata Jumlah / NCetak (Rata)

Page 27: Materi 2. pengertian dasar algoritma

27

Teks Program C/* Algoritma Menghitung_Nilai_Rata_Rata*//* Menghitung nilai rata-rata sekumpulan bilangan bulat yang dibaca dari keyboard*/#include<stdio.h>main(){

/*deklarasi*/int X, N, K, Jumlah;float Rata;cout<<”Masukkan Banyaknya Bilangan :”; cin>>N;K = 1; {mulai dari data pertama} Jumlah = 0;While (K <= N){

cout<<”X = “; cin>> X;Jumlah = Jumlah + X;K = K + 1; {cacah pengulangan selanjutnya}

} /*K > N*/Rata = Jumlah / N;Cout<<Rata }

Page 28: Materi 2. pengertian dasar algoritma

28

Sampai ketemu di materi berikutnya...

Flowchart