Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Algoritma pemrograman I

Presentasi serupa


Presentasi berjudul: "Algoritma pemrograman I"— Transcript presentasi:

1 Algoritma pemrograman I
Pertemuan 01 Algoritma pemrograman I Ferdi Barlianto S.T 2010

2 Algoritma & Pemrograman
SKS : 3 SKS Dosen : Ferdi Barlianto Jadwal Kuliah Kelas: : Group S2: senin, 1630 Ruang: Multimedia Model Perkuliahan ; Ceramah Tatap Muka dan Praktikum

3 Learning Outcomes Algoritma dan Pemrograman I
Mahasiswa mempunyai pemahaman dan mampu menjelaskan tentang konsep dasar pemrograman komputer, algoritma dan tahapan pembuatan algoritma pemrograman terstruktur. Dasar logika pemrograman dan pembuatan program yang sederhana dengan baik

4 Lingkup Mata Kuliah Pengantar AlPro
Program komputer dan bahasa pemrograman Definisi dan prinsip-prinsip algoritma Konsep algoritma menggunakan Pseudocode dan Flowchart Dasar-dasar pemrograman c# Tipe data dan Variabel Input, output dan operator Percabangan dan perulangan Error handling Lingkup Mata Kuliah

5 Kompetensi Detail Mampu menjelaskan Prinsip-prinsip Algoritma
Mampu menjelaskan Konsep Bahasa Pemrograman Mampu membuat Flowchart dan Pseudocode Mampu menjelaskan Konsep Dasar Bahasa C Mampu menjelaskan tipe data dan variabel Mampu membuat program Struktur Input/Output Mampu membuat program Percabangan Mampu membuat program Perulangan Mampu menjelaskan Pemrograman Modular Mampu membuat exception handling dan error handling

6 Tujuan Sub Kompentensi Mampu menjelaskan konsep dasar pemrograman
Mampu menjelaskan definisi algoritma Mampu menjelaskan tahap pengembangn algoritma Mampu menyajikan algoritma Mampu menjelaskan algoritma menggunakan mode Pseudocode dan flowchart Mampu membuat program perulangan dan percabangan Mampu melakukan pemrogramn terstruktur

7 Pemrograman Terstruktur
Organisasi Materi Tujuan Pembelajaran Konsep Algoritma Pemrograman Terstruktur

8 Organisasi Materi Konsep algoritma Pseudocode Flowchart Definisi

9 Pemrograman Terstruktur Percabangan dan perulangan
Organisasi Materi Pemrograman Terstruktur Class dan objek Tipe data dan variabel Input dan output operator Percabangan dan perulangan Error handling

10 Kriteria Penilaian 10% 30% Partisipasi Tugas UAS UTS A [80 - 100]
D [ ] C [ ] B [ ] A [ ] UAS

11 Silabus Kontrak Perkuliahan & Pengantar Algoritma dan Pemrograman 30/9
Algoritma, Pseudocode dan Flowchart Pengantar Bahasa Pemrograman (dengan Bahasa C) Tipe data dan Variabel Input & Output pada Bahasa C Penggunaan operator aritmatika dan logika Struktur Kontrol Percabangan Struktur Kontrol Perulangan Struktur Kontrol Perulangan Bertingkat Error handling

12 Rujukan Brian W. Kernighan, Dennis M. Ritchie (1988). The C Programming Language, Second Edition, Prentice Hall Deitel, H.M. and Deitel, P.J. (2001). C HOW TO PROGRAM. 3rd edition. Prentice Hall, NJ. Gottfried, B.S. (1996). Schaum’s Outline Series. Theory and Problems of Programming with C. McGraw Hill, NY. Ngoen. Th. S. (2004). Pengantar Algoritma dengan Bahasa C. Penerbit Salemba Teknika. Sedgewick, R. (1992). Algorithms in C++. Addison Wesley. Deitel, H.M. (2005). Visual c# - How to Program. 2nd Edition. Prentice Hall,NJ.

