Algoritma pemrograman I

Slides:



Advertisements
Presentasi serupa
Algoritma dan Pemrograman
Advertisements

Pengertian Algoritma dan Flowchart
Pemrograman Dasar Pengantar Algoritma - 2 PTIIK - UB.
Pemrograman Dasar Pengantar Algoritma PTIIK - UB.
TEORI ALGORITMA.
Teknik Elektro – UIN Sunan Gunung Djati Bandung
Bahasa Pemrograman dan Flow Chart
PEMROGRAMAN TERSTRUKTUR
Pengantar Algoritma dan Pemrograman Elin Haerani, ST, M.Kom
ALGORITMA DEFINISI & FLOWCHART
Algoritma dan Pemrograman
PENGENALAN ALGORITMA & PEMROGRAMAN
Metode Perancangan Program
Dasar Pemrograman Komputer
Dasar Pemrograman Komputer [TKL-4002 ] Pertemuan 01.
KONSEP DASAR PEMROGRAMAN KOMPUTER DAN Algoritma
Pertemuan-III Algoritma disajikan gambar
Algoritma dan Pemrograman
Pengenalan Pemrograman Komputer
1 Pertemuan 1 Algoritma Matakuliah: T0456 ~ Algoritma dan Metode Object Oriented Programming Tahun: 2005 Versi: 5.
Pertemuan Pengembangan Algoritma
Pemrograman Berorientasi Obyek (PBO)
MERANCANG PROGRAM DAN PSEUDOCODE 1 Metode Perancang Program.
Algoritma dan Pemrograman
PENGERTIAN DASAR ALGORITMA & FLOWCHART
ALGORITMA DAN PEMROGRAMAN
Algoritma dan Pemrograman 1
Materi 1 Perancangan Program
DASAR PEMROGRAMAN & ALGORITMA
Algoritma dan Pemrograman 1
Pendahuluan Algoritma dan Pemrograman I-A
Penulisan Algoritma dan Flowchart
Flowchart (Diagram Alur)
Pengantar Pemrograman Basis Data (PPBD)
Pengertian Algoritma Pemrograman Pertemuan 1
Algoritma dan Pemrograman 1
Pengenalan Pemrograman Komputer
ALGORITMA PEMEROGRAMAN
BAB 1 BAHASA PEMROGRAMAN
KONSEP DASAR PEMROGRAMAN KOMPUTER DAN Algoritma
KONSEP DASAR PEMROGRAMAN KOMPUTER DAN Algoritma
ALGORITMA & PEMROGRAMAN
Metode Perancang Program
ALGORITMA & LOGIKA PEMROGRAMAN
Pengertian Algoritma dan Flowchart
penyusunan algoritma (flowchart)
Metode Perancangan Program
Pengenalan Bahasa Pemrograman
Algoritma dan Pemrograman Pertemuan 1
Algoritma.
minggu ke-3 Imam Fahrur Rozi
Pertemuan-III Algoritma disajikan gambar
minggu ke-2 Imam Fahrur Rozi
Structure Theorem Rahmat D.R. Dako, ST, M.Eng.
Algoritma dan Pemrograman
JENIS DAN SIMBOL FLOWCHART PRODI MIK | FAKULTAS ILMU-ILMU KESEHATAN
Bahasa Pemrograman dan Flow Chart
Pengantar Konsep Bahasa Pemrograman
FLOW CHART.
ALGORITMA & PEMROGRAMAN
ALGORITMA DAN PEMROGRAMAN
Algoritma pemrograman I
Pemrogram 1 Agus Darmawan, S.kom.
Materi 2 PSEUDOCODE Disusun Oleh : Yulyani Arifin,S.Kom, MMSI.
LOGIKA & ALGORITMA KONSEP ALGORITMA & FLOWCHART M. Febriansyah, ST., MT.
KONSEP DASAR PEMROGRAMAN KOMPUTER DAN Algoritma
Algoritma Pemrograman II
IT234 ALGORITMA DAN STRUKTUR DATA
Flowchart (Diagram Alur)
Konsep Algoritma Pemrograman
Transcript presentasi:

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

Algoritma & Pemrograman SKS : 3 SKS Dosen : Ferdi Barlianto Email : ferdi_barlian@yahoo.com Jadwal Kuliah Kelas: : Group S2: senin, 1630 Ruang: Multimedia Model Perkuliahan ; Ceramah Tatap Muka dan Praktikum

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

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

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

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

Pemrograman Terstruktur Organisasi Materi Tujuan Pembelajaran Konsep Algoritma Pemrograman Terstruktur

Organisasi Materi Konsep algoritma Pseudocode Flowchart Definisi

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

Kriteria Penilaian 10% 30% Partisipasi Tugas UAS UTS A [80 - 100] D [46 - 55] C [56 - 65] B [66 - 79] A [80 - 100] UAS

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

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.

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

Bagan Sistem Komputer

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.

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.

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

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

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

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).

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

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

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

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

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

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

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

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

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

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

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

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

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

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”)

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

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

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

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

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

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

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

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

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

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

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

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

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.

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

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

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

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).

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

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)

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: 0 1 2 3 4

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.

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.

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

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

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?

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

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

Next Mahasiswa mampu menjelaskan Algoritma dan membuat Flowchart