Algoritma danAlgoritma danPemrogramanPemrogramanAlgoritma danAlgoritma danPemrogramanPemrograman
Yance Sonatha,S.KomYance Sonatha,S.Kom
Konversi Algoritma ke Konversi Algoritma ke Bahasa Pascal dan CBahasa Pascal dan C
Konversi Algoritma ke Konversi Algoritma ke Bahasa Pascal dan CBahasa Pascal dan C
Konversi Struktur Algoritma
Judul{komentar mengenai algoritma seperti cara kerja program, kondisi awal dan kondisi akhir program}
Kamus{Pada bagian ini, didefinisikan nama konstanta, nama variabel, nama prosedur dan nama fungsi}
Algoritma{Pada bagian ini algoritma dituliskan. Semua teks yang dituliskan tidak diantara tanda kurung kurawal akan dianggap sebagai notasi algortima yang akan berpengaruh terhadap kebenaran algoritma}
Struktur Pascal
(*judul*)Program judul;{penjelasan tentang program}
(*kamus*)const ..type …var …
(* algoritma*)begin ……..
………end.
Struktur Bahasa C
/*judul*//*penjelasan tentang program*//*prosedur dan fungsi disini*/
/*kamus*//*semua deklarasi dan definisi disini*/
/* algoritma*/main( ){ ……..
………}
Tabel Konversi Nama, Tipe dan Operator ke dalam Bahasa Pascal dan
CKelompok Algoritma Pascal C
1. Tipe dasar booleanintegerrealcharstringrecord
booleanintegerrealcharstringrecord
tidak ada *)intfloatchartidak ada **)struct
*) Bahasa C tidak menyediakan tipe boolean yang dinyatakan secara eksplisit, tapi dalam :
typedef enum (false=0, true =1) boolean**) Bahasa C tidak menyediakan tipe string, tetapi didefinisikan sbb : char nama_variabel[n]
Tabel Konversi … (lanjutan)
Kelompok Algoritma Pascal C
2. Operator +-*/
divmod
<≤>≥=#
notandorxor
+-*/
divmod
<<=>
>==
<>notandorxor
+-*//%<
<=>
>===!=!
&&||
tidak ada
Tabel Konversi … (lanjutan 2)
Kelompok Algoritma Pascal C3. Lain-lain constant
typetruefalse
consttypetruefalse
#definetypedef
Tidak adaTidak ada
Tabel Konversi Penugasan, Pembacaan ke Pascal dan C
Kelompok Algoritma Pascal C
1. Penugasan ← := =
2. Pembacaan
input readreadln
scanf
3. Penulisan output writewriteln
printf
Analisa KasusAnalisa Kasus(Pemilihan/Percabanga(Pemilihan/Percabanga
n)n)
Analisa KasusAnalisa Kasus(Pemilihan/Percabanga(Pemilihan/Percabanga
n)n)
Analisis KasusMenganalisis kasus berarti mendefinisikan :
Kondisi, yaitu ekspresi boolean yang bernilai benar atau salah
Aksi, yang akan dilaksanakan jika kondisi yang bersesuaian dengan aksi tersebut bernilai benar
• Notasi Algoritma untuk menangani 1 kasus
if (kondisi) then (aksi) endif
• Notasi Algoritma untuk menangani 2 kasus komplementer
if (kondisi) then (aksi_1) else {not kondisi} (aksi_2)• endif
• Notasi Algoritma untuk menangani N buah kasus adalah sebagai berikut :
depend ondepend on (nama) kondisi1 : aksi1 kondisi2 : aksi2 ….. kondisiN : aksiN enddepend
Contoh Kasus
• Konversikan nilai angka ke nilai huruf, dengan ketentuan :
81 – 100 : nilai A 66 – 80 : nilai B
56 – 65 : nilai C 46 – 55 : nilai D 0 - 45 : nilai EAtasi kemungkinan masukan angka diluar
range 0-100
Contoh Kasus 2• Misalkan nomor-nomor bulan
(integer) dibaca dari piranti masukan. Tuliskan algoritma untuk mencetak nama bulan yang dibaca. Misalkan jika dibaca bulan 8, maka nama bulan itu adalah Agustus
Contoh Kasus 3• Dibaca 3 buah angka yang
berlainan, harus dituliskan berurutan dari yang terkecil hingga terbesar