Transcript Algoritma
1
Algoritma dan
Pemrograman
KOMANG KURNIAWAN W.,M.CS.
Pseudo Code
Pseudo Code adalah urutan baris
algoritma seperti kode pemrograman
dan tidak memiliki sintak yang baku.
Pseudo Code lebih umum digunakan
oleh programmer yang
berpengalaman.
Akan tetapi, flowchart lebih mudah
dimengerti oleh programmer pemula.
Pseudo code sangat mudah
diimplementasikan ke dalam kode
program dibandingkan dengan
flowchart.
Pseudo Code
Kita bisa bebas menulis pseudo code
selama itu mudah dimengerti bagi
orang lain.
Tetapi disarankan untuk
menggunakan keyword yang umum
digunakan seperti : if, then, else, while,
do, repeat, for, dan lainnya.
Dan ikuti gaya penulisan
pemrograman seperti Pascal, C++, dll.
Perhatikan kode dibawah ini :
1.
Mulai
2.
Masukkan sebuah angka
3.
Masukkan sebuah angka dan tampilkan
4.
Ambil angka yang sebelumnya dan tampilkan
5.
Selesai
1.
Start
2.
Masukkan A
3.
Masukkan B, Tampilkan B
4.
Tampilkan A
5.
End
Teknik Runtunan
(Sequence)
Tiap instruksi dikerjakan satu per satu
Tiap instruksi dilaksanakan tepat sekali, tidak
ada instruksi yang diulang
Urutan instruksi dikerjakan sebagaimana
tertulis di dalam teks algoritmanya
Akhir dari instruksi terakhir merupakan akhir
algoritma
Bagan Flowchart
Algoritma
x = 10
x = 10
A = x2+2
B=x–5
B=A–5
A = x2+2
y=A+B+3
y=A+B+3
C=y+5
C=y+5
Output (A,B,C)
Output (A,B,C)
A = 102
A = 102
B = 97
B=5
C = 207
C =115
Soal
Buatlah sebuah algoritma dengan spesifikasi
sebagai berikut
Menampilkan
Meminta
tulisan “Halo, siapa namamu?”
pengguna memasukkan namanya
Menuliskan
pesan “Senang berteman
denganmu”, <nama>
Jawaban
Program halo_nama
Deklarasi
Nama : string
Algoritma
Output (‘Halo siapa namamu? ‘)
Input (nama)
Output (‘Senang berteman denganmu ‘,nama)
Soal
Tulislah algoritma untuk menghitung luas
daerah yang berwarna kuning dari gambar
di bawah.
Data masukan dibaca dari keyboard dan
luas bangun ditampilkan di monitor.
x cm
Jawaban
Program kuning
Kamus
Constant phi : real = 3.14
sisi,jari, lspersegi: integer
lslingkaran,lskuning : real
Algoritma
Input (sisi,jari)
lspersegi sisi*sisi
lslingkaran phi*jari*jari
lskuning lspersegi – lslingkaran
Output (lskuning)
Soal
Dibaca durasi waktu dalam detik
Tulislah algoritma untuk mengkonversi durasi
waktu tersebut ke dalam hari, jam, menit,
detik
Jawaban
Program durasi
Kamus
Hari,jam,menit,detik : integer
indetik : longint
Algoritma
Input (indetik)
hari indetik div 86400
jam indetik mod 86400 div 3600
menit indetik mod 86400 mod 3600 div 60
detik indetik mod 86400 mod 3600 mod 60
Output (hari,jam,menit,detik)
Soal
Sebuah proyek dikerjakan dalam x hari.
Tulislah algoritma untuk mengkonversi
berapa tahun, berapa bulan, dan berapa
hari proyek tersebut dikerjakan.
Asumsikan 1 tahun = 365 hari, 1 bulan = 30
hari
Jawaban
Program proyek
Kamus
inhari,tahun,bulan,hari: integer
Algoritma
Input (inhari)
tahun inhari div 365
bulan inhari mod 365 div 30
hari inhari mod 365 mod 30
Output(tahun,bulan,hari)
Soal
Dibaca dua buah tanggal.
Tulislah algoritma untuk menghitung berapa
hari jarak kedua tanggal tersebut.
Jawaban
Program jarak_tanggal
Deklarasi
d1,m1,y1,d1,m2,y2
Algoritma
Input
(d1,m1,y1)
Input
(d2,m2,y2)
D3
d2-d1
M3
(m2-m1)*30
Y3
(y2-y1)*365
Totd
d3+m3+y3
Output
(Totd)
,d3,m3,y3,totd: integer
Soal (X)
Buat algoritma yang membaca nilai uang
(rupiah) dalam kelipatan 25, lalu menentukan
berapa nilai tukaran pecahan.
Pecahan yang tersedia
Rp.
1000
Rp.
500
Rp.
100
Rp.
50
Rp.
25
Jawaban
Program pecahan
Deklarasi
Uang,seribu,sisa1,limaratus,sisa2 ,seratus,sisa3 ,limapuluh,dualima :
integer
Algoritma
Input (uang)
Seribu uang div 1000
Sisa 1 uang mod 1000
Limaratus sisa1 div 500
Sisa2 sisa1 mod 500
Seratus sisa2 div 100
Sisa3 sisa2 mod 100
Limapuluh sisa3 div 50
Dualima sisa3 mod 50
Output (‘Uang 1000 = ‘,seribu,’ Uang 500 = ‘,limaratus,’ Uang 100 =
‘,seratus,’ Uang 50 = ‘,limapuluh’,’ Uang 25 = ‘,dualima)
Soal
Seekor semut menempuh perjalanan sejauh
x cm.
Tulislah algoritma untuk mengkonversi jarak x
ke dalam kilometer-meter-sentimeter
1
m =100 cm
1
km = 1000 m = 100.000cm
Soal
Tuliskan algoritma yang membaca panjang
sebuah benda dalam satuan meter
Konversikan ke dalam satuan inchi,kaki,dan
yard
1
inchi = 25.4 mm
1
kaki = 30.48 cm
1
yard = 0.9144 m
Soal
Untuk menentukan berat badan ideal, tinggi
badan dikurangi 100, lalu kurangi lagi
dengan 10% dari hasil pengurangan
pertama.
Tulis algoritma yang membaca tinggi badan
lalu menentukan berat badan yang ideal
untuk tinggi tersebut.
Jawaban
Program bb_ideal
Deklarasi
Bb,tb : integer
Algoritma
Input (tb)
Bb tb-100
Bb bb - 10/100*bb
Output (bb)
Terima Kasih