Anda di halaman 1dari 4

8/23/2009

Review:
Algoritme dan Program
Algoritme dan
Pemrograman † Algoritme Î langkah-langkah yang disusun
secara berstruktur dan terurut untuk
menjawab suatu persoalan dengan
menggunakan bahasa manusia.
Kuliah #2 † Program Komputer:
• Penulisan algoritme „ Instruksi terstruktur yang disusun dan diberikan
• Pseudocode kepada komputer untuk dilaksanakan dengan
• Menentukan output suatu algoritme menggunakan bahasa pemrograman tertentu,
misalnya C, Pascal, Basic, dsb.
„ Implementasi dari algoritme yang telah disusun
sebelumnya.

DEPARTEMEN ILMU KOMPUTER


INSTITUT PERTANIAN BOGOR

Contoh #1
Pseudocode Menjumlahkan dua bilangan bulat

† Pseudocode merupakan salah satu cara // Algoritme menjumlahkan dua bil.bulat


penulisan algoritme yang baku, dengan tujuan
agar ide dan logika algoritme tersebut dapat procedure jumlah {
disampaikan dengan mudah. read(a, b);
† Lebih mirip (tetapi tidak sama) dengan suatu c = a+b;
b
bahasa pemrograman tertentu. print(c);
}
† PseudoC (alias pseudocode C) adalah
pseudocode yang banyak mengadopsi tata
aturan bahasa pemrograman C.

DEPARTEMEN ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER


INSTITUT PERTANIAN BOGOR INSTITUT PERTANIAN BOGOR

Contoh #2
Menentukan bilangan terkecil Elemen Pseudocode

// Algoritme menentukan bilangan terkecil † Variabel


// dari tiga bilangan
† Perintah atau instruksi
procedure kecil3 { † Assignment atau penugasan dan ekspresi
read(a, b, c); † Struktur kendali aliran
if (a<b) && (a<c)
† Komentar
print(a);
else if (b<c)
print(b);
else
print(c);
}

DEPARTEMEN ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER


INSTITUT PERTANIAN BOGOR INSTITUT PERTANIAN BOGOR

ILKOM IPB 1
8/23/2009

Elemen Pseudocode: Elemen Pseudocode:


VARIABEL INSTRUKSI/PERINTAH

† Variabel adalah elemen dari algoritme untuk † Perintah/instruksi adalah satuan operasional
menyimpan nilai tertentu pada suatu saat, dan dari suatu algoritme.
pada saat yang lain nilai ini dapat diubah
menjadi nilai lainnya sesuai kebutuhan. † Dinyatakan dalam kalimat sehari-hari yang
mudah dipahami dan konsisten.
† Dituliskan dengan suatu nama yang unik,
unik
terdiri dari alphanumeric tetapi harus dimulai † Contoh:
dengan huruf. „ read(a,b,c);
† Case-sensitive „ print(sum);
† Contoh: a, b, c, n, sum, ..... † Apakah c=a+b; termasuk instruksi?
† Pada contoh #1, mana saja yang termasuk
variabel?

DEPARTEMEN ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER


INSTITUT PERTANIAN BOGOR INSTITUT PERTANIAN BOGOR

Elemen Pseudocode: Elemen Pseudocode:


ASSIGNMENT dan EKSPRESI STRUKTUR KENDALI ALIRAN

† Assignment atau penugasan adalah pemberian nilai † Struktur kendali aliran adalah suatu bentuk
pada sebuah variabel, dapat berupa nilai literal, atau struktur yang memiliki peranan khusus
nilai dari variabel lain, atau nilai suatu ekspresi. untuk mengatur atau mengendalikan urutan
† Ekspresi adalah operasi yang akan menghasilkan pengerjaan satu atau lebih operasi atau
nilai untuk diberikan pada suatu variabel.
variabel Ekspresi i t k i
instruksi.
ini dapat berupa aritmatika maupun logika.
† Struktur kondisi (conditional): if, if – else,
† Contoh:
switch
„ sum = 0;
„ x = n; † Struktur pengulangan (looping): for, while
„ sum = sum + x; † Struktur lainnya: continue, exit, return

DEPARTEMEN ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER


INSTITUT PERTANIAN BOGOR INSTITUT PERTANIAN BOGOR

Elemen Pseudocode: Contoh #3


KOMENTAR Masalah dan Perumusannya

† Komentar adalah suatu catatan tambahan yang † Masalah:


