Algoritma dan Struktur Data

Slides:



Advertisements
Presentasi serupa
DASAR-DASAR ALGORITMA
Advertisements

Minggu V Gerlan A. Manu, ST.,MKom - Algoritma Pemrograman I 1.
TEORI ALGORITMA.
- PERTEMUAN 5 & 6 – PERULANGAN
STRUKTUR DASAR ALGORITMA
Dasar Komputer & Pemrog 2 A minggu 4
Pengenalan Algoritma Ardian Maretta Prastiawan, Ssi
Pencabangan Bersyarat
PL/SQL - LANJUTAN PERULANGAN KONDISI.
MATERI 8 CHOICE / PILIHAN.
PERTEMUAN 6 Algoritma Presented by : Sity Aisyah, M.Kom
Struktur Perulangan Week 4 & 5.
CS1023 Pemrograman Komputer
Algoritma dan Dasar Pemograman
ALGORITMA Lecture Pengulangan.
PERULANGAN Komang Kurniawan W., M.Cs.
Variabel dan Ekspresi Struktur Percabangan dan Struktur Perulangan
Pengertian Algoritma Sebuah algoritma merupakan deskripsi pelaksanaan suatu proses, dimana algoritma disusun oleh sederetan langkah instruksi yang logis.
Algoritma Dasar Dalam membuat suatu program komputer, menyusun algoritma adalah langkah pertama yang harus dilakukan Dalam membuat algoritma dapat digunakan.
STRUKTUR KENDALI PROSES
Algoritma dan Struktur Data
Algoritma dan Pemrograman
case Digunakan untuk menggantikan pernyataan if then else if
PRAKTIKUM ALGORITMA DAN STRUKTUR DATA
STRUKTUR PEMILIHAN (KONTROL PROGRAM) Minggu III - 40 menit
III. STRUKTUR KONTROL.
Pemprograman Terstruktur 1
Pertemuan Pengembangan Algoritma
Algoritma dan Struktur Data
NOTASI ALGORITMIK dan BAHASA C++
TEL 2112 Dasar Komputer & Pemograman Contoh Pemecahan Masalah
Prodi S1-Sistem Komputer, F Teknik Elektro
TEL 2112 Dasar Komputer & Pemograman Contoh Pemecahan Masalah
Materi 9 LOGIKA & ALGORITMA.
ALGORITMA & PEMROGRAMAN I-A
STRUKTUR DASAR ALGORITMA
Prodi S1-Sistem Komputer, F Teknik Elektro
Algoritma dan Pemrograman I
Algoritma Pemrograman I
Perulangan.
KUG1C3 Dasar Algoritma & Pemrograman
Variabel dan Ekspresi Struktur Percabangan dan Struktur Perulangan
STRUKTUR DASAR ALGORITMA
STRUKTUR DASAR ALGORITMA
Ucu Nugraha, ST. Algoritma.
Flowchart.
Dasar – dasar Algoritma dan Pemrograman
Array Tim PHKI Modul Dasar Pemrograman Fakultas Ilmu Komputer
Latihan UTS.
Algoritma dan Pemrograman
Struktur Algoritma Sequence Process: instruksi dikerjakan secara sekuensial, berurutan. Selection Process: instruksi dikerjakan jika memenuhi kriteria.
Pseudo-code.
TEL 2112 Dasar Komputer & Pemograman Contoh Pemecahan Masalah
Menuliskan Algoritma Dengan Pseudocode
Struktur Dasar Algoritma dan Runtunan
I Gusti Agung Made Wirautama, S.Kom
Seleksi Kondisi merupakan perintah yang memungkinkan pemilihan atas perintah yang akan dijalankan sesuai dengan kondisi tertentu. Operator yang digunakan.
PENYELEKSIAN KONDISI.
Algoritma dan Pemrograman STRUKTUR PEMILIHAN (SELECTION) lanjutan
Algoritma dan Pemrograman STRUKTUR ALGORITMA (3)
Perulangan.
Algoritma dan Struktur Data
TEORI ALGORITMA.
LN New 01 Istilah Struktur Dasar Teknik Puncak-Turun
PERTEMUAN III Menggunakan Pernyataan Bersyarat untuk Menyeleksi Kondisi Menggunakan Pernyataan Bersyarat untuk Menentukan Keputusan.
LOGIKA & ALGORITMA KONSEP ALGORITMA & FLOWCHART M. Febriansyah, ST., MT.
Algoritma dan Pemrograman Kuliah ke 2
STRUKTUR DASAR ALGORITMA
Pengulangan FOR - DO Temu 9.
Pemilihan Dua Kasus, tiga kasus dan banyak kasus
Transcript presentasi:

Algoritma dan Struktur Data Notasi Algoritmik Algoritma dan Struktur Data

Apakah ini kode program? /*Kamus*/ x,y,z : integer terbesar: integer /*Algoritma*/ input(x,y,z) terbesar  x If (y > terbesar) then terbesar  y If (z > terbesar) then terbesar  z output(terbesar)

Algoritma vs Kode Program Algoritma tidak sama dengan kode program. Algoritma: langkah-langkah sistematis untuk penyelesaian suatu masalah yang dapat diimplementasikan ke dalam bahasa pemrograman. Notasi algoritmik merupakan notasi yang digunakan untuk menuliskan suatu algoritma. Kode program merupakan implementasi dari notasi algoritmik ke dalam bahasa pemrograman tertentu.

/. Algoritma untuk menukar nilai dari dua buah variabel /*Algoritma untuk menukar nilai dari dua buah variabel*/ ----------------------- /*Kamus*/ a,b,temp : integer /*Algoritma*/ input(a,b) temp  a a  b b  temp output(a,b) /*Implementasi algoritma ke dalam Bahasa C*/ ----------------------- /*Deklarasi variabel*/ int a,b,temp; /*Program utama*/ scanf(“%d”,&a); scanf(“%d”,&b); temp = a; a = b b = temp printf(“a: %d \n”,a); printf(“b: %d \n”,b);

