SlideShare a Scribd company logo
1 of 33
DASAR-DASAR ALGORITMA STMIK AMIKOM YOGYAKARTA NURFATA ALIEM PRABOWO
STRUKTUR DASAR ALGORITMA ,[object Object]
Langkah2 proses penyelesaian masalah tersebut dpt membentk konstruksi suatu algoritma, langkah2 tersbt adalah :	1. runtunan aksi 	2. pemilihan aksi 	3. pengulangan aksi
RUNTUNAN AKSI Sebuahruntunanterdptsatuataulebihpernytaan,setiappernyataandikerjakansecaraberurutansesuaipenulisannya Sebuahinstruksidikerjakansetelahinstruksisebelumnyatelahdilaksanakan Urutaninstruksimenentukankeadaanakhirsuatualgoritma Bilaurutanalgoritmadirubah,makahasilakhirmungkinjugaberubah Runtunanygmempunyaisatu/lebihpernyaaandisbtpenytaangabungan
Contoh: Program tukar_isi Diberikan 2 buah ember A & B berisi air berwarnamerah, ember B berisi air berwarnabiru.pertukarkankeduaisi ember tersbtshg ember A berisi air berwrnabiru & ember B berisi air berwanamerah Algoritma : Tuangkan air dari ember A kedlm ember C Tuangkan air dari ember B kedlm ember A Tuangkan air dari ember C kedlm ember B
[object Object]
Misal A=8 dan B=5, pertukarkannilai A & B, sehingga A=5 dan B=8,maka algoritmanya : isikannilai A kedlm B isikannilai B kedlm A makahasilnya:A=8 & B=8, makaalgoritmapertkarannyasalah.Agaralgirtmanyabenar,makaperludigunakanpeubahbantu,misal C, sehingggaalgoritmanyaadalah:
Isikannilai A kedlm C Isikannilai B kedlm A Isikannilai C kedlm B
2. PEMILIHAN Adaklanyasebuahaksidikerjakanjikakondisidipenuhi Misal:jikalamputraffic light berwarnamerah,makakendaraanharusberhenti,makapernyataanadalah:  jikalampu traffic light berwarnamerah,maka berhenti Pernytntersbtdisbtpenyt.pemilihan (selection-stantement)atauperny.kondisional
Bentukumumselection statement: Kondisi:pernsyartnygdptbernilaibenar-salah,aksisetelahthendilakukanhanyajikakondisibenar If & then ad/ kacakunci (keyword) u/ strukturpemilihan Contoh : ifx habisdibagi s then tulis x ad/ bilangangenap If kondisi then    aksi
Bentuk lain statentcondisional if kondisi then    aksi1 Else    aksi2 a.  	else “kalautdk”. Bilakondisibenar,maka aksi1 ygdikerjakan,kalautdk aksi2 dikerjakan.contoh: iflampu A nyalathen tekantombolmerah else tekantombolbiru
b.nested-if =pemilihanbersarang ad/ apabilapemilihanaksiygdilakukanlebihdr 2 buah,makastrukturpemilihanyamenjdirumit. if kondisi1 then    aksi1 Else    if kondisi2 then      aksi2 else       aksi3
Contoh : iflampu traffic light berwarnamerahthen berhenti else iflampu traffic light berwarnakuningthen jalanhati-hati else jalanterus Dlmstate.kondisidikenaladanya ‘indentasi’ yaitu: pengg.ronggakosongygmembuatalgoritmamenjdmudahdibaca.
Contoh:tanpaindentasi iflampu traffic light berwarnamerahthen berhenti Else iflampu traffic light berwarnakuningthen jalanhati-hatielse jalanterus Penulisanalgoritmasangatdianjurkan u/ membuatindentasi,agaralgoritmamudahdbaca. Kelebihanstrukturpemilihanterltk pd kemampuannyaygmemungkinkanpemrosesmengikutijaluraksiygberbedaberdsrkankondisiygada.
3.PENGULANGAN Salahkelebihankomputer ad/ kemampuannya u/ melakukanperkerjaansecaraberulang-ulang Contoh: program menulis_kalimat_500_kali menuliskankalimat ‘algoritmaadalahlangkahlogispenyelesaianmasalah’ sebanyak 500 kali Algoritma: 	1. tulis ‘algoritmaadalahlangkahlogispenyelesaianmasalah’ 	2. tulis ‘algoritmaadalahlangkahlogispenyelesaianmasalah 	3. tulis ‘algoritmaadalahlangkahlogispenyelesaianmasalah 	. 	. 	. 	500
u/ mengtasihaltersbtdptdigunakanstukrutrpengulanganfor-do, sehinggaalgoritmya: programmenulis_kalimat_500_kali menuliskankalimat ‘algoritmaadalahlangkahlogispenyelesaianmasalah’ sebanyak 500 kali Algoritma: foridari 1 sampai 50 do tulis ‘algoritmaadalahlangkahlogispenyelesaianmasalah’ i ad/ pencacahpengulanganygmencacah 1 s/d 500
Bentuk2 pengulangan: Forpencacahpengulangandr 1 s/d N do aksi repeat-until=ulangi-sampai: prosespengulanganakanberhentijikakondisiterpenuhi 3 	While-do=selama-lakukan= prose pengulanganakanberhentijikakondisisalah Repeat Aksi Until kondisi While kondisi do Aksi
STRUKTUR TEKS ALGORITMA Ada 3 bagian struktur suatu algoritma, yaitu : Bagian Judul (header)  Bagian Deklarasi Bagian Algoritma
StrukturteksAgoritma : PROGRAM nama_program {penjelasan tentang algoritma yg beisi uraian singkat mengenai masalah yg akan diselesaikan} DEKLARASI {Semua nama yg dipakai, nama tipe,konstanta,var,prosedur,dan fungsi diumumkan disini} ALGORITMA {Semua langkah/aksi algoritma dituliskan disini}
Contoh: PROGRAM luas_lingkaran {menghitung luas lingkaran apabila jari-jari lingkaran sudah diberikan} DEKLARASI {Nama Konstanta} 	const N =10 	const phi=3.14 {nilai phi} {Nama variabel} 	jari_jari, luas:real ALGORITMA: READ (jari_jari) LUAS		Phi *jari_jari*jari_jari Write (luas)
1. Bagianjudul / header Memuat nama program dan penjelasan(spesifkasi) tentang program  Nama program ditulis singkat,tetapi hrs menggambarkan apa yg dilakukan algoritma Algoritma yg dibuat harus sesuai dgn spesifikasi masalah yang diberikan Contoh: PROGRAM helloWord {program untuk mencetak “hello word”} PROGRAM luas_lingkaran {program untuk menghitung luas lingkaran”}
2. BagianDeklarasi Mengumumkan semua nama yg akan dipakai, termasuk nama tipenya Nama tersbut berupa:konstanta,variabel,tipe, prosedur dan fungsi Semua nama tersbt harus dideklarasikan sebelum digunakan
Contoh: DEKLARASI {nama konstanta} const N=10 {jumlah data} 		const phi=3.14 {nilai phi} {nama variabel} jari_jari,luas:real {nama tipe} type titik:record       	{koord.titik dibidang kartesian} < x:integer,	{absis} 			   y:integer>	 {ordinat}
FUNCTION apakah_A(input c:char)	  boolean {mengembalikannilai true bila c adalahkarakter ‘A’ atau false bilasebaliknya} PROSEDURE tukar(input/output A:integer, input/output B:integer) {mempertukarkannilai A & B,parameter A & B sudahterdefinisinilainya.setelahpertukaran A berisinilai B semula, B berisinilai A semula}
tidakbolehmengandungspasi, tandabacadanoperasimatematika Karaktergarisbawah (“_”) dptdigunakanuntukmenggantikanspasi Tidakmembedakanhurufkecildanhurufbesar 	(bahasapemrograman case sensitifsepertibahasa C menganggaphurufkecildanbesaradalah 2 karakter yang berbeda)
3. BagianAlgortima Bagian ini merupakan inti dari suatu program Berisi deskripsi langkah2 penyelesain masalah berupa pernyataan, yg ditulis dalam suatu notasi Misal write untuk mencetak data/informasi, read untuk membaca data,dsb  Setiap pernyataan dlm algoritma dibaca dari atas ke bawah Algoritma dieksekusi berdasarkan urutan pernyataan
Contoh : Algoritma : Read (panjang,lebar) Luas ←panjang*lebar Write (luas)
Translasiteksalgoritmakedlmteks program pascal & C Teks algoritma merupakan hasil pemikiran konseptual, agar dpt dilaksanakan o/komputer maka harus ditranslasi kedlm bahasa bahasa pemrograman apapun Bahasa pascal merupakan bahasa pendidikan krn paling banyak digunakan dilingkungan universitas Bahasa C krn memiliki lingkungan yg luas dlm industri perangkat lunak
Contoh2 translasi Algoritmik Program luas_segiempat {membaca panjang & lebar yg berbentuk empat persegi panjang, menghitung luasnya, lalu mencetak luas tersebut ke piranti keluaran} DEKLARASI {nama variabel} 	panjang 	:real 	{panjang segiempat dlm cm} 	lebar	     	:real	 {lebar segiempat dlm cm} 	luas		:real	 {luas segiempat dlm cm} ALGORITMA: Read (panjang,lebar) luas←panjang*lebar Write (luas)
Translasidlmbahasapascal Program luas_segiempat; Uses wincrt; Var panjang,lebar,luas:real; Begin 	write (panjang=‘);readln (panjang); 	write (lebar     =‘);readln (lebar); luas:=panjang*lebar; writeln (luassegiempat=‘,luas:5:2); End.
Translasi dlm bahasa C /*program luas_segiempat */ /* program untukmenghitungluassegiempat */ # include <stdio.h> Main () { /* deklarasi*/ Float panjang;	 {panjangsegiempatdlm cm} Float lebar;	 {lebarsegiempatdlm cm} Float luas;	 {luassegiempatdlm cm} /*algoritma*/ Printf (“panjang =“);scanf (“%f”, &panjang); Printf (“lebar =“);scanf (“%f”, &lebar); Luas=panjang*lebar; Printf (“luassegiempat=“ %f  “,luas); }
Contoh1: menghitungkomisi salesman Tulislahagoritmauntukmenghitungkomisiygditerima salesman berdasarkannilaipenjualanygdicapainya. Salesman mendapatkomisi 5% darihasilpejualannya.algoritmamenerima data nama salesman dannilapenjualanygdicapainya. Menghitungkomisilalumencetaknamadanbesarkomisiygdiperolehnya
penyelesain Program komisi {menghitung komisi yg diterima salesman berdasarkan nilai penjualan yg dicapainya. Salesman mendapat komisi 5% dari hasil pejualannya} Deklarasi 	nama_salesman	: string 	nilai_penjualan	: real 	komisi		: real Algoritma: Read(nama_salesman,nilai_penjualan) komisi←0.05 *nilai_penjualan Write (nama_salemsman,komisi)

