SlideShare a Scribd company logo
1 of 7
Algoritma dan Pemograman
Pseudo Pascal untuk Deret Aritmatika
(Writen By : Agus Triono, S.Pd)
Kurikulum pelajaran TIK pada tingkat SMA belum mencakup materi tentang Algoritma dan
Pemograman, padahal materi ini adalah materi yang di ujikan pada Olimpiade sains
komputer, oleh karena itu berikut ini akan saya paparkan secara singkat beberapa sub pokok
bahasan yang berhubungan dengan Algoritma dan Pseudo Pascal. mudah-mudahan
bermanfaat.
A. Algoritma
Apakah anda tahu apa yang dimaksud dengan Algoritma ?..
Algoritma adalah suatu urutan langkah-langkah (steps) yang disusun secara logis untuk
menyelesaikan masalah dengan menggunakan komputer, dengan kreteria sebagai berikut :
 Setiap langkah / steps harus jelas dan pasti (definite)
 Diperbolehkan tanpa ada output tetapi minimal harus ada satu output.
 Jumlah langkah harus berhingga atau dengan kata lain harus ada stopping criteria.
Penyajian Algoritma dapat disajikan dalam dua cara yaitu : (1). Secara gambar (FlowChart)
dan (2) Secara Tulisan (Struktur bahasa dan Pseudo Code).
disini yang akan kita bahas adalah penyajian Algoritma secara tulisan dengan Pseudo Code
Pascal.
B. Algoritma dengan Pseudo Code Pascal
Dalam bahasa pascal kurang lebih ada 11 statement, namun mengingat waktu yang terbatas
pada kesempatan kali ini kita hanya membahas 1 sub pokok bahasan yaitu tentang struktur
perulangan dalam pascal.
1. Sturktur perulangan dalam Pascal
Dalam Pascal kurang lebih ada tiga struktur perulangan, yaitu :
a. While-do ...
b. Repeat ... Until
c. For-do ...
struktur perlungan while-do... dan repeat...until menggunakan ekspresi logika untuk
menghentikan perulangan, berbeda dengan struktur for-do... yang menghentikan perulangan
hanya dengan batas pencacahnya saja.
perbedaan struktur perulangan while-do... dan repeat until yaitu : Struktur perulangan while-
do... ekspresi logikanya merupakan syarat dilakukannya perulangan, sedangkan dalam
struktur perulangan repeat...until ekspresi logikanya merupakan syarat berhentinya sebuah
perulangan.
Berikut contoh dan pembahasan yang berhubungan dengan struktur perulangan dalam pascal.
A. Contoh soal perulangan While-do...
Perhatikan potongan program dibawah ini :
y:=4;
x:=2;
while x < 7 do
begin
y:=y+3;
x:=x+1;
end;
Writeln (y);
dari potongan program diatas berapakah nilai y?
Mari kita bahas contoh soal diatas :
 Langkah pertama, kita harus mengetahui cara membaca sebuah script bahasa pascal.
dalam Pascal sebuah perintah dibaca mulai dari sebelah kiri ke sebelah kanan dan
kemudian perintah itu diakhiri dengan simbol ";", setelah itu kita meneruskan script
yang terdapat dibawahnya seperti proses diatas sampai selesai.
 Langkah selanjutnya, kita lihat satu persatu perintah2 dari potongan tersebut : yang
pertama kita lihat ada Perintah y:=4; dan x:=2; ini merupakan perintah assigment atau
pemberian nilai awal untuk y =4 dan x =2.
 Selanjutnya kita lihat ada perintah While x < 7 do; ini adalah statement while-do yang
mana perulangan akan terus dilakukan dengan membaca seluruh perintah2 yang ada
pada compound statment begin...end apabila nilai x masih dibawah 7,
 Perulangan while-do akan berhenti jika ada statement yang menambah nilai x. untuk
menambah nilai x perlu ditambahkan perintah x:=x+1; pada compound statement
while-do; perintah ini akan terus diulang sehingga nilai x terus bertambah dan jika
nilai x=7 maka perulangan while-do... akan berhenti. jika statement x:=x+1;
ditiadakan maka program tidak akan berhenti .
 Statement y:=y+3; ini adalah perintah pemberian nilai y, nilai y akan terus berubah
sejalan dengan proses perulangan while-do.
 Dari potongan program tersebut perulangan akan terus dilakukan dari x:=2; sampai
dengan x:=6; (lima kali perulangan), dan setiap perulangan memberikan nilai untuk y.
berikut penjelasan selanjutnya untuk mencari Nilai y:
 Pada saat nilai x:=2, ==>; nilai y:=4+3=7; (lihat rumus y:=y+3, nilai y sebelumnya 4);
 Pada saat nilai x:=3, ==>; nilai y:=7+3=10;
 Pada saat nilai x:=4, ==>; nilai y:=10+3=13;
 Pada saat nilai x:=5, ==>; nilai y:=13+3=16;
 Pada saat nilai x:=6, ==>; nilai y:=16+3=19;
 Pada saat nilai x:=7, kondisi syarat dilakukannya perulangan tidak terpenuhi (while
x < 7 do);
 Jadi setelah kita bahas, potongan program tersebut akan menghasilkan nilai y:=19;.
 Gimana jelaskan....