Pengondisian Untuk memilih suatu tindakan berdasarkan kondisi tertentu Ada dua macam notasi algoritmik: If-then Depend on

Notasi “if-then” If <kondisi> then <aksi> <aksi n> Else if <kondisi> then <aksi>

/. Algoritma untuk melakukan pengecekan bilangan genap atau ganjil /*Algoritma untuk melakukan pengecekan bilangan genap atau ganjil*/ ----------------------------------------------- /*Kamus*/ bil : integer cek : string /*Algoritma*/ Input(bil) if (bil mod 2 = 0) then cek = ‘genap’ else cek = ‘ganjil’ output(cek)

/. Algoritma untuk menentukan yudisium mahasiswa /*Algoritma untuk menentukan yudisium mahasiswa*/ ----------------------------------------------------- /*Kamus*/ ipk: integer yudisium : string /*Algoritma*/ input(ipk) if (ipk >= 3.5) then yudisium = ‘cumlaude’ Else if (ipk >= 3.0) then yudisium = ‘sangat memuaskan’ Else if (ipk >= 2.75) then yudisium = ‘memuaskan’ Else if (ipk >= 2.25) then yudisium = ‘cukup’ else yudisium  ‘TIDAK LULUS’ output(yudisium)

Notasi “depend on” Depend on <variabel> <kondisi 1> : <aksi 1> <kondisi 2> : <aksi 2> <kondisi n> : <aksi n> Depend on <variabel 1> <kondisi 1> : depend on <variabel 2> <kondisi 2.1> : <aksi 2.1> <kondisi 2.2> : <aksi 2.2> <kondisi 2> : <aksi 2>

/. Algoritma untuk menampilkan nama hari berdasarkan nomor urut hari /*Algoritma untuk menampilkan nama hari berdasarkan nomor urut hari*/ --------------------------------------------------------------------- /*Kamus*/ idxHari: integer [1..7] hari: string /*Algoritma*/ input(idxHari) Depend on (idxHari) 1 : hari ‘Senin’ 2 : hari ‘Selasa’ 3 : hari ‘Rabu’ 4 : hari ‘Kamis’ 5 : hari ‘Jumat’ 6 : hari ‘Sabtu’ 7 : hari ‘Minggu’ output(hari) If (hari = ‘Sabtu’) or (hari = ‘Minggu’) then output(‘HOREEE…!!!’) else output(‘hmmmm…’)

Latihan  Buatlah algoritma untuk menentukan kondisi tubuh seseorang, apakah kurus, ideal, atau kegemukan. Diketahui bahwa rumus untuk menghitung berat badan ideal adalah: BBI = (Tinggi Badan - 100) * 90% Ketentuan kategori berat badan: - jika berat badan seseorang 20% lebih besar dari nilai BBI-nya, maka kategorinya = kegemukan. - jika berat badan seseorang 10% lebih kecil dari nilai BBI-nya, maka kategorinya = kurus. - jika berat badan seseorang sama dengan nilai BBI-nya, maka kategorinya = ideal.

Contoh  

Contoh (2)  

Silakan mengerjakan  Waktunya 10-15 menit

/. Algoritma untuk menentukan kategori berat badan /*Algoritma untuk menentukan kategori berat badan*/ ---------------------------------------------------------- /*Kamus*/ berat,tinggi: integer bbi,persentase,selisih: real kategori: string /*Algoritma*/ input(berat,tinggi) bbi  (tinggi-100) * 0.9 selisih  tinggi - bbi If (selisih < 0) then selisih  -1 * selisih /*untuk mempositifkan nilai selisih jika selisihnya bernilai negatif*/ persentase  (bbi / tinggi) * 1

/. Lanjutan dari algoritma sebelumnya. / If (persentase > 0 /*Lanjutan dari algoritma sebelumnya*/ If (persentase > 0.2) then kategori  ‘KEGEMUKAN’ Else if (persentase < 0.1) then kategori  ‘KURUS’ Else kategori  ‘IDEAL’ output(kategori)

Pengulangan Untuk melakukan suatu proses secara berulang-ulang, sebanyak frekuensi yang ditentukan. Ada empat macam notasi algoritmik Traversal While-do Repeat-until Iterate-stop

Notasi “traversal” Identik dengan notasi “for” pada Bahasa C. <pencacah> traversal [nilai ke-1.. Nilai ke-n] <aksi 1> <aksi n>

Contoh /*Algoritma menampilkan deret bilangan genap*/ ----------------------------------------------------- /*Kamus*/ idx,awal,akhir: integer /*Algoritma*/ Input(awal,akhir) idx traversal[awal..akhir] If (idx mod 2 = 0) then output(idx)

Notasi “while-do” While <kondisi> do <aksi 1>

Contoh /*Algoritma menampilkan deret bilangan genap*/ ----------------------------------------------------- /*Kamus*/ idx,awal,akhir: integer /*Algoritma*/ Input(awal,akhir) idx  awal While(idx <= akhir) do If (idx mod 2 = 0) then output(idx end if idx  idx + 1

Latihan Buatlah algoritma untuk menampilkan gambar berikut: * ** *** **** Input berupa satu bilangan yang akan menyatakan berapa jumlah baris dari gambar tersebut

/. Algoritma menampilkan pola segitiga /*Algoritma menampilkan pola segitiga*/ ----------------------------------------------------- /*Kamus*/ Idx1, idx2,n : integer /*Algoritma*/ Input(n) idx1 traversal[1..n] idx2 traversal[1..idx1] output(‘*’)