More Related Content

Viewers also liked

T pryor digital scavenger hunt
T pryor digital scavenger huntT pryor digital scavenger hunt
T pryor digital scavenger hunt
tpryorp3
 
My friend jason is now dead!
My friend jason is now dead!My friend jason is now dead!
My friend jason is now dead!
briannawood
 
March 16 1ID and Fort Riley Weekly News Update
March 16 1ID and Fort Riley Weekly News UpdateMarch 16 1ID and Fort Riley Weekly News Update
March 16 1ID and Fort Riley Weekly News Update
Noel Waterman
 
Eye forTransport atlanta 2011
Eye forTransport atlanta 2011Eye forTransport atlanta 2011
Eye forTransport atlanta 2011
Bill Stankiewicz
 
28 August 2012 1 ABCT Weekly News Update
28 August 2012 1 ABCT Weekly News Update28 August 2012 1 ABCT Weekly News Update
28 August 2012 1 ABCT Weekly News Update
Noel Waterman
 
June 15 2012 1ID WEEKLY NEWS UPDATE
June 15 2012  1ID WEEKLY NEWS UPDATEJune 15 2012  1ID WEEKLY NEWS UPDATE
June 15 2012 1ID WEEKLY NEWS UPDATE
Noel Waterman
 
Organisational change and development
Organisational change and development Organisational change and development
Organisational change and development
Pandurang Shinde
 
