MODUL KULIAH STRUKTUR DATA UNIVERSITAS PUTRA INDONESIA YPTK PADANG

Ukuran: px
Mulai penontonan dengan halaman:

Download "MODUL KULIAH STRUKTUR DATA UNIVERSITAS PUTRA INDONESIA YPTK PADANG"

Transkripsi

1 MODUL KULIAH STRUKTUR DATA UNIVERSITAS PUTRA INDONESIA YPTK PADANG 1

2 BAHAN AJAR MATA KULIAH STRUKTUR DATA Tinjauan Mata Kuliah 1.1. Deskripsi Mata Kuliah Algoritma dan struktur data merupakan matakuliah yang mempelajari bagaimana membuat program terstruktur. Matakuliah praktikum dengan menggunakan bahasa pemrograman Pascal ini mempelajari materi array, record, prosedur, fungsi, sorting, searching dan file Kegunaan Mata Kuliah Algoritma dan struktur data memberikan manfaat kepada mahasiswa untuk dapat memahami lebih lanjut tentang pemrograman terstruktur. Dengan menggunakan bahasa pemrograman Pasal ini, mahasiswa bisa membuat program untuk memecahkan berbagai macam persoalan dalam kehidupan sehari-hari Tujuan Instruksional Umum Setelah menyelesaikan mata kuliah ini, mahasiswa diharapkan mampu membuat program terstruktur yang kompleks Susunan Bahan Ajar Bab I Array Bab II Record Bab III Prosedur Bab IV Fungsi Bab V Sorting Bab VI Searching Bab VII File 1.5. Petunjuk Bagi Mahasiswa 2

3 a. Sebelum mengikuti perkuliahan hendaknya mahasiswa telah membaca bahan ajar ini dan dapat diperkaya dengan sumber acuan lainnya yang relevan pada setiap pertemuan. b. Untuk memperkaya wawasan dan pengetahuan sangat dianjurkan penelusuran literatur khususnya materi algoritma dan struktur data melalui sumber bacaan dan internet. c. Mintalah petunjuk dari dosen jika ada hal yang belum terselesaikan, baik dalam diskusi kelompok maupun dalam diskusi kelas d. Kerjakan setiap tugas terstruktur yang diberikan pada setiap akhir kegiatan/pertemuan dengan baik. e. Perbanyaklah latihan mengerjakan soal, baik secara teori maupun langsung dipraktekan dalam komputer dengan menggunakan bahasa pemrograman Pascal. 3

4 BAB I A R R A Y A. Pendahuluan Deskripsi Singkat Bab ini akan mengemukakan bahasan tentang definisi array, deklarasi array, mengakses elemen array, array sebagai tipe data bentukan, array konstan, array sebagai parameter, array multidimensi. Relevansi Pembahasan pada bab ini sangat penting dipahami, karena materi array ini memberikan manfaat yaitu efisiensi program. Materi array sangat berkaitan dengan materi lainnya dalam sebuah pemrograman terstruktur, karena array dapat digunakan dan dikombinasikan dengan bahasan lain dalam sebuah program. Tujuan Instruksional Khusus Mahasiswa mampu membuat program dengan menggunakan array. B. Penyajian Bagi para pemrogram, efisiensi program merupakan hal utama yang harus diperhatikan, baik itu dalam hal kecepatan jalannya program, memori yang digunakan, banyak baris kode yang dituliskan dan juga ketepatan algoritma yang digunakan. Salah satu komponen yang harus dikuasai untuk memperoleh program yang baik adalah pengetahuan tentang array. 1) Definisi Array Array (larik) adalah sebuah variabel yang dapat menyimpan lebih dari satu nilai sejenis (memilikii tipe data sama). Hal ini berbeda dengan variabel biasa yang hanya mampu menampung satu buah nilai. Setiap 4

5 nilai yang disimpan di dalam array disebut dengan elemen array, sedangkan nilai urut yang digunakan untuk mengakses elemennya disebut dengan indeks array. Sebagai contoh, misalkan terdapat array A yang memiliki 10 buah elemen nilai yang bertipe integer, maka dapat dipresentasikan sebagai berikut : A[1] A[2] A[3] A[4] A[5] A[6] A[7] A[8] A[9] A[10] Nilai elemen array Indeks array Elemen array Gambar 1.1 Komponen Array (sumber :Rahardjo) Setiap elemen array di atas menyimpan nilai bertipe integer dan akan menempati alamat memori yang berbeda, hal ini akan menyebabkan array tersebut memiliki ukuran 40 byte, yang berasal dari 10 x 4. Nilai 10 menunjukkan banyaknya elemen array sedangkan nilai 4 merupakan ukuran dari tipe data integer (dalam 32 bit). 2) Deklarasi Array Sama seperti variabel lain, array juga dideklarasikan di dalam bagian deklarasi variabel. Bila akan didefinisikan sebagai tipe bentukan, maka array juga akan dideklarasikan di bagian definisi tipe (di bawah kata kunci type). Dalam bahasa Pascal, pendeklarasian array dilakukan dengan menggunakan kata kunci array dan tipe data yang akan disimpan di dalamnya, selai itu juga harus disertai dengan batas-batas indeksnya yang diapit oleh tanda bracket ([ ]). Berikut ini bentuk umum pendeklarasian array. NamaArray : array [Indeks Awal.. IndeksAkhir] of tipe data; Gambar 1.2 Bentuk Umum Pendeklarasian array(sumber:rahardjo) 5

6 Sebagai contoh, apabila kita ingin mendeklarasikan array dengan nama A yang berisi 10 buah elemen bertipe integer, maka kita harus mendeklarasikannya dengan cara berikut. A : array [1.. 10] of integer; Pada kode tersebut, indeks array diulai dari satu. Perlu diperhatikan bahwa bahasa Pascal berbeda dengan bahasa C yang indeks array-nya selalu dimulai dari nol. Pada bahasa Pascal, indeks array dapat dimulai dari bilangan berapapun. Selain itu, indeks array juga dapat bertipe karakter maupun tipe enumerasi. Berikut ini contoh-contoh kode yang dapat digunakan untuk mendeklarasikan 10 buah elemen array bertipe integer sebagai pengganti kode di atas. A1 : array [0.. 9] of integer; A2 : array [5.. 15] of integer; A3 : array [ a.. j ] of integer; A4 : arrat [ A.. J ] of integer; Dalam bahasa Pascal, tersedia dua buah fungsi yang dapat digunakan untuk mengambil indeks terendah dan tertinggi dari sebuah array, yaitu fungsi Low dan High. Adapun parameter dari kedua fungsi tersebut adalah nama array yang akan dicari indeksnya. Perhatikan contoh kode berikut. A: array [ ] of integer; terendah, tertinggi : integer; Begin terendah := Low (A); {akan menghasilkan nilai 1} tertinggi := High (A) {akan menghasilkan nilai 100}.. end. 3) Mengakses Elemen Array Setelah mengetahui cara pendeklarasian array, selanjutnya kita harus mengetahui bagaimana cara untuk memanipulasi array tersebut. Langkah pertama yang harus dilakukan adalah mengisikan nilai ke dalam elemen- 6

7 elemen array bersangkutan. Bentuk umum untuk pengisian elemen array adalah sebagai berikut. NamaArray [indeks] := nilai; Gambar 1.3 Bentuk Umum Pengisian Elemen Array(sumber:Rahardjo) Untuk lebih memahaminya, coba perhatikan contoh kode di bawah ini. A: array [1..100] of integer; Begin A[1] :=1; {mengisi elemen pertama dengan nilai 1} A[2] :=2; {mengisi elemen kedua dengan niali 2} A[3] :=3; {mengisi elemen ketiga dengan niali 3}... A[100] :=100; {mengisi elemen keseratus dengan nilai 100} end. Kode tersebut akan melakukan pengisian 100 elemen array dengan nilai 1 sampai 100 sehingga kode tersebut akan lebih sederhana apabila dituliskan dengan menggunakan struktur pengulangan seperti yang terlihat pada kode berikut. A: array [1..100] of integer; i : integer; Begin For i:= 1 to 100 do Begin A[1] := i; end; End. 4) Mengapa Harus Menggunakan Array Bagi seorang pemula, mungkin akan mucul pertanyaan mengapa kita perlu mendeklarasikan array? Untuk menjawab pertanyaan tersebut, coba perhatikan contoh kasus berikut. Apabila kita akan membuat program untuk menyimpan sekumpulan data, misalnya data-data hasil penelitian yang berupa bilangan, dimana jumlah dari data tersebut puluhan, ratusan atau bahkan ribuan, apakah akan menggunakan variabel sebanyak data yang ada? Jawabannya tentu 7

8 tidak, karena hal tersebut merupakan hal yang sangat tidak efisien. Sebagai contoh, asumsikan bahwa banyak data tersebut. N1, n2, n3, n4, n5, n6, n7, n8, n9, n10 : real; Begin Writeln( masukkan data ke-1 : ); readln(n1); Writeln( masukkan data ke-2 : ); readln(n2); Writeln( masukkan data ke-3 : ); readln(n3); Writeln( masukkan data ke-4 : ); readln(n4); Writeln( masukkan data ke-5 : ); readln(n5); Writeln( masukkan data ke-6 : ); readln(n6); Writeln( masukkan data ke-7 : ); readln(n7); Writeln( masukkan data ke-8 : ); readln(n8); Writeln( masukkan data ke-9 : ); readln(n9); Writeln( masukkan data ke-10 : ); readln(n10); End. Hal ini tentu akan merepotkan diri kita. Apabila dilihat, program di atas memang masih pendek karena datanya hanya 10, bagaimana bila ratusan ata bahkan ribuan? Untuk mengatasi masalah ini, seharusnya kita menggunakan array untuk menyimpan data-data tersebut sehingga program akan jauh lebih sederhana dan mudah dalam pengerjaannya. Berikut ini perbaikan program di atas apabila kita menampung data-datanya ke dalam sebuah array. Const max = 10; n : array [1.. max] of real; i : integer; begin for i:= 1 to max do writeln( Masukkan data ke-, i, : ); readln(n[i]); end. Apabila ternyata data berjumlah 100 atau 1000, maka kita hanya perlu mengganti nilai dari konstanta max di atas dengan nilai yang sesuai. Alasan seperti inilah yang menyebabkan kita perlu untuk menggunakan array. 8

9 5) Array Sebagai Tipe Data Bentukan Array juga dapat digunakan sebagai tipe data bentukan, yaitu dengan cara mendeklarasikannya di bagian definisi tipe data, yaitu bagian yang diawali dengan kata kunci type. Type Bilangan = array [ ] of integer; Vokal = array [1.. 5] of char; Setelah selesai mendefinisikan array tersebut, maka kita dapat menggunakannya untuk mendeklarasikan variabel lain di dalam program. Berikut ini contoh pendeklarasian variabel yang menggunakan tipe bentukan berupa array. X : bilangan; Vowel : vokal; Pada ontoh di atas kita mendeklarasikan variabel dengan nama x yang bertipe Bilangan, sedangkan variabel vowel bertipe vokal. Hal ini menyebabkan variabel tersebut juga dapat diperlukan sebagai array. Berikut ini contoh kode yang menunjukkan penggunaan variabel-variabel tersebut. Begin X[1[ := 1; X[2] := 2;... Vowel [1] := a ; Vowel [2] := i ;... End. 6) Array Konstan Nilai yang terkandung di dalam sebuah array dapat bernilai konstan, artinya nilai-nilai tersebut tidak dapat diubah. Untuk melakukan hal tersebut, kita harus mendeklarasikan array bersangkutan dengan kata kunci const. Berikut ini bentuk umum pendeklarasiannya. 9

10 Const NamaArray : array [indexawal.. indeksakhir] of tipe_data = Nila1, nilai2,...); Gambar 1.4 Bentuk Umum Pendeklarasian Array Konstan (sumber:rahardjo) Perlu diperhatikan bahwa banyaknya nilai konstan yang dituliskan diatas harus sesuai dengan banyaknya elemen array yang didefinisikan. Sebagai contoh, apabila kita ingin mendeklarasikan array dengan jumlah elemen 5, maka nilai konstan yang diisikan juga haruslah berjumlah 5. Perhatikan contoh kode berikut. Const A : array [1.. 5] of char = ( A, B, C, D, E ); Oleh karena array A di atas bersifat konstan, maka kita tidak dapat menggantikan nilainya dengan nilai lain, seperti yang ditunjukkan oleh kode di bawah ini. A [1] A [2] A [1] A [1] A [1] := V ; {SALAH, karena elemen A [1] selalu bernilai A } := W ; {SALAH, karena elemen A [2] selalu bernilai B } := X ; {SALAH, karena elemen A [3] selalu bernilai C } := Y ; {SALAH, karena elemen A [4] selalu bernilai D } := Z ; {SALAH, karena elemen A [5] selalu bernilai E } Hal ini menunjukkan bahwa array konstan nilainya hanya dapat dibaca, namun tidak untuk diubah. Agar lebih memahami konsepnya, perhatikan contoh implementasi dari array konstan berikut ini. Function HariSekarang : string; Const Hari : array[0..6] of string[6] = ( Minggu, Senin, Selasa, Rabu, Kamis, Jumat, Sabtu ); var thn, bln, hr, indekshari : word; begin getdate(thn, bln, hr, indekshari); HariSekarang := Hari [indekshari]; Pada contoh di atas kita membuat sebuah fungsi untuk mendapatkan nama hari sesuai dengan tanggal sekarang (hari ini). Berikut ini contoh program lain yang akan menunjukkan penggunaan array konstan. Program ArrayKonstan; Uses crt; 10