13 Konsep Dasar Pemrograman Komputer
COMPUTER TO – COMPUTE + ER (Menghitung/Mengolah bilangan) (Mengolah Data) Nilai Data Nilai Data PUSAT PENGOLAH DATA Data yg Diolah Data hasil pengolahan (berbasis Arithmatika dan Logika) (Masukan/Input) (Keluaran/Output) Penyimpanan Data

14 Bagan Sistem Komputer

15 Definisi Algoritma Algoritma adalah sekumpulan langkah-langkah terbatas untuk mencari solusi suatu masalah. Berasal dari kata algoris dan ritmis. Awalnya diungkapkan oleh Al Khowarizmi. Di pemrograman, algoritma didefinisikan sebagai metode yang terdiri dari langkah- langkah terstuktur untuk mencari solusi suatu masalah dengan bantuan komputer.

16 Definisi Program/Pemrograman
Adalah kumpulan instruksi-instruksi tersendiri yang biasanya disebut source code yang dibuat oleh programmer (pembuat program) Program adalah kumpulan instruksi atau perintah yang disusun sedemikian rupa sehingga mempunyai urutan nalar yang tepat untuk menyelesaikan suatu persoalan. Instruksi (statement) yang dimaksud adalah syntax (cara penulisan) sesuai dengan bahasa pemrograman yang digunakan yang mempunyai komponen-komponen : Input, Output, Proses, Percabangan dan Perulangan.

17 Bahasa Pemrograman Adalah alat untuk membuat program
Contoh: C, C++, C#, Pascal, Basic, Perl, PHP, ASP, JHP, Java, dll. Perbedaan: cara memberikan instruksi (sintaks) Persamaan: bertujuan menghasilkan output yang sama

18 Paradigma Pemrograman
Pemrograman Prosedural / Terstruktur Berdasarkan urutan-urutan, sekuensial Program adalah suatu rangkaian prosedur untuk memanipulasi data. Prosedur merupakan kumpulan instruksi yang dikerjakan secara berurutan. Harus mengingat prosedur mana yang sudah dipanggil dan apa yang sudah diubah. Program dapat dibagai-bagi menjadi prosedur dan fungsi. Contoh: PASCAL dan C Pemrograman Fungsional Berdasarkan teori fungsi matematika Fungsi merupakan dasar utama program. Pemrograman Modular Pemrograman ini membentuk banyak modul. Modul merupakan kumpulan dari prosedur dan fungsi yang berdiri sendiri Sebuah program dapat merupakan kumpulan modul-modul. Contoh: MODULA-2 atau ADA

19 Paradigma Pemrograman
Pemrograman Berorientasi Obyek Pemrograman berdasarkan prinsip obyek, dimana obyek memiliki data/variabel/property dan method/event/prosedur yang dapat dimanipulasi Contoh: C++, Object Pascal, dan Java. Pemrograman Berorientasi Fungsi Pemrograman ini berfokus pada suatu fungsi tertentu saja. Sangat tergantung pada tujuan pembuatan bahasa pemrograman ini. Contoh: SQL (Structured Query Language), HTML, XML dan lain-lain. Pemrograman Deklaratif Pemrograman ini mendeskripsikan suatu masalah dengan pernyataan daripada memecahkan masalah dengan implementasi algoritma. Contoh: PROLOG

20 Siklus Hidup Perangkat Lunak (Software)
Dilihat dari Struktur Sistem Komputer dan Siklus diatas, Algoritma Pemrograman menempati posisi dibagian implementasi karena bagian implementasi merupakan bagian dimana pemrogram melakukan proses coding (pembuatan program).

