AnikVegaVitianingsih, S.Kom.,MT
081332765765
@vegavitianingsih
Domain Algoritma
Masalah : motivasi untuk membuat algoritma.
Algoritma : prosedur untuk menyelesaikan
masalah. Seringkali satu masalah dapat
diselesaikan dengan lebih dari satu cara
(banyak kemungkinan).
Program: representasi formal dari suatu
algoritma dengan menggunakan bahasa
pemrograman yang bisa dimengerti oleh
komputer.
Proses : aktivitas menjalankan langkah-langkah
dalam algoritma.
Penilaian Algoritma
Algoritma harus benar → keluaran seperti yang
dikehendaki.
Efisiensi Algoritma
Kecepatan waktu yang dibutuhkan
Memori yang dipakai
Tulisan
Urutan langkah-Langkah
Bahasa manusia
Flowchart
Gambar/bagan yang
memperlihatkan urutan dan
hubungan antar proses.
Pseudocode
Flowchart
System Flowchart
urutan proses dalam system dengan menunjukkan alat
media input, output serta jenis media penyimpanan
dalam proses pengolahan data.
Program Flowchart
urutan instruksi yang digambarkan dengan symbol
tertentu untuk memecahkan masalah dalam suatu
program.
Simbol Flowchart:
teh kopi
Penyelesaian Contoh-1:
Algoritma
Siapkan gelas
cadangan X X
Tuangkanisi gelas
cadangan ke gelas
yang awalnya berisi kopi
kopi X
Contoh-2: Algoritma
Bagaimana menentukan apakah suatu bilangan
merupakan bilangan ganjil atau bilangan genap.
1→1
2→0
➔ Operator aritmatika % ➔ if bilangan % 2==0 then
3→1
genap
4→0
else
5→1
ganjil
6→0
7→1
8→0
9→1
10 → 0
Penyelesaian Contoh-2:
Algoritmanya :
A. Masukkan bilangan yang akan ditentukan
B. Bagi bilangan dengan bilangan 2
C. Hitung sisa hasil bagi pada langkah B.
D. Jika sisa hasil bagi = 0, maka bilangan = genap.
Jika tidak, maka bilangan = ganjil.
Pseudocode:
Pseudocode:
input (bilangan)
input (bilangan)
Bil bilangan %2
If bilangan % 2==0 then “genap” else “ganjil
If Bil ==0 then “genap” else “ganjil
Output (bilangan)
Output (Bil)
Contoh-3: Algoritma
Permasalahan: Buatlah sebuah rancangan program
dengan menggunakan flowchart untuk mencari luas
persegi panjang.
Rumus → L = panjang x lebar
Algoritma menghitung luas persegi panjang :
1. Input panjang (P)
2. Input Lebar (L)
3. Luas = P * L Pseudocode”
Step 1: input (p)
4. Output luas Step 2: input (l)
Step 3: L p * l
Step 4: output (L)
Penyelesaian Contoh-3
Algoritma
Judul
{Bagian ini berisi komentar mengenai Algoritma program, diantaranya bagaimana cara
kerjanya, bagaimana kondisi awal dan akhir dari algoritma program}
Kamus
{Bagian ini berisi definisi nama variabel, nilai inputan awal, nama prosedur, nama
fungsi, dll}
Algoritma
{Bagian ini tempat untuk menuliskan Algoritma}
Judul (Header)
bagian teks algoritma yang digunakan sebagai tempat
mendefinisikan nama dengan menentukan apakah teks
tersebut adalah program, prosedur, fungsi.
Setelah judul disarankan untuk menuliskan spesifikasi singkat
dari teks algoritma tersebut.
Nama algoritma sebaiknya singkat namun cukup
menggambarkan apa yang akan dilakukan oleh
algoritma tersebut.
Kamus (Deklarasi)
Kamus adalah bagian teks algoritma sebagai tempat untuk mendefinisikan :
Nama type
Nama konstanta
Nama variabel
Nama fungsi
Nama prosedur
Algoritma
Kamus
{Nama type} input (c,d) {program menerima input 2 bil c,d}
{Nama konstanta} if c<d then {operasi kondisi}
x,y: integer e a+b {nilai e di assignment nilai a,b}
z: float else
Nama: String d a-b
x=2; output (e) {hasil output}
z=3.14
Menentukan nilai terbesar dari bilangan bulat yang
dibaca dari piranti masukan dan menuliskan hasilnya
ke piranti keluaran.
Contoh Masalah
START
Step 1: Input NilaiUTS, NilaiUAS, NilaiTugas
Step 2: NA NilaiUTS+ NilaiUAS+NilaiTugas/3
Input
NilaiUTS, NilaiUAS, NilaiTugas
Step 3: if (NA <=65) then
Print “Tidak Lulus”
else
NA NilaiUTS+ NilaiUAS+NilaiTugas/3 Print “Lulus”
endif
N NA<=65 Y Step 4: outpur NA
PRINT PRINT
“Lulus” “Tidak Lulus”
END
Contoh Masalah:
Bahasa Manusia
START 1. Masukkan nilai Celsius
2. Hitung konversi nilai Celcius ke→
Input Fahrenheit = 9/5 * (Celsius +32)
Celsius Reamur = 4/5 * (Celsius +32)
3. Cetak Celsius, Fahrenheit, Reamur
Fahrenheit = 9/5 x ( C + 32)
26