11 Const Bulan : array [1.. 12] of string = ( Januari, Februari, Maret, April, Mei, Juni, Juli, Agustus, September, Oktober, Nopember, Desember ); var nobulan : integer; begin clrscr; write( Masukkan nomor bulan : ); readln(nobulan); write( Nama bulan ke-, nobulan, adalah, Bulan[noBulan]); readln; end. Contoh hasil yang akan diberikan oleh program di atas adalah sebagai berikut. Masukkan nomor bulan : 3 Nama bulan ke-3 adalah Maret 7) Array Sebagai Parameter Pada kasus-kasus pemrograman tertentu kita juga dituntut untuk menggunakan array sebagai parameter sebuah prosedur ataupun fungsi. Hal ini sering kita jumpai pada saat kita akan melakukan pencarian maupun pengurutan dari sekumpulan data. Berikut ini contoh penggunaan array di dalam sebuah prosedur. Type Bilangan = array[1..100] of integer; Procedure inputarray[a:bilangan; N:integer); i : integer; Begin For i := 1 to N do Write ( masukkan elemen array ke-, i); readln(a[i]); Pada contoh di atas kita te;ah membuat prosedur yang memiliki parameter bertipe array. Prosedur tersebut akan digunakan untuk melakukan pengisian elemen array sebanyak N, dimana 1 N 100. Perlu diperhatikan bahwa array yang dilewatkan sebagai parameter ini harus dideklarasikan terlebih dahulu. Berikut ini contoh penggunaan array yang tidak diperbolehkan oleh kompiler. Procedure InputArray [A:array[1..100] of integer; N); {salah} 11

12 Berikut ini kode yang merupakan perbaikan dari kode sebelumnya. Procedure InputArray [A:array of integer; N); {benar} Untuk lebih memahaminya, perhatikan contoh program di bawah ini dimana kita akan menggunakan array sebagai parameter. Program ParamArray; Uses crt; Const max = 100;]type Bilangan = array [1.. max] of integer; Procedure InputArray[A:bilangan; N:integer); i:integer; Begin Writeln ( Memasukkan data : ); For i : 1 to N do Write( Masukkan nilai A[, i, ] : ); readln(a[i]); Procedure OutputArray (A:bilangan; N:integer); i:integer; begin writeln( Menampilkan data : ); for i : 1 to N do write ( A[, i, ] =, A[i]); end; var Arr:bilangan; count:integer; Begin Clrscr; Write ( Masukkan banyaknya elemen array : ); readln(count); Writeln; OutputArray (Arr, count); Readln; End. Contoh hasil yang akan diberikan dari program di atas adalah sebagai berikut. Masukkan banyaknya elemen array : 3 Memasukkan data : Masukkan nilai A[1] : 10 Masukkan nilai A[2] : 20 Masukkan nilai A[3] : 30 Menampilkan data : A[1] = 10 A[2] = 20 A[3] = 30 12

13 8) Array Multidimensi Sejauh ini kita baru membahas mengenai array berdimensi satu. Pada bagian ini kita akan mempelajari bagaimana cara mendeklarasikan dan memanipulasi data yang terdapat pada array multidimensi. Agar lebih mempermudah pembahasan, materi ini akan dibagi menjadi dua kelompok, yaitu array dua dimensi dan array tiga dimensi. 9) Array Dua Dimensi Array dua dimensi adalah array yang memiliki dua buah elemen bertipe array. Dengan kata lain, array dua dimensi memiliki dua buah subskrip, yang biasanya dipresentasikan dengan baris dan kolom. Untuk lebih memahami konsepnya, perhatikan terlebih dahulu gambar di bawah ini. baris Kolom Gambar 1.5. Array dua dimensi (sumber:rahardjo) Pada gambar di atas, array memiliki 3 buah baris dan 4 buah kolom, sehingga jumlah elemennya adalah 3x4 = 12. Perlu diketahui bahwa keadaan tersebut sebenarnya hanya merupakan keadaan logik yang bertujuan untuk mempermudah pemahaman array dua dimensi. Pada kenyataannya, pengalamatan memori di komputer dari array dua dimensi tetap akan dipresentasikan dengan sebuah deretan larik yang memanjang (tidak berbentuk baris dan kolom). Pendeklarasian array dua dimensi di dalam bahasa Pascal dilakukan melalui bentuk umum di bawah ini. NamaArray : array [1.. banyakbaris, 1.. banyakkolom] of tipe_data; 13

14 Sebagai contoh, apabila kita akan mendeklarasikan array dua dimensi dengan 3 buah baris dan 4 buah kolom dimana setiap elemennya bertipe integer, maka kita dapat menuliskan kode seperti berikut. Array2D : array [1.. 3, 1.. 4] of integer; Untuk melakukan pengaksesan terhadap elemen-elemennya, kita harus menuliskan indeks baris dan kolomnya. Sebagai contoh, apabila kita ingin mengisikan nilai 100 ke dalam elemen yang terdapat pada baris ke-2 kolom ke-3, maka kita harus menuliskannya sebagai berikut. Array2D [2, 3] : = 100; Berikut ini contoh program yang menunjukkan penggunaan array dua dimensi. Di sini kita akan membuat program yang dapat menjumlahkan dua buah matriks A dan B yang masing-masing berordo 2 x 3 (memiliki 2 baris dan 3 kolom). Program JumlahMatriks; Uses crt; Const Jbaris = 2; Jkolom = 3; Type Matriks23 = array [1.. Jbaris, 1.. Jkolom] of integer; A,B,C : Matriks23; j, k : integer; begin clrscr; {mengisikan matriks A} writeln ( Matriks A ); for j: = 1 to Jbaris do begin for k: = 1 to Jkolom do begin write( A[, j,,, k, ] = ); readln(a[j, k]); end; writeln; end; writeln; {mengisikan matriks B} writeln( Matriks B ); for j: = 1 to Jbaris do begin for k: = 1 to Jkolom do begin write( B[, j,,, k, ] = ); readln(b[j, k]); end; writeln; end; 14

15 writeln; {melakukan penjumlahan matriks A dan B sekaligus menampilkan hasilnya ke layar} writeln( Hail Penjumlahan ); for j: = 1 to Jbaris do begin for k: = 1 to Jkolom do begin C[j, k] : = A[j, k] + B[j, k]; write( C[, j,,, k, ] = ); readln(c[j, k]); end; writeln; end; readln; end. Contoh hasil yang akan diberikan oleh program di atas adalah sebagai berikut. Matriks A A[1, 1] = 1 A[1, 2] = 2 A[1, 3] = 3 A[2, 1] = 4 A[2, 2] = 5 A[2, 3] = 6 Matriks B B[1, 1] = 3 B[1, 2] = 2 B[1, 3] = 1 B[2, 1] = 6 B[2, 2] = 5 B[2, 3] = 4 Hasil Penjumlahan C[1, 1] = 4 C[1, 2] = 4 C[1, 3] = 4 C[2, 1] = 10 C[2, 2] = 10 C[2, 3] = 10 10) Array Tiga Dimensi Array tiga dimensi merupakan array yang memiliki tiga buah subskrip dan lebih kompleks apabila dibandingkan dengan array dua dimensi. Di sini, subskrip yang ada akan dipresentasikan dengan sumbu 15

16 x, y dan z atau panjang, lebar dan tinggi seperti yang ditunjukkan oelh gambar berikut. y Gambar 1.6. Array tiga dimensi (sumber : Rahardjo) x z Berikut ini bentuk umum yang digunakan untuk mendeklarasikan array tiga dimensi di dalam bahasa Pascal. NamaArray : array [1.. xmaks, 1.. ymaks, 1.. zmaks] of tipe_data; Gambar 1.7 Bentuk Umum Pendeklarasian Array Tiga Dimensi(sumber:Rahardjo) Sebagai contoh apabila kita ingin mendeklarasikan array yang memiliki panjang 2, lebar 3 dan tinggi 4 elemen bertipe integer, maka kita akan menuliskannya seperti di bawah ini. Array3D : array [1.. 2, 1.. 3, 1.. 4] of integer; Jumlah elemen yang terdapat di dalam array tersebut adalah 2 x 3 x 4 = 24. Sekarang apabila kita ingin mengisikan nilai 100 ke dalam elemen yang berada pada posisi panjang ke-2, lebar ke-3 dan tinggi ke-1, maka kita akan melakukannya melalui kode berikut. Array3D : [2, 3, 1] : = 100; Berikut ini adalah contoh yang akan menunjukkan cara pengaksesan elemen di dalam array 3 dimensi. Program AksesArray3D; Uses crt; Const xmaks = 2; ymaks = 2; zmaks = 2; 16

17 Type Array3D = array [1.. xmaks, 1.. ymaks,1.. zmaks] of integer; A: Array3D; i, j, k : integer; begin clrscr; {mengisikan nilai ke dalam array A} x := 1; for i := 1 to xmaks do begin for j := 1 to jmaks do begin for k := 1 to zmaks do begin A[i, j, k] := x; inc(x); end; end; end; {menampilkan isi yang terdapat dalam array A} for i := 1 to xmaks do begin for j := 1 to jmaks do begin for k := 1 to zmaks do begin write( A[, i,,, j,,, z, ] =, A[ i, j, k], ); end; end; writeln; end; readln; end. Hasil yang akan diberikan oleh program diatas adalah sebagai berikut: A[1, 1, 1] = 1 A[1, 1, 2] = 2 A[1, 2, 1] = 3 A[1, 2, 2] = 4 A[2, 1, 1] = 5 A[2, 1, 2] = 6 A[2, 2, 1] = 7 A[2, 2, 2] = 8 C. Penutup Array merupakan sebuah variabel yang dapat menyimpan lebih dari satu nilai yang memiliki tipe data sama. Hal ini berbeda dengan variabel biasa yang hanya mampu menampung satu buah nilai. Setiap nilai yang disimpan di dalam array disebut dengan elemen array, sedangkan nilai urut yang digunakan untuk mengakses elemennya disebut dengan indeks array. 17

18 Apabila kita akan membuat program untuk menyimpan sekumpulan data, misalnya data-data hasil penelitian yang berupa bilangan, dimana jumlah dari data tersebut puluhan, ratusan atau bahkan ribuan, apakah akan menggunakan variabel sebanyak data yang ada? Jawabannya tentu tidak, karena hal tersebut merupakan hal yang sangat tidak efisien. Penggunaan array dalam program akan membuat program lebih efisien dan mudah dipahami. 1) Pertanyaan (a) Buat program dengan menggunakan array untuk menginput 10 nilai, bandingkan dan tampilkan nilai terbesar. (b) Buat program dengan menggunakan array konstan untuk memasukkan nomor bulan dan menampilkan nama bulan. 2) Umpan Balik dan Tindak Lanjut Untuk menguasai materi ini, sebaiknya anda membuat ringkasan materi tentang array dan membuat beberapa program dengan menggunakan array. Jawab pertanyaan di atas dengan langsung membuat program di komputer. Jalankan program tersebut sampai benar. Hapus kembali listing program yang sudah benar dan buat kembali program tersebut, dan jalankan. Kalau tingkat kesalahan pada pembuatan program sudah kecil, anda dapat melanjutkan materi berikutnya. Kalau program belum jalan, perbaiki terus sampai program tersebut benar dan jalan. 18