Semana nacionaldecarinho
Semana nacionaldecarinhoSemana nacionaldecarinho
Semana nacionaldecarinho
Lucy Queen
 
New mba detailed_syllabus_for_sem_iv_2
New mba detailed_syllabus_for_sem_iv_2New mba detailed_syllabus_for_sem_iv_2
New mba detailed_syllabus_for_sem_iv_2
Sanju Gohil
 
WebXpress @ ReTechCon 2012
WebXpress @ ReTechCon 2012WebXpress @ ReTechCon 2012
WebXpress @ ReTechCon 2012
WebXpress
 

Viewers also liked (20)

T pryor digital scavenger hunt
T pryor digital scavenger huntT pryor digital scavenger hunt
T pryor digital scavenger hunt
 
My friend jason is now dead!
My friend jason is now dead!My friend jason is now dead!
My friend jason is now dead!
 
Mis aparatos
Mis aparatos Mis aparatos
Mis aparatos
 
3 January 2013 1ABCT Weekly Newsletter
3 January 2013 1ABCT Weekly Newsletter3 January 2013 1ABCT Weekly Newsletter
3 January 2013 1ABCT Weekly Newsletter
 
Str8ts Weekly Extreme #50 - Solution
Str8ts Weekly Extreme #50 - SolutionStr8ts Weekly Extreme #50 - Solution
Str8ts Weekly Extreme #50 - Solution
 