21 Aksi Kejadian yang terjadi pada waktu yang terbatas dan menghasilkan efek yang memang direncanakan Dari waktu0 ke waktuN Contoh: “aksi Bu Tati mengupas kentang untuk makan malam” Batasan: Apa kentang harus dibeli dulu atau sudah ada? Apakah mengupas berarti sampai kentang terhidang? Apakah setelah kentang selesai dikupas, harus ada kegiatan lain seperti dibuat sup atau digoreng? Berarti harus ada kejadian awal = start dan kejadian akhir = finish Kejadian bu Tati dapat juga diterapkan pada ibu-ibu yang lain, yang juga akan mengupas kentang Cara (Metode) sebisa mungkin harus bersifat universal

22 TAHAP PENGEMBANGAN ALGORITMA
MASALAH / IDEA PEMECAHAN SOLUSI / HASIL Algoritma Source Code Executable Code

23 TAHAP PENGEMBANGAN ALGORITMA
DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Y Sintak Err T Executable code: => Run Y Output Err T DOKUMEN TASI

24 TAHAP PENGEMBANGAN ALGORITMA
DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Masalah: Tentukan akar-akar dari suatu persamaan kwadrat. Definisi: Persamaan kwadrat : ax^2 + bx + c = 0 Data yg diperlukan : Nilai dari a, b dan c : tipe real Sintak Err Executable code: => Run Output Err DOKUMEN TASI

25 TAHAP PENGEMBANGAN ALGORITMA
DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Sintak Err Model Matematika : Rumus ABC x1 = (-b + sqrt(b^2 - 4ac))/2a x2 = (-b – sqrt(b^2 - 4ac))/2a Executable code: => Run Output Err DOKUMEN TASI

26 TAHAP PENGEMBANGAN ALGORITMA
DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM Start d = b^2 – 4ac d < 0 Masukkan a,b,c Cetak Pesan “Akar imajiner” x1=(-b+sqrt(d))/2a x2 =(-b-sqrt(d))/2a Cetak : x1, x2 Stop Y T COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI

27 TAHAP PENGEMBANGAN ALGORITMA
DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI

28 Executable code: => Run
TAHAP PENGEMBANGAN ALGORITMA DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI

29 Executable code: => Run
TAHAP PENGEMBANGAN ALGORITMA DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI

30 Executable code: => Run
TAHAP PENGEMBANGAN ALGORITMA DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI

31 Executable code: => Run
TAHAP PENGEMBANGAN ALGORITMA DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI

32 Executable code: => Run
TAHAP PENGEMBANGAN ALGORITMA DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI

33 Penyajian Algoritma Algoritma bisa dibuat dengan:
Teknik tulisan seperti : Structure english dan Pseudocode. Teknik visual seperti : Flow chart.

34 Pseudocode Outline dari sebuah program komputer
Ditulis dalam bahasa Inggris atau Indonesia sederhana Kata kunci (keyword) digunakan untuk menjelaskan struktur kendali (misalnya: “jika”, “ulangi”, “sampai”,”if”,”repeat”, “until”)

35 Pseudocode Tujuh operasi dasar komputer: Membaca data (Input)
Menampilkan data (Output) Melakukan perhitungan aritmetika (Compute) Memberikan nilai ke suatu identifier (Store) Membandingkan dan Memilih (Compare) Melakukan pengulangan (Loop) Procedure dan atau Function

36 1. MEMBACA DATA Sewaktu komputer menerima informasi atau input, maka statement yang biasa digunakan adalah “Read”, “Get”, “Baca” ,”Input” atau “KeyIn” Contoh: Read Bilangan Get kode_pajak Baca nama_mahasiswa

37 2. Menampilkan Data Sewaktu komputer menampilkan informasi ataupun output, maka statement yang biasa digunakan adalah “Print”, “Write”, “Put”, “Output”, “Display” ataupun “Cetak” Contoh: Print “Universitas Bina Nusantara” Cetak “Metode Perancangan Program” Output Total

38 3. perhitungan Aritmetika
Untuk melakukan operasi aritmetika digunakan pseudocode berikut: + untuk penjumlahan (add) - Untuk pengurangan (subtract) * Untuk perkalian (multiply) / Untuk pembagian (divide) () Untuk kurung Statement “Compute”, “Calculate” ataupun “Hitung” juga dapat digunakan. Contoh: Add number to total Total = Total + number

