03 Pengantar Algoritma PDF
03 Pengantar Algoritma PDF
PEMROGRAMAN C/C++
Analisis Algoritma dan Struktur Data (TKE 670)
Jum’at, 04 Februari 2011
Topik Diskusi
Komputer dan Pemrograman
Mengenal Algoritma dan Struktur Data
Langkah Penyelesaian Masalah
Standar Algoritma dan Program yang Baik
Penyajian Algoritma
Komputer dan Pemrograman
Komputer : alat bantu penyelesaian masalah.
Langkah-langkah penyelesaian masalah ditentukan
oleh operator dalam runtunan instruksi
Program adalah sekumpulan instruksi untuk
menyelesaikan masalah
Bahasa pemrograman digunakan untuk menulis
program.
Low-level language dan high-level language
Interpreted dan compiled language
Algoritma & Struktur Data
Pemecahan masalah tidak harus dengan langsung menulis program
dengan bahasa pemrograman tertentu
Disain pemecahan masalah lebih penting
Algoritma menjadi sarana untuk merancang urutan langkah-
langkah logis penyelesaian masalah yang disusun secara sistematis
Variasi algoritma muncul dalam hal penanganan data:
Bagaimana data disusun
Data mana yang disimpan di memori
Data mana yang digunakan pada saat tertentu, dll.
Perlu strategi penanganan data : struktur data
Algoritma
rerata ← jumlah/n
output(rerata)
Konversi ke bahasa C
/* Program Hitung Rerata */
/* Menghitung nilai rerata sekumpulan bilangan */
/* bulat yang dibaca dari keyboard */
#include <stdio.h>
main()
{
/*Deklarasi*/
int x, n, k, jumlah;
float rerata;
/*Deskripsi*/
printf(“Masukkan jumlah data: “);
scanf(“%d”, &n);
k = 1;
jumlah = 0;
while (k <= n){
printf(“x = ? “);
scanf(“%d”, &x);
jumlah = jumlah = x;
k++;
}
rerata = (float) jumlah/n;
printf(“Rerata seluruh data = %f”, rerata);
}
STRUKTUR DASAR ALGORITMA
1. A ← 10
A ← 2*A
B ← A
Output(B)
2. A ← 10
B ← A
A ← 2*A
Output(B)
Contoh 2) → keluaran = 10
Contoh-Contoh Kasus
Bentuk:
IF <kondisi> THEN
<pernyataan>
ENDIF
Pernyataan IF dengan Syarat Tunggal
Instruksi untuk memeriksa sebuah kondisi saja
Contoh :
IF komentar=”coba” THEN
Output(“Anda memasukan kata yang benar”)
ENDIF
Pernyataan IF Sederhana
Bentuk:
IF <kondisi> THEN
<pernyataan_1>
ELSE
<pernyataan_2>
ENDIF
Pernyataan IF – ELSE
Contoh :
IF x>0 THEN
Output(“X adalah bilangan positif”)
ELSE
Output(“X adalah bilangan negatif”)
ENDIF
INSTRUKSI CASE
<blok instruksi/pernyataan>
ENDFOR
INSTRUKSI FOR
Algoritma CETAK_HALO_SEPULUH_KALI
k : integer
FOR k ← 1 TO 10 DO
output(‘HALO’)
ENDFOR
Instruksi WHILE-DO
INSTRUKSI
Proses berulang selama sebuah kondisi terpenuhi
Proses berulang tidak diketahui jumlahnya
Bentuk Instruksi :
WHILE <kondisi> DO
<blok pernyataan>
ENDWHILE
Instruksi WHILE-DO
Algoritma CETAK_HALO_SEPULUH_KALI
k : integer
k ← 1
WHILE k ≦ 10 DO
output(‘Halo’)
k ← k + 1
ENDWHILE
Instruksi REPEAT-UNTIL
<blok pernyataan>
UNTIL <kondisi>
Instruksi REPEAT-UNTIL
Algoritma CETAK_ANGKA_1-20
angka : integer
angka ← 1
REPEAT
output(angka)
angka ← angka + 1
UNTIL angka > 20
Tugas
Kerjakan TugasASD040311.pdf