B. Contoh soal perulangan Repeat-until.
Perhatikan penggalan program dibawah ini :
y:=4;
x:=2;
repeat
y:=y+3;
x:=x+1;
Until x=7;
writeln (y);
Berapakah nilai y ?
Mari kita bahas contoh program diatas :
 Mula-mula nilai y dan x masing-masing diberi nilai 4 dan 2.
 Statement repeat-until terdapat ekspresi logika until x=7, ini menandakan perulangan
akan berhenti apabila nilai x=7.
 Perulangan akan dilakukan pada saat x:=2 sampai dengan x:=6, jadi dilakukan selama
5 kali.
 Pada saat x:=2,==>; nilai y:=4+3=7,
 Pada saat x:=3,==>; nilai y:=7+3=10,
 Pada saat x:=4,==>; nilai y:=10+3=13,
 Pada saat x:=5,==>; nilai y:=13+3=16,
 Pada saat x:=6,==>; nilai y:=16+3=19,
 Pada saat x:=7,==>; syarat untuk berhenti tercapai (until x=7) .
 jadi setelah kita bahas, potongan program diatas juga menghasilkan nilai untuk y =
19;
 Gimana lebih jelaskan.....
C. Contoh soal perulangan for-do...
perhatikan potongan program dibawah ini :
y:= 4;
for x:= 1 to 5 do
begin
y:= y + 1;
end;
writeln (y);
dari potongan program diatas berapakah nilai y ?
Pembahasan :
 Pertama-tama variabel y diberi nilai awal 4
 Perintah for x:=1 to 5 do begin...end; ini menandakan perulangan akan dilakukan
selama 5 kali yaitu dari 1 s/d 5. dan setiap kali perulangan akan mengerjakan perintah
yang terdapat dalam compound statement
 pada saat x:=1; ==>; y:=4+3=7;
 pada saat x:=2; ==>; y:=7+3=10;
 pada saat x:=3; ==>; y:=10+3=13;
 pada saat x:=4; ==>; y:=13+3=16;
 pada saat x:=5; ==>; y:=16+3=19;
 jadi setelah kita bahasa potongan program diatas juga akan menghasil nilai y=19.
2. Deret Aritmatika dan Perulangan While-do
Contoh-contoh penggunaan perulangan diatas adalah merupakan contoh penerpan bahasa
pemograman pascal untuk deret aritmatika {Un=a+(n-1)b}, mari kita bahas kembali contoh
soal dibawah ini :
Un : = 4;
x : = 2;
while x < 7 do
begin
Un : = Un + 5;
x : = x + 1;
end;
Writeln (Un);
berapakah nilai Un ?
Pembahasan :
 Pertama nilai Un dan x diberi nilai awal 4 dan 2, x adalah sebagai variabel untuk
ekspresi logika while-do, sedang Un disini akan kita anggap sebagai a (suku pertama
dalam deret aritmatika).
 setelah itu, kita lihat ekspresi logika dari while x < 7 do, ini menandakan perulangan
akan dilakukan selama 6 kali, yaitu dari x=2 s/d x=6 (2,3,4,5,6), jadi nilai Un yang
ditanyakan adalah nilai deret aritmatika dengan suku ke-5, yang mana suku
pertamanya (a) adalah 4, dan bedanya (b) adalah 5.
 Sekarang kita simpulkani variabel2 yang dbutuhkan untuk menghitung nilai Un :
 Nilai a atau suku pertama adalah nilai Un yang pertama kalinya ==> Un : = 4;
 Nilai b atau beda adalah 5, nilai ini kita ambil dari rumus Un:=Un+5, ==>; 5 disini
adalah beda (b) nya.
 Yang ditanya adalah U5 atau suku ke 5 berarti nilai n=5 :
Sekarang kita masukan variabel-variabel yang bersangkutan kedalam rumus deret aritmatika :
Un = a + (n-1) b;
U5 = 4 + (5-1)5;
U5 = 4 + (4)5;
U5 = 4 + 20;
U5 = 24;
Jadi nilai Un dari potongan program diatas adalah 24.
Gimana Paham kan...... atau kalau anda belum percaya dengan rumus ini coba kita buktikan
dengan menggunakan Langkah-langkah Algoritma perulangan while-do.
==> pada saat x : =2; ==> nilai Un : = 4 + 5 = 9;
==> pada saat x : =3; ==> nilai Un : = 9 + 5 = 14;
==> pada saat x : =4; ==> nilai Un : = 14 + 5 = 19;
==> pada saat x : =5; ==> nilai Un : = 19 + 5 = 24;
Gimana sama bukan...
Jadi Kesimpulannya jika dalam compound statment while-do terdapat rumus penjumlahan,
seperti ini :
Un := Un + 5, itu dapat dikerjakan dengan menggunakan rumus deret aritmatika,
Dan Apabila rumus diganti menjadi Un : = Un -5; ini juga dapat dikerjakan dengan
menggunakan rumus deret aritmatika, hanya saja pada rumus ini beda (b)nya adalah -5.
Kegunaan rumus deret aritmetika untuk membaca sebuah algoritma while-do… pada operasi
penjumlahan dan pengurangan seperti pada contoh soal diatas sangat dibutuhkan jika ada
potongan program yang serupa dengan contoh diatas dan perulangannya melebihi batas
kemampuan waktu kita, misal kan seperti soal dibawah ini :
x : = 1;
Un : = 4;
While x < 99999 do
begin
Un : = Un + 5;
x : = x + 1;
end;
Writeln (Un);
berapakah nilai Un ?
Apabila kita bahas soal diatas dengan langkah-langkah Algoritma akan menghabiskan waktu
yang sangat lama karena perluangan dari program diatas adalah selama 99998 kali... kan bisa
pegel tangan kita untuk menghitung setiap langkah-langkahnya.... jadi penyelesaian yang
tepat adalah kita gunakan rumus deret aritmatika untuk menyelesaikannya.
Sekarang mari kita bahas soal diatas dengan menggunakan rumus deret Aritmatika :
 Diketahui nilai a := 4 (nilai Un awal )
 Nilai b (beda) = 5 (dilihat dari rumus Un : = Un + 5 );
 Nilai n = 99998 (merupakan perulangan yang dilakukan oleh while-do…)
 Un = a + (n-1)b;
 Un = 4 + (99998-1)5;
 Un = 4 + (99997)5 ;
 Un = 4 + 499975;
 Un = 499.979,00
 Jadi Nilai Un dari potongan program diatas adalah 499.979,00