39 4. Memberikan nilai ke Identifier
Ada tiga cara untuk memberikan nilai ke dalam variabel : Memberikan nilai awal, menggunakan statement “Initialize” atau “Set” Memberikan nilai sebagai hasil dari suatu proses, maka tanda “=“ digunakan Untuk menyimpan suatu nilai maka statement “Save” atau “Store” digunakan Contoh: Set Counter to 0 Total = Harga * Jumlah

40 5. Membandingkan dan memilih
Salah satu operasi terpenting yang dapat dilakukan komputer adalah membandingkan dan memilih salah satu alternatif solusi. Keyword yang digunakan : “IF”, “THEN” dan “ELSE” Contoh IF Pilih=‘1’ THEN Discount = 0.1 * harga ELSE Discount = 0.2 * harga ENDIF

41 6. Pengulangan Jika ada beberapa perintah yang harus diulang, maka dapat digunakan keyword “DOWHILE” dan “ENDDO”. Contoh DOWHILE bil < 10 cetak bil bil = bil +1 ENDDO

42 Contoh Algoritma dgn Pseudocode
Algoritma Menggunakan Kalkulator Mulai Nyalakan kalkulator Kosongkan Kalkulator Ulangi Input harga Tekan tombol Plus (+) Sampai semua harga diinput Tampilkan total harga Matikan kalkulator Selesai

43 Contoh Algoritma dgn Pseudocode
Algoritma Berangkat Kuliah Mulai Bangun dari tempat tidur Mandi Pagi Sarapan Pagi Pergi Ke Kampus Cari Ruang Kuliah Masuk kelas untuk Kuliah Selesai

44 Contoh Algoritma dgn Pseudocode
Algoritma Sarapan Pagi Mulai Ambil piring Masukkan nasi dan lauk dalam piring Ambil sendok dan garpu Ulangi Angkat sendok dan garpu Ambil nasi dan lauk Suapkan ke dalam mulut Taruh sendok dan garpu Kunyah Sampai (nasi dan lauk habis) ATAU kekenyangan Bereskan piring, sendok dan garpu Selesai

45 FLOW CHART Terminator Arah Proses Konektor Input/Output
Konektor antar halaman Dokumen Pemilihan Pengulangan

46 Contoh FLOW CHART Start Masukkan a,b,c d = b^2 – 4ac Y d < 0 T
x1=(-b+sqrt(d))/2a x2 =(-b-sqrt(d))/2a Cetak Pesan “Akar imajiner” Cetak x1,x2 Stop

47 Kriteria Algoritma Yang Baik
Mempunyai logika yang tepat untuk memecahkan masalah. Menghasilkan output yang benar dalam waktu yang singkat. Ditulis dengan bahasa baku terstruktur sehingga tidak menimbulkan arti ganda. Ditulis dengan format baku sehingga mudah diimplementasikan kedalam bahasa pemrograman. Semua operasi didefinisikan dengan jelas dan berakhir sesudah sejumlah langkah.

48 Pemrograman Terstruktur
Pemrograman terstruktur merupakan pola penyusunan program komputer hanya dengan menggunakan tiga struktur kontrol yaitu: Sequence Selection Repetition

49 1. Sequence Sequence merupakan urutan pengerjaan dari perintah/statement pertama sampai dengan perintah/statement terakhir. Umumnya bahasa pemrograman mempunyai sequence (urutan pengerjaan dari perintah / statement ) mulai dari atas ke bawah dan dari kiri ke kanan. Top-down

50 Contoh Sequence Contoh: Penjelasan Cetak “Jumlah Mahasiswa”
Set Jumlah to 49 Cetak “Tambahan mahasiswa baru” Baca mhs_baru Jumlah = Jumlah + mhs_baru Cetak jumlah Penjelasan Urutan pengerjaan adalah mulai dari urutan pertama sampai dengan urutan terakhir, jika mhs_baru diisi dengan 2, maka jumlah yang tercetak adalah 51