March 16 1ID and Fort Riley Weekly News Update
March 16 1ID and Fort Riley Weekly News UpdateMarch 16 1ID and Fort Riley Weekly News Update
March 16 1ID and Fort Riley Weekly News Update
 
Successful Kids = Strong Community
Successful Kids = Strong CommunitySuccessful Kids = Strong Community
Successful Kids = Strong Community
 
Eye forTransport atlanta 2011
Eye forTransport atlanta 2011Eye forTransport atlanta 2011
Eye forTransport atlanta 2011
 
ソーシャルメディアマーケティング
ソーシャルメディアマーケティングソーシャルメディアマーケティング
ソーシャルメディアマーケティング
 
28 August 2012 1 ABCT Weekly News Update
28 August 2012 1 ABCT Weekly News Update28 August 2012 1 ABCT Weekly News Update
28 August 2012 1 ABCT Weekly News Update
 
Tech
TechTech
Tech
 
Beware of Phishing Scams
Beware of Phishing ScamsBeware of Phishing Scams
Beware of Phishing Scams
 
June 15 2012 1ID WEEKLY NEWS UPDATE
June 15 2012  1ID WEEKLY NEWS UPDATEJune 15 2012  1ID WEEKLY NEWS UPDATE
June 15 2012 1ID WEEKLY NEWS UPDATE
 
OB4CO Webinar
OB4CO WebinarOB4CO Webinar
OB4CO Webinar
 
Organisational change and development
Organisational change and development Organisational change and development
Organisational change and development
 
Semana nacionaldecarinho
Semana nacionaldecarinhoSemana nacionaldecarinho
Semana nacionaldecarinho
 
probability
probabilityprobability
probability
 
6 Steps To protect your baby’s IP camera from HACKERS
6 Steps To protect your baby’s IP camera from HACKERS6 Steps To protect your baby’s IP camera from HACKERS
6 Steps To protect your baby’s IP camera from HACKERS
 
New mba detailed_syllabus_for_sem_iv_2
New mba detailed_syllabus_for_sem_iv_2New mba detailed_syllabus_for_sem_iv_2
New mba detailed_syllabus_for_sem_iv_2
 