Gimana... semakin paham kan.......
3. Deret Geometri dan Perulangan While-do…
 Perbedaan antara deret Aritmatika dengan deret Geometri dalam penerapan struktur
perulangan while-do… adalah terletak pada rumus yang terdapat dalam compound
statement while-do…
 Jika dalam deret aritmatika, maka rumus yang terdapat dalam compound statement
while-do adalah dalam bentuk penambah atau pengurangan, misalnya seperti ini : y :
= y + 3 atau y : = y -3;
 Dalam deret geometri, rumus yang terdapat dalam compound statement while-do…
adalah dalam berbentuk perkalian atau pembagian. Misalnya seperti : y: = y * 3, ini
menandakan deret geometri dengan rasionya / r = 3, atau y : = y / 3, ini menandakan
deret geometri dengan rasio / r = 1/3.
untuk lebih jelasnya perhatikan contoh soal dibawah ini :
x : = 2;
Un : = 4;
While x < 7 do
begin
Un : = Un * 5;
x : = x + 1;
end;
Writeln (Un);
berapakah nilai Un ?
Pembahasan :
 Dari soal diatas diketahui bahwa suku pertama atau a dari deret tersebut adalah 4, ini
ditunjukan oleh nilai awal dari Un : = 4;
 Perulangan dari potongan program diatas akan dilakukan selama 5, yaitu pada saat
x:=2 s/d x:=7, sehingga nilai n=5, berarti yang ditanya adalah deret geometri suku ke-
5.
 Rumus Un : = Un * 5 dalam compound statement while-do, ini menandakan bahwa
potongan program tersebut adalah merupakan penerapan deret geometri.
 Setelah kita ketahui semua hal-hal yang diperlukan, maka variable-variabel tersebut
kita masukan kedalam rumus deret geometri:
Rumus Deret Geometri :
Un = a x r(n-1)
Dik :
 a = 4
 r = 5
 n = 5
ditanya: deret geometri suku ke-5 ?
jawab :
U5 = 4 x 5 (5-1)
U5 = 4 x 54
U5 = 4 x 625
U5 = 2500
Jadi dengan menggunakan rumus deret geometri nilai Un dari penggalan program diatas
adalah 2500.
Gimana sudah paham.. kan….. ok. Kalau masih ragu mari kita buktikan dengan
menggunakan langkah-langkah Algoritmanya :
 Perulangan dalam statement while-do tersebut akan berjalan selama 5 kali, yaitu dari
x:=2 s/d x:=6, (2,3,4,5,6).
 Pada saat x :=2 == > nilai Un : = 4 * 5 = 20;
 Pada saat x :=3 == > nilai Un : = 20 * 5 = 100;
 Pada saat x :=4 == > nilai Un : = 100 * 5 = 500;
 Pada saat x :=5 == > nilai Un : = 500 * 5 = 500;
 Pada saat x :=6 == > nilai Un : = 500 * 5 = 2500;
 Jadi sama kan… Nilai Un adalah 2.500, kesimpulannya potongan program diatas bisa
dikerjakan dengan Teknik Algoritma dan juga bisa menggunakan rumus deret
geometri. Hanya saja kalau perulangan dari program diatas sangat banyak dan diluar
kemampuan kita, sebaiknya kita menggunakan rumus deret geometri untuk
menyelesaikan soal tersebut.
Saya kira udah cukup banyak ya,, yang telah kita pelajari tentang Algoritma pada kesempatan
kali ini, oh iya dibawah ini saya punya soal-soal. Kalau kamu bisa mengerjakan tolong jawab
melalui pesan komenter dibawah ini, yang bisa menjawab semua soal dengan benar dan
termasuk 10 orang pertama yang menjawabnya, maka akan mendapat pulsa gratis dari saya
mau kan. Berikut soal-soalnya :
1. Pada tahun 2000, Tarzanu membuka rekening deposito pada bank Mega, besar uang
yang didepositokan adalah Rp. 100.000.000,00. Besar bunga deposito pertahun
adalah 11%, dan Tn. Tarzanu menginginkan agar bunga deposito yang dibayarkan
oleh bank perbulannya di masukan kedalam rekening tabungan biasa miliknya.
Jangka waktu deposito tersebut adalah selama 10 tahun. Ditanya dari kasus diatas
buatlah Pseudo pascal dengan menggunakan strutur perulangan while-do. Dan hitung
juga berapa besar uang deposito dan tabungan setelah sepuluh tahun ?
2. Tn. Fahrul telah membuka rekening deposito dengan bunga tahunan pada bank
mandiri sejak tahun 2002 yang lalu, Bunga deposito dibayarkan oleh bank setiap
bulannya melalui rekening tabungan biasa milik Tn.Fahrul. pada Tahun 2004 jumlah
setoran awal deposito ditambah dengan bunga deposito yang diterimanya adalah
sebesar Rp. 140.000.000,- , kemudian pada tahun 2008 jumlah setoran awal deposito
ditambah dengan bunga deposito yang diterimanya adalah sebesar Rp. 190.000.000,-
dari kasus tersebut ditanya : (1). Berapakah setoran awal (a) dan besarnya bunga (b)
Dari Rekening Deposito Tn. Fahrul?. (2). Dari kasus tersebut buatlah Pseudo Pascal
dengan menggunakan struktur perulangan while-do!
(selamat Mengerjakan).
(Info semua artikel materi pelajaran dan soal-soal diatas adalah murni dibuat oleh Agus
Triono, S.Pd sesuai dengan kemampuan dan gaya bahasanya sendiri, sehingga apabila ada
gaya bahasa yang kurang benar mohon dimaklumi. Selain jawaban anda juga bisa
memberikan komentar-komentar tentang materi ini pada kolom komenter dibawah
ini.Semoga bermanfaat. Terimakasih)

