SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
DIKTAT ALGORITMA DAN PEMROGRAMAN 1
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
0
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Pertemuan 1 ALGORITMA DAN PEMROGRAMAN I 1. Konsep Algoritma, Algoritma berasal dari kata algoris dan ritmis yang pertama kali diungkapkan oleh Abu Ja’far Mohammad Ibn Musa Al Khowarizmi (825M) dalam buku Al-Jabr Wa-al Muqobla. Dalam pemrograman algortima berarti suatu metode khusus yang tepat dan terdiri dari serangkaian langkah-langkah yang terstruktur dan dituliskan secara sistematis yang akan dikerjakan untuk menyelesaikan masalah dengan bantuan komputer.
Secara sederhanya algoritma dapat didefinisikan urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis. Kata logis berarti bahwa nilai kebenarannya harus dapat ditentukan, benar atau salah. Langkah-langkah yang tidak benar dapat memberikan hasil yang salah. Contoh : Misalkan terdapat dua buah gelas, gelas A dan gelas B. Gelas A berisi air berwarna merah dan gelas B berisi air berwarna biru, kita ingin menukartan isi air kedua gelas tersebut, sehingga gelas A berisi air berwarna biru dan gelas B berisi air berwarna merah.
Algoritma Tukar_Isi_Gelas 1. Tuangkan air dari gelas A ke gelas B
2. Tuangkan air dari gelas B ke gelas A
A
B
Algoritma diatas tidak menghasilkan pertukaran yang benar, langkah-langkahnya tidak logis, karena yang terjadi bukan pertukaran tetapi percampuran antara air di gelas A dengan air di gelas B. Sehingga algoritma Tukar_Isi_Gelas diatas salah. Dari permasalahan diatas algoritma yang benar adalah bahwa untuk menukarkan isi air pada gelas A dengan isi air pada gelas B maka dibutuhkan sebuah gelas bantuan yang dipakai untuk menampung salah satu air dalam gelas tersebut misalkan gelas C. Sehingga algoritma yang benar dari permasalah diatas adalah : 1
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Algoritma Tukar_Isi_Gelas 1. Tuangkan air dari gelas A ke gelas C 2. Tuangkan air dari gelas B ke gelas A 3. Tuangkan air dari gelas C ke gelas B Keadaan Awal Sebelum Pertukaran
A
B
C
Proses Pertukaran : 1.
Tuangkan Air dari Gelas A ke Gelas C
A 2.
C
Tuangkan Air dari Gelas B ke Gelas A
A 3.
B
B
C
Tuangkan Air dari Gelas C ke Gelas B
A
B
C
Keadaan setelah pertukaran
A
B
C
2
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Sekarang algoritma Tukar_Isi_Gelas diatas sudah diperbaiki, sehingga isi air pada gelas A dan isi air pada gelas B dapat dipertukarkan dengan benar. Hubungan antara algoritma, masalah dan solusi dapat digambarkan sebagai berikut : Tahap pemecahan masalah adalah Proses dari masalah hingga terbentuk suatu algoritma.
Tahap
implementasi
adalah
proses
penerapan
algoritma
hingga
menghasilkan solusi. Solusi yang dimaksud adalah suatu program yang merupakan implementasi dari algoritma yang disusun. Ciri algoritma yang baik adalah : a. Algoritma memiliki logika perhitungan atau metode yang tepat dalam menyelesaikan masalah. b. Menghasilkan output yang tepat dan benar dalam waktu yang singkat. c. Algortima ditulis dengan bahasa yang standar secara sistematis dan rapi sehingga tidak menimbulkan arti ganda (ambiguous). d.
Algortima
ditulis
dengan
format
yang
mudah
dipahami
dan
mudah
diimplementasikan ke dalam bahasa pemrograman. e. Semua operasi yang dibutuhkan terdefinisi dengan jelas. f. Semua proses dalam algoritma harus berakhir setelah sejumlah langkah dilakukan.
3
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Pertemuan Ke II Pemrograman
I
Pendahuluan Hal
terpenting
dalam
menjalankan
komputer
adalah
program.
Dalam
pemrograman dikenal beberapa bahasa pemrograman, seperti juga manusia mengenal bahasa-bahasa yang digunakan untuk berkomunikasi. Manusia dalam berkomunakasi menggunakan kata atau karakter sedangkan komputer dengan kode 0 dan 1. Untuk mempermudah manusia berkomunikasi dengan komputer, maka diciptakan bahasa pemrograman. Dengan adanya bahasa pemrograman ini, bila manusia ingin berkomunikasi dengan komputer tidak harus menerjemahkan ke dalam 0 dan 1. Bila hal itu dilakukan betapa rumitnya suatu program. II
Istilah-Istilah Dasar a. Program Program adalah kata, ekspresi, pernyataan atau kombinasi yang disusun dan dirangkai menjadi satu kesatuan prosedur yang menjadi urutan langkah untuk menyesuaikan masalah yang diimplementasikan dengan bahasa pemrograman. Contoh : kalkulator, editor teks, editor gambar dll b. Bahasa Pemrograman Bahasa pemrograman merupakan prosedur atau tata cara penulisan program dalam bahasa pemrograman, terdapat dua faktor penting yaitu sintaksis dan semantik. Sintak adalah aturan-aturan gramatikal yang mengatur tata cara penulisan kata, ekspresi dan pernyataan sedangkan semantik adalah aturan-aturan untuk menyatakan suatu arti. Contoh : Write, Read c. Pemrograman Pemrograman merupakan proses mengimplementasikan urutan langkah-langkah
untuk menyelesaikan suatu masalah dengan bahasa pemrograman. d. Pemrograman Terstruktur Pemrograman Terstruktur merupakan proses mengimplementasikan urutan langkahlangkah untuk menyelesaikan suatu masalah dalam bentuk program yang memiliki rancang bangun yang terstruktur dan tidak berbelit-belit sehingga mudah ditelusuri,dipahami dan dikembangkan oleh siapa saja.
4
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
III Bahasa Pemrograman Secara umum bahasa permrograman dibagi menjadi empat kelompok : a. Bahasa Aras Rendah (Low Level Language) Merupakan bahasa yang berorientasi pada mesin. Pemrogram dengan bahasa ini harus berpikir berdasarkan logika mesin berpikir, sehingga bahasa ini kurang fleksibel dan sulit dipahami. Contoh : Bahasa mesin, Bahasa rakitan (assembly) b. Bahasa Aras Menengah (Middle Level Language) Merupakan bahasa pemrograman yang menggunakan aturan-aturan gramatikal dalam penulisan ekspresi atau pernyataan dengan standar yang mudah dipahami manusia serta memiliki instruksi-instruksi tertentu yang langsung bisa diakses oleh komputer. Contoh : Bahasa C c. Bahasa Aras Tinggi (Hight Level Language) Merupakan bahasa pemrograman yang menggunakan aturan-aturan gramatikal dalam penulisan ekspresi atau pernyataan dengan standar bahasa yang langsung dapat dipahami oleh manusia. Contoh : Bahasa Pascal, Basic, COBOL d. Bahasa Berorientasi Objek (Object Oriented Programming) Dengan bahasa berorientasi objek kita tidak perlu menuliskan secara detail semua pernyataan dan ekspresi seperti bahasa aras tinggi, melainkan cukup dengan memasukkan kriteria-kriteria yang dikehendaki saja. Contoh : Delphi, Visual Basic, C++ Agar komputer memahami program yang disusun dengan bahasa pemrograman, maka dibutuhkan suatu penerjemah yaitu Interpreter dan Compiller. A. Interpreter Interpreter berasal dari kata to interpret yang berarti menerjemahkan atau mengartikan. Interpreter merupakan penerjemah bahasa pemrograman yang menerjemahkan instruksi demi instruksi pada saat eksekusi program. Pada saat penerjemahan interpreter akan memeriksa sintaksis (sintak program), semantik (arti perintah), dan kebenaran logika. Jika ditemukan kesalahan sintaksis (syntak error) maka interpreter akan menampilkan pesan kesalahan dan eksekusi program langsung terhenti.
5
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
B. Compiler Berasal dari kata to compile yang berarti menyusun, mengumpulkan atau menghimpun.Compiler
merupakan
penerjemah
bahasa
pemrograman
yang
menerjemahkan instruksiinstruksi dalam satu kesatuan modul ke dalam bahasa mesin (objek program),kemudian objek program akan mengalami linking yang berfungsi untuk menggabungkan modul-modul tersebut dengan modul-modul lain yang berkaitan seperti data tentang karakteristik mesin, file-file pustaka atau objek program lainnya yang berkaitan dengan objek lainnya menghasilkan file Executable program yang akan dieksekusi oleh komputer.
6
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Pertemuan Ke III Flowchart Flowchart Dalam structure English / struktur Indonesia digambarkan tahap-tahap penyelesaian masalah dengan menggunakan kata-kata (teks). Kelemahan cara ini adalah dalam penyusunan algoritma sangat dipengaruhi oleh tata bahasa pembuatnya, sehingga kadangkadang orang lain sulit memahaminya. Oleh sebab itu kemudian dikembangkan metode
yang
menggambarkan
tahap-tahap
pemecahan
masalah
dengan
merepresentasikan simbolsimbol tertentu yang mudah dimengerti, mudah digunakan dan standar. Salah satu penulisan simbol tersebut adalah dengan menggunakan flowchart. Flowchart terdiri dari dua macam yaitu :
1. Flowchart Program Bagan alir program adalah suatu bagan yang menggambarkan arus logika dari data yang akan diproses dalam suatu program dari awal sampai akhir. Bagan alir program merupakan alat yang berguna bagi programmer untuk mempersiapkan program yang rumit. Bagan alir terdiri dari simbol-simbol yang mewakili fungsi-fungsi langkah program dan garis alir (flow lines) menunjukan urutan dari simbol yang akan dikerjakan. 1.
Simbol Terminal, simbol yang digunakan untuk menyatakan awal atau akhir suatu program.
2.
Simbol Input/Output, simbol yang digunakan untuk menunjukkan operasi masukan atau keluaran
3.
Simbol Proses, simbol yang digunakan untuk menggambarkan proses pengolahan data
4.
Simbol Keputusan, simbol yang digunakan untuk menyatakan suatu pilihan berdasarkan suatu kondisi tertentu
5.
Simbol
persiapan
(Preparation),
simbol
yang
digunakan
untuk
memberikan nilai awal pada suatu variabel atau pencacah 6.
Simbol proses terdefinisi (predefined process symbol), simbol yang digunakan untuk proses yang detilnya dijelaskan terpisah, misal dalam bentuk subroutine
7.
Simbol Penghubung ke halaman lain, simbol yang digunakan untuk menghubungkan bagian diagram alir pada halaman yang berbeda
8.
Simbol Penghubung ke halaman yang sama, simbol yang digunakan untuk menghubungkan bagian diagram alir pada halaman yang sama
7
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
9.
Simbol Arah aliran, simbol yang digunakan untuk menunjukkan arah aliran proses
10.
Annotation
simbol,
simbol
yang
digunakan
untuk
memberikan
keterangan-keterangan untuk memperjelas simbol-simbol lain Contoh penggunaan flowchart program : Mulai
Baca Jam Kerja
Hitung Gaji = Jamkerja * Tarif
Tampilkan Gaji
Selesai
Gambar 3. Simbol-simbol flowchart program Pedoman membuat flowchart : 1. Flowchart dibuat dari atas ke bawah dimulai dari bagian kiri suatu halaman. 2. Kegiatan dalam flowchart harus ditunjukkan dengan jelas. 3. Kegiatan dalam flowchart harus jelas dimana akan dimulai dan dimana akan berakhir. 4. Kegiatan yang ada dalam flowchart digunakan kata yang mewakili pekerjaan. 5. Kegiatan dalam flowchart harus sesuai dengan urutannya. 6. Kegiatan yang terpotong dihubungkan dengan simbol penguhubung. 7. Simbol-simbol yang digunakan flowchart adalah simbol-simbol standar.
8
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Pertemuan Ke IV Statement Input/Output dan Komentar Statement adalah perintah untuk pengerjaan program pascal. Statement terletak di bagian deklarasi statement dengan diawali oleh kata cadangan BEGIN dan diakhiri dengan kata cadangan END. Akhir dari setiap statement diakhiri dengan titik koma [;]. Statement-statement dalam bahasa Pascal terdiri dari pernyataan yang berupa fungsi dan prosedur yang telah disediakan sebagai perintah standar Turbo Pascal.
1. Statement-statement yang digunakan untuk input/output. #/ Read/Readln [prosedur]. Perintah ini digunakan untuk memasukkan [input] data lewat keyboard ke dalam suatu variabel.
Sintaks : Read/Readln(x); (ingat, selalu diakhiri dengan titik koma [;]). Keterangan : x = variabel. Read = pada statement ini posisi kursor tidak pindah ke baris selanjutnya. Readln = pada statement ini posisi kursor akan pindah ke baris selanjutnya setelah diinput.
#/ Readkey [fungsi]. Untuk pembacaan sebuah karakter dari keyboard. Tipe data yang dihasilkan adalah char. Sintaks : ReadKey;
# Write/Writeln [prosedur]. Digunakan untuk menampilkan isi dari suatu nilai variabel di layar. Sintak : Write/Writeln(x); Keterangan : x = variabel. Write/Writeln = Statement ini digunakan untuk mencetak variable ke dalam monitor. Perbedaan antara Write dengan Writeln adalah : Pada Write mencetak variable tanpa membuat line baru di akhir variable, sedangkan Writeln mencetak variable dan membuat line baru setelah variable.
Contoh : Write ('http://wahyukodar.com'); write ('web pribadinya Wahyu'); 9
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Maka setelah kode di atas dicompile dan dirun, menghasilkan output : Contoh lain : Writeln ('http://wahyukodar.com'); write ('web pribadinya Wahyu');
DEFINISI KOMENTAR Komentar adalah suatu tulisan pada program yang tidak berarti apa-apa bagi komputer , tetapi sangat berguna bagi orang, karena bertindak sebagai dokumentasi. Kenapa dalam penulisan program perlu Komentar ? Alasannya : Mungkin hari ini, atau besok pagi Anda masih ingat dan memahami program yang Anda buat, TAPI…seminggu , sebulan , setahun kemudian Anda sudah lupa….ya kan??? Nah….itulah pentingnnya komentar dalam penulisan progam …. Truss…bagaimana penulisan KOMENTAR dalam progam pascal ya…..????? Kira2 sulit nggak nich ????? Dalam bahas pascal penulisan komentar sangatlah mudah….. Suatu komentar dalam pascal hanya diawali dan diakhiri dengan tanda { dan } atau dengan tanda (* dan *) Untuk lebih jelasnya silakan lihat contoh berikut ini !!!! {---------------------------------------------------------} { Program : Latihan_komentar } { Progam ini untuk latihan saja } {} { Pemrogram : wahyu } { Di buat : 22 Februari 2010 } {---------------------------------------------------------} Dari contoh diatas dapat dituliskan berikut ini lhoooo…. ( *-------------------------------------------------------Program : Latihan_komentar Progam ini untuk latihan saja Pemrogram : wahyu Di buat : 22 Februari 2010 ------------------------------------------------------------*) Sekarang lengkapilah menjadi berikut ini…. 10
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
( *-------------------------------------------------------Program : Latihan_komentar Progam ini untuk latihan saja Pemrogram : Tulis namamu disini ya….!!!! Di buat : 22 Februari 2010 ------------------------------------------------------------*) Program komentar; Uses crt; Begin writeln(‘ Sekarang Belajar Menulis Komentar …..’); End.
11
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Pertemuan Ke V Tipe Data Macam-macam Tipe Data Bahasa Pascal kaya akan tipe data. Tipe data dalam bahasa pascal dibagi menjadi dua : 1. Tipe Ordinal 2. Tipe Real 5.1 Tipe Ordinal Adalah suatu tipe yang mempunyai jumlah kemungkinan data yang pasti. Yang termasuk dalam kategori tipe ini adalah : 1) Tipe bilangan bulat (integer) 2) Tipe Boolean 3) Tipe Char 5.1.1 Tipe bilangan bulat (integer) Tipe bilangan bulat (integer) terdiri atas : � Shortint � Integer � Longint � Byte � Word Perbedaan kelima tipe bilangan bulat tersebut terletak pada jangkauan nilai. Perhatikan tabel dibawah ini ! Tipe data Jankuan nilai Shortint -128 s.d. 127 Integer -32.768 s.d. 32.767 Longint -2.147.483.648 s.d. 2.147.483.647 Byte 0 s.d. 255 Word 0 s.d. 65.535 Modul Pascal – SMA PL St. Yosef Surakarta - 2010 © agwahyu.wordpress.com http://agwahyu.moodlehub.com/ 5.1.2 Tipe Boolean Boolean adalah suatu tipe data yang berisi nilai dengan kemungkinan hanya berupa : � False (nilai salah) � True (nilai benar) 5.1.3 Tipe Char Adalah tipe yang berisi sebuah karakter. 5.2 Tipe Real 12
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Adalah tipe yang berkaitan dengan bilangan real. Dalam Pascal terdapat 5 buah tipe real yaitu : 1. Real 2. Single 3. Double 4. Extended 5. Comp Perbedaan kelima tipe real tersebut adalah tergantung pada jangkauan nilai serta ketelitiannya Perhatikan tebel dibawah ini !
13
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Pertemuan Ke VI Variabel dan konstanta
KONSTANTA Konstanta adalah suatu nilai yang tetap berada di dalam program. 5.4 Macam-macam Konstanta 5.4.1 Konstanta Bilangan Bulat � Terdiri dari sederetan digit yang tidak mengandung pecahan. � Jangkauan nilainya tergantung pada tipe data (Integer, Shorint , Longint, Byte atau Word) Tipe Data Jankauan Nilai Ketelitian (digit) Real ± 2,9 x 10 -39 s.d. 1,7 x 10 38 11 s.d. 12 Singel ± 1,5 x 10 -45 s.d. 3,4 x 10 38 7 s.d. 8 Double ± 5,0 x 10 -324 s.d. 1,7 x 10 308 15 s.d. 16 Extended ± 5,0 x 10 -4951 s.d. 1,1 x 10 4932 19 s.d. 20 Comp ± 2 63 s.d. 263 -1 (-9,2 x 10 18 s.d. 9,2 x 10 18 19 s.d. 20
Menggunakan Konstanta dan Variabel Pada pemrograman pascal dikenal beberapa variabel, setiap variabel memiliki tipe data yang berbeda dan mempunyai sifat yang berbeda. Perhatikan tiga program berikut: 1. Uses crt; Begin Writeln(‘Ilmu Komputer Unila’); End. 2. Uses crt; Var kalimat : string; Begin Kalimat := ‘ Ilmu Komputer Unila’; Writeln(kalimat); End. 3. Uses crt; Const kalimat=’Ilmu Komputer Unila’; 14
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Begin Writeln(kalimat); End. Ketiga program diatas akan memiliki hasil yang sama. Namun terlihat bebrapa perbedaan pada penulisan programnya. Pada program 1, tulisan akan dicetak secara langsung pada layar. Pada program 2 di gunakan sebuah variabel, yaitu variabel kalimat yang bertipe string. Tipe string yaitu tipe data yang memuat nilai kumpulan karakter dan bukan nilai numerik ,atau dengan kata lain adalah nilai yang tidak dapat dilakuaknoperasi aritmatika seperti penjumlahan, pengurangan, perkalian, dan lainnya. Pada variabel tersebut lalu diisi sebuah nilai yaitu kata ‘Ilmu Komputer Unila’. Lalu perintah writeln mencetak nilai dari variabel kalimat. Tlisan yang tercetak sesuai dengan nilai variabel tersebut, maka bila nilai tersebut dirubah, hasil yang tercetak pun akan berubah. Pada program 3, nampak seperti serupa dengan program pertama. Namun perbedaannya, yang digunakan pada program ini bukan variabel. Bila diperhatikan memang hampir serupa, namun sesungguhnya terdapat perbedaan pada keduanya. Pada program ini yang digunakan adalah konstanta. Nilai dari konstanta tidak akan berubah, berbeda dengan variabel, hal ini akan dibahas pada pembahasan selanjutnya. http://blog.unila.ac.id/gozalli Gozalli Achmad Irawan - http://mulaigila.wordpress.com 5 Program 2 : Manipulasi variabel #1 Program berikut adalah program untuk mencetak sebuah nama sesuai dengan input user. Perhatikan program berikut: Program cetak_nama; Uses crt; Var nama : string; Begin
15
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Write(‘Masukkan nama anda: ‘); readln(nama); Writeln(‘Selamat datang ’,nama); Readln; End. Contoh output dari program diatas sebagai berikut: Masukkan nama anda: Mat Geblek Selamat datang Mat Geblek *) kata yang dicetak tebal adalah input dari user Perhatikan baris ke 5 pada sintaks readln(nama);. Sintaks readln() berfungsi untuk menunggu masukkan dari user hingga ditekan tombol Enter (¿). Masukkan tersebut akan disimpan kedalam variabel nama. #2 Selanjutnya perhatikan program berikut. Program ini adalah program untuk menentukan hasil sebuah perkalian. Program hasil_kali; Uses crt; Var input1,input2: integer; Hasil : longint; Begin Write(‘Masukkan bilangan pertama: ‘);readln(input1); Write(‘Masukkan bilangan kedua : ‘);radln(input2); Hasil:=input1*input2; Writeln(‘Hasil perkalian dari ‘,input1,’dan ‘,input2,’ adalah ‘,hasil); Readln; End. Pada program diatas terdapat dua buah variabel bertipe integer. Integer merupakan salah satu tipe data numerik. Pada program diatas user akan memasukkan dua nilai dan masingmasing nilai akan disimpan pada variabel input1 dan input2. Lalu pada baris tujuh program akan mengalikan kedua input lalu disimpan kedalam variabel hasil. http://blog.unila.ac.id/gozalli Gozalli Achmad Irawan - http://mulaigila.wordpress.com 6 Type dan Record Bila sebelumnya sudah diperkenalkan dengan variabel dan tipe-tipenya, maka selanjutnya kita
16
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
akan beranjak pada penggunaan type. Kita sudah mengenal beberapa tipe variabel seperti byte, integer, longint, real, char dan string. Untuk menggunakan sebuah variabel dengan tipe-tipe di atas maka kita harus mengetikkan nama tipe variabel dibelakang tanda double dot ( : ). Sesungguhnya beberapa jenis variabel diatas masih dapat digunakan dengan menambahkan beberapa parameter sesuai dengan jenis kebutuhan. Namun, terkadang kita akan menemui kesulitan ketika kita akan mendeklarasikan banyak variabel dengan tipe berbeda, untuk memudahkan kita mengingat tipe variabel tersebut maka disediakan sebuah fungsi untuk mendeklarasikan sebuah tipe variabel baru dengan tipe yang sudah ada sebelumnya. Yah, agak rumit penjelasannya, jadi mari langsung saja kita menuju ke TKP... _ Berikut adalah contoh penggunaan type: Program contoh_type; Uses crt; Type angka=integer; Kalimat=string; Var nama:kalimat; Lahir,umur:angka; Begin Write(‘Masukkan nama anda: ‘);readln(nama); Write(‘Masukkan tahun lahir anda: ‘);readln(lahir); Umur:=2010-lahir; Writeln(‘Selamat datang ‘,nama,’,sekarang umur anda ‘,umur,’ tahun’); End. Sekarang mari kita perhatikan program diatas, pada baris ke 3 dan 4, program akan membentuk sebuah tipe variabel baru bernama angka yang bertipe sama dengan integer, dan kalimat yang bertipe sama dengan string. Lalu pada deklarasi variabel berikutnya, untuk mendeklarasikan sebuah variabel maka dapat digunakan tipe yang baru yaitu kalimat dan angka.
17
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
18
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Pertemuan Ke VII Operator dan Operasi Aritmatika OPERATOR DAN OPERASI MATEMATIKA Operator adalah simbol atau kata yang digunakan dalam program untuk melakukan suatu operasi, seperti pejumlahan atau perkalian, memberikan nilai ke variabel, membandingkan kesemaan dua buah nilai. Nilai yang dioperasikan oleh operator bersama operand membentuk suatu ekspresi. Perhatikan gambar di bawah ini
Operator
2+6x7
Ungkapan
Operand Gambar 6.1.1 Operator, operand dan ungkapan
Pada pascal, operand dalam suatu ekspresi (ungkapan) dapat berupa : Konstanta Variabel Berikut ini adalah tabel operator yang digunakan dalam operasi matematika OPERATOR * / DIV MOD + -
ARTI PRIORITAS Perkalian 1 Pembagian (real) 1 Pembagian (bulat) 1 Sisa pembagian 1 Penjumlahan 2 Kurang 2 Tabel 6.1.1 Operator matematika
CONTOH 2 * 4 8 7 / 2 3.5 7 DIV 2 3 7 MOD 2 1 2+46 2 – 4 -2
Pada operasi perkalian ( * ), penjumlahan ( + ), dan pengurangan ( - ), hasil akan bertipe : Integer kalau semua operand bertipe integer. Real kalau satu atau kedua operand bertipe real. Contoh program operasi penjumlahan : PROGRAM jumlah ;
19
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
(*------------------------------------------------------------------------------------Berikut ini merupakan contoh untuk menunjukkan hasil operasi penjumlahan -------------------------------------------------------------------------------------*) USES Crt ; BEGIN Clrscr ; Writeln ( ‘ 4 + 2 = ‘, 4 + 2 ) ; Writeln ( ‘ 4.0 + 2 = ‘, 4.0 + 2) ; Writeln ( ‘ 4 + 2.0 = ‘, 4 + 2.0) ; Writeln ( ‘ 4.0 + 2.0 = ‘, 4.0 + 2.0) ; END.
Gambar 6.1.2 Contoh program operasi penjumlahan Hasil dari program diatas adalah : 4 4.0 4 4.0
+ + + +
2 2 2.0 2.0
=6 = 6.0000000000E+00 = 6.0000000000E+00 = 6.0000000000E+00
Gambar 6.1.3 Hasil program operasi penjumlahan Dari hasil diatas terlihat bahwa hasil penjumlahan bertipe INTEGER kalau kedua tipe operandnya berupa tipe INTEGER. Contoh program operasi perkalian: PROGRAM jumlah ; (*------------------------------------------------------------------------------------Berikut ini merupakan contoh untuk menunjukkan hasil operasi perkalian -------------------------------------------------------------------------------------*) USES Crt ; BEGIN Clrscr ; Writeln ( ‘ 2 * 2 = ‘, 4 + 2 ) ; Writeln ( ‘ 2.0 * 2 = ‘, 4.0 + 2) ; Writeln ( ‘ 2 * 2.0 = ‘, 4 + 2.0) ; Writeln ( ‘ 2.0 * 2.0 = ‘, 4.0 + 2.0) END. Gambar 6.1.4 Contoh program operasi perkalian
20
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Hasil dari program diatas adalah : 2 2.0 2 2.0
+ + + +
2 2 2.0 2.0
=4 = 4.0000000000E+00 = 4.0000000000E+00 = 4.0000000000E+00
Gambar 6.1.5 Hasil program operasi perkalian Dari hasil diatas terlihat bahwa hasil perkalian bertipe INTEGER kalau kedua tipe operandnya berupa tipe INTEGER. Operator MOD dapat digunakan untuk menentukan suatu bilangan bulat merupakan bilangan ganjil atau genap dengan melihat sisa pembagian bilangan bulat tersebut dengan bilangan 2. Jika sisanya nol berarti bilangan genap, kalau sisanya 1 berarti bilangan ganjil Untuk lebih jelasnya dapat dilihat pada contoh program dibawah ini:
PROGRAM operasiMOD ; (*------------------------------------------------------------------------------------Berikut ini merupakan contoh untuk menunjukkan hasil operasi MOD -------------------------------------------------------------------------------------*) USES Crt ; BEGIN Clrscr ; Writeln ( ‘ 6 MOD 3 = ‘, 6 MOD 3) ; Writeln ( ‘ 7 MOD 3 = ‘, 7 MOD 3) ; Writeln ( ‘ 8 MOD 3 = ‘, 8 MOD 3) ; Writeln ( ‘ 9 MOD 3 = ‘, 9 MOD 3) ; END. Gambar 6.1.5 Contoh program operasi MOD Hasil dari program diatas adalah : 6 7 8 9
MOD 3 = 0 MOD 3 = 1 MOD 3 = 2 MOD 3 = 0
Gambar 6.1.6 Hasil program operasi MOD 6.2 PRIORITAS OPERATOR Dalam suatu ekspresi terdapat lebih dari satu operator, maka dalam perhitungan diperlukan urutan berdasarkan prioritas. 21
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Berikut ini adalah tabel prioritas operator : OPERATOR * / DIV MOD + -
ARTI Perkalian Pembagian (real) Pembagian (bulat) Sisa pembagian Penjumlahan Kurang
PRIORITAS 1 1 1 1 2 2
Tabel 6.2.1 Prioritas Operator matematika Jika ingin mengubah urutan pengerjaan, maka dapat digunakan tanda kurung ( ). Contoh : (2 + 6 ) +*7 Untuk lebih jelasnya perhatikan contoh program dibawah ini :
PROGRAM prioritas ; (* -----------------------------------------------------------------------------------Berikut ini merupakan contoh program untuk menunjukkan urutan dalam pengerjaan ----------------------------------------------------------------------------------------*) USES Crt ; BEGIN Clrscr; Writeln ( 2 + 6 * 3 ) ; Writeln ( ( 2 + 6 ) * 3 ) ; END. Gambar 6.2.1 Prioritas Operator matematika Hasil program diatas adalah : 20 24 Gambar 6.2.2 Hasil program urutan dalam pengerjaan
Pertemuan Ke VIII dan IX Struktur Pemrograman 1. SEQUENTIAL/ RUNTUTAN 22
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Berfungsi mengontrol program sehingga berjalan secara berurutan. Program dibaca dari mulai perintah yang pertama dituliskan kemudian turun ke perintah selanjutnya demikian seterusnya sampai pada akhir perintah. Secara umum program akan dibaca oleh compailer secara terurut. Contoh : Program_Selisih_Jam; Uses crt; var j1,j2,m1,m2,d1,d2,B1,B2,J,M,S,Delta,sisa: integer; begin clrscr; write('Baca jam mulai =');readln(j1,m1,d1); writeln; write('Baca jam selesai =');readln(j2,m2,d2); B1:= 3600 * j1 + 60 * m1 + d1; B2:= 3600 * j2 + 60 * m2 + d2; Delta:= B2 - B1; J:= Delta div 3600; sisa:= Delta mod 3600; M:= sisa div 60; S:= sisa mod 60; write('Selisih jam =',J); writeln; write('Selisih menit =',M); writeln; 6 write('Selisih detik =',S);readln; end. Hasil Run program: Baca jam mulai = 3 23 29 Baca jam selesai = 4 30 27 Selisih jam = 1 Selisih menit = 6 Selisih detik =58 Catatan : Tanda (:= ) disebut sebagai Operator Penugasan. 2. SELECTION/ CONDITION Sistem kontrol ini memungkinkan programmer untuk membuat program yang dapat memilih satu langkah di antara sejumlah langkah untuk dikerjakan. 23
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Dalam Turbo Pascal disediakan 2 buah struktur kontrol seleksi, yaitu: a. Struktur IF……THEN….. b. Struktur CASE…OF… a). Struktur IF Merupakan struktur kontrol di mana suatu aksi dilaksanakan berdasarkan kondisi logikanya (benar atau salah). Bentuk umum : if(kondisi) then aksi ; {Jika kondisi benar maka aksi akan dilaksanakan dan sebaliknya } if(kondisi) then aksi1 else aksi2 ; {Jika kodisi benar maka aksi1 diaksanakan, jika kondisi salah maka aksi2 akan dilaksanakan} if(kondisi1) then aksi1 else if(kondisi2) then aksi2 else …………………….. if(kondisi-n) then aksi-n ; {Jika kondisi1 benar maka aksi1 dilaksanakan tanpa membaca kondisi2 dan seterusnya. Jika kondisi1 salah maka aksi2 dilaksanakan tanpa membaca aksi3 dan selanjutnya. Demikian seterusnya} if(kondisi1) then aksi1 ; if(kondisi2) then aksi2 ; ………………………. if(kondisi-n) then aksi-n ; {Masing-masing kondisi akan dibaca dan aksi akan tetap dilaksakan. Jadi masing-masing struktur terpisah satu dengan yang lain}
Contoh program : program_menghitung_akar_kwadrat: uses crt; var A,B,C:integer; x1,x2,D:real; begin clrscr; write('Baca koofisien:');readln(A,B,C);writeln; writeln(A,'x*x + (',B,') x +',C);
24
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
7 if A=0 then writeln('Bukan persamaan kwadrat') else begin D:=(B*B) - (4*A*C); writeln('Determinannya :',D:2:2);readln; if D>0 then begin writeln('Persamaan kwadrat mempunyai 2 akar yang berbeda'); x1:= (-B + sqrt(D))/(2*A); x2:= (-B - sqrt(D))/(2*A); writeln('Akar-akarnya adalah:',x1:2:2,'dan',x2:2:2); end else if D=0 then begin writeln('Persamaan kwadrat mempunyai akar yang sama' x1:= -B/(2*A); x2:= -B/(2*A); writeln('Akar-akanya adalah:',x1:2:2); end else writeln('Tidak memiliki akar riil'); end; readln; end.
Hasil Run Program : -Baca koofisien: 1 -4 4 1x*x + (-4) x +4 Determinannya :0.00 Persamaan kwadrat mempunyai akar yang sama Akar-akanya adalah:2.00 -Baca koofisien: 1 -5 6 1x*x + (-5) x +6 Determinannya :1.00 Persamaan kwadrat mempunyai 2 akar yang berbeda Akar-akarnya adalah:3.00dan2.00 -Baca koofisien: 1 3 4
25
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
1x*x + (3) x +4 Determinannya :-7.00 Tidak memiliki akar riil Program_Konversi_nilai: 8 Uses Crt; var Nilai : Byte; begin clrscr; write('Baca nilai :');readln(Nilai); if nilai>=80 then write('Nilai = A') else if nilai>=65 then write('Nilai = B') else if nilai>=41 then write('Nilai = C') else if nilai>=26 then write('Nilai = D') else write('Nilai = E'); readln; end. Hasil Run Program : Baca nilai : 90 Baca nilai :55 Nilai = A Nilai = C Baca nilai :75 Baca nilai :25 Nilai = B Nilai = E b). Struktur CASE…OF.. Merupakan peluasan dari struktur IF. Karena kalau dalam struktur IF hanya disediakan dua pilihan (berdasarkan kondisi logikanya) maka dalam struktur Case ..of dimungkinkan untuk memilih satu pilihan di antara banyak pilihan yang ada. Bentuk umumnya : Case var.pilih of atau Case var.pilih of Pilih1 : aksi1 ; pilih1 : aksi1 ; Pilih2 : aksi2 ; pilih2 : aksi2 ; ……………. ; ……………. ; pilih-n : aksi-n ; pilih-n : aksi n; elseaksi-n+1 end; end; Catatan : Ekspresi yang digunakan dalam statemen Case adalah yang mempunyai tipe ordinal yaitu dengan batas antara (-32768 s/d 32767). Sehingga tipe lain seperti integer yang bertipe longint, tipe string atau word tidak boleh
26
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
digunakan. Contoh program : Program_Konversi_nilai2; Uses Crt; Var Nilai : integer; begin Clrscr; write('Baca nilai =');readln(Nilai); Case Nilai of 0..25 : writeln('Nilainya = E'); 26..39 : writeln('Nilainya = D'); 40..64 : writeln('Nilainya = C'); 65..79 : writeln('Nilainya = B'); 80..100: writeln('Nilainya = A'); else writeln('Tidak ada nilai yang dimaksud'); 9 end;readln; end.
27
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Pertemuan Ke X Perulangan 3. PERULANGAN/ LOOPING/ REPETITION Dalam membuat suatu program kadang-kadang diinginkan agar program tersebut mampu memproses hal yang sama secara berulang-ulang sampai ditemukan suatu nilai tertentu yang diinginkan atau mencapai batas yang telah ditentukan. Untuk itu maka Turbo Pascal telah menyediakan suatu struktur perulangan yang memudahkan untuk melakukan proses tersebut, sehingga kodekode dalam program menjadi lebih sederhana. Ada beberapa struktur perulangan, yaitu : - Struktur FOR….DO…. - Struktur WHILE…DO…… - Struktur REPEAT…UNTIL…. a). Struktur FOR Ada 2 jenis struktur FOR, yaitu : - Ascendant (Naik) - Descendant (Turun) Naik Format :For count := awal to akhir do aksi/ blok aksi ; Catatan : - awal <= akhir - Variabel count akan naik satu setelah menyelesaikan aksi Turun Format :For count := awal downto akhir do aksi1/ blok aksi ; Catatan : - awal >= akhir - Variabel count akan turun satu setelah menyelesaikan aksi Struktur FOR hanya dpat digunakan pada cacah perulangan yang diketahui (berapa kali perulangan tersebut akan dilakukan). Contoh program : Program Latihan: Program Latihan 2: uses Crt; uses Crt; var N,i,j :integer; var N, I, j, data : integer; begin begin clrscr; clrscr; write('Baca nilai : ');readln(N); write(‘Baca nilai:’); for i:= 1 to N do readln(N);Data:=N; begin for i:=1 to N do for j:=1 to i do begin 28
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
write(i:3); for j:=1 to N do writeln; write(data:3); end; writeln; readln; data := data -1; 10 end. end; End. Hasil Run Program : Hasi Run Program : Baca nilai : 7 Baca nilai : 7 17 2266 333555 44444444 5555533333 666666222222 77777771111111 b). Struktur WHILE .. DO.. Format :While (kondisi) do Aksi/blok aksi Kondisi: Ekspresi Boolean Pengecekan untuk melakukan perulangan dilakukan pada awal proses dan perulangan akan dikerjakan selama kondisi benar. Oleh karena itu, perlu adanya suatu proses yang dapat mengontrol kondisi agar dapat menghentikan proses. Contoh program : uses crt; var i:integer; begin clrscr; write('Masukkan angka :');readln(i); while i<5 do begin write('Matematika UGM'); i:=i+1; end; readln; end. Hasil Run program : Masukkan angka :1
29
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Matematika UGMMatematika UGMMatematika UGMMatematika UGM Matematika UGM Keterangan : Program di atas akan dilaksanakan jika angka yang kita masukkan kurang dari atau sama dengan lima. Dan dalam program di atas yang bertugas menghentikan perulangan adalah proses i:= i+1; sebab jika tidak ada statement itu, apabila angka yang kita masukkan benar <= 5 maka program akan berulang sampai tak hingga banyak. Catatan : 11 Struktur perulangan while..do dapat digunakan untuk melakukan perulangan baik yang diketahui maupun yang tidak diketahui jumlah perulangannya. c). Struktur REPEAT..UNTIL.. Format :Repeat aksi/ blok aksi until (kondisi) ; (kondisi) di sini berupa Boolean. Perulangan dilakukan terus-menerus hingga diperoleh kondisi bernilai benar. Dalam hal inipun diperlukan adanya kondisi yang dapat mengontrol program agar program dapat berhenti namun berbeda dengan while do yang kontrolnya ditempatkan pada awal proses, maka repeat until kontrolnya diletakkan pada akhir proses. Contoh program : PROGRAM CONTOH_REPEAT; Uses crt; var n,tot,x: integer; Mean: real; begin clrscr; tot:=0; n:=0; write ('Baca data :');readln(x); repeat tot:= tot + x; n:= n + 1; write('Data lagi :');readln(x); until x=0;
30
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
end. Hasil Run Program : Baca data :12 Data lagi :3 Data lagi :4 Data lagi :5 Data lagi :0 {setelah dimasukkan nol maka pembacaan akan berhenti dan akan kembali ke menu awal}
31
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Pertemuan XI Dan XII Prosedur dan Fungsi Prosedur Prosecure adalah suatu program terpisah dalam blok sendiri yang berfungsi sebagai subprogram (program bagian). Prosedur diawali dengan kata cadangan Procedure di dalam bagian deklarasi prosedur. Prosedur dipanggil dan digunakan di dalam blok program yang lainnya dengan menyebutkan judul prosedurnya. Prosedur banyak digunakan pada program yang terstruktur, karena: 1. Merupakan penerapan konsep program modular, yaitu memecah-mecah program yang rumit menjadi program-program bagian yang lebih sederhana dalam bentuk prosedur-prosedur. 2. Untuk hal-hal yang sering dilakukan berulang-ulang, cukup diruliskan sekali saja dalam prosedur dan dapat dipanggil atau dipergunakan sewaktu-waltu bila diperlukan. Contoh1 prosedur tanpa acuan Procedure Hitung; Var x,y:real; Begin Writeln(‘Nilai x: ‘); Readln(x); Y:=x*x; Writeln(‘Nilai Y= ‘, y:6;2); End; Begin Hitung; End.
Hasilnya Nilai x: 4 16 Contoh2 prosedur secara acuan 32
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Procedure Hitung(var a,b,c); Begin C:=a+b; Writeln(c); End; Var X,y,z:integer; Begin X:=2;Y;=3; Hitung(x,y,z); End. Hasilnya Prosedur Memanggil Dirinya Sendiri (Rekursi) Prosedur memanggil dirinya sendiri merupakan suatu prosedur yang memanggil atau menggunakan prosedur itu juga. Proses dari suatu program bagian yang memanggil dirinya sendiri dikenal dengan istilah rekusi. Contoh Var I:integer; Procedure Cetak; Begin Writeln(‘Pascal’); I:=i+1; If i<10 then cetak; End; Begin I:=1; Cetak; End. 33
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Bila program dijalankan, maka prosedur cetak akan diproses sebanyak 9 kali, yaitu dengan cara memanggil dirinya sendiri, hasilnya sebagai berikut. Pascal Pascal Pascal Pascal Pascal Pascal Pascal Pascal Pascal
Fungsi Fungsi hampir sama dengan prosedur, hanya fungsi harus dideklarasikan dengan tipenya. Tipe deklarasi ini menunjukkan tipe hasil dari fungsi. Tipe tersebut ditulis pada akhir deklarasi fungsi yang didahului dengn titik koma, sebagai berikut. Function namafungsi(daftar_parameter):type; Contoh Function hitung(var nilai:integer):Integer; Function pangkat (x,y:real):real
34
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Pertemuan Ke XIII Array TIPE DATA LARIK ( ARRAY ) Array atau larik terdiri atas bagian-bagian komponen yang memiliki tipe data sama. Dalam penyimpanannya array selalu mempunyai jumlah komponen yang tetap yang ditunjukkan oleh indeksnya. Dimana indeks ini harus merupada data dengan tipe ordinal artinya mempunyai urutan tertentu. Ada 2 cara untuk mendeklarasikan larik yaitu : 12 1. Sebagai tipe data baru Type Larik=Array[1..n] of datatype ; Var x : larik ; 2. Langsung sebagai variabel Var x : Array[1..n] of datatype ; Mengakses Data larik : Cara mengakses data larik adalah dengan menunjukkan : Nama_Larik[no.indeks] ; ke-1. Keuntungan : Menggunakan data larik adalah bahwa kita tidak akan kehilangan nilai dari suatu data. Kelemahan : Saat ditentukan suatu variable bertipe data array maka ia akan langsung mengambil tempat pada memory penyimpanannya sesuai dengan tipe data yang digunakan pada array, baik nantinya semua komponen pada array itu digunakan ataupun tidak. Dalam pemrograman kadang kita menghadapi masalah saat kita akan mendeklarasikan suatu matriks dengan adanya tipe data array maka masalah itu dapat diselesaikan, yaitu dengan menggunakan array dengan dimensi dua atau lebih yang kemudian dikenal dengan array dimensi banyak. Pendeklarasian : Type Nama_Array = Array[tipe-indeks1,tipe-indeks2] of tipe data ; Contoh : Type
35
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Matriks = Array[1..10, 1..10] of integer ; Berarti matriks itu akan mempunyai dimensi (10x10), namun itu hanya batas atas dari indeks yang dipesan dalam memori penyimpanan (di atas itu tidak akan disimpan), sedangkan apabila nantinya kita hanya memasukkan jumlah baris missal 2 dan jumlah kolom 2 itu boleh saja selama tidak lebih dari 10. Entry-entry dari matriks tersebut dapat kita panggil dengan mengetikkan Nama_Array[indeks] ; dari contoh diatas berarti Matriks[2,3] yaitu entry dari matriks pada baris kedua kolom ketiga. Contoh program : Program Rata_rata; Uses crt; type larik = array[1..10] of integer; var 13 x : larik; Tot, i, n : integer; mean : real; Begin clrscr; write('Masukkan jumlah data : '); readln(n); writeln; Tot := 0; for i:= 1 to n do begin write('Masukkan Data ke-',i,' ', 'Anda : '); readln(x[i]); Tot:= Tot + x[i]; end; writeln; mean:= Tot/n; write('Dan hasil perhitungan meannya : '); writeln(mean:8:2); readln; end. Hasil Run Program : Masukkan jumlah data : 5 Masukkan Data ke-1 Anda : 1
36
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Masukkan Data ke-2 Anda : 2 Masukkan Data ke-3 Anda : 3 Masukkan Data ke-4 Anda : 4 Masukkan Data ke-5 Anda : 5 Dan hasil perhitungan meannya : 3.00 Program Matriks : Program Baca_tulis_matriks ; uses crt; Var m,n,i,j : integer; x: Array[1..100,1..100] of integer; begin clrscr; write('Baca ukuran baris Matriks :',' ');readln(m); write('Baca ukuran kolom matriks :',' ');readln(n); writeln('Matriks anda berukuran',' ',m,'x',n,' '); for i:=1 to m do for j:=1 to n do begin write('Baca nilai :',' ');readln(x[i,j]); end; writeln; writeln('Matriksnya :',' '); for i:=1 to m do begin for j:=1 to n do write(x[i,j]:3); writeln; 14 end; writeln;writeln('Matriks tranposenya :',' '); for j:= 1 to n do begin for i:=1 to m do write(x[i,j]:3);writeln; end;writeln; writeln('Matriks anda berukuran',' ',n,'x',m,' '); readln; end.
37
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
Hasil Run Program : Baca ukuran baris Matriks : 2 Baca ukuran kolom matriks : 2 Matriks anda berukuran 2x2 Baca nilai : 1 Baca nilai : 2 Baca nilai : 3 Baca nilai : 4 Matriksnya : 12 34 Matriks tranposenya : 13 24 Matriks anda berukuran 2x2
38
SEKOLAH TINGGI MANAJEMEN DAN ILMU KOMPUTER MUSI RAWAS
DAFTAR PUSTAKA Abdul Kadir, 1991. Pemrograman Turbo PASCAL, Penerbit PT. Elex Media Komputindo, Jakarta Brookshear, J.G. 2004. Computer Science Suatu Pengantar. Erlangga, Jakarta. Bryon Goffried, 1986. Programming with PASCAL, Schaum Series, NewYork. David Harel, 1987. Algorithmics the Spirit of Computing. Addison- WesleyPublishing Company.Inc. USA. Hartono, P. 1990. Bahasa Pascal. PT. Elex Media Komputindo, Jakarta. Jogiyanto H.M., 1990. Turbo Pascal, Penerbit Andi Offset. Yogyakarta Muhammad Zarlis Cs. 1995 Pemrograman Pascal. Medan Muhammad Zarlis & Handrizal. 2007. Bahasa Pemrograman, Konsep &Aplikasi Dalam C++, USU Press. Medan Munir Rinaldi. 2002. Algoritma & Pemrograman Dalam Bahasa Pascal dan C, Informatika Bandung. Santosa, P.J. 1998. Dasar-dasar Pemrograman Pascal, Andi Offset.Yogyakar ta.
39