19 3) Kunci Jawaban Jawaban a program nilai_terbesar; const besar=10; var n:array [1.. besar] of real; i:integer; max:real; begin for i:= 1 to besar do begin write('masukkan data ke-',i,':');readln(n[i]); if (n[i])>max then max:=(n[i]); end; write('nilai tebesar :',max:2:0); readln end. Jawaban b program nama_bulan; const bulan:array[1..12] of string=('januari','februari','maret','april','mei','juni', 'Juli','Agustus','September','Oktober','Nopember','Desember'); var nobulan:integer; begin write('masukkan nomor bulan :');readln(nobulan); write('nama bulan ke-', nobulan,' adalah ', bulan[nobulan]); readln; end. Daftar Pustaka Jurusan Informatika Bahan Ajar Pemrograman 2. Hibah Pengajaran PHK A1 Universitas Negeri Gorontalo Kadir, Abdul Pemrograman Pascal Buku 1. Yogyakarta: Andi Offset. Munir, Rinaldi Algoritma dan Pemrograman dalam bahasa Pascal dan C Edisi 3. Bandung: Informatika. Rahardjo, Budi Teknik Pemrograman Pascal. Bandung:Informatika 19

20 BAB II R E C O R D A. Pendahuluan Deskripsi Singkat Bab ini akan mengemukakan bahasan tentang definisi record, deklarasi record, mengakses field, penugasan antar record, record dalam record, pernyataan with, array record. Relevansi Pembahasan pada bab ini sangat penting dipahami, karena materi record ini memberikan manfaat bagi pemrogram untuk membuat program yang menggunakan data yang terdiri dari beberapa data den berlainan tipe. Materi record sangat berkaitan dengan materi lainnya dalam sebuah pemrograman terstruktur, terutama dengan materi array. Tujuan Instruksional Khusus record. Mahasiswa mampu membuat program aplikasi dengan menggunakan B. Penyajian 1) Definisi Record Record adalah jenis tipe data terstruktur yang berisi beberapa data, yang masing-masing dapat berlainan tipe. 2) Mendeklarasikan Record Suatu tipe record dideklarasikan dengan bentuk sebagai berikut : RECORD Daftar_field_1 : tipe_1; Daftar_field_2 : tipe_2;... daftar_field_n : tipe_n; END Gambar 2.1 Pendeklarasian Record (sumber:kadir) 20

21 Masing-masing daftar_field dapat berupa satu atau beberapa nama pengenal dan masing-masing dinamakan field. Bila daftar_field berisi lebih dari satu field, antar field perlu dipisahkan dengan koma. Masing-masing tipe dapat berupa tipe data apa saja termasuk array. Berikut contoh pendeklarasian record : Type RecBarang = Record Nama : String; Kualitas : Char; Harga : LongInt Barang : RecBarang; Dengan mendeklarasikan seperti di atas, Barang akan mengandung tiga buah field, yaitu : - Nama, - Kualitas, - Harga. 3) Cara Mengakses Field Field dari suatu record diakses dengan bentuk : iabel.field Sebagai contoh : Gambar 2.2 Mengakses Field(sumber:Kadir) Barang.Nama Berarti field Nama dari variabel record bernama Barang. Contoh penugasan nilai ke field tersebut : Barang.Nama := Ubin TISKA 20x20 ; Dengan cara seperti di atas, field Nama dari record Barang berisi string Ubin TISKA 20x20. Isi dari suatu field ditampilkan dengan menggunakan Write atau Writeln. 21

22 Contoh : Writeln (Barang.Nama); Merupakan perintah untuk menampilkan isi field Nama dari record Barang. Contoh program yang memberikan gambaran pendeklarasian record, pengisian terhadap field-field serta menampilkan isi masing-masing field dapat dilihat di bawah ini. Program Rec1; Uses crt; Type RecBarang = Record Nama Kualitas Harga : String[25]; : Char; : LongInt Barang : RecBarang; {variabel bertipe record} Begin Clrscr; {Penugasan nilai terhadap field-field} Barang.Nama := Ubin TISKA 20x20 ; Barang.Kualitas := A ; Barang.Harga := 14000; {menampilkan isi field} writeln ( Nama Barang :, Barang.Nama); writeln ( Kualitas :, Barang.Kualitas); writeln ( Harga :, Barang.Harga); Readln End. Hasil program : Nama Barang : Ubin TISKA 20x20 Kualitas : A Harga : ) Penugasan Antar Record Jika record R1 dan R2 bertipe sama dan masing-masing memiliki F1, F2, dan F3, maka penugasan : R1 := R2; 22

23 diperkenankan. Pernyataan di atas merupakan penyederhanaan dari sederetan pernyataan berikut : R1.F1 := R2.F1; R1.F2 := R2.F2; R1.F3 := R2.F3; Untuk lebih jelasnya, tulislah program berikut dan cobalah menjalankannya. Program Rec2; Uses crt; Type RecBarang = Record Nama Kualitas Harga : string[25]; : car; : longint Barang1, Barang2 : RecBarang; {variabel bertipe record} Begin Clrscr; {penugasan nilai terhadap field-field} Barang1.Nama := Ubin TISKA 20x20 ; Barang1.Kualitas := A ; Barang1.Harga := 14000; {menyalin record} Barang2 := Barang1; Menampilkan isi field} Writeln ( Nama Barang :, Barang2.Nama); Writeln ( Kualitas :, Barang.Kualitas); Writeln ( Harga :, Barang.Harga); Readln End. Dengan adanya penugasan Barang2 := Barang1; maka semua field pada record Barang2 akan berisi recrod Barang1. Hasil dari program di atas : Nama Barang : Ubin TISKA 20x20 Kualitas : A Harga :

24 5) Record Di Dalam Record Mungkin saja sebuah record berisi record. Sebagai gambaran hal ini, perhatikan deklarasi berikut : RecTanggal = Record Tanggal, Bulan, Tahun :Integer RecPegawai = Record Nomor : LongInt; Nama : String [35]; TglLahir : RecTanggal; Gaji : LongInt Tampak bahwa tipe record bernama RecPegawai berisi record yang lain (RecTanggal). Hal yang menarik yang perlu diperhatikan adalah cara mengakses field seperti Tanggal, Bulan dan Tahun. Notasi yang diperlukan adalah sebagai berikut. Nama_variabel.TglLahir.Tanggal Nama_variabel.TglLahir.Bulan Nama_variabel.TglLahir.Tahun Praktekkan program berikut, untuk mencoba pembuatan record dengan bentuk sepert di atas. Program Rec3; Uses crt; Type RecTanggal = Record Tanggal, Bulan, Tahun : Integer RecPegawai = Record Nomor : LongInt; Nama : string [35]; TglLahir : RecTanggal; Gaji : longint DataPeg : RecPegawai; {variabel betipe record} Begin 24

25 Clrscr; Penugasan nilai terhadap field-fiedl} DataPeg.Nomor := 56789; DataPeg.Nama := Badu ; DataPeg.TglLahir.Tanggal := 24; DataPeg.TglLahir.Bulan := 12; DataPeg.TglLahir.Tahun := 1972; DataPeg.Gaji := ; {menampilkan isi field} Writeln ( Nama Pegawai :, DataPeg.Nama); Writeln ( Tanggal Lahir :, DataPeg.TglLahir.Tanggal, /, DataPeg.TglLahir.Bulan, /, DataPeg.TglLahir.Tahun); Readln End. Hasil dari program di atas adalah sebagai berikut : Nama Pegawai : Badu Tanggal Lahir : 24 / 12 / ) Pernyataan With Untuk menyederhanakan notasi seperti : DataPeg.TglLahir.Tanggal Turbo Pascal menyediakan pernyataan WITH. Bentuk pernyataan ini adalah sebagai berikut : With nama_record do pernyataan Gambar 2.3 Bentuk Umum Pernyataan With(sumber:Kadir) Pada bentuk ini, field-field yang terletak pada bagian pernyataan dapat disebutkan tanpa perlu menyertakan lagi nama record dan tanda titik. Untuk lebih jelasnya, perhatikan program berikut yang merupakan alternatif lain dari program di atas. 25

26 Program Rec4; Uses crt; Type RecBarang = Record Nama : String [25]; Kualitas : Char; Harga : LongInt Barang : RecBarang; {variabel bertipe record} Begin Clrscr; {penugasan nilai terhadap field-field} With Barang do Begin Nama := Ubin TISKA 20x20 ; Writeln ( Nama Barang :, Nama); Writeln ( Kualitas :, Kualitas); Writeln ( Harga :, Harga); Readln End. Bila suatu record memiliki record lain, pernyataan With dapat diikuti dengan with yang lain. Sebagai contoh, program di atas ditulis menjadi : Program Rec5; Uses crt; Type RecTanggal = Record Tanggal, Bulan, Tahun : Integer RecPegawai = Record Nomor : LongInt; Nama : string [35]; TglLahir : RecTanggal; Gaji : LongInt DataPeg : RecPegawai; {variabel bertipe record} Begin Clrscr; {Penugasan nilai terhadap field-field} With DataPeg do With TglLahir do Begin Nomor := 56789; Nama := Badu ; Tanggal := 24; 26

27 Bulan := 12; Tahun := 1972; Gaji := ; {menampilkan isi field} With DataPeg do With TglLahir do Begin Writeln ( Nama Pegawai :, DataPeg.Nama); Writeln ( Tanggal lahir :, DataPeg.TglLahir.Tanggal, /, DataPeg.TglLahir.Bulan /, DataPeg.TglLahir.Tahun) Readln End. Pernyataan seperti : With DataPeg do With TglLahir do Dapat ditulis menjadi : With DataPeg, TglLahir do dengan antar nama record dipisahkan oleh tanda koma. Contoh program : Program Rec6; Uses crt; Type RecTanggal = Record Tanggal, Bulan, Tahun : Integer RecPegawai = Record Nomor : LongInt; Nama : string [35]; TglLahir : RecTanggal; Gaji : LongInt DataPeg : RecPegawai; {variabel bertipe record} Begin Clrscr; {Penugasan nilai terhadap field-field} With DataPeg, TglLahir do Begin Nomor := 56789; Nama := Badu ; Tanggal := 24; Bulan := 12; 27

28 Tahun := 1972; Gaji := ; {menampilkan isi field} With DataPeg, TglLahir do Begin Writeln ( Nama Pegawai :, DataPeg.Nama); Writeln ( Tanggal lahir :, DataPeg.TglLahir.Tanggal, /, DataPeg.TglLahir.Bulan /, DataPeg.TglLahir.Tahun) Readln End. 7) Array Record Elemen suatu array juga bisa berupa record. Sebagai contoh dapat dilihat di bawah ini. Const Jum_Maks = 20; Type RecBarang = Record Nama : String [25]; Kualitas : Char; Harga : LongInt TabelBarang = Array [ 1.. Jum_Maks] of RecBarang; DafBarang : TabelBarang; {array record} Pada contoh di atas, DafBarang adalah array yang maksimum berisi 20 buah elemen bertipe record. Untuk mengakses suatu field, kita perlu menggunakan notasi : DafBarang [indeks].namafield Berikut contoh program Array Record. Program Rec7; Uses Crt; Const Jum_Maks = 20; {jumlah maksimal jenis baramg} Type RecBarang = Record Nama : string [25]; Kualitas : char; Harga : longint 28

29 TabelBarang = Array [ 1.. Jum_Maks] of RecBarang; DafBarang : TabelBarang; {array record} JumBarang : Integer; {memasukkan data barang je array DafBarang} Procedure EntriBarang ( DafBarang : TabelBarang; JumBarang : Integer); Indeks : Integer; Begin Clrscr; Write ( Jumlah Barang (Maksimum = 20) : ); Readln (JumBarang); For Indeks := 1 to JumBarang do With Dafbarang [indeks] do Begin Clrscr; Writeln ( Data Barang, Indeks, : ); Write ( Nama : ); Readln (Nama); Write ( Kualitas : ); Readln (Kualitas); Write ( Harga : ); Readln (Harga); Writeln; {akhir EntriBarang} {menampilkan isi array DafBarang} Procedure InfoBarang ( DafBarang : Tabelbarang; JumBarang : Integer); Indeks : Integer; Begin Clrscr; Writeln ( NAMA BARANG :25, KUALITAS :10, HARGA :10); For Indeks := 1 to JumBarang do With Dafbarang [Indeks] do Writeln (Nama : 25, Kualitas : 10, Harga : 8); {Akhir InfoBarang} Begin Entribarang (DafBarang, JumBarang); InfoBarang (DafBarang, JumBarang); Readln End. C. Penutup Record adalah salah satu tipe data terstuktur bentukan yang digunakan untuk mempresntasikan sebuah objek yang tidak dapat dipresentasikan menggunakan tipe data dasar, seperti integer, real, 29