More Related Content

What's hot

Artikel tentang perulangan
Artikel tentang perulanganArtikel tentang perulangan
Artikel tentang perulanganditaku
 
Soal Pascal OSN Komputer
Soal Pascal OSN KomputerSoal Pascal OSN Komputer
Soal Pascal OSN KomputerLabieb Maududi
 
struktur pengulangan di pascal bagian 2
struktur pengulangan di pascal bagian 2struktur pengulangan di pascal bagian 2
struktur pengulangan di pascal bagian 2Alfian Syamsurizal
 
ALOGARITMA 4
ALOGARITMA 4ALOGARITMA 4
ALOGARITMA 4arstwn
 
2 struktur dasar algoritma dan notasi algoritmik pseudo-code
2   struktur dasar algoritma dan notasi algoritmik pseudo-code2   struktur dasar algoritma dan notasi algoritmik pseudo-code
2 struktur dasar algoritma dan notasi algoritmik pseudo-codeAnand Reverse
 
Matematika Diskrit - 11 kompleksitas algoritma - 02
Matematika Diskrit - 11 kompleksitas algoritma - 02Matematika Diskrit - 11 kompleksitas algoritma - 02
Matematika Diskrit - 11 kompleksitas algoritma - 02KuliahKita
 
Pertemuan 1 - Pengantar Algoritma
Pertemuan 1 - Pengantar AlgoritmaPertemuan 1 - Pengantar Algoritma
Pertemuan 1 - Pengantar AlgoritmaAchmad Solichin
 
Pertemuan 6 - Struktur Perulangan
Pertemuan 6 - Struktur PerulanganPertemuan 6 - Struktur Perulangan
Pertemuan 6 - Struktur PerulanganAchmad Solichin
 
Algoritma dan pemrograman 1
Algoritma dan pemrograman 1Algoritma dan pemrograman 1
Algoritma dan pemrograman 1Javra Ketoprak
 
Algo temu 4 struktur dasar algoritma
Algo temu 4 struktur dasar algoritmaAlgo temu 4 struktur dasar algoritma
Algo temu 4 struktur dasar algoritmaSenna Hendrian
 
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunusTifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunusTifanie Indah
 
soal-latihan-logika-algoritma-semester1
soal-latihan-logika-algoritma-semester1soal-latihan-logika-algoritma-semester1
soal-latihan-logika-algoritma-semester1Budi Kurniawan
 
Materi algoritma perulangan
Materi algoritma perulanganMateri algoritma perulangan
Materi algoritma perulangannungkyreza
 
Pertemuan 5 - Struktur Kondisi IF (lanjutan)
Pertemuan 5 - Struktur Kondisi IF (lanjutan)Pertemuan 5 - Struktur Kondisi IF (lanjutan)
Pertemuan 5 - Struktur Kondisi IF (lanjutan)Achmad Solichin
 

What's hot (20)

Artikel tentang perulangan
Artikel tentang perulanganArtikel tentang perulangan
Artikel tentang perulangan
 
Soal Pascal OSN Komputer
Soal Pascal OSN KomputerSoal Pascal OSN Komputer
Soal Pascal OSN Komputer
 
struktur pengulangan di pascal bagian 2
struktur pengulangan di pascal bagian 2struktur pengulangan di pascal bagian 2
struktur pengulangan di pascal bagian 2
 
Soal dan bahasan Pascal
Soal dan bahasan PascalSoal dan bahasan Pascal
Soal dan bahasan Pascal
 
ALOGARITMA 4
ALOGARITMA 4ALOGARITMA 4
ALOGARITMA 4
 
2 struktur dasar algoritma dan notasi algoritmik pseudo-code
2   struktur dasar algoritma dan notasi algoritmik pseudo-code2   struktur dasar algoritma dan notasi algoritmik pseudo-code
2 struktur dasar algoritma dan notasi algoritmik pseudo-code
 
6 lanjutan perulangan
6 lanjutan perulangan6 lanjutan perulangan
6 lanjutan perulangan
 
Matematika Diskrit - 11 kompleksitas algoritma - 02
Matematika Diskrit - 11 kompleksitas algoritma - 02Matematika Diskrit - 11 kompleksitas algoritma - 02
Matematika Diskrit - 11 kompleksitas algoritma - 02
 