WebXpress @ ReTechCon 2012
WebXpress @ ReTechCon 2012WebXpress @ ReTechCon 2012
WebXpress @ ReTechCon 2012
 

Similar to Dasar dasar algoritma

Dasar Dasar Algoritma
Dasar Dasar AlgoritmaDasar Dasar Algoritma
Dasar Dasar Algoritma
formatik
 
Bab 3. pengenalan algoritma
Bab 3. pengenalan algoritmaBab 3. pengenalan algoritma
Bab 3. pengenalan algoritma
Arif Punk Street
 
Bab 3 notasi algoritma
Bab 3 notasi algoritmaBab 3 notasi algoritma
Bab 3 notasi algoritma
risal07
 

Similar to Dasar dasar algoritma (20)

Dasar Dasar Algoritma
Dasar Dasar AlgoritmaDasar Dasar Algoritma
Dasar Dasar Algoritma
 
listiati univ bung hata (1110013211051) Algoritma dan flowchart
listiati univ bung hata (1110013211051) Algoritma dan flowchartlistiati univ bung hata (1110013211051) Algoritma dan flowchart
listiati univ bung hata (1110013211051) Algoritma dan flowchart
 
PENGERTIAN ALGORITMA DAN PEMROGRAMAN
PENGERTIAN ALGORITMA DAN PEMROGRAMANPENGERTIAN ALGORITMA DAN PEMROGRAMAN
PENGERTIAN ALGORITMA DAN PEMROGRAMAN
 
ALOGARITMA
ALOGARITMAALOGARITMA
ALOGARITMA
 
Dasar dasar algoritma - 2
Dasar dasar algoritma - 2Dasar dasar algoritma - 2
Dasar dasar algoritma - 2
 
Notasi Algoritma pada bahsa pemograman .pptx
Notasi Algoritma pada bahsa pemograman .pptxNotasi Algoritma pada bahsa pemograman .pptx
Notasi Algoritma pada bahsa pemograman .pptx
 
Bahan 2.pptx
Bahan 2.pptxBahan 2.pptx
Bahan 2.pptx
 
01_Pengenalan_Algoritma_ppt.ppt
01_Pengenalan_Algoritma_ppt.ppt01_Pengenalan_Algoritma_ppt.ppt
01_Pengenalan_Algoritma_ppt.ppt
 
Pengenalan_Algoritma_ppt.ppt
Pengenalan_Algoritma_ppt.pptPengenalan_Algoritma_ppt.ppt
Pengenalan_Algoritma_ppt.ppt
 
Pengenalan algoritma.ppt
Pengenalan algoritma.pptPengenalan algoritma.ppt
Pengenalan algoritma.ppt
 
Bab 3. Pengenalan Dasar dasar Algoritma .ppt
Bab 3. Pengenalan Dasar dasar Algoritma .pptBab 3. Pengenalan Dasar dasar Algoritma .ppt
Bab 3. Pengenalan Dasar dasar Algoritma .ppt
 
Bab 3. pengenalan algoritma
Bab 3. pengenalan algoritmaBab 3. pengenalan algoritma
Bab 3. pengenalan algoritma
 
Hand out Algoritma Pemrograman
Hand out Algoritma PemrogramanHand out Algoritma Pemrograman
Hand out Algoritma Pemrograman
 
02 notasi algoritma
02   notasi algoritma02   notasi algoritma
02 notasi algoritma
 
02 notasi algoritma
02   notasi algoritma02   notasi algoritma
02 notasi algoritma
 
02 notasi algoritma
02   notasi algoritma02   notasi algoritma
02 notasi algoritma
 
Bab 3 notasi algoritma
Bab 3 notasi algoritmaBab 3 notasi algoritma
Bab 3 notasi algoritma
 
2.sd 13.ok
2.sd 13.ok2.sd 13.ok
2.sd 13.ok
 
2.sd 13
2.sd 132.sd 13
2.sd 13
 
Alex algoritma-02
Alex algoritma-02Alex algoritma-02
Alex algoritma-02
 