30 boolean, character. Setiap record terdiri dari beberapa elemen yang disebut field. Setiap field menggambarkan informasi tertentu, dan tipe setiap field sudah dikenal, baik itu tipe dasar atau tipe bentukan lainnya. Operasi atau manipulasi terhadap record hanya dapat dilakukan terhadap field-field pembentuknya. Pengacuan pada setiap field dilakukan dengan record selector. Operasi yang dapat dilakukan terhadap field-field tersebut sama dengan operasi yang dapat dikenakan terhadap tipe pembentuknya. 1) Pertanyaan (a) Buat program untuk menginput dan menampilkan data nilai mahasiswa dengan menggunakan array record (b) Buat program mengakses record di dalam record 2) Umpan Balik dan Tindak Lanjut Untuk menguasai materi ini, sebaiknya anda membuat ringkasan materi tentang record dan membuat sendiri beberapa program dengan menggunakan record. Jawab pertanyaan di atas dengan langsung membuat program di komputer. Jalankan program tersebut sampai benar. Hapus kembali listing program yang sudah benar dan buat kembali program tersebut, dan jalankan. Kalau tingkat kesalahan pada pembuatan program sudah kecil, anda dapat melanjutkan materi berikutnya. Kalau program belum jalan, perbaiki terus sampai program tersebut benar dan jalan. 3) Kunci Jawaban Jawaban b program arrayrecord; const max=100; type tsiswa=record NIM :STRING[9]; Nama : string[25]; Nilai : real; 30

31 end; tkumpulansiswa = array[1..max] of tsiswa; var a:tkumpulansiswa; i,n:integer; begin write('masukkan jumlah siswa yang akan diisikan :');readln(n); writeln; writeln('memasukkan data'); writeln(' '); for i:= 1 to n do begin writeln('data siswa ke-',i); write('nim : ');readln(a[i].nim); write('nama : ');readln(a[i].nama); write( Nilai : );readln(a[i].nilai); writeln; end; writeln; writeln('daftar SISWA'); writeln(' '); writeln('nim ',' ', 'NAMA'), NILAI ; writeln(' '); for i:=1 to n do begin with a[i] do begin writeln(nim:9,' ',Nama, Nilai); end; end; readln end. Jawaban b Program Record_dalam_record; Uses crt; Type RecTanggal = Record Tanggal, Bulan, Tahun : Integer RecPegawai = Record Nomor : LongInt; Nama : string [35]; TglLahir : RecTanggal; Gaji : LongInt DataPeg : RecPegawai; {variabel bertipe record} Begin Clrscr; 31

32 {Penugasan nilai terhadap field-field} With DataPeg, TglLahir do Begin Nomor := 56789; Nama := Badu ; Tanggal := 24; Bulan := 12; Tahun := 1972; Gaji := ; {menampilkan isi field} With DataPeg, TglLahir do Begin Writeln ( Nama Pegawai Readln End. Writeln ( Tanggal lahir /, DataPeg.TglLahir.Bulan /, DataPeg.TglLahir.Tahun) :, DataPeg.Nama); :, DataPeg.TglLahir.Tanggal, Daftar Pustaka Jurusan Informatika Bahan Ajar Pemrograman 2. Hibah Pengajaran PHK A1 Universitas Negeri Gorontalo Kadir, Abdul Pemrograman Pascal Buku 1. Yogyakarta: Andi Offset. Munir, Rinaldi Algoritma dan Pemrograman dalam bahasa Pascal dan C Edisi 2. Bandung: Informatika. Rahardjo, Budi Teknik Pemrograman Pascal. Bandung:Informatika 32

33 BAB III P R O S E D U R A. Pendahuluan Deskripsi Singkat Bab ini akan mengemukakan bahasan tentang pemrograman moduler, definisi prosedur, pendefinisian prosedur, pemanggilan prosedur. Relevansi Pembahasan pada bab ini sangat penting dipahami, karena materi prosedur ini memberikan manfaat bagi pemrogram untuk membuat program yang menggunakan prosedur. Materi prosedur sangat berkaitan dengan materi lainnya dalam sebuah pemrograman terstruktur, terutama pemrograman moduler. Tujuan Instruksional Khusus Mahasiswa mampu membuat program aplikasi dengan menggunakan prosedur B. Penyajian 1) Konsep Pemrograman Moduler Dalam membuat program besar dan kompleks, si pemrogram perlu memecah program menjadi beberapa sub program yang lebih kecil. Tiap sub program kadangkala cukup independen dari program utama sehingga programnya dapat dirancang tanpa mempertimbangkan konteks tempat di mana sub program tersebut digunakan. Tiap sub program, yang disebut modul dapat dirancang oleh pemrogram selain dari orang yang mengembangkan program utama. Modul yang sudah ditulis dapat dipasang ke program lain yang membutuhkannya. Teknik pemrograman seperti ini dinamakan teknik pemrograman modular. Beberapa bahasa 33

34 pemrograman termasuk Pascal menamakan modul dengan sebutan rutin, prosedur atau fungsi. Modularisasi program memberikan 2 (dua) keuntungan. Pertama, untuk aktivitas yang harus dilakukan lebih dari satu kali, modularisasi menghindari penulisan teks program yang sama secara berulangkali.di sini, modul program cukup ditulis sekali saja, lalu modul tersebut dapat diakses dari bagian lain di dalam program.di sini, penggunaan modul program dapat mengurangi panjang program. Keuntungan kedua dari modularisasi adalah kemudahan menulis dan menemukan kesalahan program. Kemudahan menulis akan sangat berguna pada masalah besar yang dikerjakan oleh satu tim pemrogram yang beranggotakan beberapa orang. Masalah yang akan diprogram dipecah menjadi beberapa masalah yang lebih keil. Setiap masalah yang lebih kecl tersebut ditulis ke dalam modul individual yang spesifik dan dikerjakan oleh orang yang berbeda. Seluruh modul diintegrasikan menjadi satu buah program yang lengkap. Program modular menjai lebih mudah untuk dibaca dan dimengerti. Program yang tidak modular sulit dipahami, khususnya kalau program tersebut panjang atau terdiri dari puluhan, ratusan atau ribuan baris intruksi. Karena setiap modul melakukan aktivitas specsifik, maka apabila terdapat kesalahan di dalam program, kesalahan tersebut dapat dilokalisisr pada modul yang bersangkutan. Kebanyakan program komputer dapat ditulis modular, meskipun program tersebut tidak melibatkan eksekusi yang berulang dari aktivitas yang sama. Pemecahan program menjadi modul-modul individul umumnya dianggap sebagai praktek pemrograman yang baik. Terdapat dua jenis modul program, pertama prosedur (procedure) dan kedua fungsi (function). Struktur setiap modul tersebut pada hakikatnya sama dengan struktur algoritma biasa, yaitu ada bagian judul (header) 34

35 yang berisi nama modul, bagian deklarasi, dan bagian badan (body) program yang berisi instruksi yang akan dilaksanakan. 2) Definisi Prosedur Prosedur adalah modul program yang mengerjakan tugas/aktivitas yang spesifik dan menghasilkan suatu efek netto. Suatu efek netto diketahui dengan membandingkan keadaan awal dan keadaan akhir pada pelaksanaan prosedur. Oleh karena itu, pada prosedur kita harus mendefinisikan keadaan awal sebelum rangkaian instruksi di dalam prosedur dilaksanakan dan keadaan akhir yang diharapkan setelah rangkaian instruksi dilaksanakan. 3) Pendefinisian Prosedur Pada dasarnya, struktur prosedur sama dengan struktur algoritma yang sudah dikenal, yaitu : bagian judul yang terdiri atas nama prosedur dan komentar yang menjelaskan yang menjelaskan spesifikasi prosedur tersebut, bagian deklarasi dan badan prosedur. Setiap prosedur memiliki nama yang unik. Nama prosedur sebaiknya diawali dengan kata kerja karena prosedur berisi suatu aktivitas, misalnya HitungLuas, Tukar, CariMaks, Inisialisasi, AktifkanMenu dan lain sebagainya. Notasi Algoritma yang digunakan untuk mendefinisikan struktur prosedur adalah : Procedure NamaProsedur {Spesifikasi prosedur, berisi penjelasan tentang apa yang dilakukan prosedur ini} {K. Awal : keadaan sebelum prosedur dilaksanakan} {K. Akhir : keadaan setelah prosedur dilaksanakan} Deklarasi {semua nama yang dipakai dalam prosedur dan hanya berlaku lokal di dalam prosedur yang didefinisikan di sini} Deskripsi {badan prosedur, berisi kumpulan instruksi} Gambar 3.1 Bentuk Umum Pendefinisian Prosedur(sumber:Rahardjo) 35

36 Contoh 3.1 Tuliskan prosedur mencetak string Hello World!. Penyelesaian Procedure CetakHalo {mencetak string Hello World! ke piranti keluaran} {K. Awal : sembarang} {K. Akhir : string Hello World! tercetak} Deklarasi {tidak ada} Deskripsi Write ( [Hello World! ) Contoh 3.2 Tuliskan prosedur untuk menghitung luas segitiga dengan rumus L=(alas x tinggi)/2. Panjang alas dan tinggi segitiga dibaca dari dalam prosedur. Luas segitiga dicetak ke piranti keluaran. Penyelesaian Procedure HitungLuasSegitiga {menghitung luas segitiga dengan rumus L=(alas x tinggi)/2 {K. Awal : sembarang} {K. Akhir : L berisi luas segitiga. Nilai L dicetak ke piranti keluaran} Deklarasi Alas, tinggi, luas : real Deskripsi Read (alas, tinggi) Luas (alas*tinggi)/2 Write (L) 4) Pemanggilan Prosedur Prosedur bukan program yang berdiri sendiri, jadi tidak dapat dieksekusi secara langsung. Ini berarti, instruksi-instruksi di dalam prosedur baru dapat dilaksanakan hanya bila prosedur tersebut diakses/dipanggil. Prosedur diakses dengan cara m,emanggil 36

37 namanya dan program pemanggil (program utama atau modul program lain) : NamaProsedur Gambar 2.2 Pemanggilan Prosedur(sumber:Rahardjo) Ketika NamaProsedur dipanggil, kendali program berpindah secara otomatis ke prosedur tersebut. Instruksi di dalam badan prosedur dilaksanakan. Setelah semua instruksi selesai dilaksanakan, kendali program berpindah secara otomatis ke instruksi sesudah pemanggilan prosedur. Di dalam program pemanggil, kita harus mendeklarasikan prototype prosedur di dalam bagian deklarasi. Prototype prosedur hanya berisi bagian judul prosedur. Tujuan pendeklarasian prototype program adalah supaya program pemanggil mengenal nama prosedur tersebut serta cara mengaksesnya. Contoh 3.3 Tuliskan contoh program utama untuk memanggil prosedur CetakHalo Penyelesaian Algoritma Halo {program utama untuk mencetak string Halo! } Deklarasi Procedure CetakHalo {mencetak string Halo! ke piranti keluaran} Deskripsi CetakHalo {panggil prosedur CetakHalo} Contoh 3.4 Tuliskan contoh program utama untuk memanggil prosedur HitungLuasSegitiga. 37

38 Penyelesaian Algoritma Luas_Segitiga {program uatama untuk menghitung luas segitiga} Deklarasi Prcedure HitungLuasSegitiga {menghitung luas segitiga dengan rumus L=(alas x tinggi)/2} Deskripsi Write( Menghitung Luas Segitiga ) HitungLuasSegitiga Write ( Selesai ) C. Penutup Kata prosedur sering kita dengar dalam kehidupan sehari-hari. Seorang mahasiswa pada setiap awal semester selalu melakukan penaftaran ulang (registrasi). Langkah-langkah pendaftaran ulang lazim dinyatakan dalam sebuah prosedur yang dinamakan prosedur daftar ulang. Ketika sebuah prosedur dilakukan, maka instruksi-instruksi di dalamnya dikerjakan satu per satu. Dalam dunia pemrograman, prosedur adalah modul program yang mengerjakan tugas/aktivitas yang spesifik dan menghasilkan suatu efek netto. Suatu efek netto diketahui dengan membandingkan keadaan awal dan keadaan akhir pada pelaksanaan sebuah prosedur. Oleh sebab itu, pada setiap prosedur kita perlu mendefinisikan keadaan awal sebelum rangkaian instruksi di dalam prosedur dilaksanakan dan keadaan akhir yang diharapkan setelah rangkaian instruksi di dalam prosedur dilaksanakan. 1) Pertanyaan Buat program perhitungan luas segitiga menggunakan prosedur. 2) Umpan Balik dan Tindak Lanjut Untuk menguasai materi ini, sebaiknya anda membuat ringkasan materi tentang prosedur dan membuat sendiri beberapa program dengan menggunakan prosedur. 38

