Imam Fahrur Rozi Algoritma dan Pemrograman DASAR PEMROGRAMAN & ALGORITMA
KOMPETENSI Setelah menempuh materi ini, mahasiswa hendaknya mampu: Memahami tentang konsep dasar pemrograman komputer Memahami tentang dasar algoritma dan tahap pengembangannya Memahami cara memodelkan algoritma dengan menggunakan PSEUDOCODE dan FLOWCHART
POKOK BAHASAN Konsep Dasar Pemrograman Definisi Algoritma Tahap Pengembangan Algoritma Penyajian algoritma Pseudocode Flow Chart
KONSEP DASAR PEMROGRAMAN KOMP. COMPUTER TO COMPUTE + ER (Menghitung/Mengolah bilangan) (Mengolah Data) Data yg Diolah (Masukan/Input) PUSAT PENGOLAH DATA (berbasis Arithma8ka dan Logika) Data hasil pengolahan (Keluaran/Output) Penyimpanan Data 4
DASAR ALGORITMA Algoritma dan Pemrograman
DEFINISI ALGORITMA Algoritma merupakan sekumpulan langkah- langkah terbatas untuk mencari solusi suatu masalah. Dalam bidang pemrograman komputer, algoritma didefinisikan sebagai metode yang terdiri dari langkah- langkah terstuktur untuk mencari solusi suatu masalah dengan bantuan komputer.
DI MANA POSISI ALGORITMA? MASALAH / IDEA PEMECAHAN SOLUSI / HASIL Algoritma Source Code Executable Code
TAHAP PENGEMBANGAN ALGO. KOMP. DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Y Y Sintak Err T Executable code: => Run Output Err T DOKUMEN TASI 8
TAHAP PENGEMBANGAN ALGO. KOMP. 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 float Sintak Err Executable code: => Run Output Err DOKUMEN TASI 9
TAHAP PENGEMBANGAN ALGO. KOMP. DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Model Matematika : Sintak Err Rumus ABC x1 = (-b + sqrt(b*b - 4ac))/2a x2 = (-b sqrt(b*b - 4ac))/2a Executable code: => Run Output Err DOKUMEN TASI 10
TAHAP PENGEMBANGAN ALGO. KOMP. DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM Start COMPILE Masukkan a,b,c d = b^2 4ac Sintak Err d < 0 T x1=(-b+sqrt(d))/2a x2 =(-b-sqrt(d))/2a Y Cetak: Akar majiner Executable code: => Run Output Err Cetak: x1, x2 Stop DOKUMEN TASI 11
TAHAP PENGEMBANGAN ALGO. KOMP. DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI 12
TAHAP PENGEMBANGAN ALGO. KOMP. DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI 13
TAHAP PENGEMBANGAN ALGO. KOMP. DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI 14
TAHAP PENGEMBANGAN ALGO. KOMP. DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI 15
TAHAP PENGEMBANGAN ALGO. KOMP. DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI 16
TAHAP PENGEMBANGAN ALGO. KOMP. DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Sintak Err Executable code: => Run Output Err DOKUMEN TASI 17
KOMPONEN DASAR PEMROGRAMAN Algoritma dan Pemrograman
KOMPONEN DASAR PEMROGRAMAN Tujuh komponen dasar komputer: 1. Membaca data (Input) 2. Menampilkan data (Output) 3. Melakukan perhitungan aritmeaka (Compute) 4. Memberikan nilai ke suatu idenafier / variabel 5. Melakukan seleksi kondisi / pemilihan 6. Melakukan pengulangan (Loop) 7. Array 8. Funcaon
Penyajian Algoritma Algoritma dan Pemrograman
JENIS PENYAJIAN ALGORITMA ² Algoritma yang dirancang, bisa disajikan menggunakan 2 model: ² PSEUDOCODE ² FLOWCHART
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, unal )
PSEUDOCODE 1. MEMBACA DATA Sewaktu komputer menerima informasi atau input, maka statement yang biasa digunakan adalah Read, Get, Baca, Input Contoh: Read Bilangan Get kode_pajak Baca nama_mahasiswa
PSEUDOCODE 2. MENAMPILKAN DATA Sewaktu komputer menampilkan informasi ataupun output, maka statement yang biasa digunakan adalah Print, Write, Put, Output, Display ataupun Cetak Contoh: Print Belajar Cetak Algoritma dan Pemrograman Komputer Output jumlah
PSEUDOCODE 3. PERHITUNGAN ARITMATIKA Untuk melakukan operasi aritmeaka digunakan pseudocode berikut: + untuk penjumlahan (add) - Untuk pengurangan (subtract) * Untuk perkalian (mulaply) / Untuk pembagian (divide) () Untuk kurung Statement Compute, Calculate ataupun Hitung juga dapat digunakan. Contoh: Add number to total Total = Total + number
PSEUDOCODE 4. MEMBERIKAN NILAI KE VARIABEL Ada aga cara untuk memberikan nilai ke dalam variabel : Memberikan nilai awal, menggunakan statement Iniaalize 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
PSEUDOCODE 5. SELEKSI KONDISI Salah satu operasi terpenang yang dapat dilakukan komputer adalah membandingkan dan memilih salah satu alternaaf solusi. Keyword yang digunakan : IF, THEN dan ELSE Contoh IF harga>100 THEN harga = harga- (0.5*harga) ELSE harga = harga- (0.1*harga) ENDIF PRINT harga
Jika ada beberapa perintah yang harus diulang, maka dapat digunakan keyword DOWHILE dan ENDDO. Contoh PSEUDOCODE 6. PERULANGAN Bil = 0 DOWHILE bil < 10 cetak bil bil = bil +1 ENDDO
PSEUDOCODE CONTOH PSEUDOCODE INPUT harga IF harga>100 THEN diskon = 0.5*harga ELSE diskon = 0.1*harga ENDIF harga = harga - diskon PRINT harga
PSEUDOCODE CONTOH PSEUDOCODE INPUT a, b, c d = b*b 4*a*c IF d<0 THEN PRINT Akar Imajiner ELSE x1 =( - b+sqrt(d))/2*a x2 =( - b- sqrt(d))/2*a PRINT x1, x2 ENDIF
Terminator Proses Input/Output Arah Konektor Konektor antar halaman FLOWCHART Dokumen Pemilihan Pengulangan Pemanggilan Procedure
Start Masukkan a,b,c FLOWCHART CONTOH d = b^2 4ac d < 0 T x1=(-b+sqrt(d))/2a x2 =(-b-sqrt(d))/2a Cetak x1,x2 Stop Y Cetak Pesan Akar imajiner 32
SELAMAT BERLAJAR DAN BERLATIH Algoritma dan Pemrograman