Teks tersebut membahas tentang algoritma dan pemograman pseudo pascal untuk deret aritmatika. Teks tersebut menjelaskan pengertian algoritma, struktur perulangan dalam pascal seperti while-do, repeat-until, dan for-do. Teks tersebut juga memberikan contoh soal dan pembahasan mengenai penerapan struktur perulangan untuk menyelesaikan masalah deret aritmatika dan geometri.
Terjemahan bahasa indonesia (foundation of algorithm by richard neapolitan)evarahma70
Terjemahan Bahasa Indonesia dari Buku Foundation of Algorithms by Richard Neapolitan
Diterjemahkan oleh : Eva Rahma Indriyani
NIM : 18102011
Institut Teknologi Telkom Purwokerto
Terjemahan bahasa indonesia (foundation of algorithm by richard neapolitan)evarahma70
Terjemahan Bahasa Indonesia dari Buku Foundation of Algorithms by Richard Neapolitan
Diterjemahkan oleh : Eva Rahma Indriyani
NIM : 18102011
Institut Teknologi Telkom Purwokerto
apa hubungan operasi matematika dengan alogaritma?
Di materi kali kita bahas mengenai hubungan alogaritma dengan operasi matematika.
*materi ini dibuat oleh dosen saya atas nama Habibah Nurfauziah, S.Kom, M.Si beliau merupakan salah satu dosen di STMIK MUHAMMADIYAH JAKARTA
Materi kuliah yang banyak berfokus bagaimana pembuatan flowchart untuk berbagai contoh kasus. Tersedia beberapa contoh soal yang harus diselesaikan dengan flowchart
apa hubungan operasi matematika dengan alogaritma?
Di materi kali kita bahas mengenai hubungan alogaritma dengan operasi matematika.
*materi ini dibuat oleh dosen saya atas nama Habibah Nurfauziah, S.Kom, M.Si beliau merupakan salah satu dosen di STMIK MUHAMMADIYAH JAKARTA
Materi kuliah yang banyak berfokus bagaimana pembuatan flowchart untuk berbagai contoh kasus. Tersedia beberapa contoh soal yang harus diselesaikan dengan flowchart
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)