51 2. Selection Struktur Kontrol Selection adalah penggambaran sebuah kondisi dan pilihan diantara dua aksi. Statement Pertama akan dikerjakan jika kondisi bernilai benar, jika tidak maka akan mengerjakan perintah setelah keyword “else” (jika ada).

52 Contoh Selection Contoh : Penjelasan IF Hari=1 THEN Cetak “Senin” ELSE
Cetak “Bukan hari Senin” Penjelasan Tulisan “Senin” akan ditampilkan jika Hari bernilai 1, jika tidak maka tulisan “Bukan hari Senin” yang akan ditampilkan

53 3. Repetition Beberapa statement / perintah dapat diulang dengan menggunakan struktur kontrol repetition. Statement / perintah akan tetap diulang selama kondisi perulangan memenuhi (jika menggunakan DOWHILE – ENDDO)

54 Contoh Repetition Contoh: Penjelasan: Bintang = 0
DOWHILE bintang < 5 Cetak bintang bintang = bintang + 1 ENDDO Penjelasan: Pertama kali bintang akan diisi dengan 0, setelah itu isi dari bintang akan dicetak sebanyak lima kali, sehingga tampilannya akan sebagai berikut:

55 Latihan 1. Buatlah algoritma menggunakan pseudocode untuk menghitung luas persegi panjang 2. Buatlah algoritma menggunakan pseudocode untuk mengubah jam dan menit yang diinput ke dalam satuan detik. 3. Buatlah algoritma menggunakan pseudocode untuk menentukan apakah bilangan yang diinput adalah bilangan ganjil atau bilangan genap.

56 Latihan 4. Buatlah algoritma menggunakan pseudocode untuk menghitung luas lingkaran. 5. Buatlah algoritma menggunakan pseudocode untuk menginput 3 buah bilangan, kemudian tentukan bilangan terbesar, terkecil dan rata- ratanya.

57 Latihan Ulangi latihan no. 1 s/d no. 5 diatas dengan menggunakan Flow Chart.

58 Langkah Use Your Mind 2 kanibal naik perahu ke seberang kiri
Pindahkan 1 kanibal ke seberang kiri Perahu kembali ke seberang kanan dgn 1 kanibal Ulangi langkah 1-3 2 misionaris naik perahu ke seberang kiri Di seberang kiri, tukar 1 kanibal dgn 1 misionaris di perahu Perahu kembali ke seberang kanan dgn 1 kanibal dan 1 misionaris Di seberang kanan, tukar kanibal di perahu dgn 1 misionaris di seberang kanan Perahu kembali ke seberang kiri dgn 2 misionaris Turunkan semua misionaris di perahu ke seberang kiri Turunkan kedua kanibal ke seberang kiri

59 Contoh lain Ada 2 gelas kosong berukuran: 5 liter dan 3 liter
Bagaimana cara kita mendapatkan air berukuran 4 liter? Bagaimana cara mendapatkan air berukuran 2 liter?

60 Cara Masukkan air ke 3 liter hingga penuh
Masukkan air 3 liter ke 5 liter, sisa 2 liter kosong Tuangkan air 3 liter ke sisa 2 liter, berarti sisa 1 liter di gelas 2 liter Buang seluruh air di gelas 5 liter tadi Tuangkan air 1 liter yg ada di gelas 3 liter tadi hingga ke 5 liter kosong Tuangkan 3 liter ke gelas 5 liter yang sudah ada 1 liter tadi, hingga kita dapat 4 liter

61 Cara untuk soal yang kedua
Gelas 5 liter diisi penuh Buang isinya ke gelas 3 liter Sisa 2 liter di gelas 5 liter!

62 Next Mahasiswa mampu menjelaskan Algoritma dan membuat Flowchart


Download ppt "Algoritma pemrograman I"

Presentasi serupa


Iklan oleh Google