Modul Algoritma Pemrograman
I. KATA PENGANTAR Dewasa ini sudah banyak berkembang bahasa-bahasa pemrograman tingkat tinggi yang pemakaiannya sudah sangat mudah, hanya klik dan drag saja. Namun meskipun demikian tetap saja programmer harus menuliskan kode-kode program agar objek-objek yang sudah mereka buat dapat bertingkah laku/bekerja sesuai dengan yang diinginkan. Secara singkat dapat dikatakan bahwa sebuah program pasti terdapat alur logika yang menyebabkan program tersebut dapat bekerja dengan benar. Modul algoritma dan pemrograman ini sangat penting bagi mahasiswa program studi Ilmu Komputer pada khususnya karena menjadi dasar bagi mahasiswa untuk mempelajari bahasa pemrograman. Pada modul ini diberikan contoh-contoh kasus untuk mempermudah memahami konsep. Karena sebuah contoh dapat memberikan inspirasi pemecahan masalah yang mirip. Tetapi patut diingat bahwa sebuah masalah di dalam pemrograman, bila diberikan kepada pemrogram yang berbeda, boleh jadi mempunyai aneka ragam solusi (dalam hal ini algoritma), mulai algoritma yang kusut karena banyak sekali percabangannya, sampai pada algoritma yang kurang efisien karena banyak sekali pengulangan instruksi yang sama dalam menganalisa kasus. Dengan mempelajari modul ini diharapkan nantinya Anda dapat memecahkan masalah secara metodologis, yaitu sesuai dengan skema (model) yang benar. Ketaatan menggunakan skema niscaya akan menghasilkan algoritma yang efisien dan mudah dipahami sehingga menghasilkan program yang baik pula. Sebagai akhir kata, semoga modul ini dapat diterima oleh para pembaca dalam mempelajari komputer, khususnya yang mempelajari mengenai bahasa penrograman Pascal serta dapat menambah wawasan bagi para pembaca dalam pembuatan program secara terstruktur.
Yogyakarta, Desember 2007
Penulis
Modul Ke-2 - Hal 1
Modul Algoritma Pemrograman
II. PENDAHULUAN Pascal adalah suatu bahasa pemrograman terstruktur yang cukup terkenal sampai saat ini dan terus mengalami perkembangan. Pencipta bahasa Pascal adalah Niclaus Wirth (EidgenOssische Technishe Hoschule, Zurich, Swiss). Nama pascal sendiri diambil untuk mengenang dan mengabadikan seorang matematikawan Perancis bernama Blaise Pascal (1623-1662), penemu mesin penjumlah mekanis yang pertama kali. Bahasa Pascal lahir sebagai hasil pengembangan dari bahasa ALGOL60. Versi pertama Pascal muncul pada tahuin 1970, dan laporan pertama mengenai bahasa ini baru dipublikasikan pada tahun 1971. Pada tahun 1974, buku berjudul Pascal User manuial dan Report dipublikasikan. Buku ini ditulis oleh Niklaus Wirth dan Kathleen Jensen. Kepopuleran Pascal berkembang seiring dengan berkembangnya PC. Pada platform ini terdapat sejumlah compiler Pascal. Salah satunya
adalah Turbo Pascal, yang dikeluarkan oleh Borland
International. Turbo Pascal telah mengalami pembaharuan semenjak versinya yang pertama. Tercatat pada tahun 1992, Turbo Pascal versi 7.0 telah dirilis. Yang menarik, Turbo Pascal bukan hanya sekedar compiler. Turbo Pascal menyediakan suatu lingkungan terpadu (dikenal dengan sebutan IDE, Integreted Development Environment), yang diantaranya berisi: z
Kompiler (untuk mengkompilasi program menjadi suatu objek yang dipahami computer)
z
Debugger (untuk membantu mencari kesalahan program)
z
Linker (Untuk menggabungkan file objek dan file pustakka serta membentuk file exutable)
z
Editor (untuk menulis program sumber) Pada modul ini akan menjelaskan mengenai cara-cara penyusunan
program menggunakan bahasa Pascal beserta pembuatan dan penulisan struktur data menggunakan tipe-tipe data yang ada pada bahasa Pascal.
Modul Ke-2 - Hal 2
Modul Algoritma Pemrograman
III. STRUKTUR PROGRAM PASCAL
A.1. Tujuan Instruksional Umum Setelah mempelajari modul ini Anda diharapkan mampu menyelesaikan permasalahan dengan membangun algoritma dan mengimplementasikan dengan menggunakan struktur data sederhana
2. Tujuan Instruksional Khusus Setelah menyelesaikan modul ini Anda diharapkan dapat : a. menjelaskan
struktur
dasar
bahasa
PASCAL
minimal
untuk
membangun program yang sederhana. b. menyebutkan dan menjelaskan
element-element pada bahasa
PASCAL minimal 2 element dengan benar. c. Membedakan cara pendeklarasian type data yang ada dalam Pascal minimal 80 % benar. d. menyebutkan operator yang digunakan dalam bahasa Pascal minimal 5 jenis operator dengan benar.
B. URAIAN MATERI 1) Mengenal Lingkungan Turbo Pascal Turbo Pascal memiliki menu batang pada bagian atas layer. Item-item dari menu ini berupa:
File Berisi berbagai perintah untuk operasi yang berhubungan dengan file, seperti: -
membuat program baru,
-
menyimpan file,
-
mencetak program ke printer,
-
memuat program ke editor,
-
mengubah direktori kerja,
-
keluar ke DOS untuk sementara,
-
keluar dari Turbo Pascal
Modul Ke-2 - Hal 3
Modul Algoritma Pemrograman
Edit Berisi berbagai perintah yang berhubungan dengan operasi penyuntingan program, sperti:
-
menyalin dan membuang teks
-
melihat isi clipboard.
Search Diantaranya berguna untuk mencari dan mengganti teks Run Diantaranya untuk:
-
menjalankan/mengeksekusi program,
-
mengatur eksekusi perintah per langkah
-
mengisikan parameter baris perintah.
Compile Diantaranya untuk:
-
mengkompilasi program ke disk atau ke memori
-
mengkompilasi secara cerdas terhadap program yang multifile
-
menampilkan informasi mengenai program, memori dan EMS.
Debug Untuk melakukan debugging (pencarian kesalahan).
Tools Diantaranya untuk menampilkan jendela pesan kesalahan
Options Untuk mengatur berbagai pilihan untuk: -
Debugger
-
Linker
Cara menggunakan menu ditunjukkan pada tabel 1. Tabel 1. Cara menggunakan menu dalam turbo Pascal Tindakan Menampilkan
Dengan Mouse
Dengan Keyboard
sebuah Gerakan penunjuk mouse ke Tekan tombol
dan
menu
nama menu dan kemudian tekan huruf kunci dari klik tombol.
Menuliskan perintah
menu yang dikehendaki
Gerakkan pnunjuk mouse ke Tekan suatu perintah dalam menu. menjadi
Membatalkan perintah
tombol
yang
kunci
dari
Klik tombol kiri
perintah
Klik diluar menu
Tekan <Esc>
Modul Ke-2 - Hal 4
Modul Algoritma Pemrograman
Modul Ke-2 - Hal 5
Modul Algoritma Pemrograman
¬ Menulis Program Anda dapat memulai untuk membuat program dengan mengikuti langkah sebagai berikut: (1)
Pilih menu File (Alt+F),
(2)
Pilih New
Sebagai contoh, Anda dapat menulis program berikut ini: PROGRAM Lat1 BEGIN WriteLn(‘Selamat Belajar Turbo Pascal’); END. Tombol Enter perlu ditekan untuk pindah dari baris akhir ke baris baru.
¬ Menyimpan Program Program yang telah dibuat atau dimodifikasi sebaiknya disimpan ke disk sebelum dijalankan. Langkah ini perludilakuakan agar program yang baru saja ditulis tidak hilang bila computer mendadak mati saat program dieksekusi atau karena sebab-sebab lain. Cara menyimpan program adalah sebagi berikut: (1) Pilih menu File (Alt+F), (2) Pilih Save
Setelah
jendela tersebut muncul, ketik nama file yang dikehendaki.
Misalnya: Lat1 kemudian tekan Enter
¬ Menjalankan/mengeksekusi Program Utuk menjalankan program yang telah berda pada editor, lakukan langkah berikut: (1) Pilih menu Run (Alt+R), (2) Pilih Run Langkah ini akan menyebabkan: •
Program akan dikompilasi terlebih dulu (kecuali kalau pernah dikompilasi dan tidak ada perubahan lagi).
•
Sekiranya tak ada kesalahan sintaks pada program, program akan segera dijalankan.
Modul Ke-2 - Hal 6
Modul Algoritma Pemrograman
¬ Menutup Program Program yang sedang berada pada editor sekarang dapat di tutup dengan cara sebagai berikut: (1) Tekan Alt+W (menu Window), (2) Pilih Close.
¬ Membuka File Program Program yang tersimpan di dalam disk dapat dipanggil dan diletakkan ke editor dengan cara sebagai berikut: (1) Tekan Alt+F (menu File), (2) Pilihlah Open
¬ Keluar dari Turbo Pascal Jika Anda bermaksud keluar dari Turbo Pascal dan kembali ke Sistem Operasi, langkah yang diperlukan adalah sebagai berikut: (1) Tekan ALT+F (menu File), (2) Pilihlah Exit.
¬ Meminta Bantuan dari Turbo Pascal Anda dapat memilih menu Help untuk keperluan ini. Cara yang lain, Anda dapat meletakkan kursor pada suatu kata (misalnya WriteLn dan menekan tombol Ctrl+F1 sehingga dokumentasi dari kata tersebut akan segera ditampilkan).
2. Bentuk Umum Struktur Program Pascal Penyusunan program bahasa PASCAL disusun perintah demi perintah, dengan perintah yang teratas akan dikerjakan terlebih dahulu. Sehingga apabila terjadi kesalahan atau error pada program, maka pendeteksian dapat ditelusur pada no baris yang terjadi kesalahan (biasanya ditunjukkan oleh posisi kusor) atau pada baris sebelumnya. Secara umum, bahasa pemrograman yang berbasiskan prosedur terdiri dari blok/sub program, yang memiliki tiga bagian utama yaitu: 1. Kepala Program 2. Bagian deklarasi 3. Bagian Statement
Modul Ke-2 - Hal 7
Modul Algoritma Pemrograman
Demikian halnya dengan bahasa pemrograman Pascal yang merupakan salah satu dari bahasa procedural. Bentuk program Pascal mirip dengan kebanyakan program bahasa tingkat tinggi lainnya. Bentuk umumnya adalah : 1. JUDUL PROGRAM 2. BLOK PROGRAM a.
Bagian deklarasi (Tidak selalu digunakan semua, bisa satu bisa sebagian saja deklarasi yang digunakan) -
deklarasi label
-
deklarasi konstanta
-
deklarasi type
-
deklarasi variabel
-
deklarasi subroutine (deklarasi prosedur /deklarasi fungsi)
b. Bagian pernyataan / statemen
2.1. Judul Program Judul Program sifatnya sebagai dokumentasi saja atau bersifat opsional. Anda dapat membuang baris ini tanpa mengubah hasil program. Kegunaannya adalah sebagai identitas program dan dikenal sebagai kepala program. Sekalipun bersifat opsional, sebuah program dianjurkan agar diawali dengan baris semacam ini., Bentuk umumnya sbb :
Program [nama program] (daftar pengenal) Contoh : Program pengenal; Keterangan : Program adalah kata cadangan Pengenal adalah nama program
2.2. Bagian Deklarasi Bagian deklarasi merupakan bagian program untuk mendefinisikan tipe data suatu variable, konstanta, serta fungsi dan prosedur yang akan digunakan pada program. Selain itu, bagian deklarasi dapat juga digunakan untuk memberi
Modul Ke-2 - Hal 8
Modul Algoritma Pemrograman
nilai awal suatu variable. Dengan kata lain, deklarasi digunakan untuk memperkenalkan suatu nama kepada Compiler program. Bagian deklarasi diatas tentu saja belum tentu ada didalam program. Malahan, sebuah program dapat saja tidak melibatkan bagian deklarasi sama sekali. Urutan bagian-bagian yang ada pada bagian deklarasi dapat dibolak-balik. Yang penting, sebelum menggunakan sesuatu tersebut harus ada terlebih dulu (sudah dideklarasikan).
1). Deklarasi Label Adalah menyatakan lokasi tempat pernyataan yang dituju oleh sebuah pernyataan GOTO dalam program Sintaks : Label daftar_label;
2). Deklarasi Konstanta Jika dalam membuat suatu program Anda sering menggunakan bilangan numeric atau string yang sama berkali-kali, maka sebaiknya bilangan atau kalimat tersebut dideklarasikan sebagai suatu konstanta. Untuk mendeklarasikan konstanta harus diawali dengan kata baku const. Dengan mendefinisikan const maka variabel tersebut tidak dapat diubah nilainya dalam program utama. Bentuk umumnya :
CONST pengenal1 = nilai1; Pengenal2 = nilai2; Contoh : CONST Keterangan = ‘Data panjang sisi miring segitiga siku-siku’; Sisi_siku_1 = 20; Sisi_siku_2 = 10.5; Konstanta yg disediakan pascal a.l: -
pi
= 3.1415926536
-
false
= bernilai logika salah
-
true
= bernilai logika benar
-
maxint
= 32767
Konstanta juga dapat dideklarasikan dengan tipenya :
Modul Ke-2 - Hal 9
Modul Algoritma Pemrograman
Bentuk umumnya :
CONST pengenal1 : Tipe1 = nilaiKonstanta1; Pengenal2 : Tipe2 = nilaiKonstanta2; Contoh : CONST BanyakData : byte = 250; Jumlah : integer = 20;
3). Deklarasi Variabel Variabel adalah identifier yg berisi data yang dapat berubah-ubah nilainya didalam program. Variabel harus dideklarasikan lebih dulu dengan tujuan untuk memesankan tempat di dalam memori sesuai dengan tipe data yg digunakan. Sintaks : Var Daftar_variabel : tipe data; Contoh : Var
i, i2 : integer; s : string;
Penjelasan: Untuk mendeklarasikan variable pada Pascal, digunakan reserved word var, kemudian diikuti dengan nama variable (identifier) yang ingin digunakan, dan kemudian tipe data dari variable tersebut. Syarat penamaan variabel / pengenal : 1. panjang karakter dari suatu variabel terdiri dari antara 1 sampai dengan 40 karakter. 2. pada pascal identifier tidak bersifat case sensitive (huruf besar dan kecil tidak dibedakan ) 3. kombinasi huruf dengan angka dengan posisi pertama harus huruf 4. tidak boleh mengandung spasi, spasi dapat diganti dengan garis bawah 5. tidak boleh menggunakan character khusus seperti (*, /, %,@ dsb).
Modul Ke-2 - Hal 10
Modul Algoritma Pemrograman
4). Deklarasi Type Digunakan untuk mendefinisikan nama tipe data baru yang berbeda dengan tipe data yang sudah disediakan oleh PASCAL. Sintaks : Type Pengenal_1 = tipe_1; . . pengenal_n = tipe_n; Dalam hal ini: •
Pengenal berupa suatu nama pengenal yang didefinisikan sendiri
•
Tipe dapat berupa sembarang tipe data
Pembuatan tipe baru bisa dilakukan untuk tipe data terstruktur seperti record atau array. Tipe yang dideklarasikan pada TYPE ini dapat dipakai untukmendeklarasikan variable (ataupun argument dari suatu subprogram). Contoh :
Modul Ke-2 - Hal 11
Modul Algoritma Pemrograman
5). Deklarasi Subroutine Bagian
deklarasi
subroutine
atau
subprogram
digunakan
untuk
mendeklarasikan subroutine (prosedur atau fungsi yang Anda buat sendiri). Sebagai contoh, Deklarasi seperti diatas akan dibahas secara khusus pada materi tentang Subroutine.
2.3. Bagian Statement Statemen adalah perintah pengerjaan program. Kumpulan statemen membentuk program. Statemen berada dibagian deklarasi statemen dengan diawali kata cadangan begin dan end. Sintaks : begin daftar_statemen; end;
Bagian ini diawali kata tercadang BEGIN, diikuti nol atau sejumlah pernyataan dan kemudian diakhiri dengan kata tercadang END dan tanda titik (.). dengan demikian statemen
BEGIN END. Merupakan contoh program terpendek pada Turbo Pascal, mengingat: •
Bagian kepala program hanya bersifat opsional,
•
Bagian deklarasi boleh tidak ada
•
Peryataan di dalam bagaian pernyataan boleh tidak ada
Tentu saja, program tersebut tidak akan menghasilkan apa-apa kalau dijalankan, karena memang tidak ada tindakan yang menyuruh computer untuk melakukan sesuatu. Bagian pernyataan sering disebut program utama (main program). Bgaian inilah yang menjadi titik awal pengeksekusian program. Ketentuan penulisan statemen 1. Diakhiri dengan titik koma jika blok statement bukan blok utama program, sedangkan apabila blok statement adalah blok utama program, maka reserved word end harus diakhiri dengan tanda titik(.) 2. Huruf besar atau huruf kecil tidak dibedakan 3. Dalam satu baris boleh lebih dari satu statemen.
Modul Ke-2 - Hal 12
Modul Algoritma Pemrograman
4. Satu statemen boleh terdiri dari beberapa baris 5. Konstanta tidak boleh dipecah dalam beberapa baris
Statemen terdiri dari : 1. Statemen pengerjaan Digunakan utk memasukkan suatu nilai tertentu ke dalam suatu variabel. Sintaks : pengenal_variabel := ungkapan; Contoh :
2. Statemen prosedur Digunakan utk mengaktifkan suatu prosedur yg telah didefinisikan pemakai atau oleh Pascal Contoh :
3. Statemen Lompatan statement yang digunakan untuk melompati statement-statement lain. Yang termasuk dalam kategori statement ini yaitu:
4. Statemen kosong statemen yg tidak berisi symbol apapun contoh : begin end;
3. Elemen-elemen Dalam Bahasa Pemrograman Pascal Ketika
kita
mempelajari
suatu
bahasa
pemrograman,
kita
akan
menjumpai elemen-elemen yang pada dasarnya serupa antara satu bahasa
Modul Ke-2 - Hal 13
Modul Algoritma Pemrograman
dengan bahasa yang lain. Hal itu dikarenakan elemen-elemen tersebut merupakan bagian dari tata bahasa pemrograman yang bersangkutan. Berikut adalah element-element pada bahasa pemrograman Pascal 1. Tipe data 2. Aturan Leksikal 3. Expression
1). Tipe Data Pascal telah menyediakan beberapa tipe data yang sudah siap dipakai. Pada
saat
mendeklarasaikan
sebuah
variabel
secara
otomatis
harus
mendeklarasikan tipe data yang dapat ditampung oleh variabel tersebut. Tipe data dalam Pascal dibagi menjadi 3 bagian A.
Tipe Data sederhana Tipe data sederhana merupakan tipe data yang paling kecil, yang hanya melibatkan satu item data, misalnya tipe data integer, string, real, Boolean, dan sebagainya. Kita dapat juga mendefinisikan sendiri tipe data ini. Tipe data yang didefinisikan sendiri tersebut diistilahkan enumerated data type a. Tipe bilangan bulat Tipe data ini digunakan untuk menyimpan bilangan bulat. Macammacam tipe bilangan bulat dalam Pascal adalah sbb : Tipe Shortint Integer Longint Byte word
Jangkauan -128 … 127 -32768 … 32767 -2147483648 … 2147483647 0 … 255 0 … 65535
Ukuran 8 bit 16 bit 32 bit 8 bit 16 bit
Untuk memberi nilai pada tipe bilangan bulat dapat menggunakan basis decimal maupun heksadesimal yang ditandai dengan tanda $ Contoh : Var x, y : integer; begin x := 16; y := $0A;
{ dengan decimal } { dengan hexadecimal }
Modul Ke-2 - Hal 14
Modul Algoritma Pemrograman
b. Tipe Boolean Tipe data ini hanya dapat bernilai benar dan salah. Tipe Boolean ukurannya 1 byte. Contoh : Var B1 : boolean; begin b1 := true; b1 := false;
c. Tipe Karakter Tipe data ini digunakan untuk menyimpan data alfanumeris seperti ‘A’, ‘Z’, ‘@’, dsb.. Tipe data char ukurannya 1 byte. Contoh : Var ch : char; begin ch := ‘A’; ch := #65 { sama artinya dengan ch := ‘A’} ch := chr(65); { sama artinya dengan ch := ‘A’} d. Tipe Subajangkauan Tipe data ini memungkinkan Anda mendeklarasikan tipe yang berada pada jangkauan tertentu. Tipe ini hamper sama dengan tipe bilangan bulat, bedanya Anda bebas menentukan jangkauan dari tipe ini. Contoh : Type Bulan = 1 .. 12; Var Januari : Bulan; begin Januari := 1;
e. Tipe Terbilang Tipe data ini memungkinkan Anda memberi nama pada beberapa nilai tertentu.
Modul Ke-2 - Hal 15
Modul Algoritma Pemrograman
Contoh : Type TipeHari = (Minggu, Senin, Selasa, Rabu, Kamis, Jumat, Sabtu); Var hari : TipeHari; begin hari := Minggu; hari := Senin;
f. Tipe Real Tipe data ini digunakan untuk menyimpan bilangan real. Macammacamnya sebagai berikut : Tipe Real Single Double Extended comp
Jangkauan 2.9*10-39 … 1.7*1038 1.5*10-45 … 3.4*1038 5.0*10-324 … 1.7*10308 3.4*10-4932 … 1.1*104932 -263+1 … 263 - 1
Digit penting 11 – 12 7–8 15 – 16 19 – 20 19 - 20
Ukuran 6 byte 4 byte 8 byte 10 byte 8 byte
Contoh : Var x, y : real; begin x := 123.45; {menuliskan nilai dengan tanda titik} y := 1.2345E+2 { menuliskan nilai dengan eksponen}
g. Tipe string Tipe data ini digunakan untuk menyimpan data yang berupa untaian karakter. Contoh : Var kalimat : string; begin kalimat := ‘ISTA’;
Modul Ke-2 - Hal 16
Modul Algoritma Pemrograman
String adalah suatu jenis variabel yang tidak dapat ‘di operasikan’ dengan operator matematika. String lebih banyak menyebut sebagai variabel yang berupa teks. Suatu variabel string tidak harus berisi suatu teks (rangkaian karakter/huruf) tetapi bisa juga berisi suatu angka. Contoh :
B.
Tipe Data terstruktur Tipe data terstruktur merupakan tipe data yang menampung
beberapa
item data. Bentuk dari tipe data ini dapat berupa array (terdiri dari item-item yang memiliki tipe data yang sama) ataupun record (terdiri dari item-item yang boleh memiliki tipe data yang berbeda).
Modul Ke-2 - Hal 17
Modul Algoritma Pemrograman
a. Type Larik (Array) Yang dimaksud array yaitu tipe data berindeks yang terdiri dari satu atau lebih elemen/komponen yang memiliki tipe data yang sama. Sintaks : Var
nama_larik : array [batas_bawah … batas_atas] of
type_larik; Contoh :
b. Tipe Rekaman Tipe data ini digunakan untuk merepresentasikan kumpulan (set) elemen/komponen yang memiliki satu jenis atau lebih tipe data. Tiap element disebut juga field atau property atau attribute Contoh :
Modul Ke-2 - Hal 18
Modul Algoritma Pemrograman
c. Tipe Himpunan Tipe ini digunakan untuk menyimpan kumpulan nilai yang bertipe sama. Sintak : Type Nama_himpunan = set of tipeData Contoh : Type Karakter = set of char; C.
Tipe Data Pointer Tipe data pointer digunakan untuk menunjuk pada alamat memory suatu data yang lain. Jadi tipe data pointer pada dasarnya tidak menyimpan nilai data secara langsung,melainkan hanya menyimpan alamat dimana data berada. Pendeklarasian pointer hampir sama dengan pendeklarasian variabel biasa, bedanya Anda harus menambahkan tanda ^ di depan tipe pointer. Contoh : Var P1 : ^integer; P2 : ^char;
2). Aturan Leksikal Yang dimaksud aturan leksikal yaitu aturan yang digunakan dalam membentuk suatu deklarasi, definisi, maupun statement hingga menjadi satu program yang utuh. Aturan ini meliputi beberapa element antara lain: a. Token b. Komentar c. Identifier d. Keywords (Reserved Words) e. Operator
A. Token Token yaitu element terkecil pada bahasa pemrograman yang memiliki arti penting bagi compiler. Yang termasuk token antara lain: identifier, keywords(reserved words), operator, dan sebagainya.
Modul Ke-2 - Hal 19
Modul Algoritma Pemrograman
Token yang satu dengan yang lain dipisahkan dengan satu atau lebih spasi, tab, baris baru, atau komentar.
B. Komentar Komentar yaitu teks (kumpulan karakter) yang diabaikan oleh Compiler. Komentar sangat berguna untuk memberi catatan mengenai bagian program tertentu sebagai referensi baik bagi programmer itu sendiri maupun orang lain yang membaca kode program tersebut. Pada bahasa Pascal, teks yang berada di antara kurung kurawal pembuka {dan kurung kurawal tutup } akan dianggap sebagai komentar. Selain itu, dapat pula menggunakan tanda (* sebagai pembuka komentar, dan tanda *) sebagai penutup. Contoh:
C. Identifier Identifier merupakan kumpulan karakter yang digunakan sebagai penanda untuk nama variable, nama tipe data, fungsi, prosedur, dan sebagainya. Aturan penulisan identifier pada bahasa Pascal Yaitu: suatu identifier harus diawali oleh karakter non angka sebagai berikut:
tersebut di atas, namun tidak boleh menggunakan karakter khusus/spesial seperti + - * / ? ! { } [ ] dan sebagainya. Berikut adalah contoh-contoh identifier yang benar maupun salah.
Modul Ke-2 - Hal 20
Modul Algoritma Pemrograman
Tetapi sebagai catatan yang perlu diingat, identifier pada bahasa Pascal bersifat case insensitive (huruf besar dan huruf kecil dianggap sama). Sebagai contoh, identifier No_Telpon dan no_telpon pada bahasa Pascal dianggap sama.
D.
Keywords (Reserved Words) Keywords
atau
Reserved
words
merupakan
kata-kata
yang
telah
ada/didefinisikan oleh bahasa pemrograman yang bersangkutan. Kata-kata tersebut telah memiliki definisi yang sudah tetap dan tidak dapat diubah. Karena telah memiliki definisi tertentu, maka kata-kata ini tidak dapat digunakan sebagai identifier. Pada bahasa Pascal, yang termasuk reserved words antara lain:
E.
Operator Operator digunakan untuk menyatakan suatu perhitungan/operasi. Operator yang digunakan untuk operasi yang melibatkan satu operand disebut unary operator. Jika melibatkan dua operand maka disebut binary operator, dan jika melibatkan tiga operand, operator tersebut disebut ternary operator. Di dalam suatu operasi dapat terdapat banyak operator. Urutan eksekusi dari operator-operator disebut juga operator precedence. Precedence yang lebih rendah akan dieksekusi belakangan, misalnya: A = 10 + 5 * 2 Karena precedence operator * lebih tinggi daripada operator + maka nilai A adalah 20, diperoleh dari perkalian 5 dan 2, kemudian dijumlahkan dengan 10. Untuk mendahulukan eksekusi precedence yang lebih rendah dapat digunakan tanda ( dan ) sebagai contoh: A = (10 + 5) * 2 Variable A akan memiliki nilai 30, diperoleh dari penjumlahan 10 dan 5, kemudian dikalikan 2.
Modul Ke-2 - Hal 21
Modul Algoritma Pemrograman
Operator dapat dikategorikan menjadi beberapa jenis antara lain: 1. Assignment Operator 2. Arithmetic Operator 3. Bitwise dan Logical Operator 4. Relational Operator 5. Pointer Operator Berikut akan dibahas lima kelompok operator tersebut di atas. Sebagai catatan, masih terdapat operator-operator yang belum tercakup pada kelompok tersebut di atas. Yang dibahas di sini hanya bagian-bagian yang sangat umum. a.
Assignment Operator Operator ini digunakan untuk memberi nilai suatu identifier. Pada bahasa Pascal, digunakan tanda titik dua dan tanda sama dengan := untuk memberi nilai pada variable. Contoh: C := A + B; atau C := 4;
b. Arithmetic Operator Yang termasuk di dalam operator arithmetic yaitu operator yang digunakan untuk melakukan operasi aritmatika, seperti:
Operator-operator yang disebut di atas termasuk binary operator karena melibatkan dua operand. Terdapat pula operator unary, yaitu tanda – dan + yang digunakan sebagai penanda bilangan negative atau positif. Contoh :
X := y + z; X := a – b – c –d; X := 5 * 9 * 3.14; X:= a / b; X := a + b – c * d; X := 10 div 2; X := I mod j;
Modul Ke-2 - Hal 22
Modul Algoritma Pemrograman
Yang perlu Anda perhatikan disini adalah bahwa Pascal mengenal dua macam pembagian. •
Yang pertama pembagian dengan operator /. Pembagian ini selalu menghasilkan bilangan real / pecahan.
•
Yang kedua adalah pembagian dengan operator DIV. Pembagian ini sellu
menghasilkan bilangan bulat
dan
operannya juga selalu bilangan bulat.
c. Bitwise dan Logical Operator Operator ini digunakan untuk melakukan operasi bit dan logika. Operasi ini hanya dapat dikenakan pada operan bertipe bilangan bulat dan hasil operasinya juga selalu bilangan bulat. Yang termasuk di dalam operator ini antara lain: Operator
Operasi
Not
Invers
And
Logika and
Or
Logika or
Xor
Logika xor
Shl
Penggeseran bit ke kiri
shr
Penggeseran bit ke kanan
¬ Operator Not Operator ini digunakan untuk membalik nilai logika dari operand Boolean. Selain itu juga memungkinkan operator NOT digunakan pada operand numeric integer, yang akan mengakibatkan pembalikan bitwise. Contoh : Begin Writeln(not true); Writeln(not false); Writeln(not 0);
Hasil Run : False True -1 -6
Writeln(not 5); End.
Modul Ke-2 - Hal 23
Modul Algoritma Pemrograman
Keterangan : o
Nilai dari Not 1 adalah -1, disebabkan karena nilai 0 tersebut akan tersimpan di memori dengan bentuk bilangan binary. 0000000000000000
o
Operator not akan membalik nilai bit (bitwise),yang bernilai 1 menjadi 0 dan sebaliknya, sehingga Not 0 akan menjadi 1111111111111111 sign bit
o
Bit yang paling kanan menunjukkan sign bit, yaitu menunjukkan tanda
positif
(bila
bilangannya
nol)
dan
negative
(bila
bilangannya 1). Pad kasus diatas karena tandanya satu maka menunjukkan bilai negative. Pada Pascal menggunakan cara komplemen dua, yaitu bila nilainya negative diartikan dengan cara mengurangi nilai biner tersebut dengan satu kemudian nilai bit dibalik. 1111111111111111 1 1111111111111110 dibalik nilai bit menjadi 0000000000000001 = 1 dan sign bit sebelumnya menunjukkan nilai negative, berarti 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 = -1 o
Jadi (not 0) nilainya menjadi -1
¬ Operator AND Operator ini digunakan untuk mengevaluasi masing-masing bit pada operan-operannya. Untuk operand AND, jika bit dari kedua operan bernilai 1 maka bit hasiloperasinya juga bernilai 1, jika tidak bit hasil bernilai 0. Contoh : Begin Writeln(12 and 23);
Hasil Run : 4
End.
Modul Ke-2 - Hal 24
Modul Algoritma Pemrograman
Keterangan : o
Operator arithmetic AND bekerja dengan membandingkan bit demi bit dari lemen-elemen yang dibandingkan sebagai berikut :
o
12 nilai binarynya
: 0000000000001100
23 nilai binarynya
: 0000000000010111
12 AND 23 bernilai
: 0000000000000100
=4
Jadi (12 AND 23) nilainya menjadi 4
¬ Operator OR Operator ini digunakan untuk mengevaluasi masing-masing bit pada operan-operannya. Untuk operand OR, jika bit dari kedua operan bernilai 0 maka bit hasil operasinya juga bernilai 0, jika tidak bit hasil bernilai 1. Contoh : Begin Writeln(12 OR 23);
Hasil Run : 31
End. Keterangan : o
o
Operator arithmetic OR bekerja sama dengan operator AND 12 nilai binarynya
: 0000000000001100
23 nilai binarynya
: 0000000000010111
12 OR 23 bernilai
: 000000000001111
= 31
Jadi (12 OR 23) nilainya menjadi 31
¬ Operator XOR Operator ini digunakan untuk mengevaluasi masing-masing bit pada operan-operannya. Untuk operand XOR, jika bit dari kedua operan bernilai 0 atau 1 maka bit hasil operasinya bernilai 0, jika tidak bit hasil bernilai 1. Contoh : Begin Writeln(12 XOR 23);
Hasil Run : 27
End.
Modul Ke-2 - Hal 25
Modul Algoritma Pemrograman
Keterangan : o
Operator arithmetic XOR bekerja dengan membandingkan bit demi bit dari lemen-elemen yang dibandingkan sebagai berikut :
o
12 nilai binarynya
: 0000000000001100
23 nilai binarynya
: 0000000000010111
12 XOR 23 bernilai
: 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 = 27
Jadi (12 XOR 23) nilainya menjadi 27
¬ Operator SHL Operator ini digunakan untuk menggeser (shift) sejumlah bit ke kiri (left) dengan nilai bit 0 Contoh : Begin Writeln(12 OR 5);
Hasil Run : 384
End. Keterangan : o
Bit dari lemen-elemen yang akan digeser sebagai berikut : 12 nilai binarynya : 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 digeser 5 bit kekiri : 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 = 384
¬ Operator SHR Operator ini digunakan untuk menggeser (shift) sejumlah bit ke kanan (right) Contoh : Begin Writeln(160 SHR 5);
Hasil Run : 5
End. Keterangan : o
Bit dari lemen-elemen yang akan digeser sebagai berikut : 12 nilai binarynya
: 0000000010100000
digeser 5 bit kekiri
: 0000000000000101 = 5
d. Relational Operator Operator relasional digunakan untuk membandingkan nilai dua operand. Sebagai catatan, operand yang dibandingkan harus memiliki tipe data
Modul Ke-2 - Hal 26
Modul Algoritma Pemrograman
yang sama, kecuali untuk bilangan bulat (bertipe integer) dan bilangan pecahan (bertipe real atau float). Yang termasuk operator relasional yaitu: Operator Operasi
Tipe Operan
=
Sama dengan
<>
Tidak sama dengan
<
Kurang dari
Tipe sederhana, himpunan, string Tipe sederhana, himpunan, string Tipe sederhana, string
>
Lebih dari
Tipe sederhana, string
<=
Kurang dari atau sama dengan
Tipe sederhanastring
>=
Lebih dari atau sama dengan
Tipe sederhana, string
<=
Subset dari
Tipe himpunan
>=
Superset dari
Tipe himpunan
pointer pointer
Contoh : Const A = 5; B = 3; Begin Writeln(a=b); Writeln(a=5); Writeln(a<>b);
Hasil Run : False True True True True False False
Writeln(a>b); Writeln(a>=b); Writeln(a
3)
Expression Yang dimaksud dengan expression (ekspresi) yaitu suatu pernyataan
yang menghasilkan suatu nilai. Expression tersusun dari operator dan operand
Modul Ke-2 - Hal 27
Modul Algoritma Pemrograman
yang digunakan untuk menghitung atau memberi suatu nilai suatu variable atau identifier. Expression yang paling sederhana yaitu nama variable. Expression yang lebih kompleks akan melibatkan operator-operator, maupun pemanggilan function atau procedure. Berikut adalah contoh expression:
C. EVALUASI FORMATIF 1 ). Sebutkan struktur dari bahasa pemrograman PASCAL ! 2 ). Sebutkan 4 jenis statemen yang ada dalam bahasa Pascal 3 ). Sebutkan 5 element yang termasuk aturan leksikal pada bahasa Pascal 4 ). Sebutkan minimal 5 jenis operator yang digunakan pada bahasa Pascal 5 ). Diasumsikan A, B, dan C adalah variabel Boolean dan nilai A dan B adalah true, sedangkan C adalah False. Evaluasi setiap ekspresi berikut ini : a. A and C b. A or B and C c. A and B or C d. A xor B and C e. A or (not B) f.
Not (A or B xor C)
6 ). Jika diketahui x adalah variabel bertipe integer, dari nilai-nilai berikut, manakah yang dapat diberikan pada x ? a. $a
d. -$FF
b. 10.1
e. $AAAA
c. 40000
f. 0010
Modul Ke-2 - Hal 28
Modul Algoritma Pemrograman
IV. STATEMENT INPUT DAN OUTPUT
A.1. Tujuan Instruksional Umum Setelah mempelajari modul ini Anda diharapkan mampu menyusun program sederhana menggunakan statemen input dan output untuk memecahkan masalah.
2. Tujuan Instruksional Khusus Setelah menyelesaikan modul ini Anda diharapkan dapat : a. membedakan penggunaan perintah READ dan READLN untuk menyusun program dalam bahasa PASCAL dalam waktu maksimal 10 menit.. b. membedakan penggunaan perintah WRITE dan WRITELN untuk menyusun program dalam bahasa PASCAL dalam waktu maksimal 10 menit
B. URAIAN MATERI 1. Perintah Output Untuk mencetak hasil pengolahan data (keluaran), Pascal mempunyai dua statemen yaitu write dan writeln. Dengan adanya kedua perintah ini tentunya ada interaksi antara manusia/pemakai dengan program yang dijalankannya. Kedua statemen ini dapat berisi sembarang argumen. Bentuk Umum statemen output adalah : Write(); atau
Writeln (); Perbedaan antara write dan writeln adalah :
Write akan menampilkan hasil ke layar tanpa disertai ganti baris sehingga tampilan berikutnya akan terletak pada baris yang sama.
Writeln akan menampilkan hasil ke layar dengan disertai pergantian baris sehingga tampilan berikutnya akan terletak pada baris berikutnya.
Modul Ke-2 - Hal 29
Modul Algoritma Pemrograman
Jika Anda akan menampilkan string (kalimat, kata, karakter ataupun symbol) tertentu maka harus diikuti dengan tanda kutip tunggal ( ‘ ) dan diakhiri dengan tanda kutip tunggal juga. Contoh :
Yang akan ditampilkan ke layar sebuah kalimat
Program satu; Begin Write ( ‘ SELAMAT’ ); Writeln( ‘BELAJAR PEMROGRAMAN KOMPUTER’ ); Writeln( ‘~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~’ ); Write( ‘ di Lab Kom III Jl I Dewa Nyoman Oka ’); Write(32); End.
Yang akan ditampilkan ke layar sebuah simbol
Yang akan ditampilkan ke layar sebuah bilangan numerik
Hasil Tampilannya adalah : SELAMATBELAJAR PEMROGRAMAN KOMPUTER ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ di Lab Kom III Jl I Dewa Nyoman Oka 32
Jika yang akan ditampilkan adalah isi dari variabel atau konstanta, maka Anda tidak perlu menuliskan kutip tunggal pada awal dan akhirvariabel atau konstanta tersebut. Anda cukup menuliskan nama variabel atau konstanta tersebut yang diapit tanda kurung dan diakhiri dengan titik koma.
Contoh : Program satu; Const A = 5; JumlahSiswa = 10; Begin Write ( A ); Writeln( JumlahSiswa ); End.
2. Format Angka format angka digunakan untuk mengatur hasil tampilan sebuah variabel integer ataupun real. Sebagai contoh
Modul Ke-2 - Hal 30
Modul Algoritma Pemrograman
Hasil Run : ISI A = 100 ISI B = 3.0000000000E+01
Tampilan hasil variabel b ternyata ditampilkan dalam bentuk eksponensial. Bagaimana
kalau
diinginkan
tampilan
hasilnya
adalah
30.00.
Untuk
menampilkan maka Anda harus memformat tampilannya menggunakan aturan yang telah ditentukan oleh bahasa PASCAL. •
Format untuk variabel integer Bentuk Umum statemen output menggunakan format angka integer adalah : Write(:m); atau
Writeln (:m); Keterangan : m : disini mempunyai arti bahwa isi variabel akan ditampilkan dalam bentuk m digit. Dalam hal ini akan menyebabkan isi variabel akan ditampilkan dalam bentuk rata kanan. Contoh :
Hasil Run : ISI A =
10
ISI B = 100 ISI C = 1000 TAMPILAN TAMPAK RATA KANAN SEMUA
Modul Ke-2 - Hal 31
Modul Algoritma Pemrograman
•
Format untuk variabel real Bentuk Umum statemen output menggunakan format angka real adalah : Write(:m:n); atau
Writeln (:m:n); Keterangan : m : disini mempunyai arti bahwa isi variabel akan ditampilkan dalam bentuk m digit dengan posisi (m – n) untuk memisah decimal (titik) n
: untuk menentukan banyaknya digit yang digunakan untuk angka dibelakang koma.
Misalkan : o
Writeln(‘ISI A = ‘, A:5:1) Perintah A:5:1 mempunyai arti bahwa
Tiga kotak digunakan untuk angka di depan titik Æ kolom 1,2,3 Satu kotak digunakan untuk memisahkan decimal (titik) Æ kolom 4 Satu kotak digunakan untuk angka dibelakang titik Æ kolom 5 o
Writeln(‘ISI A = ‘, A:7:3) Perintah A:7:3 mempunyai arti bahwa
Tiga kotak digunakan untuk angka di depan titik Æ kolom 1,2,3 Satu kotak digunakan untuk memisahkan decimal (titik) Æ kolom 4 Satu kotak digunakan untuk angka dibelakang titik Æ kolom 5,6,7
Modul Ke-2 - Hal 32
Modul Algoritma Pemrograman
Contoh :
Hasil Run : ISI A = 100 ISI B =
30.0
TAMPILAN ISI A RATA KIRI TAMPILAN ISI B RATA KANAN
3. Perintah Input Untuk contoh pada bagian 4.2.1.1.
semua proses masukan tidak
melibatkan pemakai. Conoth program tersebut mempunyai nilai yang tetap. Sehingga apabila di run berulang kali maka hasil keluarannya akan tetap sama apabila dilakukan proses running satu kali. Untuk melibatkan pemakai, dalam hal ini pemakai dapat menginputkan data dari keyboard, maka pemakai dapat memanfaatkan statement READ dan READLN yang telah disiapkan oleh PASCAL. Bentuk umum
:
READ (variabel_penampung_data) atau READLN(variabel_penampung_data) Perbedaan antara READ dan READLN adalah bila memakai READ maka kelebihan data yang diinputkan tidak akan dibuang, sedangkan apabila menggunakan READLN kelebihan data yang diinputkan akan dibuang.
Modul Ke-2 - Hal 33
Modul Algoritma Pemrograman
Contoh :
C. EVALUASI FORMATIF
1.
Modul Ke-2 - Hal 34
Modul Algoritma Pemrograman
2.
Apakah output dari program diatas ?
3.
Buatlah algoritma dan program untuk mengkonversi suhu dari Celcius ke Fahrenheit. Masukan program ini adalah suhu dalam Celcius berupa bilangan real. Keluaran dari program adalah suhu dalam Fahrenheit.
Modul Ke-2 - Hal 35
Modul Algoritma Pemrograman
EVALUASI Pilihlah salah satu jawaban yang Anda anggap paling benar 1.
Ciri-ciri bahasa terstruktur di bawah ini adalah, kecuali : A. Berurutan B. Tidak Ada Loncatan C. Memiliki Blok Yang Jelas D. Satu pintu masuk dan satu pintu keluar pada blok pengulangan.
2.
Deklarasikan manakah yang tidak diizinkan oleh compiler Pascal ? A. type X = string[1]; B. type X = array[1..50000]of char; C. type X = array[-1000..1000] of longint; D. type X = array[0..30000]of longint;
3.
Cara yang benar untuk mendeklarasikan string adalah : A. var a : string of char; B. var a : string[1..255]; C. var a : string[255]; D. var a : string[255] of char;
4.
Manakah yang mendeklarasikan A sebagai konstanta bertipe dengan tepat ? A. const A = 350; B. const B = 350; A = B * 10; C. const A : Real = 350; D. const A = integer (350);
5.
Manakah yang benar dari deklarasi dibawah ini : A. program a; const k = 10; B. program pqr; const r := 8;
C. program abc; const p : 6; D. program satu; const x > y;
Modul Ke-2 - Hal 36
Modul Algoritma Pemrograman
6.
Deklarasi manakah yang tidak benar A. var E : set of char; B. var E : set of (sapi, kelinci, domba, ayam); C. var E : set of (‘S’,..,’Z’); D. var E : set of 1 .. 15;
7. Layout program dalam Pascal yang benar adalah A. program [identifier]; begin type [identifier]; var [identifier]; [program utama]; end;
C. program [identifier]; var [identifier]; begin [program utama]; end; procedure [identifier]; begin end.
B. begin end.
D. var [identifier]; Begin [program utama]; end;
8.
Berikut adalah pernyataan yang benar tentang identifier, KECUALI …. A.
karakter pertama dari suatu identifier harus berupa huruf
B. hanya huruf, angka, dan underscore(_) yang diperbolehkan untuk dijadikan unsure pembentuk identifier. C. panjang karakter dari suatu identifier bebas tetapi hanya 40 karakter pertama yang signifikan. D. tanda titik koma dipergunakan untuk membentuk qualified identifier
9.
Daftar manakah yang hanya berisi operator dalam bahasa Pascal ? A.
mod, div, or, in
B.
not, and, mod, for
C.
read, eof, write, writeln
D.
array, record, set, object.
Modul Ke-2 - Hal 37
Modul Algoritma Pemrograman
10.
Var n, m : integer; begin n := 16 shl 4; m := 16 shr 4; end. Berapakah nilai n setelah program diatas selesai dieksekusi ? A. 1
C. 256
B.
D.
16
64
11. Dari program pada soal no. 10, berapakah nilai m setelah selesai dieksekusi
12.
A. 1
C. 256
B.
D.
16
64
Var a, b : integer; begin a := 10; b := 25; a := a xor b; b := a xor b; a := a xor b; writeln(a,’ ‘,b); end. Output program diatas adalah :
13.
A. 10 25
C. 10 10
B. 25 25
D. 25 10
Bila D, M, Y bertipe integer dan D = 2, M = 9, Y = 86, apakah output dari writeln( D and M or Y ) ? A. true
C. 86
B. 22
D.
9
14. var r : real; begin r := 147.0; writeln(r:10:5); end; Apa tampilan program diatas ? A. 00147
C. 147.0000
B. 0147.0
D.
147.00000
Modul Ke-2 - Hal 38
Modul Algoritma Pemrograman
15. Diketahui program berikut ini var U : integer; begin U := 3; Writeln(‘Umur saya ‘,U:3,’ tahun’); End. Apakah output program diatas A. Umur saya 3 tahun
C. Umur saya
3 tahun
B. Umur saya 3.00 tahun
D. Umur saya 003 tahun
16. Bagaimana cara Anda mengetikkan input untuk program berikut ini ? var Umur, Tinggi, Berat : real; begin write(‘Masukkan umur, tinggi dan berat badan Anda : ‘); readln(Umur,Tinggi, Berat); End. A. 16, 170, 61.5
C. 16 170 61.5
B. 16; 170; 61.5
D. 16 170 61,5
17. var a : real; begin a:= 34.555; writeln(a:4:2); end; Apa tampilan program diatas ? a.
34.55
C. 34.56
C. 3455
D. 34.6
Jawablah pertanyaan dibawah ini ! 18. Jika diketahui y adalah variabel bertipe real, dari nilai-nilai berikut, manakah yang
dapat diberikan pada y ?
A. .3
D. $5.0
B. 1E2
E. -5E-5
C. 3E+4.2
F. 3,14
Modul Ke-2 - Hal 39
Modul Algoritma Pemrograman
19. Berapakah nilai variabel z pada program berikut ini Var x, y, z : byte; Begin x := 20; y := 20; z := x * y; End. 20.
Berapakah nilai variabel cek pada program berikut ini const R = 0.01; Var a, b, c , d : real; cek : Boolean; Begin a := 2.0; b := 3.0; c := 5.0; d := a * R + b * R + c * R; cek := ( d = 0.2); End.
21.
Modul Ke-2 - Hal 40
Modul Algoritma Pemrograman
22.
23 .
program kata; var a, b, c : integer; begin a := 10.4; b := 20; c := a*b; writeln(‘hasil perhitungan : ‘); writeln(A,’+’,B,’=’,C:5:0); write(C:8:2); end.
a. Pesan
kesalahan apakah yang terjadi apabila program diatas
dieksekusi. b. Bagaimana deklarasi variabel yang benar apabila bagian statemen tidak berubah. c. Apabila program sudah benar, apakah output dari program diatas
Umpan Balik dan Tindak Lanjut Cocokkanlah jawaban anda dengan Kunci Jawaban Evaluasi yang terdapat di bagian lampiran modul ini dan hitunglah jumlah jawaban anda yang benar. Kemudian gunakan rumus di bawah ini untuk mengetahui tingkat penguasaan anda dalam materi Modul ke-1.
Modul Ke-2 - Hal 41
Modul Algoritma Pemrograman
Rumus :
Tingkat penguasaan =
Jumlah jawaban anda yang benar × 100% 25
Arti tingkat penguasaan yang anda capai : 90% - 100% = baik sekali 80% - 89% = baik 70% - 79% = sedang - 69% = kurang Kalau Anda mencapai tingkat penguasaan 80% atau lebih, Anda dapat meneruskan ke modul berikutnya. Bagus ! Tetapi kalau nilai Anda dibawah 80%, Anda harus mengulang Modul ke-1 terutama yang belum Anda kuasai.
Modul Ke-2 - Hal 42
Modul Algoritma Pemrograman
BAHAN BACAAN
Brassard, Gilles, and Bratley, Paul, 1996, Fundamentals of Algorithmics, Prentice Hall, Englewood Cliffs, New Jersey. Budiyanto, Alex, 2003, Pengantar Algoritma dan Pemrograman, www.Ilmu Komputer.com Jogiyanto H.M, 1995, Turbo Pascal versi 5.0, jilid 1, Andi Offset, Yogyakarta. Munir, Rinaldi, Ir, dan Lidya, Leoni, Ir., 1998, Algoritma dan Pemrograman I, Informatika, Bandung. Pranata, Antony, 2000, Algoritma dan Pemrograman, J & J Learning, Yogyakarta.
Modul Ke-2 - Hal 43
Modul Algoritma Pemrograman
LAMPIRAN
KUNCI JAWABAN FORMATIF 1.
B
2.
B
3.
C
4.
C
5.
A
6.
C
7.
B
8.
D
9.
A
10. C 11. A 12. D 13. C 14. D 15. C 16. C 17. C 18. B DAN E 19. 144 (Karena Byte Hanya Bisa Menampung Nilai 0 Sampai 255) 20. FALSE 21. Isi variabel gol = ‘AB’ yang merupakan tipe string sedangkan type data yang dipesankan adalah bertype char 22. isi variabel a tidak sesuai dengan nilai a yang sudah dikonstankan. 23 a. Terdapat pesan kesalahan type mismatch, karena isi variabel tidak sesuai dengan deklarasi type data yang dipesankan b.
type variabel a dan c diubah menjadi type data real
c.
hasil perhitungan : A+B= 280 280.00
Modul Ke-2 - Hal 44
Modul Algoritma Pemrograman
Modul Ke-2 - Hal 45