Pertemuan 1 - Pengantar Algoritma
Pertemuan 1 - Pengantar AlgoritmaPertemuan 1 - Pengantar Algoritma
Pertemuan 1 - Pengantar Algoritma
 
Pertemuan 6 - Struktur Perulangan
Pertemuan 6 - Struktur PerulanganPertemuan 6 - Struktur Perulangan
Pertemuan 6 - Struktur Perulangan
 
Algoritma dan pemrograman 1
Algoritma dan pemrograman 1Algoritma dan pemrograman 1
Algoritma dan pemrograman 1
 
Pertemuan 2 ~ Flowchart
Pertemuan 2 ~ FlowchartPertemuan 2 ~ Flowchart
Pertemuan 2 ~ Flowchart
 
Algo temu 4 struktur dasar algoritma
Algo temu 4 struktur dasar algoritmaAlgo temu 4 struktur dasar algoritma
Algo temu 4 struktur dasar algoritma
 
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunusTifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
 
soal-latihan-logika-algoritma-semester1
soal-latihan-logika-algoritma-semester1soal-latihan-logika-algoritma-semester1
soal-latihan-logika-algoritma-semester1
 
Materi algoritma perulangan
Materi algoritma perulanganMateri algoritma perulangan
Materi algoritma perulangan
 
Matlab tutor sns
Matlab tutor snsMatlab tutor sns
Matlab tutor sns
 
Materi 6. perulangan
Materi 6. perulanganMateri 6. perulangan
Materi 6. perulangan
 
Algoritma brute force
Algoritma brute forceAlgoritma brute force
Algoritma brute force
 
Pertemuan 5 - Struktur Kondisi IF (lanjutan)
Pertemuan 5 - Struktur Kondisi IF (lanjutan)Pertemuan 5 - Struktur Kondisi IF (lanjutan)
Pertemuan 5 - Struktur Kondisi IF (lanjutan)
 

Similar to Algoritma dan pemograman

Similar to Algoritma dan pemograman (20)

modul algoritma Bab 4
modul algoritma Bab 4modul algoritma Bab 4
modul algoritma Bab 4
 
Modul maple untuk metnum 2014
Modul maple untuk metnum 2014Modul maple untuk metnum 2014
Modul maple untuk metnum 2014
 
Algoritma Symboolon
Algoritma SymboolonAlgoritma Symboolon
Algoritma Symboolon
 
Tistrukdat9
Tistrukdat9Tistrukdat9
Tistrukdat9
 
MAKALAH REKRUSIF (DIKI CANDRA).docx
MAKALAH REKRUSIF (DIKI CANDRA).docxMAKALAH REKRUSIF (DIKI CANDRA).docx
MAKALAH REKRUSIF (DIKI CANDRA).docx
 
Algo temu 6 & 7 - PENGULANGAN
Algo temu 6 & 7 - PENGULANGANAlgo temu 6 & 7 - PENGULANGAN
Algo temu 6 & 7 - PENGULANGAN
 
9. algoritma perulangan pada java
9. algoritma perulangan pada java9. algoritma perulangan pada java
9. algoritma perulangan pada java
 
Pk 1 kimia algo and flowchart
Pk 1 kimia algo and flowchartPk 1 kimia algo and flowchart
Pk 1 kimia algo and flowchart
 
Pk 1 kimia algo and flowchart
Pk 1 kimia algo and flowchartPk 1 kimia algo and flowchart
Pk 1 kimia algo and flowchart
 
Bab i pendahuluan
Bab i pendahuluanBab i pendahuluan
Bab i pendahuluan
 
Wirman algoritma
Wirman algoritmaWirman algoritma
Wirman algoritma
 
Algoritma
AlgoritmaAlgoritma
Algoritma
 
for end.pdf
for end.pdffor end.pdf
for end.pdf
 
Latihan AlPro-I
Latihan AlPro-ILatihan AlPro-I
Latihan AlPro-I
 
Interpolasi lagrange dan newton
Interpolasi lagrange dan newtonInterpolasi lagrange dan newton
Interpolasi lagrange dan newton
 
bab3_alpro1.pptx
bab3_alpro1.pptxbab3_alpro1.pptx
bab3_alpro1.pptx
 
modul algoritma Bab 1
modul algoritma Bab 1modul algoritma Bab 1
modul algoritma Bab 1
 
Makalah matematika
Makalah matematikaMakalah matematika
Makalah matematika
 
3. teknik looping dalam_pemrograman
3. teknik looping dalam_pemrograman3. teknik looping dalam_pemrograman
3. teknik looping dalam_pemrograman
 
2679 3639-1-sm
2679 3639-1-sm2679 3639-1-sm
2679 3639-1-sm
 