Dasar dasar algoritma

  • 1. DASAR-DASAR ALGORITMA STMIK AMIKOM YOGYAKARTA NURFATA ALIEM PRABOWO
  • 2.
  • 3. Langkah2 proses penyelesaian masalah tersebut dpt membentk konstruksi suatu algoritma, langkah2 tersbt adalah : 1. runtunan aksi 2. pemilihan aksi 3. pengulangan aksi
  • 4. RUNTUNAN AKSI Sebuahruntunanterdptsatuataulebihpernytaan,setiappernyataandikerjakansecaraberurutansesuaipenulisannya Sebuahinstruksidikerjakansetelahinstruksisebelumnyatelahdilaksanakan Urutaninstruksimenentukankeadaanakhirsuatualgoritma Bilaurutanalgoritmadirubah,makahasilakhirmungkinjugaberubah Runtunanygmempunyaisatu/lebihpernyaaandisbtpenytaangabungan
  • 5. Contoh: Program tukar_isi Diberikan 2 buah ember A & B berisi air berwarnamerah, ember B berisi air berwarnabiru.pertukarkankeduaisi ember tersbtshg ember A berisi air berwrnabiru & ember B berisi air berwanamerah Algoritma : Tuangkan air dari ember A kedlm ember C Tuangkan air dari ember B kedlm ember A Tuangkan air dari ember C kedlm ember B
  • 6.
  • 7. Misal A=8 dan B=5, pertukarkannilai A & B, sehingga A=5 dan B=8,maka algoritmanya : isikannilai A kedlm B isikannilai B kedlm A makahasilnya:A=8 & B=8, makaalgoritmapertkarannyasalah.Agaralgirtmanyabenar,makaperludigunakanpeubahbantu,misal C, sehingggaalgoritmanyaadalah:
  • 8. Isikannilai A kedlm C Isikannilai B kedlm A Isikannilai C kedlm B
  • 9. 2. PEMILIHAN Adaklanyasebuahaksidikerjakanjikakondisidipenuhi Misal:jikalamputraffic light berwarnamerah,makakendaraanharusberhenti,makapernyataanadalah: jikalampu traffic light berwarnamerah,maka berhenti Pernytntersbtdisbtpenyt.pemilihan (selection-stantement)atauperny.kondisional
  • 10. Bentukumumselection statement: Kondisi:pernsyartnygdptbernilaibenar-salah,aksisetelahthendilakukanhanyajikakondisibenar If & then ad/ kacakunci (keyword) u/ strukturpemilihan Contoh : ifx habisdibagi s then tulis x ad/ bilangangenap If kondisi then aksi
  • 11. Bentuk lain statentcondisional if kondisi then aksi1 Else aksi2 a. else “kalautdk”. Bilakondisibenar,maka aksi1 ygdikerjakan,kalautdk aksi2 dikerjakan.contoh: iflampu A nyalathen tekantombolmerah else tekantombolbiru
  • 12. b.nested-if =pemilihanbersarang ad/ apabilapemilihanaksiygdilakukanlebihdr 2 buah,makastrukturpemilihanyamenjdirumit. if kondisi1 then aksi1 Else if kondisi2 then aksi2 else aksi3
  • 13. Contoh : iflampu traffic light berwarnamerahthen berhenti else iflampu traffic light berwarnakuningthen jalanhati-hati else jalanterus Dlmstate.kondisidikenaladanya ‘indentasi’ yaitu: pengg.ronggakosongygmembuatalgoritmamenjdmudahdibaca.
  • 14. Contoh:tanpaindentasi iflampu traffic light berwarnamerahthen berhenti Else iflampu traffic light berwarnakuningthen jalanhati-hatielse jalanterus Penulisanalgoritmasangatdianjurkan u/ membuatindentasi,agaralgoritmamudahdbaca. Kelebihanstrukturpemilihanterltk pd kemampuannyaygmemungkinkanpemrosesmengikutijaluraksiygberbedaberdsrkankondisiygada.
  • 15. 3.PENGULANGAN Salahkelebihankomputer ad/ kemampuannya u/ melakukanperkerjaansecaraberulang-ulang Contoh: program menulis_kalimat_500_kali menuliskankalimat ‘algoritmaadalahlangkahlogispenyelesaianmasalah’ sebanyak 500 kali Algoritma: 1. tulis ‘algoritmaadalahlangkahlogispenyelesaianmasalah’ 2. tulis ‘algoritmaadalahlangkahlogispenyelesaianmasalah 3. tulis ‘algoritmaadalahlangkahlogispenyelesaianmasalah . . . 500
  • 16. u/ mengtasihaltersbtdptdigunakanstukrutrpengulanganfor-do, sehinggaalgoritmya: programmenulis_kalimat_500_kali menuliskankalimat ‘algoritmaadalahlangkahlogispenyelesaianmasalah’ sebanyak 500 kali Algoritma: foridari 1 sampai 50 do tulis ‘algoritmaadalahlangkahlogispenyelesaianmasalah’ i ad/ pencacahpengulanganygmencacah 1 s/d 500
  • 17. Bentuk2 pengulangan: Forpencacahpengulangandr 1 s/d N do aksi repeat-until=ulangi-sampai: prosespengulanganakanberhentijikakondisiterpenuhi 3 While-do=selama-lakukan= prose pengulanganakanberhentijikakondisisalah Repeat Aksi Until kondisi While kondisi do Aksi
  • 18. STRUKTUR TEKS ALGORITMA Ada 3 bagian struktur suatu algoritma, yaitu : Bagian Judul (header) Bagian Deklarasi Bagian Algoritma
  • 19. StrukturteksAgoritma : PROGRAM nama_program {penjelasan tentang algoritma yg beisi uraian singkat mengenai masalah yg akan diselesaikan} DEKLARASI {Semua nama yg dipakai, nama tipe,konstanta,var,prosedur,dan fungsi diumumkan disini} ALGORITMA {Semua langkah/aksi algoritma dituliskan disini}
  • 20. Contoh: PROGRAM luas_lingkaran {menghitung luas lingkaran apabila jari-jari lingkaran sudah diberikan} DEKLARASI {Nama Konstanta} const N =10 const phi=3.14 {nilai phi} {Nama variabel} jari_jari, luas:real ALGORITMA: READ (jari_jari) LUAS Phi *jari_jari*jari_jari Write (luas)
  • 21. 1. Bagianjudul / header Memuat nama program dan penjelasan(spesifkasi) tentang program Nama program ditulis singkat,tetapi hrs menggambarkan apa yg dilakukan algoritma Algoritma yg dibuat harus sesuai dgn spesifikasi masalah yang diberikan Contoh: PROGRAM helloWord {program untuk mencetak “hello word”} PROGRAM luas_lingkaran {program untuk menghitung luas lingkaran”}
  • 22. 2. BagianDeklarasi Mengumumkan semua nama yg akan dipakai, termasuk nama tipenya Nama tersbut berupa:konstanta,variabel,tipe, prosedur dan fungsi Semua nama tersbt harus dideklarasikan sebelum digunakan
  • 23. Contoh: DEKLARASI {nama konstanta} const N=10 {jumlah data} const phi=3.14 {nilai phi} {nama variabel} jari_jari,luas:real {nama tipe} type titik:record {koord.titik dibidang kartesian} < x:integer, {absis} y:integer> {ordinat}
  • 24. FUNCTION apakah_A(input c:char) boolean {mengembalikannilai true bila c adalahkarakter ‘A’ atau false bilasebaliknya} PROSEDURE tukar(input/output A:integer, input/output B:integer) {mempertukarkannilai A & B,parameter A & B sudahterdefinisinilainya.setelahpertukaran A berisinilai B semula, B berisinilai A semula}
  • 25. tidakbolehmengandungspasi, tandabacadanoperasimatematika Karaktergarisbawah (“_”) dptdigunakanuntukmenggantikanspasi Tidakmembedakanhurufkecildanhurufbesar (bahasapemrograman case sensitifsepertibahasa C menganggaphurufkecildanbesaradalah 2 karakter yang berbeda)
  • 26. 3. BagianAlgortima Bagian ini merupakan inti dari suatu program Berisi deskripsi langkah2 penyelesain masalah berupa pernyataan, yg ditulis dalam suatu notasi Misal write untuk mencetak data/informasi, read untuk membaca data,dsb Setiap pernyataan dlm algoritma dibaca dari atas ke bawah Algoritma dieksekusi berdasarkan urutan pernyataan
  • 27. Contoh : Algoritma : Read (panjang,lebar) Luas ←panjang*lebar Write (luas)
  • 28. Translasiteksalgoritmakedlmteks program pascal & C Teks algoritma merupakan hasil pemikiran konseptual, agar dpt dilaksanakan o/komputer maka harus ditranslasi kedlm bahasa bahasa pemrograman apapun Bahasa pascal merupakan bahasa pendidikan krn paling banyak digunakan dilingkungan universitas Bahasa C krn memiliki lingkungan yg luas dlm industri perangkat lunak
  • 29. Contoh2 translasi Algoritmik Program luas_segiempat {membaca panjang & lebar yg berbentuk empat persegi panjang, menghitung luasnya, lalu mencetak luas tersebut ke piranti keluaran} DEKLARASI {nama variabel} panjang :real {panjang segiempat dlm cm} lebar :real {lebar segiempat dlm cm} luas :real {luas segiempat dlm cm} ALGORITMA: Read (panjang,lebar) luas←panjang*lebar Write (luas)
  • 30. Translasidlmbahasapascal Program luas_segiempat; Uses wincrt; Var panjang,lebar,luas:real; Begin write (panjang=‘);readln (panjang); write (lebar =‘);readln (lebar); luas:=panjang*lebar; writeln (luassegiempat=‘,luas:5:2); End.
  • 31. Translasi dlm bahasa C /*program luas_segiempat */ /* program untukmenghitungluassegiempat */ # include <stdio.h> Main () { /* deklarasi*/ Float panjang; {panjangsegiempatdlm cm} Float lebar; {lebarsegiempatdlm cm} Float luas; {luassegiempatdlm cm} /*algoritma*/ Printf (“panjang =“);scanf (“%f”, &panjang); Printf (“lebar =“);scanf (“%f”, &lebar); Luas=panjang*lebar; Printf (“luassegiempat=“ %f “,luas); }
  • 32. Contoh1: menghitungkomisi salesman Tulislahagoritmauntukmenghitungkomisiygditerima salesman berdasarkannilaipenjualanygdicapainya. Salesman mendapatkomisi 5% darihasilpejualannya.algoritmamenerima data nama salesman dannilapenjualanygdicapainya. Menghitungkomisilalumencetaknamadanbesarkomisiygdiperolehnya
  • 33. penyelesain Program komisi {menghitung komisi yg diterima salesman berdasarkan nilai penjualan yg dicapainya. Salesman mendapat komisi 5% dari hasil pejualannya} Deklarasi nama_salesman : string nilai_penjualan : real komisi : real Algoritma: Read(nama_salesman,nilai_penjualan) komisi←0.05 *nilai_penjualan Write (nama_salemsman,komisi)
  • 34. Translasibahasapascal Program komisi_salesman; Uses wincrt; Var nama_salesman :string; nilai_penjualan :real; komisi :real; Begin write (‘nama salesman:‘);readln (nama_salesman); write (‘nilaipenjualan :‘);readln (nilai_penjualan); komisi :=0.05 * nilai_penjualan; writeln (‘komisipenjualan =‘,komisi:7:2); End.
  • 35. /*program komisi_salesman */ /* program untukmenghitungkomisi salesman */ # include <stdio.h> Main () { /* deklarasi*/ String nama_saleman; Float nilai_penjualan; Float komisi; algoritma*/ Printf (“nama salesman =“);scanf (“%s”, &nama_salesman); Printf (“nilaipenjualan =“);scanf (“%f”’, &nilai_penjualan); Komisi=0.05 * nilai_penjualan; Printf (“komisipenjualan=“ %f “,komisi); }