39 Jawab pertanyaan di atas dengan langsung membuat program di komputer. Jalankan program tersebut sampai benar. Hapus kembali listing program yang sudah benar dan buat kembali program tersebut, dan jalankan. Kalau tingkat kesalahan pada pembuatan program sudah kecil, anda dapat melanjutkan materi berikutnya. Kalau program belum jalan, perbaiki terus sampai benar. 3) Kunci Jawaban program luas_segitiga; procedure hitungluas; var alas,tinggi,luas : real; begin write('alas :');readln(alas); write('tinggi:');readln(tinggi); luas:=(alas*tinggi)/2; write('luas segitiga :',luas:2:0); end; begin writeln('menghitung luas segitiga'); hitungluas; readln end. Daftar Pustaka Jogiyanto, Turbo Pascal. Yogyakarta : Andi Ofset. Jurusan Informatika Bahan Ajar Pemrograman 2. Hibah Pengajaran PHK A1 Universitas Negeri Gorontalo Kadir, Abdul Pemrograman Pascal Buku 1. Yogyakarta: Andi Offset. Munir, Rinaldi Algoritma dan Pemrograman dalam bahasa Pascal dan C Edisi 3. Bandung: Informatika. Rahardjo, Budi Teknik Pemrograman Pascal. Bandung:Informatika 39

40 BAB IV F U N G S I A. Pendahuluan Deskripsi Singkat Bab ini akan mengemukakan bahasan tentang definisi fungsi, cara mendefinisikan fungsi, cara pemanggilan fungsi dan parameter. Relevansi Pembahasan pada bab ini sangat penting dipahami, karena materi fungsi ini memberikan manfaat bagi pemrogram untuk membuat program yang menggunakan fungsi. Materi fungsi sangat berkaitan dengan materi lainnya dalam sebuah pemrograman terstruktur, terutama pemrograman moduler. Tujuan Instruksional Khusus Mahasiswa mampu membuat program dengan menggunakan fungsi. B. Penyajian 1) Definisi Fungsi Definisi fungsi sebenarnya sama dengan sebuah prosedur. Perbedaannya, pada fungsi terdapat pengembalian nilai, sehingga pada saat pemanggilan, fungsi dapat langsung digunakan untuk mengisikan sebuah ekspresi. 2) Pendefinisian Fungsi Berbeda dengan prosedur yang didefinisikan dengan kata kunci function. Berikut ini bentuk umum dari pendefinisian sebuah fungsi. 40

41 Function NamaFungsi (parameter1 : tipe_data, paraneter2: tipe_data,...) : tipe_data; const {daftar konstanta lokal} {daftar pendeklarasian variabel lokal} Begin {kode program yang akan ditulis}... NamaFungsi := nilai_kembalian; {ingat baris ini} Gambar 4.1 Bentuk Umum Pendefinisian Fungsi Berikut ini contoh pendefinisian fungsi sederhana yang akan mengalikan dua buah bilangan bulat. Function Kali (x, y : integer) : longint; Begin Kali := x * y; Kita juga dapat mendeklarasikan variabel lokal untuk menyimpan nilai sebelum akhirnya dikembalikan lagi ke fungsi, misalnya seperti kode di bawah ini. Function Kali (x, y : integer) : longint; Hasil : longint; Begin Hasil := x * y; Kali := Hasil; 3) Pemanggilan fungsi Fungsi diakses dengan cara memanggil namanya dari program pemanggil, diikuti dengan daftar parameter aktual (bila ada). Oleh karena fungsi menghasilkan sebuah nilai maka pada saat pemanggilannya juga dapat ditampung ke dalam suatu variabel. Berikut ini contoh pemanggilan fungsi di atas. 41

42 A : longint; Begin {memanggil fungsi Kali dan menyimpan nilainya ke dalam variabel A) A := Kali (10, 5);... End. 4) Parameter Parameter merupakan suatu nilai atau referensi yang dilewatkan ke dalam rutin tertentu dan kehadirannya akan mempengaruhi proses maupun nilai yang terdapat di dalam rutin itu sendiri. Parameter ditempatkan di dalam tanda kurung setelah nama rutin bersangkutan. Suatu fungsi umumnya mempunyai parameter. Namun bisa saja suatu fungsi tidak memiliki paramater. Setiap parameter yang dilewatkan harus memiliki tipe data tersendiri yang dapat berupa dari tipe dasar maupun bentukan seperti array, record atau pointer. Untuk mengetahui arti parameter, perhatikan fungsi matematika di bawah ini. f (x) = 2x 2 + 5x 3 Bila x=1, maka f akan mengembalikan nilai 4, yang berasal dari f (1) = 2(1) 2 + 5(1) 3 = = 4 Bila x=2, maka f akan mengembalikan nilai 15, yang berasal dari f (2) = 2(2) 2 + 5(2) 3 = = 15 Dari ilustrasi tersebut terlihat jelas bahwa hasil nilai dari fungsi f ditentukan oleh besarnya nilai x, sehingga x disebut sebagai parameter dari fungsi f. C. Penutup Seperti halnya prosedur, fungsi juga merupakan sub program yang mempunyai tujuan spesifik. Pertanyaan sering muncul dalam pemrograman moduler adalah : apakah sebuah modul program akan 42

43 dibuat sebagai prosedur atau fungsi? Fungsi digunakan apabila modul program mengembalikan sebuah nilai, sementara prosedur digunakan apabila modul menghasilkan efek netto dari satu atau sekumpulan aksi. Pemilihan apakah sebuah modul direalisasikan sebagai fungsi atau prosedur bergantung pada kebutuhan dan seni memprogram. 1) Pertanyaan Buat program perhitungan nilai faktorial menggunakan fungsi. 2) Umpan Balik dan Tindak Lanjut Untuk menguasai materi ini, sebaiknya anda membuat ringkasan materi tentang fungsi dan membuat sendiri beberapa program dengan menggunakan fungsi. Jawab pertanyaan di atas dengan langsung membuat program di komputer. Jalankan program tersebut sampai benar. Hapus kembali listing program yang sudah benar dan buat kembali program tersebut, dan jalankan. Kalau tingkat kesalahan pada pembuatan program sudah kecil, anda dapat melanjutkan materi berikutnya. Kalau program belum jalan, perbaiki terus sampai benar. 3) Kunci Jawaban Program faktorial; n : integer; function f(n:integer);integer; var i, f : integer; begin f:=1; for i:=1 to n do f:=f +1; end; begin write ( jumlah faktorial : );readln(n); writeln(f); end. 43

44 Daftar Pustaka Jurusan Informatika Bahan Ajar Pemrograman 2. Hibah Pengajaran PHK A1 Universitas Negeri Gorontalo Kadir, Abdul Pemrograman Pascal Buku 1. Yogyakarta: Andi Offset. Munir, Rinaldi Algoritma dan Pemrograman dalam bahasa Pascal dan C Edisi 3. Bandung: Informatika. Rahardjo, Budi Teknik Pemrograman Pascal. Bandung:Informatika 44

45 BAB V S O R T I N G A. Pendahuluan Deskripsi Singkat Bab ini akan membahas definisi pengurutan, pengurutan gelembung, pengurutan maksimum/minimum, pengurutan seleksi. Relevansi Pengurutan akan memudahkan kita dalam mencari data dalam sebuah program. Pengurutan sangat erat kaitannya dengan pencarian. Tujuan Instruksional Khusus Mahasiswa mampu membuat program dengan menggunakan perintah sorting. B. Penyajian 1) Definisi Pengurutan (Sorting) Selain pencarian, pengurutan data merupakan salah satu permasalahan umum yang juga sering dijumpai dalam pemrograman. Sebagai bukti nyata, tinjaulah metode pencarian bagi dua di atas yang menuntut kita untuk melakukan pengurutan terlebih dahulu sebelum kita melakukan pencarian. Dalam pemrograman, terdapat beberapa metode untuk melakukan pengurutan data. Namun terdapat 8 (delapan) metode yang umumnya banyak digunakan, yaitu : 1. Bubble Sort 2. Maximum/Minimum Sort 3. Selection Sort 4. Insertion Sort 5. Heap Sort 6. Quick Sort 45

46 7. Merge Sort 8. Shell Sort Pada pembahasan ini, hanya 3 (tiga) metode yang akan dibahas yaitu metode pengurutan gelembung (bubble sort), pengurutan maksimum/minimum (maximum/minium sort) dan pengurutan seleksi (selestion sort). 2) Pengurutan Gelembung (Bubble sort) Menurut sumber yang ada, metode ini diinspirasi oleh adanya gelembung sabun yang mengapung di atas permukaan air. Hal ini tentunya disebabkan karena berat jenis gelembung sabun lebih kecil dari berat jenis air. Konsep dari fenomena tersebut kemudian diterapkan sebagai metode pengurutan data di dalam array. Dalam metode ini data dengan nilai terkecil akan diapungkan ke posisi teratas, dan sebaliknya data dengan nilai terbesar akan berada pada posisi terbawah. Sebagai contoh, asumsikan bahwa kita memiliki array A yang berisi lima buah elemen data, seperti yang tampak di bawah ini A[1] A[2] A[3] A[4] A[5] Gambar 5.1 Array A sebelum diurutkan dengan metode gelembung Di sini kita akan mengurutkan array tersebut secara menaik, yaitu dengan mengapungkan nilai terkecil ke posisi teratas (paling kiri). Proses ini tentu akan dilakukan dengan menggunakan pertukaran antar elemen array. Tahapan-tahapan yang harus dilakukan adalah sebagai berikut. Tahap 1 Mulai dari A[5] sampai A[2], lakukan perbandingan nilai antara A[k] dan A[k-1] dimana variabel k mewakili indeks array yang sedang aktif. Apabila nilai A[k] lebih kecil, maka tukarkan nilai A[k] dengan A[k-1]. Sampai di sini, array tersebut akan menjadi seperti berikut. 46

ARRAY. contoh : A[1] := 10; var A : array[1..10] of integer; A[nomer_indeks]

ARRAY. contoh : A[1] := 10; var A : array[1..10] of integer; A[nomer_indeks] ARRAY Array adalah tipe data kompleks yang elemen-elemennya mempunyai tipe data yang sama. Jumlah elemen array bersifat tetap dan tidak bisa ditambah atau dikurangi setelah pendeklarasiannya. Tiap elemen

Lebih terperinci

A[1] A[2] A[3] A[4] A[5] A[6] A[7] A[8] A[9] A[10] Nilai elemen array Index array Inelemen array

A[1] A[2] A[3] A[4] A[5] A[6] A[7] A[8] A[9] A[10] Nilai elemen array Index array Inelemen array Definisi Array Array (larik) adalah sebuah variabel yang dapat menyimpan lebih dari satu nilai sejenis (memilikii tipe data sama). Hal ini berbeda dengan variabel biasa yang hanya mampu menampung satu

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-8 (Prosedur) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Modularisasi Program Pendefinisian Prosedur Nama Global dan Nama Lokal Parameter

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-8 dan Ke-9 (Prosedur) :: NoorIfada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Modularisasi Program Pendefinisian Prosedur Nama Global dan Nama Lokal

Lebih terperinci

Daftar field MODUL 13 RECORD

Daftar field MODUL 13 RECORD MODUL 13 RECORD Record adalah suatu tipe data terstruktur. Dengan record data dapat dikumpulkan yang masing-masing dapat mempunyai tipe data berbeda. Masing-masing item data disebut dengan fieild. Jadi