Algoritma dan pemograman

  • 1. Algoritma dan Pemograman Pseudo Pascal untuk Deret Aritmatika (Writen By : Agus Triono, S.Pd) Kurikulum pelajaran TIK pada tingkat SMA belum mencakup materi tentang Algoritma dan Pemograman, padahal materi ini adalah materi yang di ujikan pada Olimpiade sains komputer, oleh karena itu berikut ini akan saya paparkan secara singkat beberapa sub pokok bahasan yang berhubungan dengan Algoritma dan Pseudo Pascal. mudah-mudahan bermanfaat. A. Algoritma Apakah anda tahu apa yang dimaksud dengan Algoritma ?.. Algoritma adalah suatu urutan langkah-langkah (steps) yang disusun secara logis untuk menyelesaikan masalah dengan menggunakan komputer, dengan kreteria sebagai berikut :  Setiap langkah / steps harus jelas dan pasti (definite)  Diperbolehkan tanpa ada output tetapi minimal harus ada satu output.  Jumlah langkah harus berhingga atau dengan kata lain harus ada stopping criteria. Penyajian Algoritma dapat disajikan dalam dua cara yaitu : (1). Secara gambar (FlowChart) dan (2) Secara Tulisan (Struktur bahasa dan Pseudo Code). disini yang akan kita bahas adalah penyajian Algoritma secara tulisan dengan Pseudo Code Pascal. B. Algoritma dengan Pseudo Code Pascal Dalam bahasa pascal kurang lebih ada 11 statement, namun mengingat waktu yang terbatas pada kesempatan kali ini kita hanya membahas 1 sub pokok bahasan yaitu tentang struktur perulangan dalam pascal. 1. Sturktur perulangan dalam Pascal Dalam Pascal kurang lebih ada tiga struktur perulangan, yaitu : a. While-do ... b. Repeat ... Until c. For-do ... struktur perlungan while-do... dan repeat...until menggunakan ekspresi logika untuk menghentikan perulangan, berbeda dengan struktur for-do... yang menghentikan perulangan hanya dengan batas pencacahnya saja. perbedaan struktur perulangan while-do... dan repeat until yaitu : Struktur perulangan while- do... ekspresi logikanya merupakan syarat dilakukannya perulangan, sedangkan dalam struktur perulangan repeat...until ekspresi logikanya merupakan syarat berhentinya sebuah perulangan. Berikut contoh dan pembahasan yang berhubungan dengan struktur perulangan dalam pascal. A. Contoh soal perulangan While-do... Perhatikan potongan program dibawah ini :
  • 2. y:=4; x:=2; while x < 7 do begin y:=y+3; x:=x+1; end; Writeln (y); dari potongan program diatas berapakah nilai y? Mari kita bahas contoh soal diatas :  Langkah pertama, kita harus mengetahui cara membaca sebuah script bahasa pascal. dalam Pascal sebuah perintah dibaca mulai dari sebelah kiri ke sebelah kanan dan kemudian perintah itu diakhiri dengan simbol ";", setelah itu kita meneruskan script yang terdapat dibawahnya seperti proses diatas sampai selesai.  Langkah selanjutnya, kita lihat satu persatu perintah2 dari potongan tersebut : yang pertama kita lihat ada Perintah y:=4; dan x:=2; ini merupakan perintah assigment atau pemberian nilai awal untuk y =4 dan x =2.  Selanjutnya kita lihat ada perintah While x < 7 do; ini adalah statement while-do yang mana perulangan akan terus dilakukan dengan membaca seluruh perintah2 yang ada pada compound statment begin...end apabila nilai x masih dibawah 7,  Perulangan while-do akan berhenti jika ada statement yang menambah nilai x. untuk menambah nilai x perlu ditambahkan perintah x:=x+1; pada compound statement while-do; perintah ini akan terus diulang sehingga nilai x terus bertambah dan jika nilai x=7 maka perulangan while-do... akan berhenti. jika statement x:=x+1; ditiadakan maka program tidak akan berhenti .  Statement y:=y+3; ini adalah perintah pemberian nilai y, nilai y akan terus berubah sejalan dengan proses perulangan while-do.  Dari potongan program tersebut perulangan akan terus dilakukan dari x:=2; sampai dengan x:=6; (lima kali perulangan), dan setiap perulangan memberikan nilai untuk y. berikut penjelasan selanjutnya untuk mencari Nilai y:  Pada saat nilai x:=2, ==>; nilai y:=4+3=7; (lihat rumus y:=y+3, nilai y sebelumnya 4);  Pada saat nilai x:=3, ==>; nilai y:=7+3=10;  Pada saat nilai x:=4, ==>; nilai y:=10+3=13;  Pada saat nilai x:=5, ==>; nilai y:=13+3=16;  Pada saat nilai x:=6, ==>; nilai y:=16+3=19;  Pada saat nilai x:=7, kondisi syarat dilakukannya perulangan tidak terpenuhi (while x < 7 do);  Jadi setelah kita bahas, potongan program tersebut akan menghasilkan nilai y:=19;.  Gimana jelaskan.... B. Contoh soal perulangan Repeat-until. Perhatikan penggalan program dibawah ini : y:=4; x:=2; repeat y:=y+3; x:=x+1; Until x=7;
  • 3. writeln (y); Berapakah nilai y ? Mari kita bahas contoh program diatas :  Mula-mula nilai y dan x masing-masing diberi nilai 4 dan 2.  Statement repeat-until terdapat ekspresi logika until x=7, ini menandakan perulangan akan berhenti apabila nilai x=7.  Perulangan akan dilakukan pada saat x:=2 sampai dengan x:=6, jadi dilakukan selama 5 kali.  Pada saat x:=2,==>; nilai y:=4+3=7,  Pada saat x:=3,==>; nilai y:=7+3=10,  Pada saat x:=4,==>; nilai y:=10+3=13,  Pada saat x:=5,==>; nilai y:=13+3=16,  Pada saat x:=6,==>; nilai y:=16+3=19,  Pada saat x:=7,==>; syarat untuk berhenti tercapai (until x=7) .  jadi setelah kita bahas, potongan program diatas juga menghasilkan nilai untuk y = 19;  Gimana lebih jelaskan..... C. Contoh soal perulangan for-do... perhatikan potongan program dibawah ini : y:= 4; for x:= 1 to 5 do begin y:= y + 1; end; writeln (y); dari potongan program diatas berapakah nilai y ? Pembahasan :  Pertama-tama variabel y diberi nilai awal 4  Perintah for x:=1 to 5 do begin...end; ini menandakan perulangan akan dilakukan selama 5 kali yaitu dari 1 s/d 5. dan setiap kali perulangan akan mengerjakan perintah yang terdapat dalam compound statement  pada saat x:=1; ==>; y:=4+3=7;  pada saat x:=2; ==>; y:=7+3=10;  pada saat x:=3; ==>; y:=10+3=13;  pada saat x:=4; ==>; y:=13+3=16;  pada saat x:=5; ==>; y:=16+3=19;  jadi setelah kita bahasa potongan program diatas juga akan menghasil nilai y=19. 2. Deret Aritmatika dan Perulangan While-do Contoh-contoh penggunaan perulangan diatas adalah merupakan contoh penerpan bahasa pemograman pascal untuk deret aritmatika {Un=a+(n-1)b}, mari kita bahas kembali contoh soal dibawah ini : Un : = 4; x : = 2;
  • 4. while x < 7 do begin Un : = Un + 5; x : = x + 1; end; Writeln (Un); berapakah nilai Un ? Pembahasan :  Pertama nilai Un dan x diberi nilai awal 4 dan 2, x adalah sebagai variabel untuk ekspresi logika while-do, sedang Un disini akan kita anggap sebagai a (suku pertama dalam deret aritmatika).  setelah itu, kita lihat ekspresi logika dari while x < 7 do, ini menandakan perulangan akan dilakukan selama 6 kali, yaitu dari x=2 s/d x=6 (2,3,4,5,6), jadi nilai Un yang ditanyakan adalah nilai deret aritmatika dengan suku ke-5, yang mana suku pertamanya (a) adalah 4, dan bedanya (b) adalah 5.  Sekarang kita simpulkani variabel2 yang dbutuhkan untuk menghitung nilai Un :  Nilai a atau suku pertama adalah nilai Un yang pertama kalinya ==> Un : = 4;  Nilai b atau beda adalah 5, nilai ini kita ambil dari rumus Un:=Un+5, ==>; 5 disini adalah beda (b) nya.  Yang ditanya adalah U5 atau suku ke 5 berarti nilai n=5 : Sekarang kita masukan variabel-variabel yang bersangkutan kedalam rumus deret aritmatika : Un = a + (n-1) b; U5 = 4 + (5-1)5; U5 = 4 + (4)5; U5 = 4 + 20; U5 = 24; Jadi nilai Un dari potongan program diatas adalah 24. Gimana Paham kan...... atau kalau anda belum percaya dengan rumus ini coba kita buktikan dengan menggunakan Langkah-langkah Algoritma perulangan while-do. ==> pada saat x : =2; ==> nilai Un : = 4 + 5 = 9; ==> pada saat x : =3; ==> nilai Un : = 9 + 5 = 14; ==> pada saat x : =4; ==> nilai Un : = 14 + 5 = 19; ==> pada saat x : =5; ==> nilai Un : = 19 + 5 = 24; Gimana sama bukan... Jadi Kesimpulannya jika dalam compound statment while-do terdapat rumus penjumlahan, seperti ini : Un := Un + 5, itu dapat dikerjakan dengan menggunakan rumus deret aritmatika, Dan Apabila rumus diganti menjadi Un : = Un -5; ini juga dapat dikerjakan dengan menggunakan rumus deret aritmatika, hanya saja pada rumus ini beda (b)nya adalah -5. Kegunaan rumus deret aritmetika untuk membaca sebuah algoritma while-do… pada operasi penjumlahan dan pengurangan seperti pada contoh soal diatas sangat dibutuhkan jika ada potongan program yang serupa dengan contoh diatas dan perulangannya melebihi batas kemampuan waktu kita, misal kan seperti soal dibawah ini : x : = 1;
  • 5. Un : = 4; While x < 99999 do begin Un : = Un + 5; x : = x + 1; end; Writeln (Un); berapakah nilai Un ? Apabila kita bahas soal diatas dengan langkah-langkah Algoritma akan menghabiskan waktu yang sangat lama karena perluangan dari program diatas adalah selama 99998 kali... kan bisa pegel tangan kita untuk menghitung setiap langkah-langkahnya.... jadi penyelesaian yang tepat adalah kita gunakan rumus deret aritmatika untuk menyelesaikannya. Sekarang mari kita bahas soal diatas dengan menggunakan rumus deret Aritmatika :  Diketahui nilai a := 4 (nilai Un awal )  Nilai b (beda) = 5 (dilihat dari rumus Un : = Un + 5 );  Nilai n = 99998 (merupakan perulangan yang dilakukan oleh while-do…)  Un = a + (n-1)b;  Un = 4 + (99998-1)5;  Un = 4 + (99997)5 ;  Un = 4 + 499975;  Un = 499.979,00  Jadi Nilai Un dari potongan program diatas adalah 499.979,00 Gimana... semakin paham kan....... 3. Deret Geometri dan Perulangan While-do…  Perbedaan antara deret Aritmatika dengan deret Geometri dalam penerapan struktur perulangan while-do… adalah terletak pada rumus yang terdapat dalam compound statement while-do…  Jika dalam deret aritmatika, maka rumus yang terdapat dalam compound statement while-do adalah dalam bentuk penambah atau pengurangan, misalnya seperti ini : y : = y + 3 atau y : = y -3;  Dalam deret geometri, rumus yang terdapat dalam compound statement while-do… adalah dalam berbentuk perkalian atau pembagian. Misalnya seperti : y: = y * 3, ini menandakan deret geometri dengan rasionya / r = 3, atau y : = y / 3, ini menandakan deret geometri dengan rasio / r = 1/3. untuk lebih jelasnya perhatikan contoh soal dibawah ini : x : = 2; Un : = 4; While x < 7 do begin Un : = Un * 5; x : = x + 1; end;
  • 6. Writeln (Un); berapakah nilai Un ? Pembahasan :  Dari soal diatas diketahui bahwa suku pertama atau a dari deret tersebut adalah 4, ini ditunjukan oleh nilai awal dari Un : = 4;  Perulangan dari potongan program diatas akan dilakukan selama 5, yaitu pada saat x:=2 s/d x:=7, sehingga nilai n=5, berarti yang ditanya adalah deret geometri suku ke- 5.  Rumus Un : = Un * 5 dalam compound statement while-do, ini menandakan bahwa potongan program tersebut adalah merupakan penerapan deret geometri.  Setelah kita ketahui semua hal-hal yang diperlukan, maka variable-variabel tersebut kita masukan kedalam rumus deret geometri: Rumus Deret Geometri : Un = a x r(n-1) Dik :  a = 4  r = 5  n = 5 ditanya: deret geometri suku ke-5 ? jawab : U5 = 4 x 5 (5-1) U5 = 4 x 54 U5 = 4 x 625 U5 = 2500 Jadi dengan menggunakan rumus deret geometri nilai Un dari penggalan program diatas adalah 2500. Gimana sudah paham.. kan….. ok. Kalau masih ragu mari kita buktikan dengan menggunakan langkah-langkah Algoritmanya :  Perulangan dalam statement while-do tersebut akan berjalan selama 5 kali, yaitu dari x:=2 s/d x:=6, (2,3,4,5,6).  Pada saat x :=2 == > nilai Un : = 4 * 5 = 20;  Pada saat x :=3 == > nilai Un : = 20 * 5 = 100;  Pada saat x :=4 == > nilai Un : = 100 * 5 = 500;  Pada saat x :=5 == > nilai Un : = 500 * 5 = 500;  Pada saat x :=6 == > nilai Un : = 500 * 5 = 2500;  Jadi sama kan… Nilai Un adalah 2.500, kesimpulannya potongan program diatas bisa dikerjakan dengan Teknik Algoritma dan juga bisa menggunakan rumus deret geometri. Hanya saja kalau perulangan dari program diatas sangat banyak dan diluar kemampuan kita, sebaiknya kita menggunakan rumus deret geometri untuk menyelesaikan soal tersebut. Saya kira udah cukup banyak ya,, yang telah kita pelajari tentang Algoritma pada kesempatan kali ini, oh iya dibawah ini saya punya soal-soal. Kalau kamu bisa mengerjakan tolong jawab melalui pesan komenter dibawah ini, yang bisa menjawab semua soal dengan benar dan
  • 7. termasuk 10 orang pertama yang menjawabnya, maka akan mendapat pulsa gratis dari saya mau kan. Berikut soal-soalnya : 1. Pada tahun 2000, Tarzanu membuka rekening deposito pada bank Mega, besar uang yang didepositokan adalah Rp. 100.000.000,00. Besar bunga deposito pertahun adalah 11%, dan Tn. Tarzanu menginginkan agar bunga deposito yang dibayarkan oleh bank perbulannya di masukan kedalam rekening tabungan biasa miliknya. Jangka waktu deposito tersebut adalah selama 10 tahun. Ditanya dari kasus diatas buatlah Pseudo pascal dengan menggunakan strutur perulangan while-do. Dan hitung juga berapa besar uang deposito dan tabungan setelah sepuluh tahun ? 2. Tn. Fahrul telah membuka rekening deposito dengan bunga tahunan pada bank mandiri sejak tahun 2002 yang lalu, Bunga deposito dibayarkan oleh bank setiap bulannya melalui rekening tabungan biasa milik Tn.Fahrul. pada Tahun 2004 jumlah setoran awal deposito ditambah dengan bunga deposito yang diterimanya adalah sebesar Rp. 140.000.000,- , kemudian pada tahun 2008 jumlah setoran awal deposito ditambah dengan bunga deposito yang diterimanya adalah sebesar Rp. 190.000.000,- dari kasus tersebut ditanya : (1). Berapakah setoran awal (a) dan besarnya bunga (b) Dari Rekening Deposito Tn. Fahrul?. (2). Dari kasus tersebut buatlah Pseudo Pascal dengan menggunakan struktur perulangan while-do! (selamat Mengerjakan). (Info semua artikel materi pelajaran dan soal-soal diatas adalah murni dibuat oleh Agus Triono, S.Pd sesuai dengan kemampuan dan gaya bahasanya sendiri, sehingga apabila ada gaya bahasa yang kurang benar mohon dimaklumi. Selain jawaban anda juga bisa memberikan komentar-komentar tentang materi ini pada kolom komenter dibawah ini.Semoga bermanfaat. Terimakasih)