dituliskan ke dalam algoritme dengan tujuan Buat algoritme menentukan apakah suatu bilangan
untuk memperjelas, tetapi tidak bulat habis dibagi oleh a (a>0)
mempengaruhi operasi apa pun didalam † Pemecahan masalah:
algoritme.
l it Untuk menentukan apakah satu bilangan (misal b)
† Diberi notasi awal ”//” habis dibagi oleh a, dapat dilakukan dengan
menentukan sisa pembagian, yaitu menggunakan
† Dapat dituliskan di bagian mana saja dalam
operasi modulo (mod). Jika bilangan b mod a=0
suatu algoritme. maka bilangan b tersebut berarti habis dibagi oleh
† Contoh: a, dan algoritme akan mencetak teks YA.
// Algoritme menjumlahkan dua bil.bulat Selainnya, akan mencetak teks TIDAK.

DEPARTEMEN ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER


INSTITUT PERTANIAN BOGOR INSTITUT PERTANIAN BOGOR

ILKOM IPB 2
8/23/2009

Contoh #3 Contoh #4
Algoritme Masalah dan Perumusannya

// Memeriksa apakah b habis dibagi oleh a † Masalah:


Buat algoritme mencetak bilangan 1, 2, 3, sampai
dengan n (n>0)
procedure habisDibagi { † Perumusan masalah:
read(b,a); Masalah ini mirip dengan mesin penghitung
t = b mod
d a; (
(counter)) yang biasa
bi di
digunakan
k oleh
l h pramugarii
if (t==0) // memeriksa apakah t=0 pesawat atau penjaga pintu bioskop untuk
menghitung jumlah penumpang pesawat atau
print(" YA"); penonton yang masuk gedung bioskop. Saat mau
else digunakan, counter diset nilai 0 (disebut inisialisasi,
print(" TIDAK"); misalnya c=0). Setelah itu, tombol ditekan
sehingga nilai sebelumnya bertambah dengan 1
} (c=c+1). Hal ini dilakukan seterusnya selama
(while) c kurang dari n sambil mencetak nilai c.

DEPARTEMEN ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER


INSTITUT PERTANIAN BOGOR INSTITUT PERTANIAN BOGOR

Contoh #4
Algoritme Men-trace algoritme

// Mencetak bilangan 1, 2, sampai dengan n † Men-trace algoritme adalah suatu proses untuk
menelusuri langka demi langkah dari suatu
procedure printN { algoritme dan menentukan output akhirnya.
read(n); // sampai bilangan berapa? † Dalam pemrograman, proses ini disebut juga
c = 0;
0 // insialisasi sebagai proses debug.
debug
while (c<n) { // selama c kurang dari n † Tips:
c=c+1; // nilai c sebelumnya ditambah 1 „ Ikuti langkah demi langkah
print(c); „ Catat setiap perubahan nilai dari suatu variabel
} „ Jika menemukan suatu pola tertentu, maka output
akhir dapat langsung ditentukan tanpa mengikuti
} algoritme sampai selesai (hanya dilakukan oleh orang
yang sudah sangat memahami algoritme)

DEPARTEMEN ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER


INSTITUT PERTANIAN BOGOR INSTITUT PERTANIAN BOGOR

Contoh men-trace
algoritme LATIHAN #1

// Misal input n=4 † Masalah:


n 4
Buat algoritme mencetak hasil perhitungan
procedure printN {
read(n); c 0 1 2 3 4 b2-4ac.
c = 0; output p ((nilai a b c):
† Contoh input )
while (c<n) {
1 234
c=c+1;
print(c); 2 † Contoh output:
} 3 -23
}
4

STOP

DEPARTEMEN ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER


INSTITUT PERTANIAN BOGOR INSTITUT PERTANIAN BOGOR

ILKOM IPB 3
8/23/2009

LATIHAN #2 LATIHAN #3

† Masalah: † Masalah:
Buat algoritme mencetak bilangan bulat ganjil Buat algoritme mencetak bilangan bulat dimulai
(gasal) dari 1 sampai dengan n. dari n sampai dengan 1.
† Contoh input: † Contoh input:
5
8
† Contoh output:
† Contoh output:
5
1 4
3 3
5 2
7 1

DEPARTEMEN ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER


INSTITUT PERTANIAN BOGOR INSTITUT PERTANIAN BOGOR

LATIHAN #4
† Masalah:
Buat algoritme menghitung jumlah dari beberapa
bilangan bulat.
† Input:
p bilangan
Beberapa g bulat dan diakhiri dengan
g nilai minus
99 atau -99 (bilangan terakhir ini tidak dijumlahkan)
† Output:
Jumlah dari bilangan masukan selain bilangan terakhir
(minus 99)
† Contoh input:
20 -8 0 26 37 14 -99
† Contoh output:
89

DEPARTEMEN ILMU KOMPUTER


INSTITUT PERTANIAN BOGOR

ILKOM IPB 4

Anda mungkin juga menyukai