Lebih terperinci

PEMROGRAMAN STRUKTURAL

PEMROGRAMAN STRUKTURAL BAHAN AJAR PEMROGRAMAN STRUKTURAL KODE MATA KULIAH : SEMESTER : 2 SKS : 3 SKS DOSEN PENGAMPU : Eko Riswanto, S.T., M.Cs PROGRAM STUDI SISTEM INFORMASI SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN ILMU KOMPUTER

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-2 (Teks Algoritma) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Judul Algoritma Deklarasi Deskripsi Translasi Teks Algoritma ke dalam

Lebih terperinci

Pertemuan Ke-2 (Teks Algoritma) Rahmady Liyantanto. S1 Teknik Informatika-Unijoyo

Pertemuan Ke-2 (Teks Algoritma) Rahmady Liyantanto. S1 Teknik Informatika-Unijoyo Algoritma Pemrograman Pertemuan Ke-2 (Teks Algoritma) Rahmady Liyantanto Sub Pokok Bahasan Pendahuluan Judul Algoritma Deklarasi Deskripsi Translasi Teks Algoritma ke dalam Teks Program Bahasa Pascal Tabel

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-8 dan Ke-9 (Prosedur) Noor Ifada noor.ifada@if.trunojoyo.ac.id S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Modularisasi Program Pendefinisian Prosedur

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-2 (Teks Algoritma) Noor Ifada noor.ifada@if.trunojoyo.ac.id S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Judul Algoritma Deklarasi Deskripsi Translasi

Lebih terperinci

Teori Algoritma. Struktur Algoritma

Teori Algoritma. Struktur Algoritma Alam Santosa Teori Algoritma Runtunan Struktur Algoritma Seperti telah dijelaskan sebelumnya, sebuah algoritma terbagi tiga bagian, yaitu: Judul Deklarasi Deskripsi Judul Judul program digunakan untuk

Lebih terperinci

Pertemuan 3 Penyeleksian Kondisi dan Perulangan

Pertemuan 3 Penyeleksian Kondisi dan Perulangan Pertemuan 3 Penyeleksian Kondisi dan Perulangan Objektif: 1. Mengetahui macam-macam penyeleksian kondisi dalam pascal 2. Mengerti statement kondisi IF dan Case 3. Mengetahui macam-macam perulangan dalam

Lebih terperinci

ARRAY (LARIK) Altien Jonathan Rindengan, S.Si., M.Kom.

ARRAY (LARIK) Altien Jonathan Rindengan, S.Si., M.Kom. ARRAY (LARIK) Altien Jonathan Rindengan, S.Si., M.Kom. Pendahuluan Sebuah variabel hanya menyimpan sebuah nilai, tidak dapat menyimpan beberapa buah nilai yang bertipe sejenis Dalam pemrograman, mengolah

Lebih terperinci

Universitas gunadarma. pascal. Bab 4- bab 10. Hana Pertiwi S.T

Universitas gunadarma. pascal. Bab 4- bab 10. Hana Pertiwi S.T Universitas gunadarma pascal Bab 4- bab 10 Hana Pertiwi S.T 14 PASCAL Struktur Perulangan WHILE-DO Struktur Perulangan REPEAT-UNTIL REPEAT UNTIL 1. Struktur Perulangan FOR 2. Penggunaan gabungan struktur

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-2 (Teks Algoritma) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Judul Algoritma Deklarasi Deskripsi Translasi Teks Algoritma ke dalam

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-14 (Rekursi) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Faktorial Menara Hanoi S1 Teknik Informatika-Unijoyo 2 Pendahuluan Algoritma

Lebih terperinci

Nama : Suseno Rudiansyah NPM : Kelas : X2T Prodi : Teknik Informatika Tugas : Kuis Algoritma 2

Nama : Suseno Rudiansyah NPM : Kelas : X2T Prodi : Teknik Informatika Tugas : Kuis Algoritma 2 Nama : Suseno Rudiansyah NPM : 201543501544 Kelas : X2T Prodi : Teknik Informatika Tugas : Kuis Algoritma 2 Tugas Kuiz Algoritma 2. Dosen : Budi Santoso 1. Diketahui dua buah larik A = [12,3,9,4,15,6]

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-14 (Rekursi) :: NoorIfada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Faktorial Menara Hanoi S1 Teknik Informatika-Unijoyo 2 1 Pendahuluan Algoritma

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-11 (Matriks) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Konsep Matriks Pendeklarasian Matriks Pemrosesan Matriks Membaca Elemen Matriks

Lebih terperinci

Pertemuan 4 KONSEP TIPE DATA

Pertemuan 4 KONSEP TIPE DATA Pertemuan 4 KONSEP TIPE DATA Bahasa Pemrograman PASCAL Pascal, merupakan bahasa pemrograman tingkat tinggi. Pascal dirancang oleh Prof. Niklaus Writh (Technical University di Zurich, Switzerland) pada

Lebih terperinci

1. Kompetensi Mengenal dan memahami notasi-notasi algoritma yang ada.

1. Kompetensi Mengenal dan memahami notasi-notasi algoritma yang ada. Semester : 4 Pengenalan Algoritma dan Program 200 menit No. : LST/EKA/EKA259/01 Revisi : 01 Tgl. : 10-2-2014 Hal. 1 dari 2 hal. 1. Kompetensi Mengenal dan memahami notasi-notasi algoritma yang ada. 2.

Lebih terperinci

PROSEDUR DAN FUNGSI. Altien Jonathan Rindengan, S.Si., M.Kom

PROSEDUR DAN FUNGSI. Altien Jonathan Rindengan, S.Si., M.Kom PROSEDUR DAN FUNGSI Altien Jonathan Rindengan, S.Si., M.Kom PROSEDUR Pendahuluan Merupakan penerapan konsep program modular, yaitu memecah-mecah program yang rumit menjadi program-program bagian yang lebih

Lebih terperinci

SATUAN ACARA PERKULIAHAN (SAP) Mata Kuliah : Struktur Data Kode : TIS3213 Semester : III Waktu : 2 x 3 x 50 Menit Pertemuan : 1 & 2

SATUAN ACARA PERKULIAHAN (SAP) Mata Kuliah : Struktur Data Kode : TIS3213 Semester : III Waktu : 2 x 3 x 50 Menit Pertemuan : 1 & 2 A. Kompetensi 1. Utama SATUAN ACARA PERKULIAHAN (SAP) Mata Kuliah : Struktur Data Kode : TIS3213 Semester : III Waktu : 2 x 3 x 50 Menit Pertemuan : 1 & 2 Mahasiswa dapat memahami tentang konsep pemrograman

Lebih terperinci

BAB I TUJUAN DAN LANDASAN TEORI

BAB I TUJUAN DAN LANDASAN TEORI BAB I TUJUAN DAN LANDASAN TEORI 1. Tujuan 1. Dapat memahami konsep prosedur dan fungsi. 2. Mampu membuat prosedur dan fungsi baik dengan parameter maupun tanpa parameter. 3. Mampu membedakan kapan menggunakan

Lebih terperinci

Pertemuan 6 Array Objektif: 1. Memahami cara mendeklarasi tipe indeks dalam array 2. Dapat membuat program sederhana menggunakan array Pertemuan 6 53

Pertemuan 6 Array Objektif: 1. Memahami cara mendeklarasi tipe indeks dalam array 2. Dapat membuat program sederhana menggunakan array Pertemuan 6 53 Pertemuan 6 Array Objektif: 1. Memahami cara mendeklarasi tipe indeks dalam array 2. Dapat membuat program sederhana menggunakan array Pertemuan 6 53 P4.1 Teori Larik / array adalah tipe terstruktur yang

Lebih terperinci

PRAKTIKUM 7 TIPE DATA TERSTRUKTUR. Larik : deretan data yang punya type data sejenis. Misalnya : Daftar Nomor Telpon, Tabel Pajak dll.

PRAKTIKUM 7 TIPE DATA TERSTRUKTUR. Larik : deretan data yang punya type data sejenis. Misalnya : Daftar Nomor Telpon, Tabel Pajak dll. PRAKTIKUM 7 TIPE DATA TERSTRUKTUR 1. Judul Materi / Pokok Bahasan : Tipe Data Terstruktur 2. Tujuan Instruksional Khusus : Mahasiswa dapat membuat program dengan menggunakan jenisjenis tipe data terstruktur

Lebih terperinci

Prosedur dan Fungsi ALGORITMA DAN PEMROGRAMAN [IS ] Dosen: Yudha Saintika, S.T., M.T.I

Prosedur dan Fungsi ALGORITMA DAN PEMROGRAMAN [IS ] Dosen: Yudha Saintika, S.T., M.T.I Prosedur dan Fungsi ALGORITMA DAN PEMROGRAMAN [IS6110102] Dosen: Yudha Saintika, S.T., M.T.I Sub-Capaian Pembelajaran MK Mahasiswa mampu menerapkan konsep prosedur dan fungsi dalam program. Peta Capaian

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-9 (Fungsi) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendefinisian Fungsi Pemanggilan Fungsi Penggunaan Prosedur atau Fungsi S1 Teknik Informatika-Unijoyo

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-5 (Penyeleksian Kondisi) :: Noor Ifada :: S1 Teknik Informatika - Unijoyo 1 Sub Pokok Bahasan Pendahuluan Penyeleksian Satu Kasus Penyeleksian Dua Kasus Penyeleksian

Lebih terperinci

Pertemuan 3 Prosedur dan Fungsi

Pertemuan 3 Prosedur dan Fungsi Pertemuan 3 Prosedur dan Fungsi Objektif: 1. Memahami penggunaan prosedur dan fungsi 2. Mengerti pengiriman parameter dalam prosedur dan fungsi 3. Dapat membuat program sederhana menggunakan prosedur dan

Lebih terperinci

Bab 2 DASAR-DASAR ALGORITMA

Bab 2 DASAR-DASAR ALGORITMA Bab 2 DASAR-DASAR ALGORITMA Pada bab ini anda akan mempelajari 1. Nama (pengenal) 2. Nilai 3. Variabel dan Konstanta 4. Penugasan (Assignment) 5. Jenis-jenis tipe data 6. Jenis-jenis operasi dan kaitannya

Lebih terperinci

Pengantar dalam Bahasa Pemrograman Turbo Pascal Tonny Hidayat, S.Kom

Pengantar dalam Bahasa Pemrograman Turbo Pascal Tonny Hidayat, S.Kom Pengantar dalam Bahasa Pemrograman Turbo Pascal Tonny Hidayat, S.Kom Pengantar Bahasa Pemrograman Pascal Page 1 / 11 Pengenalan Pascal Pascal merupakan salah satu bahasa pemrograman tingkat tinggi. Pemrograman

Lebih terperinci

MODUL PRAKTIKUM ALGORITMA PEMROGRAMAN TEKNIK INFORMATIKA

MODUL PRAKTIKUM ALGORITMA PEMROGRAMAN TEKNIK INFORMATIKA MODUL PRAKTIKUM ALGORITMA PEMROGRAMAN TEKNIK INFORMATIKA Nama : NRP : Laboratorium Pemrograman JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS TRUNOJOYO 2012 KONTRAK PRAKTIKUM Nama Mata Kuliah :

Lebih terperinci

SATUAN ACARA PERKULIAHAN MATA KULIAH PEMROGRAMAN PASCAL * (TK) KODE / SKS: KK /2 SKS

SATUAN ACARA PERKULIAHAN MATA KULIAH PEMROGRAMAN PASCAL * (TK) KODE / SKS: KK /2 SKS MATA KULIAH PEMROGRAMAN * (TK) Minggu ke Pokok Bahasan dan TIU 1. Algoritma Konsep Dasar Bahasa Pascal secara singkat sejarah dirancangnya bahasa Memberikan konsep dasar pembuatan program dalam bahasa

Lebih terperinci

Array, Record, sorting : Elektro Unud (MSU) Page 1 of 13

Array, Record, sorting : Elektro Unud (MSU) Page 1 of 13 Array, Record, sorting : Elektro Unud (MSU) Page 1 of 13 ARRAY Array : variabel berindeks (punya beberapa tempat, tergantung deklarasinya) iabel : mempunyai hanya 1 tempat Deklarasi Array arrint : array

Lebih terperinci

MATERI 2 JENIS-JENIS DATA SEDERHANA & INPUT/OUTPUT DATA

MATERI 2 JENIS-JENIS DATA SEDERHANA & INPUT/OUTPUT DATA MATERI 2 JENIS-JENIS DATA SEDERHANA & INPUT/OUTPUT DATA Kata-Kata Cadangan Kata-kata cadangan (reserved words) adalah kata-kata yang sudah didefinisikan oleh Pascal yang mempunyai maksud tertentu. Kata-kata

Lebih terperinci

BAB I PENGENALAN STRUKTUR DATA DAN ALGORITMA

BAB I PENGENALAN STRUKTUR DATA DAN ALGORITMA BAB I PENGENALAN STRUKTUR DATA DAN ALGORITMA Tujuan : 1. Mahasiswa memahami apakah yang dimaksud dengan struktur data 2. Mahasiswa memahami apakah yang dimaksud dengan algoritma 3. Mengingat kembali tipe

Lebih terperinci

Contoh soal Struktur Program Pascal (Seleksi tingkat propinsi TOKI 2004)

Contoh soal Struktur Program Pascal (Seleksi tingkat propinsi TOKI 2004) 1 of 8 4/9/2008 3:32 PM TOKI Guide Home Analitik Pascal Pemrograman Materi Pemrograman Download Tentang TOKI Buku Tamu Komunitas TOKI tokiguide@yahoo.com Rabu, 9 April 2008 15:32:09 Pascal PASCAL Dalam

Lebih terperinci

Pertemuan 3 Penyeleksian Kondisi

Pertemuan 3 Penyeleksian Kondisi Pertemuan 3 Penyeleksian Kondisi Objektif: 1. Mengetahui macam-macam penyeleksian kondisi dalam pascal 2. Mengerti statement kondisi IF dan Case Pertemuan 3 39 P3.1 Teori Pada umumnya satu permasalahan

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-10 (Fungsi) :: NoorIfada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Pendefinisian Fungsi Pemanggilan Fungsi Penggunaan Prosedur atau Fungsi? S1

Lebih terperinci

I. KATA PENGANTAR. Modul Algoritma Pemrograman. Modul Ke-4 - Hal 1

I. KATA PENGANTAR. Modul Algoritma Pemrograman. Modul Ke-4 - Hal 1 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

Lebih terperinci

SMA SANTO PAULUS PONTIANAK

SMA SANTO PAULUS PONTIANAK SMA SANTO PAULUS PONTIANAK Konsep Dasar Pemrograman Pascal Kelas X Semester 2 Pengayaan Teknologi Informasi dan Komunikasi Oleh : Vianney Alexius, mtb TIK-vianney.mtb 2012 Algoritma Serangkaian langkah

Lebih terperinci

DATA SORTING. Altien Jonathan Rindengan, S.Si, M.Kom

DATA SORTING. Altien Jonathan Rindengan, S.Si, M.Kom DATA SORTING Altien Jonathan Rindengan, S.Si, M.Kom Pendahuluan Sorting (pengurutan) : proses mengatur sekumpulan objek menurut urutan atau susunan tertentu Diberikan array L dengan n elemen yg sudah terdefinisi

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-7 (Pengulangan atau Looping [2]) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Struktur WHILE Struktur REPEAT S1 Teknik Informatika-Unijoyo 2 Struktur

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-5 (Penyeleksian Kondisi) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Penyeleksian Satu Kasus Penyeleksian Dua Kasus Penyeleksian Tiga

Lebih terperinci

Pengenalan Pascal/DevPascal

Pengenalan Pascal/DevPascal Materi 1 Pengenalan Pascal/DevPascal Turbo Pascal adalah Compiler bahasa pemrograman Pascal. Untuk memulai menjalankan Pascal: Cari Folder Pascal ada di C:\TP\BIN\TPX.EXE Jalankan File TPX tersebut Dev

Lebih terperinci

BAB IV MATRIKS (ARRAY MULTI DIMENSI)

BAB IV MATRIKS (ARRAY MULTI DIMENSI) BAB IV MATRIKS (ARRAY MULTI DIMENSI) Definisi MATRiKs Matriks adalah: 1. Kumpulan elemen yang bertipe sama. 2. Setiap elemen data dapat diakses secara langsung jika indeksnya diketahui. 3. Struktur data

Lebih terperinci

POKOK BAHASAN - 2 PEMROGRAMAN MODULAR

POKOK BAHASAN - 2 PEMROGRAMAN MODULAR STRUKTUR DATA POKOK BAHASAN - 2 PEMROGRAMAN MODULAR Oleh : NAZARUDDIN AHMAD, S.T, M.T Design By mytemplate 2013 1. Pemrograman Modular Pemrograman Modular adalah pemrograman yang dilakukan dengan membuat

Lebih terperinci

PENDAHULUAN. Brigida Arie Minartiningtyas, M.Kom

PENDAHULUAN. Brigida Arie Minartiningtyas, M.Kom PENDAHULUAN Brigida Arie Minartiningtyas, M.Kom Langkah dalam proses pembuatan suatu program atau software : Mendefinisikan masalah dan menganalisanya Tujuan dari pembuatan program Parameter-parameter

Lebih terperinci

BAB 6 Array Dua Dimensi

BAB 6 Array Dua Dimensi BAB 6 Array Dua Dimensi Di dalam pascal Array dapat berdimensi lebih dari satu yang disebut dengan array dimensi banyak (Multidimensional array), disini akan dibahas array 2 dimensi saja. Array 2 dimensi

Lebih terperinci

Indentifier, Keywords, Variable, Tipe Data dan Operator. Ramos Somya, S.Kom., M.Cs.

Indentifier, Keywords, Variable, Tipe Data dan Operator. Ramos Somya, S.Kom., M.Cs. Indentifier, Keywords, Variable, Tipe Data dan Operator Ramos Somya, S.Kom., M.Cs. Merupakan nama yang digunakan untuk menamai variabel, konstanta, nama program maupun sub program. Seorang programmer tidak

Lebih terperinci

Algoritma dan Struktur Data

Algoritma dan Struktur Data Algoritma dan Struktur Data Mia Fitriawati, M.Kom FUNGSI Modul program yang mengembalikan/ memberikan (return) sebuah nilai yang bertipe sederhana. tipe data sederhana : integer, real, boolean, dan string

Lebih terperinci

BAB IV MATRIKS (ARRAY MULTI DIMENSI)

BAB IV MATRIKS (ARRAY MULTI DIMENSI) BAB IV MATRIKS (ARRAY MULTI DIMENSI) Definisi MATRiKs Matriks adalah: 1. Kumpulan elemen yang bertipe sama. 2. Setiap elemen data dapat diakses secara langsung jika indeksnya diketahui. 3. Struktur data

Lebih terperinci

Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN

Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN I. Elemen-Elemen Dalam Bahasa Pemrograman Berikut adalah elemen-elemen pada bahasa pemrograman: Berikut adalah element-element pada bahasa pemrograman: 1. Aturan

Lebih terperinci

PROSES PENJUALAN BUKU

PROSES PENJUALAN BUKU PROSES PENJUALAN BUKU MAKALAH Makalah ini disusun guna untuk memenuhi tugas TIK akhir tahun kelas XI semester 2 yang membahas tentang Proses Penjualan Buku. OLEH : Ida Mariyatuz Zulfa ( 14 ) Mar atu Sholekhah

Lebih terperinci

MODUL 1. Struktur Bahasa PASCAL secara umum

MODUL 1. Struktur Bahasa PASCAL secara umum MODUL 1 Struktur Bahasa PASCAL secara umum Pascal mempunyai struktur sebagai berikut: 1. Bagian Judul Program 2. Bagian Deklarasi e a. Deklarasi tipe data (TYPE) b. Deklarasi variabel (VAR) c. Deklarasi

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-6 (Pengulangan atau Looping [1]) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Struktur Pengulangan Pengulangan tanpa kondisi dan dengan

Lebih terperinci

Pengenalan C++ Oleh : Dewi Sartika

Pengenalan C++ Oleh : Dewi Sartika Pengenalan C++ Oleh : Dewi Sartika Pendahuluan Bahasa Pemrograman C++ merupakan bahasa tingkat menengah dimana bahasa ini didasarkan atas bahasa C, keistimewaan dari bahasa C++ adalah bahasa ini mendukung

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-1 (Matriks) :: NoorIfada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Konsep Matriks Pendeklarasian Matriks Pemrosesan Matriks Membaca Elemen Matriks

Lebih terperinci

Chapter 3.2 : Tipe, Nama dan Nilai

Chapter 3.2 : Tipe, Nama dan Nilai Mata Kuliah : Logika dan Algoritma / 4 SKS Chapter 3.2 : Tipe, Nama dan Nilai Dosen Pengasuh : Fatoni, M.M.,M.Kom. Mail : fatoni@binadarma.ac.id/toniubd@yahoo.com Materi Yang Dipelajari Tipe Data Dasar

Lebih terperinci

Konstruksi Dasar Algoritma

Konstruksi Dasar Algoritma Konstruksi Dasar Algoritma ALGORITMA DAN PEMROGRAMAN [IF6110202] Yudha Saintika, S.T., M.T.I. Sub-Capaian Pembelajaran MK Pendahuluan Instruksi dan Aksi Algoritma merupakan deskripsi urutan pelaksanaan

Lebih terperinci

TIPE, NAMA, DAN NILAI

TIPE, NAMA, DAN NILAI TIPE, NAMA, DAN NILAI Dian Palupi Rini, M.Kom Tipe Dasar Bilangan Logika Nama Tipe adalah boolean (diambil dari nama matematikawan Inggris George Boole). Ranah Nilai : true (benar) dan false (salah). Konstanta

Lebih terperinci

Struktur Data. Pertemuan 2

Struktur Data. Pertemuan 2 Pertemuan 2 Tujuan Pembelajaran Mahasiswa mampu menjelaskan konsep struktur data (Pengertian Struktur data, Konsep struktur data, Tipe data sederhana, Deklarasi data dalam bahasa pemrograman. 1. Pengertian

Lebih terperinci

PENGANTAR LOGIKA DAN ALGORITMA DENGAN PASCAL

PENGANTAR LOGIKA DAN ALGORITMA DENGAN PASCAL PENGANTAR LOGIKA DAN ALGORITMA DENGAN PASCAL Pengertian LOGIKA: Logika berasal dari bahasa Yunani yaitu LOGOS yang berarti ilmu. Logika pada dasarnya filsafat berpikir. Berpikir berarti melakukan suatu

Lebih terperinci

Bambang Heru S Departemen Teknik Kimia Universitas Indonesia

Bambang Heru S Departemen Teknik Kimia Universitas Indonesia Pascal (1) Bambang Heru S Departemen Teknik Kimia Universitas Indonesia Intro Pascal Contoh Program Pascal program Hallo; (* Program untuk menampilkan tulisan Hallo, World di layar *) i:integer; writeln(

Lebih terperinci

Pertemuan 2 Operasi String

Pertemuan 2 Operasi String Pertemuan 2 Operasi String Objektif: 1. Dapat mengerti dan menggunakan prosedur standar untuk operasi string 2. Dapat mengerti dan menggunakan fungsi standar untuk opersi string Pertemuan 2 28 P2.1 Teori

Lebih terperinci

MODUL IV PENCARIAN DAN PENGURUTAN

MODUL IV PENCARIAN DAN PENGURUTAN MODUL IV PENCARIAN DAN PENGURUTAN 4.1 Tujuan Tujuan modul IV ini, adalah: Praktikan bisa membuat beberapa program pencarian berdasarkan metode algoritma pencarian Praktikan bisa membuat beberapa program

Lebih terperinci

Sesi/Perkuliahan ke: II

Sesi/Perkuliahan ke: II Sesi/Perkuliahan ke: II Tujuan Instruksional Khusus : 1. Mahasiswa dapat menyebutkan jenis-jenis data sederhana. 2. Mahasiswa dapat menjelaskan pengertian integer,, boolean dan char. 3. Mahasiswa dapat

Lebih terperinci

Algoritma dan Struktur Data I Mia Fitriawati, S.Kom, M.Kom

Algoritma dan Struktur Data I Mia Fitriawati, S.Kom, M.Kom Runtunan Algoritma dan Struktur Data I Mia Fitriawati, S.Kom, M.Kom Runtunan terdiri dari satu atau lebih pernyataan Tiap pernyataan dikerjakan secara berurutan sesuai urutannya Urutan instruksi menentukan

Lebih terperinci

Pengurutan (Sorting) Keuntungan Data Terurut. Pengurutan Terbagi Dua Kelompok:

Pengurutan (Sorting) Keuntungan Data Terurut. Pengurutan Terbagi Dua Kelompok: Pengurutan (Sorting) Pengurutan adalah proses mengatur sekumpulan obyek menurut urutan atau susunan tertentu. Urutan obyek tersebut dapat menaik atau menurun. Bila N obyek disimpan dalam larik L, maka

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-14 (Rekursi) Noor Ifada noor.ifada@if.trunojoyo.ac.id S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Faktorial Menara Hanoi S1 Teknik Informatika-Unijoyo

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-10 (Larik) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Pendeklarasian Larik Mengisi Elemen Larik dari Piranti Masukan Menulis Elemen

Lebih terperinci

VARIABEL, TIPE DATA, KONSTANTA, OPERATOR DAN EKSPRESI. Pemrograman Dasar Kelas X Semester 2

VARIABEL, TIPE DATA, KONSTANTA, OPERATOR DAN EKSPRESI. Pemrograman Dasar Kelas X Semester 2 VARIABEL, TIPE DATA, KONSTANTA, OPERATOR DAN EKSPRESI Tujuan Pembelajaran 1. Siswa mampu memahami penulisan Tipe data, variabel dan konstanta dalam pascal 2. Siswa mampu menerapkan penggunaan Tipe data,

Lebih terperinci

Algoritma,Flowchart, Konsep

Algoritma,Flowchart, Konsep Algoritma,Flowchart, Konsep dasar PASCAL Masih ingat??? Algoritma Penulisan Algoritma Menggunakan bahasa natural (Bahasa manusia: Indonesia, Inggris) Kelemahannya masih sering membingungkan (ambigu) /

Lebih terperinci

Prosedur merupakan modul program yang mengerjakan instruksi spesifik dan menghasilkan efek netto. Efek netto diketahui dengan membandingkan keadan awa

Prosedur merupakan modul program yang mengerjakan instruksi spesifik dan menghasilkan efek netto. Efek netto diketahui dengan membandingkan keadan awa Prosedur merupakan modul program yang mengerjakan instruksi spesifik dan menghasilkan efek netto. Efek netto diketahui dengan membandingkan keadan awal dan keadaan akhir pada pelaksanaan prosedur Pendefinisian

Lebih terperinci

SEKOLAH TINGGI MANAJEMEN INFORMATIKA & KOMPUTER JAKARTA STI&K SATUAN ACARA PERKULIAHAN

SEKOLAH TINGGI MANAJEMEN INFORMATIKA & KOMPUTER JAKARTA STI&K SATUAN ACARA PERKULIAHAN SEKOLAH TINGGI MANAJEMEN INFORMAA & KOMPUTER JAKARTA STI&K SATUAN ACARA PERKULIAHAN Mata Kuliah : ALGORITMA DAN PEMROGRAMAN A Kode Mata Kuliah : DK - 24301 Jurusan / Jenjang : S1 SISTEM KOMPUTER Tujuan

Lebih terperinci

JENIS DATA SEDERHANA & INPUT/OUTPUT DATA

JENIS DATA SEDERHANA & INPUT/OUTPUT DATA JENIS DATA SEDERHANA & INPUT/OUTPUT DATA 1.1 Tipe Data A. Data Tipe Sederhana Dihubungkan dengan sebuah identifier untuk sebuah data. Data tipe ini digolongkan menjadi tipe data standar dan tipe data yang

Lebih terperinci

Kuliah ke : 4 Algoritma & Stuktur Data. Pengurutan (Sorting)

Kuliah ke : 4 Algoritma & Stuktur Data. Pengurutan (Sorting) Kuliah ke : 4 Algoritma & Stuktur Data Pengurutan (Sorting) Pengurutan adalah proses mengatur sekumpulan obyek menurut urutan atau susunan tertentu. Urutan obyek tersebut dapat menaik atau menurun. Bila

Lebih terperinci

Pengenalan Pascal. Sejarah Singkat Pascal

Pengenalan Pascal. Sejarah Singkat Pascal Pengenalan Pascal Sejarah Singkat Pascal Dirancang oleh Prof. Nicklaus Wirth dari Technical University di Zurich, Switzerland tahun 1971. Nama Pascal berasal dari Blaise Pascal, nama ahli matematika dan

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-11 (Larik) :: NoorIfada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Pendeklarasian Larik Mengisi Elemen Larik dari Piranti Masukan Menulis Elemen

Lebih terperinci

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR 1 PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR Siti Mukaromah, S.Kom TEKNIK PENYAJIAN ALGORITMA Teknik Tulisan Structure English Pseudocode Teknik Gambar Structure Chart HIPO Flowchart 2 PSEUDOCODE Kode

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-6 (Pengulangan atau Looping [1]) :: Noor Ifada :: S1 Teknik -Unijoyo 1 Sub Pokok Bahasan Pendahuluan Struktur Pengulangan Pengulangan tanpa kondisi dan dengan kondisi

Lebih terperinci

Procedure. Pertemuan 10 Algoritma Pemrograman

Procedure. Pertemuan 10 Algoritma Pemrograman Procedure Pertemuan 10 Algoritma Pemrograman Pendahuluan Seringkali dalam membuat program besar, pemrogram perlu memecah program menjadi beberapa subprogram yang lebih kecil. Tiap subprogram (modul) dapat

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-3 Tipe Data dan Nama :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Tipe Dasar Tipe Bentukan Nama S1 Teknik Informatika-Unijoyo 2 Pendahuluan

Lebih terperinci

Algoritma Pemrograman

Algoritma Pemrograman Algoritma Pemrograman Pertemuan Ke-3 (Tipe Data dan Nama) :: Noor Ifada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Tipe Dasar Tipe Bentukan Nama S1 Teknik Informatika-Unijoyo 2 1

Lebih terperinci

Variabel dan Tipe Data Kusrini 1, Heri Sismoro 2

Variabel dan Tipe Data Kusrini 1, Heri Sismoro 2 Variabel dan Tipe Data Kusrini 1, Heri Sismoro 2 1 Jurusan Sistem Informasi, 2 Jurusan Manajemen Informatika 1,2 STMIK AMIKOM Yogyakarta 1,2 Jl. Ringroad Utara Condong Catur Sleman Yogyakarta Variabel

Lebih terperinci

SOAL DAN JAWABAN UTS PEMROGRAMAN DASAR KELAS X

SOAL DAN JAWABAN UTS PEMROGRAMAN DASAR KELAS X SOAL DAN JAWABAN UTS PEMROGRAMAN DASAR KELAS X Kelas : X TKI 2 Mata Pelajaran : Produktif Teknik Komputer dan Informatika (Pemrograman Dasar) Waktu : 60 menit Bentuk Soal : Pilihan Ganda 40 soal Pilihan

Lebih terperinci

Struktur Data. Belajar Struktur Data Menggunakan Pascal Pertemuan-1

Struktur Data. Belajar Struktur Data Menggunakan Pascal Pertemuan-1 Struktur Data Belajar Struktur Data Menggunakan Pascal Pertemuan-1 I n W a h y u W i d o d o e m a i l @ r i n g k e s. c o m Identifier, Konstanta dan Variabel Identifier (sebutan / pengenal) Identifier

Lebih terperinci

MODUL PRAKTIKUM PERCABANGAN DAN PENGULANGAN

MODUL PRAKTIKUM PERCABANGAN DAN PENGULANGAN PERCABANGAN DAN PENGULANGAN Pada BAB ini akan membahas tentang PERCABANGAN dan PERULANGAN. PERCABANGAN : a) IF THEN b) CASE OF PENGULANGAN: a) REPEAT N TIMES b) REPEAT UNTIL c) WHILE DO d) ITERATE STOP

Lebih terperinci

Sesi/Perkuliahan ke: I

Sesi/Perkuliahan ke: I Sesi/Perkuliahan ke: I Tujuan Instruksional Khusus : 1. Mahasiswa dapat menjelaskan tentang sejarah singkat bahasa pemrograman pascal. 2. Mahasiswa mengerti tentang konsep dasar pembuatan program pada

Lebih terperinci

Dasar Komputer & Pemrogaman 2A

Dasar Komputer & Pemrogaman 2A Dasar Komputer & Pemrogaman 2A Materi 1 Reza Aditya Firdaus Sejarah Singkat Pascal Dirancang oleh Prof. Nicklaus Wirth dari Technical University di Zurich, Switzerland tahun 1971. Nama Pascal berasal dari

Lebih terperinci

PERTEMUAN - 3 PEMROGRAMAN MODULAR

PERTEMUAN - 3 PEMROGRAMAN MODULAR ALGORITMA & PEMROGRAMAN 2 PERTEMUAN - 3 PEMROGRAMAN MODULAR Oleh : NAZARUDDIN AHMAD, S.T, M.T Design By mytemplate 2013 1. Pemrograman Modular Pemrograman Modular adalah pemrograman yang dilakukan dengan

Lebih terperinci

I. KATA PENGANTAR. Modul Algoritma Pemrograman. Modul Ke-3 - Hal 1

I. KATA PENGANTAR. Modul Algoritma Pemrograman. Modul Ke-3 - Hal 1 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

Lebih terperinci

Algoritma dan Pemrograman Array

Algoritma dan Pemrograman Array Adam Mukharil Bachtiar Teknik Informatiak 2012 Algoritma dan Pemrograman Array Materi Hari Ini Pendefinisian Array Array 1 dimensi Array 2 dimensi Pendefinisian Array All About Array Latar Belakang Array

Lebih terperinci

STRUKTUR DASAR ALGORITMA

STRUKTUR DASAR ALGORITMA STRUKTUR DASAR ALGORITMA Pertemuan 5 Muhamad Haikal, S.Kom., MT Struktur Dasar Algoritma 1. Struktur Sequence (Runtunan) 2. Struktur Selection (Pemilihan) 3. Struktur Repetition (Perulangan) Struktur Sequence

Lebih terperinci

MODUL STRUKTUR DATA. Erna Kumalasari Nurnawati

MODUL STRUKTUR DATA. Erna Kumalasari Nurnawati MODUL STRUKTUR DATA Erna Kumalasari Nurnawati Apa yang dipelajari??? Sorting = mengurutkan sejumlah data berdasar kunci tertentu array,array record Searching (pencarian)->array+record Struktur tumpukan

Lebih terperinci

PEMBAHASAN KHUSUS TIPE DATA LANJUTAN

PEMBAHASAN KHUSUS TIPE DATA LANJUTAN PEMBAHASAN KHUSUS TIPE DATA LANJUTAN Tipe dasar sudah cukup untuk dapat dipakai memproses sebagian besar data yang ada, namun tipe dasar tidak cukup untuk memproses banyak data, apalagi data yang memiliki

Lebih terperinci

PEMROGRAMAN BERORIENTASI OBJEK

PEMROGRAMAN BERORIENTASI OBJEK PEMROGRAMAN BERORIENTASI OBJEK Fungsi Budhi Irawan, S.Si, M.T 10/27/2017 9:12:31 AM 1 PENDAHULUAN Fungsi merupakan kumpulan statemen yang dikelompokan menjadi satu bagian kode (blok program) untuk menyelesaikan

Lebih terperinci

Memulai Pemrograman Pascal dengan Delphi Console 1. Buka aplikasi delphi 2. Pilih File New Other Console Application

Memulai Pemrograman Pascal dengan Delphi Console 1. Buka aplikasi delphi 2. Pilih File New Other Console Application #2 Aplikasi Console Aplikasi console merupakan aplikasi berbasis teks yang berjalan pada command prompt. Bahasa yang digunakan pada aplikasi delphi adalah bahasa pemrograman pascal. Struktur Penulisan

Lebih terperinci

PERKEMBANGAN PASCAL. Pascal adalah bahasa tingkat tinggi ( high level language) yang orientasinya pada segala tujuan

PERKEMBANGAN PASCAL. Pascal adalah bahasa tingkat tinggi ( high level language) yang orientasinya pada segala tujuan PERKEMBANGAN PASCAL Pascal adalah bahasa tingkat tinggi ( high level language) yang orientasinya pada segala tujuan Nama pascal diambil sebagai penghargaan terhadap BLAISE PASCAL seorang ahli matematika

Lebih terperinci