Laporan DKP Kelompok 1 SISKOM 2012

476
1 LAPORAN PRAKTIKUM DASAR KOMPUTER DAN PEMROGRAMAN 2012 DISUSUN OLEH : 1. BAGUS LINGGA TUDANTO (NIM 21120110110033) 2. ANGGI ANUGRAHA PUTRA (NIM 21120111120001) 3. ELAD OKTARIZO (NIM 21120111120002) KELOMPOK 1 MOBILE SYSTEM & SOFTWARE LABORATORY JURUSAN TEKNIK SISTEM KOMPUTER FAKULTAS TEKNIK UNIVERSITAS DIPONEGORO SEMARANG 2012

Transcript of Laporan DKP Kelompok 1 SISKOM 2012

Page 1: Laporan DKP Kelompok 1 SISKOM 2012

1

LAPORAN PRAKTIKUM

DASAR KOMPUTER DAN PEMROGRAMAN

2012

DISUSUN OLEH :

1. BAGUS LINGGA TUDANTO (NIM 21120110110033)

2. ANGGI ANUGRAHA PUTRA (NIM 21120111120001)

3. ELAD OKTARIZO (NIM 21120111120002)

KELOMPOK 1

MOBILE SYSTEM & SOFTWARE LABORATORY

JURUSAN TEKNIK SISTEM KOMPUTER FAKULTAS TEKNIK

UNIVERSITAS DIPONEGORO

SEMARANG

2012

Page 2: Laporan DKP Kelompok 1 SISKOM 2012

2

KATA PENGANTAR

Puji syukur kehadirat Allah SWT atas segala limpahan rahmat serta

nikmat-Nya sehingga sampai saat ini masih diberikan kesempatan untuk menuntut

ilmu di Universitas Diponegoro dan dapat menyelesaikan laporan praktikum ini.

Semoga salawat dan salam tetap tercurah kepada Nabi Muhammad SAW yang

senantiasa kita nantikan syafa‟at Beliau di hari akhir nanti

Laporan ini disusun sebagai persyaratan dalam mengikuti Praktikum Dasar

Komputer dan Pemrograman 2012. Adapun isi dari laporan praktikum terdiri atas

laporan praktikum Hardware dan Sistem Operasi, Dasar Pemrograman Delphi 1,

Delphi 2, C#1, C#2, Java I, Java 2 dan PHP. Selain itu pada disertakan juga tugas

pendahuluan, serta makalah tugas akhir praktikum sebagai lampiran.

Tak lupa Penulis ucapkan terima kasih kepada :

1. Bapak Rinta Krida Lukmana ST. MT. selaku dosen mata kuliah Dasar

Komputer dan Pemrograman.

2. Nor Tjahja Moekti selaku koordinator Praktikum Dasar Komputer dan

Pemrograman 2011.

3. Seluruh asisten Praktikum Dasar Komputer dan Pemrograman 2012 yang

dengan sabar telah membimbing Penulis dan rekan-rekan dalam

menyelesaikan laporan ini.

4. Seluruh teman-teman yang membantu penulis, serta

5. Berbagai pihak yang terlibat yang tidak dapat penulis tuliskan satu persatu.

Dalam penyusunan laporan praktikum ini, penulis menyadari bahwa

laporan ini jauh dari kesempurnaan. Oleh sebab itu segala kritik dan saran yang

membangun amat Penulis harapkan demi kemajuan individu dan bersama.

Semoga laporan ini dapat berguna bagi siapapun yang membacanya.

Semarang, Juni 2012

Kelompok 1

Page 3: Laporan DKP Kelompok 1 SISKOM 2012

3

DAFTAR ISI

Halaman Cover.............................................................................................................

Halaman Pengesahan ...................................................................................................

Kata Pengantar ............................................................................................................ i

Daftar Isi..................................................................................................................... ii

Daftar Gambar ........................................................................................................... iv

Daftar Tabel .......................................................................................................... xvii

Abstrak .................................................................................................................. xviii

BAB I PENDAHULUAN

1.1. Latar Belakang ............................................................................................. 1

1.2. Tujuan .......................................................................................................... 1

1.3. Manfaat ........................................................................................................ 2

1.4. Sistematika Penulisan .................................................................................. 2

BAB II Pengenalan Hardware, Linux, dan Windows

2.1. Tujuan .......................................................................................................... 5

2.2. Dasar Teori................................................................................................... 5

2.3. Analisa dan Pembahasan............................................................................ 24

2.4. Kesimpulan ................................................................................................ 86

BAB III Dasar Pemrograman Delphi I

3.1. Tujuan ........................................................................................................ 88

3.2. Dasar Teori................................................................................................. 88

3.3. Analisa dan Pembahasan.......................................................................... 101

3.4. Kesimpulan .............................................................................................. 140

BAB IV Dasar Pemrograman Delphi II

4.1. Tujuan ...................................................................................................... 141

4.2. Dasar Teori............................................................................................... 141

4.3. Analisa dan Pembahasan.......................................................................... 148

4.4. Kesimpulan .............................................................................................. 171

BAB V Dasar Pemrograman C# I

5.1. Tujuan ...................................................................................................... 172

5.2. Dasar Teori............................................................................................... 173

Page 4: Laporan DKP Kelompok 1 SISKOM 2012

4

5.3. Analisa dan Pembahasan.......................................................................... 180

5.4. Kesimpulan .............................................................................................. 215

BAB VI Dasar Pemrograman C# II

6.1. Tujuan ...................................................................................................... 216

6.2. Dasar Teori............................................................................................... 217

6.3. Analisa dan Pembahasan.......................................................................... 224

6.4. Kesimpulan .............................................................................................. 249

BAB VII Dasar Pemrograman Java I

7.1. Tujuan ...................................................................................................... 251

7.2. Dasar Teori............................................................................................... 251

7.3. Analisa dan Pembahasan.......................................................................... 269

7.4. Kesimpulan .............................................................................................. 281

BAB VIII Dasar Pemrograman Java II

8.1. Tujuan ...................................................................................................... 282

8.2. Dasar Teori............................................................................................... 282

8.3. Analisa dan Pembahasan.......................................................................... 287

8.4. Kesimpulan .............................................................................................. 304

BAB IX Dasar Pemrograman PHP

9.1. Tujuan ...................................................................................................... 305

9.2. Dasar Teori............................................................................................... 305

9.3. Analisa dan Pembahasan.......................................................................... 311

9.4. Kesimpulan .............................................................................................. 336

BAB X PENUTUP

10.1. Kesimpulan ..................................................................................................

10.2. Saran ............................................................................................................

Daftar Pustaka ..............................................................................................................

LAMPIRAN (Makalah Tugas Akhir)

Page 5: Laporan DKP Kelompok 1 SISKOM 2012

5

DAFTAR GAMBAR

Gambar 2.1 Screenshot Struktur Kerja Komputer ................................................................ 6

Gambar 2.2 Screenshot Motherboard ................................................................................... 25

Gambar 2.3 Screenshot Processor ......................................................................................... 26

Gambar 2.4 Screenshot RAM ............................................................................................... 27

Gambar 2.5 Screenshot Harddisk .......................................................................................... 28

Gambar 2.6 Screenshot SATA .............................................................................................. 29

Gambar 2.7 Screenshot ATA ................................................................................................ 30

Gambar 2.8 Screenshot VGA Card ....................................................................................... 30

Gambar 2.9 Screenshot Monitor ........................................................................................... 31

Gambar 2.10 Screenshot Keyboard....................................................................................... 32

Gambar 2.11 Screenshot Mouse ........................................................................................... 32

Gambar 2.12 Screenshot Pemasangan Heatsink ................................................................... 34

Gambar 2.13 Screenshot Pemasangan RAM ........................................................................ 35

Gambar 2.14 Screenshot Pemasangan Motherboard ............................................................ 35

Gambar 2.15 Screenshot Pemasangan Kabel ........................................................................ 36

Gambar 2.16 Screenshot Pemasangan VGA Card ................................................................ 36

Gambar 2.17 Screenshot Pemasangan Sound Card .............................................................. 37

Gambar 2.18 Screenshot Pemasangan Drive ........................................................................ 38

Gambar 2.19 Screenshot pemasangan Optical Drive ............................................................ 39

Gambar 2.20 Screenshot Pemasangan Power Supply ........................................................... 40

Gambar 2.21 Screenshot Pengujian ...................................................................................... 40

Gambar 2.22 Screenshot Starting Windows ......................................................................... 41

Gambar 2.23 Screenshot Pemilihan Bahasa, Waktu, lay out Keyboard ............................... 41

Gambar 2.24 Screenshot Install Windows ............................................................................ 42

Gambar 2.25 Screenshot Memulai Set Up ............................................................................ 42

Page 6: Laporan DKP Kelompok 1 SISKOM 2012

6

Gambar 2.26 Screenshot Persetujuan Lisensi ....................................................................... 42

Gambar 2.27 Screenshot Tipe Installasi................................................................................ 43

Gambar 2.28 Screenshot Tempat Penyimpanan Installasi .................................................... 43

Gambar 2.29 Screenshot Partisi Disk ................................................................................... 44

Gambar 2.30 Screenshot Proses Install ................................................................................. 44

Gambar 2.31 Screenshot Memberi Nama User..................................................................... 45

Gambar 2.32 Screenshot Pengaturan Pengaman ................................................................... 45

Gambar 2.33 Screenshot Pengaturan Product Key ............................................................... 46

Gambar 2.34 Screenshot Pilihan Proteksi Komputer ............................................................ 46

Gambar 2.35 Screenshot Pengaturan Zona Waktu ............................................................... 47

Gambar 2.36 Screenshot Pemilihan Lokasi Komputer ......................................................... 47

Gambar 2.37 Screenshot Akhir Pengaturan Windows .......................................................... 47

Gambar 2.38 Screenshot Tampilan Desktop Windows ....................................................... 48

Gambar 2.39 Screenshot Pilihan Bahasa Untuk Komputer Pada Linux ............................... 48

Gambar 2.40 Screenshot Starting Installation Linux ............................................................ 49

Gambar 2.41 Screenshot Pilihan Bahasa Untuk Installasi .................................................... 49

Gambar 2.42 Screenshot Pemilihan Lokasi Waktu............................................................... 50

Gambar 2.43 Screenshot Konfigurasi Keyboard I ................................................................ 50

Gambar 2.44 Screenshot Konfigurasi Keyboard II ............................................................... 51

Gambar 2.45 Screenshot Konfigurasi Keyboard III ............................................................. 51

Gambar 2.46 Screenshot Konfigurasi Jaringan ..................................................................... 51

Gambar 2.47 Screenshot Zona Waktu ................................................................................. 52

Gambar 2.48 Screenshot Pilihan Partisi Disk ....................................................................... 52

Gambar 2.49 Screenshot Pengaturan Partisi Disk................................................................. 53

Gambar 2.50 Screenshot Pilihan Pembuatan Partisi Baru .................................................... 53

Gambar 2.51 Screenshot Pengaturan Partisi ......................................................................... 54

Page 7: Laporan DKP Kelompok 1 SISKOM 2012

7

Gambar 2.52 Screenshot Membuat Partisi Baru ................................................................... 54

Gambar 2.53 Screenshot Ukuran Partisi ............................................................................... 55

Gambar 2.54 Screenshot Tipe Partisi Primary ...................................................................... 55

Gambar 2.55 Screenshot Lokasi Partisi Disk ........................................................................ 56

Gambar 2.56 Screenshot Menyudahi Partisi Primary ........................................................... 56

Gambar 2.57 Screenshot Partisi Baru I ................................................................................. 57

Gambar 2.58 Screenshot Partisi Baru II ................................................................................ 57

Gambar 2.59 Screenshot Ukuran Partisi Disk....................................................................... 58

Gambar 2.60 Screenshot Tipe Partisi Disk ........................................................................... 58

Gambar 2.61 Screenshot Pengaturan Partisi Disk................................................................. 59

Gambar 2.62 Screenshot Cara Menggunakan Partisi Disk ................................................... 59

Gambar 2.63 Screenshot Selesai Pengaturan Partisi ............................................................. 60

Gambar 2.64 Screenshot Mengakhiri Pengaturan Partisi ..................................................... 60

Gambar 2.65 Screenshot Perubahan Nama Pengguna Baru ................................................. 61

Gambar 2.66 Screenshot Nama Pengguna Akun .................................................................. 61

Gambar 2.67 Screenshot Password Baru Pengguna ............................................................. 62

Gambar 2.68 Screenshot Verifikasi Password ...................................................................... 62

Gambar 2.69 Screenshot Mengenskripsi Direktori ............................................................... 62

Gambar 2.70 Screenshot Pengisian HTTP Proxy ................................................................. 63

Gambar 2.71 Screenshot Persetujan Instalasi ....................................................................... 63

Gambar 2.72 Screenshot Instalasi ......................................................................................... 63

Gambar 2.73 Screenshot Persetujuuan Pengaturan Waktu ke UTC ..................................... 63

Gambar 2.74 Screenshot Istalasi Selesai ............................................................................... 64

Gambar 2.75 Screenshot Starting Ubuntu ............................................................................. 64

Gambar 2.76 Screenshot Desktop Linux .............................................................................. 64

Gambar 2.77 Screenshot MD Kelompok .............................................................................. 65

Page 8: Laporan DKP Kelompok 1 SISKOM 2012

8

Gambar 2.78 Screenshot MD Nama ..................................................................................... 65

Gambar 2.79 Screenshot MD NIM ....................................................................................... 66

Gambar 2.80Screenshot CD Kelompok ................................................................................ 66

Gambar 2.81 Screenshot CD Nama ...................................................................................... 67

Gambar 2.82 Screenshot CD NIM ........................................................................................ 67

Gambar 2.83 Screenshot CD ................................................................................................. 68

Gambar 2.84 Screenshot Tree ............................................................................................... 68

Gambar 2.85 Screenshot Date ............................................................................................... 69

Gambar 2.86 Screenshot CLS Sebelum Dijalankan ............................................................. 70

Gambar 2.87 Screenshot CLS Setelah Dijalankan ................................................................ 70

Gambar 2.88 Screenshot DIR ............................................................................................... 71

Gambar 2.89 Screenshot Time .............................................................................................. 72

Gambar 2.90 Screenshot Terminal Linux ............................................................................. 72

Gambar 2.91 Screenshot Masukkan Password Terminal ...................................................... 73

Gambar 2.92 Screenshot Masuk Dorektori ........................................................................... 73

Gambar 2.93 Screenshot Perintah Masuk Direktori Home ................................................... 73

Gambar 2.94 Screenshot Perintah masuk Home ................................................................... 74

Gambar 2.95 Screenshot Membuat Folder Kelompok 1 ....................................................... 74

Gambar 2.96 Screenshot Folder Pada Explorer .................................................................... 74

Gambar 2.97 Screenshot Masuk Folder ................................................................................ 75

Gambar 2.98 Screenshot Membuat Folder Anggi................................................................. 75

Gambar 2.99 Screenshot Folder Anggi Pada Explorer ......................................................... 75

Gambar 2.100 Screenshot Masuk folder Anggi .................................................................... 76

Gambar 2.101 Screenshot Buat folder NIM ......................................................................... 76

Gambar 2.102 Screenshot Folder NIM Pada Explorer ......................................................... 76

Gambar 2.103 Screenshot Masuk Folder NIM ..................................................................... 76

Page 9: Laporan DKP Kelompok 1 SISKOM 2012

9

Gambar 2.104 Screenshot Perintah Memanggil Aplikasi Nano .......................................... 77

Gambar 2.105 Screenshot Tampilan Nano ........................................................................... 77

Gambar 2.106 Screenshot Pengisian Biodata ....................................................................... 77

Gambar 2.107 Screenshot Nano Setelah Disimpan .............................................................. 78

Gambar 2.108 Screenshot Nano ............................................................................................ 78

Gambar 2.109 Screenshot File .txt Pada Explorer ................................................................ 78

Gambar 2.110 Screenshot Terminal ...................................................................................... 79

Gambar 2.111 Screenshot Motherboard ............................................................................... 80

Gambar 2.112 Screenshot Prosessor ..................................................................................... 80

Gambar 2.113 Screenshot VGA ............................................................................................ 81

Gambar 2.114 Screenshot RAM ........................................................................................... 81

Gambar 2.115 Screenshot Power Supply .............................................................................. 81

Gambar 2.116 Screenshot Casing ......................................................................................... 82

Gambar 2.117 Screenshot hard Disk ..................................................................................... 82

Gambar 2.118 Screenshot Optical Drive .............................................................................. 83

Gambar 2.119 Screenshot Sound Card ................................................................................. 83

Gambar 2.120 Screenshot Heatsink ...................................................................................... 83

Gambar 2.121 Screenshot Perintah Hidden File Menggunakan Atribut I ............................ 84

Gambar 2.122 Screenshot Perintah Hidden File Menggunakan Atribut II ........................... 85

Gambar 3.1 Screenshot Tampilan Console Delphi ............................................................... 88

Gambar 3.2 Screenshot Items Delphi.................................................................................... 91

Gambar 3.3 Screenshot Tampilan Running Program Delphi................................................ 91

Gambar 3.4 Screenshot Source Code Program 1 .................................................................. 101

Gambar 3.5 Screenshot Runnign Program 1 ......................................................................... 102

Gambar 3.6 Screenshot Source Code Program 2 .................................................................. 102

Gambar 3.7 Screenshot Penggunaan Variabel ..................................................................... 103

Page 10: Laporan DKP Kelompok 1 SISKOM 2012

10

Gambar 3.8 Screenshot Source Code Program 3 .................................................................. 104

Gambar 3.9 Screenshot Penggunaan Konstanta ................................................................... 104

Gambar 3.10 Screenshot Source Code Program 4 ................................................................ 105

Gambar 3.11 Screenshot Penggunaan Variabel Char ........................................................... 106

Gambar 3.12 Screenshot Source Code Program 5 ................................................................ 106

Gambar 3.13 Screenshot Penggunaan String ........................................................................ 107

Gambar 3.14 Screenshot Source Code Program 6 ................................................................ 108

Gambar 3.15 Screenshot Penggunaan Operasi Aritmatika ................................................... 108

Gambar 3.16 Screenshot Source Code Program 7 ................................................................ 109

Gambar 3.17 Screenshot Pengunaan Logika ........................................................................ 110

Gambar 3.18 Screenshot Source Code Program 8 ................................................................ 110

Gambar 3.19 Screenshot Penggunaan Operasi And ............................................................. 111

Gambar 3.20 Screenshot Source Code Program 9 ................................................................ 112

Gambar 3.21 Screenshot Penggunaan Operasi Or ................................................................ 112

Gambar 3.22 Screenshot Source Code Program 10 .............................................................. 113

Gambar 3.23 Screenshot Penggunaan Operasi Xor .............................................................. 114

Gambar 3.24 Screenshot Source Code Program 11 .............................................................. 114

Gambar 3.25 Screenshot Penggunaan Operasi Input ............................................................ 115

Gambar 3.26 Screenshot Source Code Program 12 .............................................................. 116

Gambar 3.27 Screenshot Penggunaan Statement If .............................................................. 117

Gambar 3.28 Screenshot Source Code Program 13 .............................................................. 118

Gambar 3.29 Screenshot Penggunaan Statement Case 1 ...................................................... 118

Gambar 3.30 Screenshot Penggunaan Statement Case 2 ...................................................... 119

Gambar 3.31 Screenshot Source Code Program 14 .............................................................. 120

Gambar 3.32 Screenshot Penggunaan Statement for ............................................................ 120

Gambar 3.33 Screenshot Source Code Program 15 .............................................................. 121

Page 11: Laporan DKP Kelompok 1 SISKOM 2012

11

Gambar 3.34 Screenshot Penggunaan Statement down to .................................................... 122

Gambar 3.35 Screenshot Source Code Program 16 .............................................................. 122

Gambar 3.36 Screenshot Penggunaan Statement While ....................................................... 123

Gambar 3.37 Screenshot Source Code Program 17 .............................................................. 124

Gambar 3.38 Screenshot Penggunaan Statement Repeat ...................................................... 124

Gambar 3.39 Screenshot Source Code Program 18 dan Compile Operator ......................... 125

Gambar 3.40 Screenshot Source Code 1 Program Luas Bangun Datar ................................ 127

Gambar 3.41 Screenshot Source Code 2 Program Luas Bangun Datar ................................ 128

Gambar 3.42 Screenshot Source Code 3 Program Luas Bangun Datar ................................ 128

Gambar 3.43 Screenshot Source Code 4 Program Luas Bangun Datar ................................ 129

Gambar 3.44 Screenshot running awal Program Luas Bangun Datar .................................. 130

Gambar 3.45 Screenshot Program Luas Bangun Datar Inputan Awal 1............................... 130

Gambar 3.46 Screenshot Program Luas Bangun Datar Menu 1 ........................................... 130

Gambar 3.47 Screenshot Program Luas Bangun Datar (Hitung Lagi / Tidak) ..................... 131

Gambar 3.48 Screenshot Program Luasa Bangun Datar Inputan Awal 2 ............................. 131

Gambar 3.49 Screenshot Program Luas Bangun Datar Menu 2 ........................................... 132

Gambar 3.50 Screenshot Program Luas Bangun Datar Inputan Awal 3............................... 132

Gambar 3.51 Screenshot Program Luas Bangun Datar Menu Keluar Program ................... 133

Gambar 3.52 Screenshot Program Luas Bangun Datar (Input/Tidak) .................................. 133

Gambar 3.53 Screenshot Source Code 1 Program Luas Balok ............................................. 135

Gambar 3.54 Screenshot Source Code 2 Program Luas Balok ............................................. 136

Gambar 3.55 Screenshot Running Awal Program Luas Balok ............................................. 136

Gambar 3.56 Screenshot Running 2 Program Luas Balok ................................................... 137

Gambar 3.57 Screenshot Running 3 Program Luas Balok ................................................... 137

Gambar 3.58 Screenshot Running 4 Program Luas Balok ................................................... 137

Gambar 3.59 Screenshot Running 5 Program Luas Balok ................................................... 138

Page 12: Laporan DKP Kelompok 1 SISKOM 2012

12

Gambar 3.60 Screenshot Running 6 Program Luas Balok ................................................... 138

Gambar 4.1 Screenshot Source Code Program 1 .................................................................. 149

Gambar 4.2 Screenshot Running Program 1 ......................................................................... 149

Gambar 4.3 Screenshot Source Code Program 2 .................................................................. 151

Gambar 4.4 Screenshot Running Program 2 Ketika Angka Ditemukan ............................... 151

Gambar 4.5 Screenshot Running Program 2 Ketika Angka Tidak Ditemukan .................... 151

Gambar 4.6 Screenshot Source Code Program 3 a .............................................................. 153

Gambar 4.7 Screenshot Source Code Program 3 (lanjutan) ................................................. 153

Gambar 4.8 Screenshot Runnign Program 3 ......................................................................... 153

Gambar 4.9 Screenshot Source Code Program 4 a ............................................................... 157

Gambar 4.10 Screenshot Source Code Program 4 (lanjutan) ............................................... 157

Gambar 4.11 Screenshot Source Code Program 4 (lanjutan) .............................................. 158

Gambar 4.12 Screenshot Running Program 4 ....................................................................... 158

Gambar 4.13 Screenshot Running Program 4 ....................................................................... 158

Gambar 4.14 Screenshot Source Code Porgram 5 ................................................................ 161

Gambar 4.15 Screenshot Sourcce Code Program 5 (lanjutan) .............................................. 161

Gambar 4.16 Screenshot Source Code Program 5 (lanjutan) ............................................... 162

Gambar 4.17 Screenshot Running Program 5 ....................................................................... 162

Gambar 4.18 Screenshot Running Program 5 ....................................................................... 162

Gambar 4.19 Screenshot Tampilan Program Tugas 1 .......................................................... 164

Gambar 4.20 Screenshot Running Program Tugas 1 (lanjutan) .......................................... 164

Gambar 4.21 Screenshot Running Program Tugas 1 (lanjutan) ........................................... 165

Gambar 4.22 Screenshot Running Program Tugas 1 (lanjutan) ........................................... 165

Gambar 4.23 Screenshot Running Program Tugas 2 ............................................................ 167

Gambar 4.24 Screenshot Running Program Tugas 2(lanjutan) ............................................ 167

Gambar 4.25 Screenshot Running Program Tugas 2 (lanjutan) ........................................... 168

Page 13: Laporan DKP Kelompok 1 SISKOM 2012

13

Gambar 4.26 Screenshot Running Program Tugas 3 ............................................................ 169

Gambar 4.27 Screenshot Running Program Tugas 3 (lanjutan) ........................................... 169

Gambar 4.28 Screenshot Running Program Tugas 3 (lanjutan) ........................................... 170

Gambar 5.1 Screenshot Installasi C# Tahap 1 ...................................................................... 175

Gambar 5.2 Screenshot Installasi C# Tahap 2 ...................................................................... 175

Gambar 5.3 Screenshot Installasi C# Tahap 3 ...................................................................... 176

Gambar 5.4 Screenshot Installasi C# Tahap 4 ...................................................................... 176

Gambar 5.5 Screenshot Installasi C# Tahap 5 ..................................................................... 177

Gambar 5.6 Screenshot Source Code Program 1 .................................................................. 180

Gambar 5.7 Screenshot Running Program 1 ......................................................................... 180

Gambar 5.8 Screenshot Source Code Program 2 .................................................................. 182

Gambar 5.9 Screenshot Running Program 2 ......................................................................... 182

Gambar 5.10 Screenshot Source Code Porgram 3 ................................................................ 183

Gambar 5.11 Screenshot Running Program 3 ....................................................................... 183

Gambar 5.12 Screenshot Source Code Program 4 ................................................................ 184

Gambar 5.13 Screenshot Running Program 4 ....................................................................... 185

Gambar 5.14 Screenshot Source Code Program 5 ................................................................ 186

Gambar 5.15 Screenshot Running Program 5 ....................................................................... 186

Gambar 5.16 Screenshot Source Code Program 6 ................................................................ 188

Gambar 5.17 Screenshot Running Program 6 Jika Alas dan Tinngi <>0 ............................. 189

Gambar 5.18 Screenshot Running Program 6 Jika Alas dan Tinggi = 0 .............................. 189

Gambar 5.19 Screenshot Source Code program 7 ................................................................ 191

Gambar 5.20 Screenshot Running Program 7 jika Nilai > 80 .............................................. 191

Gambar 5.21 Screenshot Running Program 7 jika Nilai < 80 .............................................. 192

Gambar 5.22 Screenshot Source Code Program 8 ................................................................ 194

Gambar 5.23 Screenshot Running Program 8 ....................................................................... 194

Page 14: Laporan DKP Kelompok 1 SISKOM 2012

14

Gambar 5.24 Screenshot Source Code Program 9 ................................................................ 195

Gambar 5.25 Screenshot Running Program 9 ....................................................................... 196

Gambar 5.26 Screenshot Source Code Program 10 .............................................................. 197

Gambar 5.27 Screenshot Running Porgram 10 ..................................................................... 197

Gambar 5.28 Screenshot Source Code Program 11 .............................................................. 199

Gambar 5.29 Screenshot Running Program 11 ..................................................................... 199

Gambar 5.30 Screenshot Source Code Program Latihan 1 ................................................... 203

Gambar 5.31 Screenshot Running Program Latihan 1.......................................................... 204

Gambar 5.32 Screenshot Source Code Program Latihan 2 ................................................... 205

Gambar 5.33 Screenshot Running Program Latihan 2.......................................................... 206

Gambar 5.34 Screenshot Source Code Program Latihan 3 ................................................... 207

Gambar 5.35 Screenshot Running Program Latihan 3.......................................................... 208

Gambar 5.36 Screenshot Source Code Program Studi Kasus 1 ............................................ 210

Gambar 5.37 Screenshot Running Program Studi Kasus 1................................................... 210

Gambar 5.38 Screenshot Source Code Program Studi Kasus 2 ............................................ 213

Gambar 5.39 Screenshot Running Program Studi Kasus 2................................................... 213

Gambar 5.40 Screenshot Running Program Studi Kasus 2 jika Form Kosong .................... 213

Gambar 6.1 Screenshot Source Code Program Latihan Array Dimensi 1 ........................... 223

Gambar 6.2 Screenshot Running Program Latihan Array Dimensi 1 ................................... 223

Gambar 6.3 Screenshot Source Program Latihan Array Dimensi 2 ..................................... 224

Gambar 6.4 Screenshot Running Program Latihan Array Dimensi 2 ................................... 225

Gambar 6.5 Screenshot Source Code Program Latihan Array Perulangan .......................... 226

Gambar 6.6 Screenshot Running Program Latihan Array Perulangan ................................. 226

Gambar 6.7 Screenshot Source Code Program Penjumlahan Matriks .................................. 228

Gambar 6.8 Screenshot Running Program Penjumlahan Matriks ........................................ 228

Gambar 6.9 Screenshot Source Code Program Latihan Queue ............................................ 230

Page 15: Laporan DKP Kelompok 1 SISKOM 2012

15

Gambar 6.10 Screenshot Running Program Latihan Queue ................................................. 230

Gambar 6.11 Screenshot Source Code Latihan Stack ........................................................... 231

Gambar 6.12 Screenshot Running Program Latihan Stack ................................................... 232

Gambar 6.13 Screenshot Source Code Program Pengurutan Data Secara

Ascending .............................................................................................................................. 233

Gambar 6.14 Screenshot Running Program Pengurutan Data Secara Ascending ................ 234

Gambar 6.15 Screenshot Source Code Program Pengurangan Matriks ................................ 237

Gambar 6.16 Screenshot Running Program Pengurangan Matriks ...................................... 238

Gambar 6.17 Screenshot Coding Program Menambah Mengurang Data dgn

Queue .................................................................................................................................... 241

Gambar 6.18 Screenshot Running Program Menambah Mengurang Data dgn

Queue .................................................................................................................................... 242

Gambar 6.19 Screenshot Coding Program Menambah Menghapus Data Dgn Stack ........... 245

Gambar 6.10 Screenshot Running Program Menambah Mengurang Data dgn

Stack ...................................................................................................................................... 246

Gambar 6.21 Screenshot Coding Program Mengurutkan Data Secara Descending ............. 248

Gambar 6.22 Screenshot Running Program Mengurutkan Data Secara Descending ........... 248

Gambar 7.1 Screenshot Source Code Program Output ......................................................... 259

Gambar 7.2 Screenshot Runing Program Output .................................................................. 260

Gambar 7.3 Screenshot Source Code Input Output .............................................................. 261

Gambar 7.4 Screenshot Running Input Output ..................................................................... 261

Gambar 7.5 Screenshot Source Code If Else ........................................................................ 263

Gambar 7.6 Screenshot Running If Else ............................................................................... 263

Gambar 7.7 Screenshot Source Code Switch Case ............................................................... 265

Gambar 7.8 Screenshot Running Switch Case ...................................................................... 265

Gambar 7.9 Screenshot Source Code Program For .............................................................. 267

Gambar 7.10 Screenshot Running Program For ................................................................... 267

Page 16: Laporan DKP Kelompok 1 SISKOM 2012

16

Gambar 7.11 Screenshot Source Code While ....................................................................... 270

Gambar 7.12 Screenshot Running While .............................................................................. 270

Gambar 7.13 Screenshot Source Code Program latihan 1 .................................................... 272

Gambar 7.14 Screenshot Running Program Latihan 1.......................................................... 272

Gambar 7.15 Screenshot Source Code Program Latihan 2 If Then Else ............................. 274

Gambar 7.16 Screenshot Running Program Latihan 2 If Then Else .................................... 274

Gambar 7.17 Screenshot Source Code Program Latihan 2 Switch Case .............................. 277

Gambar 7.18 Screenshot Running Program Altihan 2 Switch Case ..................................... 277

Gambar 7.19 Screenshot Source Code Program Latihan 3 For ............................................ 278

Gambar 7.20 Screenshot Running Program Latihan 3 For ................................................... 279

Gambar 7.21 Screenshot Source Code Program Latihan 3 While ........................................ 280

Gambar 7.22 Screenshot Running Program Latihan 3 While ............................................... 280

Gambar 8.1 Screenshot Source Code Program 1 .................................................................. 287

Gambar 8.2 Screenshot Running Program 1 ......................................................................... 287

Gambar 8.3 Screenshot Source Code Program 2 .................................................................. 288

Gambar 8.4 Screenshot Running Program 2 ......................................................................... 289

Gambar 8.5 Screenshot Source Code Program 3 .................................................................. 290

Gambar 8.6 Screenshot Running Program 3 ......................................................................... 290

Gambar 8.7 Screenshot Source Code Program 4 .................................................................. 292

Gambar 8.8 Screenshot Running Program 4 ......................................................................... 292

Gambar 8.9 Screenshot Source Code Program 5 .................................................................. 294

Gambar 8.10 Screenshot Running Program 5 ....................................................................... 294

Gambar 8.11 Screenshot Source Code Program 6 ................................................................ 295

Gambar 8.12 Screenshot Running Program 6 ....................................................................... 295

Gambar 8.13 Screenshot Source Code Program 7 ................................................................ 297

Gambar 8.14 Screenshot Running Program 7 ....................................................................... 297

Page 17: Laporan DKP Kelompok 1 SISKOM 2012

17

Gambar 8.15 Screenshot Source Code Program 8 ................................................................ 299

Gambar 8.16 Screenshot Runnign Program 8 ....................................................................... 299

Gambar 8.17 Screenshot Source Code Program 9 ................................................................ 301

Gambar 8.18 Screenshot Running Program 9 ....................................................................... 301

Gambar 8.19 Screenshot Source Code Ptogram Studi Kasus ............................................... 303

Gambar 8.20 Screenshot Running Program Studi Kasus...................................................... 303

Gambar 9.1 Screenshot set up APPserv ................................................................................ 307

Gambar 9.2 Screenshot Source Code Program Menampilkan Kata ..................................... 311

Gambar 9.3 Screenshot Running Program Menampilkan Kata ............................................ 311

Gambar 9.4 Screenshot Source Program Menampilkan Nama Buah ................................... 314

Gambar 9.5 Screenshot Running Program Menampilkan Nama Buah ................................ 314

Gambar 9.6 Screenshot Source Code Program Menampilkan Angka 1-100 ........................ 315

Gambar 9.7 Screenshot Running Program Menampilkan Angka 1-100 .............................. 316

Gambar 9.8 Screenshot Source Code Program Array Menampilkan Nama Kota ................ 316

Gambar 9.9 Screenshot Running Program Array Menampilkan Nama Kota ....................... 317

Gambar 9.10 Screenshot Source Code Program menampilkan Biodata Kelompok ............. 318

Gambar 9.11 Screenshot Running Program Menampilkan Biodata Kelompok ................... 320

Gambar 9.12 Screenshot Source Code Program Memasukkan Identitas .............................. 321

Gambar 9.13 Screenshot Running Program Menampilkan Identitas .................................... 322

Gambar 9.14 Screenshot Source Code Program Menampilkan Identitas ............................. 322

Gambar 9.15 Screenshot Running Program Menampilkan Identitas .................................... 323

Gambar 9.16 Screenshot Source Code Program File Data Praktikan 1 ................................ 324

Gambar 9.17 Screenshot Running Program File Data Praktikan 1 ....................................... 325

Gambar 9.18 Screenshot Source Code Program File Data Praktikan 2 ................................ 325

Gambar 9.19 Screenshot Running Program File Data Praktikan 2 ....................................... 326

Gambar 9.20 Screenshot Source Code Program file Data Praktikan 3 ................................. 326

Page 18: Laporan DKP Kelompok 1 SISKOM 2012

18

Gambar 9.21 Screenshot Running Program File Data Praktikan 3 ....................................... 327

Gambar 9.22 Screenshot Source Code Menampilkan Data Praktikan .................................. 327

Gambar 9.23 Screenshot Running Program Menampilkan Data Praktikan .......................... 327

Gambar 9.24 Screenshot Source Code Menampilkan menu Studi kasus ............................. 332

Gambar 9.25 Screenshot Tampilan Menu Tentang Kelompok Studi Kasus ........................ 334

Gambar 9.26. Screenshot Tampilan Menu Anggota 1 .......................................................... 334

Gambar 9.27 Screenshot Tampilan Menu Anggota 2 ........................................................... 335

Gambar 9.28 Screenshot Tampilan Menu Anggota 3 ........................................................... 335

Page 19: Laporan DKP Kelompok 1 SISKOM 2012

19

DAFTAR TABEL

Tabel 3.1Tipe Bilangan Bulat ............................................................................................... 94

Tabel 3.2 Tipe bilangan rill ................................................................................................... 95

Tabel 3.3 Operasi Aritmatika ................................................................................................ 96

Tabel 3.4 Operasi Relasional ................................................................................................ 97

Tabel 9.1 Harga Buah ........................................................................................................... 312

Page 20: Laporan DKP Kelompok 1 SISKOM 2012

20

ABSTRAK

Perkembangan teknologi yang begitu pesat, telah memudahkan

kehidupan manusia. Salah satu teknologi yang perkembangannya begitu pesat

adalah komputer. Kini, hampir semua kegiatan manusia dimudahkan dengan

adanya alat ini. Berbagai pekerjaan seperti mengetik, menonton tv, hingga

melakukan berbagai perhitungan yang rumit dapat dikerjakan melalui

perangkat ini. Namun, kehadiran komputer tidak akan berarti jika tidak

dilengkapi adanya berbagai program komputer. Komputer hanyalah alat untuk

menjalankan program aplikasi itu. Program tersebut dibuat dengan berbagai

macam bahasa pemrograman, antara lain C1, C2, PHP dan lain-lain.

Pada praktikum ini dibahas tentang Hardware dan Sistem Operasi,

Dasar Pemrograman Delphi I, Delphi II, C#I, C#II, Java I, Java II dan PHP

yang merupakan Bahasa Pemrograman yang sering digunakan untuk membuat

program yang sering kita gunakan dalam kehidupan sehari-hari.

Kata kunci : Delphi 1, Delphi II, C#i, C#II, Java I, Java II, PHP

Page 21: Laporan DKP Kelompok 1 SISKOM 2012

21

BAB 1

PENDAHULUAN

1.1 Latar Belakang Pelaksanaan Praktikum

Perkembangan teknologi yang begitu pesat, telah memudahkan kehidupan

manusia. Salah satu teknologi yang perkembangannya begitu pesat adalah

komputer. Kini, hampir semua kegiatan manusia dimudahkan dengan adanya alat

ini. Berbagai pekerjaan seperti mengetik, menonton tv, hingga melakukan

berbagai perhitungan yang rumit dapat dikerjakan melalui perangkat ini. Namun,

kehadiran komputer tidak akan berarti jika tidak dilengkapi adanya berbagai

program komputer. Komputer hanyalah alat untuk menjalankan program aplikasi

itu. Program tersebut dibuat dengan berbagai macam bahasa pemrograman, antara

lain C1, C2, PHP dan lain-lain.

Dengan semakin rumitnya permasalahan yang muncul di masyarakat,

maka pembuatan program aplikasi menjadi semakin berkembang sehingga

program aplikasi yang dibuat pun menjadi semakin canggih. Selain komputer,

internet saat ini menjadi salah satu teknologi yang sangat penting. Kita dapat

bertukar informasi dan melakukan komunikasi jarak jauh melalui media ini.

Untuk itu, agar dapat bertahan dalam era globalisasi ini, kita perlu menguasai

berbagai teknologi ini.

1.2 Tujuan Praktikum

Tujuan yang akan dicapai dari Praktikum Dasar Komputer dan

Pemrograman 2011 yaitu :

1. Mampu menjelaskan definisi Personal Computer serta bagian –

bagian penyusun Personal Computer.

2. Mampu memasang, merakit serta mengkoneksikan komponen –

komponen penyusun Personal Computer menjadi suatu sistem yang

terintegrasi.

3. Untuk mengetahui system operasi Internal Command dan External

command dalam DOS (Disk Operating System) pada Windows dan

Terminal dalam Linux

Page 22: Laporan DKP Kelompok 1 SISKOM 2012

22

4. Praktikan mengenal Borland Delphi sebagai tool untuk membuat

program

5. Praktikan mengerti konsep dari array dan record serta cara

pengaplikasiannya.

6. Mengenal bahasa pemrograman C#

7. Mengenal bahasa pemrograman Java

8. Mengenal bahasa pemrograman PHP

1.3 Metode Pengumpulan Data

Dalam Penyusunan Laporan Praktikum Dasar Komputer dan

Pemrograman 2011 ini, penyusun memperoleh data – data dari praktikum di

laboratorium yang digabungkan dengan materi – materi tambahan dari

referensi – referensi seperti modul praktikum.

1.4 Sistematika Penulisan Laporan Praktikum

Laporan Praktikum Dasar Komputer dan Pemrograman 2012 ini

disusun dengan sistematika penulisan sebagai berikut :

1. Bab I Pendahuluan

Bab I berisi tentang latar belakang serta tujuan dari praktikum ini

dilakukan dan juga metode penelitian yang digunakan untuk

menyelesaikan setiap laporan praktikum.

2. Bab II Hardware Dan Sistem Operasi

Bab II berisi tujuan, metode percobaan, pembahasan system info

pada komputer, menampilkan cara merakit sebuah PC secara virtual

menggunakan software Cisco - IT Essentials virtual Desktop PC &

laptop. Pada bagian akhir terdapat kesimpulan dari laporan bab II

ini.

3. Bab III Dasar Pemrograman Delphi I

Bab III berisi tujuan, metode percobaan, pembahasan Cara membuat

Program sederhana . Dan Pada bagian akhir terdapat kesimpulan dari

laporan bab III ini.

Page 23: Laporan DKP Kelompok 1 SISKOM 2012

23

4. Bab IV Dasar Pemrograman Delphi II

Bab IV berisi tujuan, metode percobaan, pembahasan Cara membuat

Program sederhana menggunakan Array . Dan Pada bagian akhir

terdapat kesimpulan dari laporan bab III ini.

5. Bab V Pemrograman C#1

Bab V berisi tujuan, metode percobaan, pembahasan source code

pada C#1, dan pembahasan component-component yang terdapat

dalam C#1. Pada laporan ini terdapat juga pembuatan aplikasi

sederhana menggunakan pemrograman C#1. Pada bagian akhir

terdapat kesimpulan dari laporan bab V ini.

6. Bab VI Pemrograman C#2

Bab VI berisi tujuan, metode percobaan, mendefinisikan fungsi,

prototipe, parameter dan argumen, array, larik dan lain-lainnya.

Hasil percobaan menampilkan fungsi array, larik dimensi banyak,

contoh-contoh dari modul. Analisa pembahasan menjelaskan satu

per satu setiap listing dan menerangkan fungsinya. Dan juga

kesimpulan dari laporan VI ini.

7. Bab VII Pemrograman Java I

Bab VII berisi tujuan, metode percobaan, analisa dan pembahasan

tiap-tiap Komponen Java. Hasil percobaan menampilkan Program

Sederhana. Selain itu juga terdapat analisa pembahasan beberapa

Komponen-komponen pada java. Hasil percobaan menampilkan

semua yang dilakukan saat praktikum dan data-data yang terdapat

dalam modul. Kesimpulan disertakan di akhir bab.

8. Bab VIII Pemrograman Java 2

Bab VIII berisi tujuan, data percobaan, analisa dan pembahasan tiap-

tiap Komponen Java Termmasuk Array. Analisisnya tentang

penyelesaian Program sederhana dan kesimpulan dilampirkan di

akhir bab.

Page 24: Laporan DKP Kelompok 1 SISKOM 2012

24

9. Bab IX Pemrograman PHP

Bab IX berisi tujuan, data percobaan, analisa dan pembahasan tiap-

tiap data percobaan. Analisisnya tentang fungsi (function) dan

kegunaanya serta aplikasinya dalam program sederhana.

10. Bab X Penutup

Bab X berisi kesimpulan dari seluruh praktikum yang telah

dijalankan dan saran dari Praktikum Dasar Komputer dan

Pemrograman 2012 ini.

11. Daftar Pustaka

Daftar Pustaka berisi referensi yang digunakan untuk menyelesaikan

laporan ini.

12. Lampiran

Page 25: Laporan DKP Kelompok 1 SISKOM 2012

25

BAB II

HARDWARE DAN SISTEM OPERASI

2.1 Tujuan

1. Untuk mengenal dan mengetahui komputer dan perangkat-perangkat

yang menyusun komputer.

2. Dapat melakukan perakitan dan mengetahui fungsi dari masing-

masing perangkat yang meyusun komputer.

3. Dapat melakukan instalasi Sistem Operasi .

4. Untuk mengetahui system operasi Internal Command dan External

command dalam DOS (Disk Operating System) pada Windows dan

Terminal dalam Linux

2.2 Dasar Teori

2.2.1 Pengertian Komputer

Komputer dapat diartikan sebagai suatu alat elektronik

yang mampu menerima input, mengolah input (proses),

memberikan informasi serta bekerja secara otomatis sehingga

keberadaan komputer sekarang ini sangat membantu dalam kerja

manusia seiring dengan perkembangan zaman yang mebutuhkan

sistem informasi yang tepat dan cepat.

Tujuan pokok dari sistem komputer adalah mengolah data

untuk menghasilkan informasi sehingga perlu didukung oleh

elemen-elemen yang terdiri dari perangkat keras (hardware),

perangkat lunak (software), dan brainware.

Struktur komputer dapat didefinisikan sebagai cara-cara

dari tiap komponen saling terkait. Struktur sebuah komputer secara

sederhana, dapat digambarkan dalam diagram blok pada gambar di

bawah ini.

Page 26: Laporan DKP Kelompok 1 SISKOM 2012

26

Gambar 2.1 Struktrur Kerja Komputer

Komputer terdiri atas perangkat keras (hardware) dan

perangkat lunak (software) yang mempunyai fungsi khusus dalam

suatu sistem kerja komputer. Software atau perangkat lunak,

merupakan program-program komputer yang berguna untuk

menjalankan suatu pekerjaan sesuai dengan yang dikehendaki,

antara lain:

a) Sistem Operasi

Adalah software yang berfungsi untuk mengaktifkan seluruh

perangkat yang terpasang pada komputer sehingga masing-

masingnya dapat saling berkomunikasi.

b) Program Utility

Program utility berfungsi untuk membantu atau mengisi

kekurangan/kelemahan dari sistem operasi.

c) Program aplikasi

Merupakan program yang khusus melakukan suatu pekerjaan

tertentu, seperti program gaji pada suatu perusahaan.

d) Bahasa Pemrograman

Merupakan software yang khusus digunakan untuk membuat

program komputer.

Sedangkan fungsi komputer didefinisikan sebagai masing-

masing komponen sebagai bagian dari struktur. Adapun fungsi dari

Page 27: Laporan DKP Kelompok 1 SISKOM 2012

27

masing-masing komponen dalam struktur di atas adalah sebagai

berikut :

1. Input Device

Adalah perangkat keras komputer yang berfungsi sebagai alat

untuk memasukan data atau perintah ke dalam komputer.

2. Output Device

Adalah perangkat keras komputer yang berfungsi untuk

menampilkan keluaran sebagai hasil pengolahan data. Keluaran

dapat berupa hard-copy (ke kertas), soft-copy (ke monitor),

ataupun berupa suara.

3. I/O Ports

Bagian ini digunakan untuk menerima ataupun mengirim data ke

luar sistem. Peralatan input dan output di atas terhubung melalui

port ini.

4. CPU (Central Processing Unit)

CPU merupakan otak sistem komputer, dan memiliki dua bagian

fungsi operasional, yaitu: ALU (Arithmetical Logical Unit)

sebagai pusat pengolah data, dan CU (Control Unit) sebagai

pengontrol kerja komputer.

5. Memori

Memori terbagi menjadi dua bagian yaitu memori internal dan

memori eksternal. Memori internal berupa RAM (Random Access

Memory) yang berfungsi untuk menyimpan program yang kita

olah untuk sementara waktu, dan ROM (Read Only Memory)

yaitu memori yang hanya bisa dibaca dan berguna sebagai

penyedia informasi pada saat komputer pertama kali dinyalakan.

6. Data Bus

Adalah jalur-jalur perpindahan data antar modul dalam sistem

komputer. Karena pada suatu saat tertentu masing-masing saluran

hanya dapat membawa 1 bit data, maka jumlah saluran

menentukan jumlah bit yang dapat ditransfer pada suatu saat.

Lebar data bus ini menentukan kinerja sistem secara keseluruhan.

Page 28: Laporan DKP Kelompok 1 SISKOM 2012

28

Sifatnya bidirectional, artinya CPU dapat membaca dan menerima

data melalui data bus ini. Data bus biasanya terdiri atas 8, 16, 32,

atau 64 jalur paralel.

7. Address Bus

Digunakan untuk menandakan lokasi sumber ataupun tujuan pada

proses transfer data. Pada jalur ini, CPU akan mengirimkan

alamat memori yang akan ditulis atau dibaca. Address bus

biasanya terdiri atas 16, 20, 24, atau 32 jalur paralel.

8. Control Bus

Control Bus digunakan untuk mengontrol penggunaan serta akses

ke Data Bus dan Address Bus. Terdiri atas 4 samapai 10 jalur

paralel.

2.2.2 Komponen Komputer

Komputer merupakan gabungan dari beberapa komponen

yang saling terintegrasi. Jika salah satu tidak berjalan akan

mempengaruhi komponen lain, tapi kadang juga berpengaruh pada

komponen lain.

Komputer memiliki beberapa komponen berikut :

1. Mainboard / Motherboad

merupakan papan induk atau main board dimana semua divice

dipasang mulai dari processor, memory, slot-slot untuk ekspansi,

dan lain-lain. Mainboard tidak kalah penting dengan prosesor

karena mainboard adalah rangkaian pembuluh darah dan jaringan

urat syaraf pada komputer. Jika mainboard yang kurang baik

maka akan mengakibatkan tidak maksimalnya kinerja peripheral

lain.

2. CPU

CPU ( Central Procssin Unit ) istilah lainnya adalah prosesor

(pengolah data) adalah sebagai otak komputer yang berfungsi

sebagai kendali utama komputer. Komponen CPU terbagi

beberapa macam, yaitu sebagai berikut:

Page 29: Laporan DKP Kelompok 1 SISKOM 2012

29

a. Unit kontrol yang mengatur jalannya program.

b. Register berfungsi untuk menyimpan data dan instruksi

yang sedang diproses.

c. ALU adalah unit yang bertugas untuk melakukan operasi

aritmatika dan operasi logika berdasarkan instruksi yang

telah ditentukan.

3. RAM ( Random Acces Memory )

RAM ( Random Access Memory ) adalah memori yang digunakan

sebagai media penyimpanan data sementara yang sedang

dikerjakan oleh komputer.

4. Hard Disk

Hard Disk adalah media penyimpanan yang memiliki kapasitas

yang sangat besar untuk menyimpan data berupa informasi dan

dokumen

5. SATA

SATA ( Serial ATA ) adalah revolusi baru cara pemasangan

hardisk dengan hanya satu devices dalam satu ports SATA. Serial

ATA adalah sebuah antarmuka penyimpanan untuk

menghubungkan host bus adapter untuk perangkat penyimpanan

massal seperti hard disk drive dan optical drive. Mulai pada tahun

2004, SATA host adapter terintegrasi ke hampir semua

motherboard modern, baik itu desktop maupun laptop.

6. ATA

ATA (AT Attachment) adalah standar penyimpanan utama untuk

menghubungkan ke PC. ATA menggantikan teknologi terdahulu

seperti MFM, RLL, dan ESDI. ATA saat ini bersaing dengan

SCSI. ATA adalah spesifikasi untuk memasang hard drive ke bus

AT. Spesifikasi AT telah diperpanjang untuk mencakup

penyimpanan lainnya, seperti CD / DVD drive, tape drive, dan

drive Zip dengan Advanced Technology Attachment Packet

Interface (ATAPI) penambahan spesifikasi.

Page 30: Laporan DKP Kelompok 1 SISKOM 2012

30

7. VGA

VGA adalah Video Grapich Card / Kartu grafis / kartu video

adalah kartu ekspansi yang berfungsi untuk menciptakan dan

menampilkan tampilan-tampilan di layar

8. Monitor

Monitor adalah alat menampilkan hasil pengolahan data ( output

). Monitor komputer juga dijelaskan sebagai Perangkat output

yang menampilkan aksara dan/atau gambar, baik diam atau

bergerak, yang diproses/diperintahkan dari CPU melalui media

input.

9. Keyboard

Keyboard adalah alat memasukan karakter yang akan diproses.

Papan ketik (bahasa Inggris: keyboard) atau peranti untuk

mengetik atau memasukkan huruf, angka, atau simbol tertentu ke

perangkat lunak atau sistem operasi yang dijalankan oleh

komputer.

10. Mouse

Mouse bekerja dengan menangkap gerakan menggunakan bola

yang menyentuh permukaan keras dan rata. Mouse yang lebih

modern sudah tidak menggunakan bola lagi, tetapi menggunakan

sinar optikal untuk mendeteksi gerakan. Selain itu, ada pula yang

sudah menggunakan teknologi nirkabel, baik yang berbasis radio,

sinar inframerah, maupun bluetooth.

2.2.3 SISTEM OPERASI

Sistem operasi atau operating sistem adalah sekumpulan

perintah atau instruksi dari program-program yang berfungsi

sebagai Interface antara Brainware dan Hardware, dalam mengatur

semua pengoperasian dasar komputer. Semua program lain

memerlukan sistem operasi untuk bekerja. Tanpa adanya sistem

operasi, komputer hanya akan menjadi tumpukan Hardware yang

tidak berguna.

Page 31: Laporan DKP Kelompok 1 SISKOM 2012

31

Dalam dunia komputer ada banyak sistem operasi yang

telah dikembangkan yaitu UNIX, GNU/Linux, Ms. Windows, SUN

Solaris dan BSD. Masing-masing sistem operasi tersebut

mempunyai ciri dalam memanagemen hardware.

1. Microsoft Windows

Microsoft windows merupakan sebuah sistem operasi yang

berbasis GUI ( Graphical User Interface ) yang dikembangkan oleh

Microsoft Corporation. Ada banyak versi Windows yang ada,

mulai dari Windows 1.0; Windows 2.0; Windows 3.0; Windows

3.11;sampai Windows 95 dan 98, Windows ME, Windows XP,

yang dipergunakan untuk keperluan desktop / keperluan sehari-

hari, Windows Vista, Windows 7, Windows 2000 Server dan 2003

Server untuk keperluan sebagai server.

2. Linux

Linux merupakan sebuah sistem operasi free-software dan

open source. free-software yang dimaksud disini adalah freedom-

software bukannya software free dalam arti gratis, meskipun

hampir semua free-software adalah gratis.konsep free-software

pada awalnya muncul dari seorang hacker bernama Richall

Stallman. Pada tahun 1985 Stallman mendirikan free-software

foundation untuk mendukung proyek GNU (GNU’s Not Unix)

proyek ini bertujuan untuk menciptakan sebuah sistem operasi

handal yang sepenuhnya gratis.

2.2.4 COMMAND PROMPT

1. Membuat direktori

Ketik MD Nama Direktori yang dibuat

Contoh : ketik MD Kelompok (untuk membuat direktori kelompok)

Page 32: Laporan DKP Kelompok 1 SISKOM 2012

32

2. Memasuki / turun ke suatu direktori atau sub-direktori

Ketik CD nama direktori yang telah dibuat

Contoh : ketik CD kelompok (untuk masuk ke direktori kelompok)

3. Naik satu tingkat / level :

ketik CD..

Contoh : ketik CD..dari C:\Kelompok untuk kembali ke C:\

Ketik CD..dari C:\Kelas\WINDOWS untuk kembali ke

C:\Kelompok

4. Menghapus sebuah Direktori

[RD] [drive] [path:\] [Nama Direktori]

Ketik RD C:\Kelompok\WINDOWS untuk menghapus sub-

direktori WINDOWS dari C:\Kelompok

5. Menampilkan daftar isi direktori dalam bentuk bagan

ketik C:\Kelas\WINDOWS>tree

Pada direktori WINDOWS harus memiliki sub-direktori agar dapat

dimunculkan dalam bentuk bagan.

6. DATE

berfungsi untuk melihat atau mengisikan tanggal yang berlaku pada

BIOS computer.

Rumus : DATE ( mm – dd – year )

7. DEL

adalah perintah yang digunakan untuk menghapus suatu atau

beberapa file sekaligus.

DEL merupakan singkatan dari DELETE yang terjemahannya

berati menghapus.

Rumus : DEL [ drive : ] [ path ] [ nama file ]

Contoh penggunaan :

Page 33: Laporan DKP Kelompok 1 SISKOM 2012

33

DEL TUGAS.DOC

Menghapus file yang bernama TUGAS.DOC

DEL B:\ *.DOC

8. CLS

berfungi untuk membersihkan tampilan pada layar monitor.

Rumus : CLS

9. COPY

berfungsi untuk membuat salinan suatu file atau beberapa file

sekaligus.

Rumus : COPY [ drive sumber ] [ nama file ] [drive tujuan]

[nama file]

Contoh penggunaan : COPY A: FORMAT.COM C :>

Menyalin file FORMAT.COM dari drive A ke drive B dengan

nama yang sama.

COPY TUGAS1.DOC LATIHAN.DOC

Menyalin file TUGAS1.DOC menjadi LATIHAN.DOC pada

drive atau direktori yang sama.

10. DIR

Memperlihatkan daftar isi dari sebuah media penyimpanan

Rumus : DIR [ drive : ] [ path ] [ filename ] [ syntax ]

[ drive : ] drive dimana tempat media penyimpana itu berada,

misalnya DIR A:

[ path ] [ filename ] menyatakan direktori, dan / file yang ingin

dilihat

Contoh :

DIR A:\TUGAS

Artinya perintah untuk menampilkan file-file yang terdapat pada

sub direktori TUGAS

DIR A:\*.DOC

Page 34: Laporan DKP Kelompok 1 SISKOM 2012

34

Artinya untuk menampilkan file-file yang berekstension DOC

saja.

Contoh-contoh diatas dapat juga menyatakan syntax.

Syntax :

/P menampilkan daftar isi per layar.

/W menampilkan daftar isi melebar kekanan.

/A menampilkan direktori:

/AD menampilkan file-file sistem operasi.

/AS menampilkan file-file yang beratribut Read-Only.

/AH menampilkan file-file yang disenbunyikan.

/O menampilkan daftar isi file secara berurutan berdasarkan

/ON berdasarkan nama-nama file yang ada.

/OE berdasarkan ekstension file

/OS berdasarkan besarnya size file.

/OD berdasarkan tanggal pembuatannya (yang terdahulu

diutamakan).

Contoh :

DIR A:\TUGAS

Artinya perintah untuk menampilkan file-file yang terdapat pada

sub direktori TUGAS dan tampilannya berhenti per 1 layar

sampai anda menekan tombol apapun (kecuali anda menekan

tombol esc)

DIR A:\*.DOC /OS

Artinya untuk menampilkan file-file yang berekstension DOC

saja. Dengan urutan berdasarkan besa kecilnya file tersebut (size

file paling kecil berada paling atas)

DIR /OD

Artinya menampilkan file-file berurutan berdasarkan tanggal

pembuatannya.

Page 35: Laporan DKP Kelompok 1 SISKOM 2012

35

11. PROMPT

Berfungsi untuk merubah tampilan DOS prompt

Rumus : PROMPT [ text ] [ special character ]

[ text ] : satu atau beberapa huruf yang akan muncul sebagai

prompt DOS [ special character ]

$Q untuk menampilkan simbol sama dengan ( = )

$$ untuk menampilkan simbol dollar ( $ )

$T untuk menampilan waktu yang berlaku pada komputer anda

$D untuk menampilkan tanggal yang berlaku pada komputer

anda

$P untuk menampilkan drive dan path yang berlaku ( :\ )

$N untuk menampilkan drive yang berlaku

$G untuk menampilkan simbol lebih besar (>)

$L untuk menampilkan simbol lebih kecil (<)

$_ untuk memberikan jarak / spasi 1 baris

Contoh penggunaan :

Ketik PROMPT $P$G maka tampilan prompt yang muncul

dilayar monitor A:\

12. REN

Befungsi untuk mengubah suatu nama file. Yang yang perlu

diperhatikan adalah yang dirubah hanya nama file nya saja,

ekstension file tidak boleh dirubah.

Rumus : REN [drive : ] [path] [nama file] [nama file baru]

Contoh penggunaan :

REN TUGAS.DOC LATIHAN.DOC

Artinya mengganti nama file TUGAS.DOC menjadi

LATIHAN.DOC.

13. TIME

Berfungsi untuk melihat / mengisikan waktu yang berlaku pada

BIOS komputer

Page 36: Laporan DKP Kelompok 1 SISKOM 2012

36

Rumus : TIME (hour : minute : seconds) atau jam : menit : detik

Jika anda menyetujui waktu yang tampak di monitor, maka anda

hanya cukup menekan enter saja tanpa perlu mengisi.

14. TYPE

Berfungsi untuk menampilkan karakter text hanya pada file-file

yang berekstension .TXT

Rumus : TYPE [ nama file .TXT]

15. VER

Berfungsi untuk mengetahui versi DOS yang digunakan pada

komputer anda

Rumus : VER

16. DOS External Command

Melaksanakan seluruh perintah-perintah berikut ini diperlukan

program eksekusi yang berekstensi COM atau EXE.

17. CHKDSK

Berfungsi untuk melihat kondisi media penyimpanan yang kita

pakai

Rumus : CHKDSK [drive:]

Jika kita menjalankan program ini, akan ditampilkan antara lain

kemampuan kapasitas penyimpanan media tersebut, jumlah file

yang ada, jumlah area yang masih kosong dan volume. Jika

terdapat partisi/track disket yang rusak (found lost chain),

informasi tersebut juga ditampilkan. Untuk melakukan perbaikan,

anda ulangi CHKDSK diatas namun kali ini tambahkan dengan

syntax/F (atau fixed). Kemudian akan muncul pesan : Convert

lost chain to file (Y/N) maka jawablah Y. Ini dimaksudkan agar

program ini menyimpan data yang berada pada partisi/track yang

rusak ke dalam sebuah atau beberapa file (namanya

Page 37: Laporan DKP Kelompok 1 SISKOM 2012

37

FILE0001.CHK dst) dan diletakkan pada partisi/track yang baik,

sehingga anda dapat mengakses data tersebut.

Informasi yang ditampilkan CHKDSK pada paragraph pertama

adalah yang paling penting anda perhatikan, dengan urutan-

urutannya sbb :

Baris ke-1 : total daya tamping disket atau hard disk.

Baris ke-2 : jumlah file yang disembunyikan (jika ada)

Baris ke-3 : jumlah direktori yang ada

Baris ke-4 : jumlah file yang ada

Baris ke-5 : jumlah byte yang rusak (bad sector) jika

ditemukan ada

Baris ke-6 : jumlah byte tersisa yang bias dipakai

Apabila baris ke-2 dan baris ke-5 tidak ditemukan, mak jumlah

barisnya hanya ada 4.

Pada versi DOS 6, Microsoft membeli lisensi salah satu utility

dari PC-Tools dan merubah namanya menjadi SCANDISK, walau

tetap menyediakan CHKDSK. Perbedaan dengan CHKDSK

adalah proses pengecekkan ditampilakn pad layar monitor dan

pada akhir pemakaian, SCANDISK akan menampilkan hasil

pemeriksaan dalam data statistic mengenai kondisi fisik hard disk

atau disket.

18. DISKCOPY

Menyalin seluruh isi disket sam persis ke disket lainnya

Rumus : Diskcopy [drive sumber] [drive tujuan]

Contoh : Diskcopy A : B :

Setelah itu akan muncul pesan seperti berikut ini :

Insert SOURCE diskette in drive A : ( artinya masukkan disket

sumber di drive A)

Insert TARGET diskette in drive B : (artinya masukkan disket

target di drive B)

Page 38: Laporan DKP Kelompok 1 SISKOM 2012

38

Press any key when ready… (artinya tekan sembarang tombol

untuk melanjutkan)

Jika prose pengcopyan disket berjalan dengan lancer, akan

muncul pesan :

Copy Complete.

Copy another disk ? (Y/N) ?

Maka yang harus anda lakukan adalah :

Tekan Y agar program mengulang kembali proses diatas.

Tekan N untuk mengakhiri perintah DISKCOPY dan anda akan

kembali ke DOS prompt.

Program ini hanya berlaku untuk disket berkapasitas dan ukuran

media yang sama pula dan tidak berlaku pada selain itu misalnya

harddisk, CD-ROM dsb.

Peringatan :

Apabila pada disket target terdapat sector yang rusak, DOS tidak

akan memberitahukannya kepada anda (kecuali jika anda

menggunakan MS DOS versi 6 ke atas).

19. FORMAT

Berfungsi untuk membuat track pad suatu media penyimpanan

agar media tersebut dapat difungsikan/dipakai

Rumus : FORMAT [drive :] [/S] [/V] [/Q] [/U] [/4]

/S menyertakan system operasi DOS pada media yang

diformat.

/V menuliskan nama label volume dari media yang diformat

/Q format akan dilaksanakan lebih cepat ( Quick Format)

/4 format disket 5,25” 360 KB pada drive 5,25” 1,2 MB

Contoh penggunaan :

FORMAT A : memformat disket yang terdapat di drive A

FORMAT A : /S memformat disket pada drive A berikut

system operasinya.

Page 39: Laporan DKP Kelompok 1 SISKOM 2012

39

20. LABEL

Berfungsi untuk menampilkan label atau merubah nama label

pada disk

Rumus : LABEL [drive:]

Contoh : Ketik LABEL A:\ (Enter) maka pada layar monitor akan

muncul tampilan :

Volume in drive A is none

Volume Serial Number is 3F68-1AFF

Volume label (11 characters, ENTER for none) ?

Volume in drive A is none menandakan media pada drive A tidak

memiliki label. Kecuali anda pernah menuliskan nama disini pada

perintah FORMAT, maka kata “none” akan diisi dengan nama

anda.

Volume serial number adalah serial angka yang diberikan oleh

computer.

Volume label adalah baris dimana anda menuliskan label nama

dengan panjang maksimum 11 huruf, setelah itu tekan Enter.

21. MOVE

Berfungsi untuk memindahkan suatu file ke lokasi lain yang

berbeda

Rumus : MOVE [drive-1 : nama file] [drive-2 : nama file]

Syntax : /Y maka tampilan konfirmasi akan ditampilkan.

Contoh : MOVE LATIHAN.DOC A:\TUGAS.DOC

Memindahkan file LATIHAN.DOC ke drive A sekaligus

mengganti namanya menjadi TUGAS.DOC

Program-program external command lainnya antara lain ialah :

DEFRAG.EXE

GRAPHIC.COM

QBASIC.COM

ATTRIB.EXE

/?

Page 40: Laporan DKP Kelompok 1 SISKOM 2012

40

Pada umumnya gunakan [Nama perintah] /? Untuk menampilkan

bantuan penjelasan (help). Tampilkan akan diberikan dalam

bahasa Inggris. Contoh : COPY /? Akan menampilkan penjelasan

perintah COPY

2.2.5 TERMINAL

Perintah-perintah Linux kita ketikkan di shell. Shell menyediakan

interface dan akses ke lingkungan Linux, shell menerima perintah

dari user dan mengintepretasikannya ke system Linux. Ada banyak

Shell di Linux yang kita gunakan adalah BASH (Bourne Again

Shell). Shell lainnya adalah C Shell dan Korn Shell.

Perintah di Linux mempunyai format sebagai berikut :

<perintah> <option> <objek> misalnya adalah ls -1/home. Pada

perintah ini ls adalah perintah untuk melisting isi direktori,

kemudian optionnya yaitu –a untuk menampilkannya dalam format

long dan objek yang dikenal perintah tersebut yaitu /home.

Untuk mendapatkan bantuan atau petunjuk tentang suatu perintah

di linux bisa dengan beberapa cara misalnya :

man <perintah> untuk melihat manual perintah tersebut

<perintah> -h untuk melihat help dari perintah tersebut

<perintah> --help untuk melihat help ( panjang ) dari perintah

tersebut

Info <perintah> untuk melihat informasi tentang perintah tersebut

Apropos <kata_kunci> untuk melihat perintah apa saja yang

berhubungan dengan kata kunci yang kita berikan.

1. Print Working Directory

Untuk mengetahui direktori kerja kita saat ini kita bias

menggunakan perintah pwd.

budi@lebdosari:~$ pwd

/home/budi

Page 41: Laporan DKP Kelompok 1 SISKOM 2012

41

2. List

Untuk mendaftar isi sebuah direktori, kita menggunakan

perintah ls. Contohnya sebagai berikut, opsi -1 adalah untuk

menampilkannya dalam format panjang :

budi@lebdosari:~$ ls -1

total 8

drwx----- 3 budi user 4096 Sep 12 02:41 Desktop

-rw-r--r-- 1 budi budi 0 Oct 12 22:32 daftar

drwxr-xr-x 2 budi user 4096 Oct 12 22:09 data

Hasil perintah menampilkan 3 buah objek yaitu 2 direktori dan

1 file. Pada kolom pertama ditampilkan permission file, kolom

kedua adalah jumlah links, kolom ketiga adalah pemilik

file/direktori, kolom kelima adalah grup dari pemilik, kolom

keenam adalah ukuran file, kolom ketujuh adalah waktu

terakhir modifikasi, kolom kedelapan adalah nama file. Swlain

ls -1 ada beberapa opsi lagi untuk ls misalnya ls –a, ls –b, ls –

F.

3. Make Directory

Untuk membuat sebuah direktori baru, menggunakan perintah

mkdir.

budi@lebdosari:~$ ls

desktop daftar data

budi@lebdosari:~$ ls

desktop daftar data praktikum

Setelah mendapat perintah mkdir praktikum sekarang di

direktori tersebut terdapat 4 objek.

4. Remove

Untuk menghapus sebuah file , menggunakan perintah rm.

budi@lebdosari:~$ ls

desktop daftar data prktikum

Page 42: Laporan DKP Kelompok 1 SISKOM 2012

42

budi@lebdosari:~$ rm daftar

budi@lebdosari:~$ ls

desktop data praktikum

File daftar kita hapus jadi hanya terdapat 3 objek dalam

direktori.

5. Remove Directory

Untuk menghapus sebuah direktori, menggunakan rmdir.

Untuk bisa dikenai perintah ini sebuah direktori haruslah

kosong.

budi@lebdosari:~$ ls

desktop data praktikum

budi@lebdosari:~$ rmdir praktikum

budi@lebdosari:~$ ls

desktop data

Sekarang hanya tersisa 2 objek dalam direktori, yaitu desktop

dan data.

6. Change Directory

Untuk berpindah antar direktori, kita menggunakan perintah cd

budi@lebdosari:~$ ls pwd

/home/budi

budi@lebdosari:~$ cd/usr/src

budi@lebdosari:/usr/src$ pwd

/usr/src

Sebelumnya berada pada /home/budi dan kemudian pindah ke

/usr/src.

7. Touch

Perintah sederhana untuk membuat sebuah file kosong

berukuran 0 b.

budiyono@lebdosari:~/data2$ ls

Page 43: Laporan DKP Kelompok 1 SISKOM 2012

43

nilai

budi@lebdosari:~/data2$ touch chrono

budi@lebdosari:~/data 2$ ls

chrono nilai

8. Copy

Untuk mengcopy sebush file atau direktori dari direktori asal

ke direktori tujuan menggunakan perintah cp.

budi@lebdosari:~$ ls

desktop data data2

budi@lebdosari:~$ cd data

budi@lebdosari:~/data$ ls

nilai

budi@lebdosari:~/data$ cp nilai /home/budi/data2

budi@lebdosari:~/data$ cd../data2

budi@lebdosari:~/data2$ ls

nilai

Contoh untuk mengcopy file nilai dari directori data1 ke

direktori data2.

9. Move

Untuk memindahkan sebuah file, menggunakan perintah mv.

Contoh memindah file nilai dari data2 ke data.

budi@lebdosari:~$ ls

desktop data data2

budi@lebdosari:~$ cd data2

budi@lebdosari:~/data2$ cd..

chrono nilai

budi@lebdosari:~/data2$ mv nilai../data

budi@lebdosari:~/data2$ cd..

budi@lebdosari:~$ cd data

budi@lebdosari:~/data$ ls

Page 44: Laporan DKP Kelompok 1 SISKOM 2012

44

nilai

Perintah ini juga dapat untuk mengganti nama sebuah file,

caranya yaitu menggunakan mv tanpa berpindah direktori,

Misalnya kita akan merename nilai pad direktori data menjadi

score :

budi@lebdosari:~/data$ ls

nilai

budi@lebdosari:~/data$ mv nilai score

budi@lebdosari:~/data$ ls

score

budi@lebdosari:~/data$

Sekarang pada direktori data2 terdapat sebuah file kosong

bernama chrono.

10. Find

Perintah find kita gunakan untuk mencari sebuah file atau

direktori, formatnya adalah find <path> nama yang dicari.

budi@lebdosari:~/data2$ find chrono

chrono

budi@lebdosari:~/data2$

Page 45: Laporan DKP Kelompok 1 SISKOM 2012

45

2.3 Analisa dan Pembahasan

2.3.1 Komponen Komputer

1. Mainboard

Gambar 2.2 Motherboard

Banyak pabrik yang menawarkan Mainboard dengan segala

kelebihannya, tetapi kita dapat memilih sesuai dengan isi

kantong atau kemampuan dana yang tersedia. Mainboard yang

beredar di pasaran memiliki variasi yang sangat banyak

ragamnya, sehingga sebelum memilih atau membeli mainboard

perlu beberapa pertimbangan antara lain:

• Apakah MB tersebut dapat menunjang komponen lain,

seperti VGA, Modem, TV Toner dan lain-lain yang berkaitan

dengan operasional komputer.

• Jika pertimbangan harga, maka fasilitas internal board atau

onboard yang ada di dalamnya sebaiknya yang dipilih. Hal ini

dapat menghemat biaya seperti VGA, Soundcard, Modem dan

LAN cards, tetapi tidak semua jenis MB menggabungkan

fasilitas-fasilitas tersebut dalam satu paket MB.

• Perhatikan berapa banyak slot PCI yang tersedia, apakah ada

atau tidak. Jika komponen onboard mengalami masalah, agar

dapat digantikan dengan komponen eksternalnya.

Pemilihan paket MB yang baik adalah dari produsen yang

menyertakan spesifikasinya, sehingga akan mudah di kemudian

hari jika ingin ditingkatkan kinerjanya. Perhatikan dalam

spesifikasi MB tersebut utamanya pada kemampuan Processor

Support, Memory support, Expansion Slots, Power Supply &

Page 46: Laporan DKP Kelompok 1 SISKOM 2012

46

Management, Graphics System, On-board I/O port , Hardware

monitoring dan komponen lain yang tersedia pada MB tersebut.

Pada keterangan yang diberikan atas MB bersangkutan adalah

pada Processor support hingga xx Gega, dan clock scheme yang

terpasang, juga tentang Memory support juga dijelaskan jumlah

slotsnya dan maksimum memory yang dapat dipasang. Tingkat

kebutuhan pada komputer sangat bervariasi, namun pada

dasarnya dapat dikelompokkan menjadi kebutuhan untuk

perkantoran dan perorangan. Untuk kegiatan perkantoran terdiri

atas : Kebutuhan untuk database kepegawaian, analisa data

penelitian, dan geographics sedangkan untuk perorangan segi

hiburan lebih dominan. Untuk itu spesifikasi komponen yang

dibutuhkan sangat berbeda. Untuk komputer perorangan lebih

mengutamakan hardware yang dapat mensuport video graphics

dan RAM yang tinggi, disamping multimedia yang lebih

menonjol ketimbang untuk kebutuhan kantor. Untuk itu MB

yang harus dipilih pada komputer perorangan adalah yang

memiliki slot VGA AGP yang bagus (8 atau 16x), dan memiliki

chache memory board tinggi.

2. Prosesor

Gambar 2.2 Processor

Semakin tinggi kemampuan processor yang dipilih semakin

mahal harganya. Tidak cukup itu, yang menjadi pertimbangan

adalah apakah MB dapat mensuport? Hal ini jauh lebih penting,

sebab Main Board adalah yang lebih menentukan. Jenis

processor dimulai dari 8086/8087-XT hingga Pentium IV-2.8

Page 47: Laporan DKP Kelompok 1 SISKOM 2012

47

GB dan banyak produsen yang mengeluarkan produk ini

diantaranya: Intel Pentium, IBM, AMD, CYRICS dan masih

banyak lagi semua memiliki kelebihan dan kekurangan, juga

mempunyai pasar yang berbeda. Hanya di Asia khususnya di

Indonesia semua produk ini bisa masuk dan diterima. Intel yang

beredar dalam pasaran, banyak ragamnya ada yang

menggunakan BOX atau TRAY (kodian). Jika diperhatikan ada

perbedaan harga meski menurut pengakuan pedagang kedua

barang tersebut tidak berbeda kualitas, alasan mereka untuk

biaya box diperlukan tambahan harga 5 s/d 7 US$. Pemilihan

processor dapat disesuaikan dengan kebutuhan dasar kita,

apakah untuk kegiatan yang memerlukan kecepatan tinggi atau

tidak. Jika kebutuhan terbatas pada kegiatan administrasi, seperti

pengetikan dan pembuatan tabel-tabel sederhana, maka

komputer yang diperlukan tidak lagi yang berkecepatan tinggi,

barangkali cukup Pentium 2 atau 3 saja bahkan kalau perlu

Pentium 1 sudah mencukupi. Terkadang kita kalau bertanya

kepada pedagang mereka memberi saran yang menyesatkan.

Kalau dana yang tersedia cukup tidaklah menjadi masalah, tetapi

kalau dana yang terbatas maka akan mubazir. Untuk memilih

processor, beberapa pertimbangan yang harus dilakukan yaitu :

• Seberapa besar kebutuhan data yang akan kita olah

• Seberapa lama waktu yang diperlukan untuk

menyelesaikan satu pekerjaan tersebut, dan

• Seberapa banyak dana yang tersedia untuk itu

3. RAM

Gambar 2.3 RAM

Page 48: Laporan DKP Kelompok 1 SISKOM 2012

48

Pemilihan jenis dan besarnya RAM juga tergantung dari

MB yang ada, apakah dapat mensuport atau tidak. Setiap MB

memiliki batas maksimum dalam pemakaian RAM. Ini dapat

dilihat dari spesifikasi dari MB tersebut. RAM yang ada di

pasaran sangat bervariasi baik jenis maupun kemampuan

besarnya, demikian juga harga yang ditawarkan. Dari berbagai

macam dan jenis tersebut pada dasarnya dijamin sepanjang

hidup. Ada yang perlu diperhatikan dalam pemilihan jenis RAM

ini, pertama jumlah chipsnya dan kedua pabrik yang

mengeluarkan, sedangkan untuk harga relatif sama. Untuk

meningkatkan kinerja komputer khususnya yang aplikasinya

berbasis Windows, maka peran RAM sangatlah menentukan

khususnya dalam kecepatan akses program sehingga dapat

menjalankan lebih dari satu perintah program. Misalnya untuk

membuka dua aplikasi sekaligus Word dan Excel secara

bersama-sama, atau mengetik sambil mendengarkan lagu dan

lain sebagainya, maka peran RAM sangat menentukan.

4. Hard Disk

Gambar 2.4 Harddisk

Pada hard disk yang berkecepatan rendah (5400 rpm)

biasanya harganya lebih murah dibanding dengan yang

berkecepatan tinggi yaitu 7200 rpm, meski dengan jumlah

kapasitas yang sama. Untuk hard disk yang berkecepatan tinggi

lebih sering dijumpai pada pengguna server untuk jaringan

(Network). Sedang untuk yang berkecepatan rendah biasanya

Page 49: Laporan DKP Kelompok 1 SISKOM 2012

49

digunakan pada komputer pribadi dirumah-rumah atau dikantor

yang tidak menggunakan jaringan. Keuntungan menggunakan

yang berkecepatan tinggi adalah untuk akses program maupun

menyimpan data lebih cepat, tetapi dalam tanda kutip bahwa

beda antara keduanya tidak terlalu mencolok, sehingga tidak

dapat dilihat dengan jelas bedanya.

Hard disk yang ada pada saat ini terdiri atas (1) Modified

Frequency Modulation (MFM) dan (2) Run Length Limited

(RLL). Hard disk dengan teknik MFM memakai 17 sektor per

track, sedangkan teknik RLL menggunakan 26 sektor per

tracknya dengan demikian dapat lebih banyak menyimpan

informasi juga.

Pada teknik RLL juga diperlukan permukaan yang berkualitas

tinggi.

Pertimbangan untuk memilih hard disk :

1. Sebesar apa data yang akan kita koleksi

2. Sejauh mana kebutuhan kita dalam mengkoleksi data?

3. Komputer yang akan dibeli atau yang kita miliki mempunyai

spesifikasi seperti apa. Ini penting karena beberapa komputer

lama ada keterbatasan dalam membaca hard disk yang memiliki

kemampuan besar

4. Usahakan membeli yang baru, mengingat kekuatan hard disk

sangat ditentukan oleh waktu jam pakai.

5. SATA

Gambar 2.5 SATA

Page 50: Laporan DKP Kelompok 1 SISKOM 2012

50

SATA menawarkan beberapa keunggulan menarik

dibandingkan antarmuka paralel ATA (PATA) yang lebih tua:

mengurangi kabel yang tebal dan mengurangi biaya (berkurang

dari delapan puluh kabel ke tujuh), lebih cepat dan lebih efisien

dalam hal transfer data, dan fitur hot swapping

6. ATA

Gambar 2.6 ATA

ATA (AT Attachment) adalah standar penyimpanan utama

untuk menghubungkan ke PC. ATA menggantikan teknologi

terdahulu seperti MFM, RLL, dan ESDI. ATA saat ini bersaing

dengan SCSI. ATA adalah spesifikasi untuk memasang hard

drive ke bus AT. Spesifikasi AT telah diperpanjang untuk

mencakup penyimpanan lainnya, seperti CD / DVD drive, tape

drive, dan drive Zip dengan Advanced Technology Attachment

Packet Interface (ATAPI) penambahan spesifikasi.

7. VGA

Gambar 2.7 VGA Card

Graphic adapter ini sering diminati para maniak game,

dimana tuntutan graphic pada jenis permainan tertentu sangat

Page 51: Laporan DKP Kelompok 1 SISKOM 2012

51

menuntut tingginya resolusi graphic adapter ini, sehingga tidak

heran harga yang ditawarkanpun sangat tinggi. Untuk ukuran 32

MB saja harganya mencapai 500 ribuan, sementara untuk

kebutuhan normal 8-16 MB harganya berkisar 150-175 ribuan.

Tetapi ini tergantung dari pabrik yang mengeluarkan produk ini.

Produsen pembuat graphics adapter berlomba-lomba dengan

menampilkan kemampuannya, baik yang 3D maupun yang

lainnya. Semua ini adalah untuk mendukung fasilitas komputer

yang ada, tinggal pilihan pada kita seberapa besarkah.

8. Monitor

Gambar 2.8 Monitor LCD

Jenis monitor yang ada juga mengalami perkembangan

teknologi yang luar biasa, dimana pada awalnya monitor

menggunakan dua warna (B/W) pada saat ini sudah berkembang

hingga LCD. Banyaknya jenis maupun merk yang beredar di

pasaran memudahkan bagi pemakai untuk menyesuaikan tingkat

kebutuhan dan kondisi kantong yang ada. Bagi yang ingin

menikmati tampilan bagus dengan resolusi yang tinggi dapat

menggunakan jenis LCD yang harganya mencapai US$ 495,

sedang bagi yang tidak menuntut hal di atas dapat

memperolehnya dengan harga US$ 88. Untuk ukuran 15”

hampir semua merk seperti LG, SPC, Samsung, GTC, maupun

Philips ditawarkan dengan harga yang relatif sama. Ada pula

beberapa merk monitor yang ada meski dengan kemampuan

Page 52: Laporan DKP Kelompok 1 SISKOM 2012

52

resolusi sama menawarkan harga yang lebih rendah seperti

Advance, Casper dan masih banyak lagi.

9. Keyboard

Gambar 2.9 Keyboard

Jenis keyboard pada saat ini mulai dikembangkan dengan

multimedia yang ada, dimana pada keyboard terdapat tombol-

tombol multimedia yang dapat digunakan seperti power down,

cd player dan connect internet. Perubahan ini sangat signifikan

pada dunia IT yang terus menerus berinovasi, agar pasar terus

berkembang, dimana sebelum tahun 90an keyboard masih

sangat terbatas fasilitasnya. Saat ini sudah berkembang begitu

pesat, sehinga sampai pada jenis wireless. Untuk keyboard jenis

ini kemampuan tangkapnya pada radius 5-7 m dalam open room

atau ruangan terbuka.

10. Mouse

Gambar 2.10 Mouse

Mouse juga berkembang dengan pesat, mulai dari yang

tanpa kabel wireless hingga yang berjenis optik. Beberapa

perusahaan ada yang mengeluarkan produk secara 2in1 (yaitu

keyboard dan mouse) ada pula yang mengeluarkan 3in1 yaitu

plus speaker. Dari segi harga memang lebih murah, tetapi ada

juga kelemahannya yaitu pada kualitas suara kurang bagus.

Page 53: Laporan DKP Kelompok 1 SISKOM 2012

53

2.4.2 Perakitan Komponen Piranti Komputer

tahapan proses perakitan komponen komputer terdiri dari :

1. Pemasangan Prosessor

2. Pemasangan heatsink

3. Pemasangan RAM

4. pemasangan motherboard ke casing

5. pemasangan kabel ke motherboard

6. pemasangan VGA Card

7. pemasangan sound card

8. pemasangan drive

9. pemasangan optical drive

10. pemasangan power suply

1. Pemasangan Prosessor

prosesor lebih mudah dipasang sebelum motherboard dipasang pada

casing. Cara pemasangan prosessor antara lain :

a. Buka pengunci socket prosessor pada motherboard

b. Perhatikan prosessor dan periksa socket prosessor pada

motherboard. Lihat tanda pada prossesor dan cocokan pada socket

agar pemasangan tidak terbalik.

c. Masukan dan pasang prosessor pada lubang-lubang socket dengan

tepat hingga prosessor tepasang dengan sempurna pada

motherboard.

d. Apabila ada sesuatu yang menghambat dalam pemasangan

prosessor pada socket jangan dipaksa, lebih baik dilepas kembali

dan periksa kembali kalau ada kesalahan pemasangan.

e. Setelah prosessor terpasang dengan sempurna,pasang kembali

engunci socket ke posisi semula.

2. Heatsink adalah pendingin yang terbuat dari aluminium / tembaga

yang sudah dirancang untuk dapat mendinginkan CPU, biasanya

heatsink digunakan untuk mendinginkan prosessor, chipset, dan mouse

Page 54: Laporan DKP Kelompok 1 SISKOM 2012

54

pad pada motherboard. Heatsink bekerja untuk membuang panas yang

dihasilkan prosessor lewat konduksi panas dari prosessor ke heatsink.

untuk mengoptimalkan panas, maka heatsink harus dipasang rapat

pada bagian atas prosessor dengan memberikan thermal paste pada

chip prosessor. Therma paste berguna untuk membantu kontak antara

permukaan chip prosessor dengan headsink dibawah kipas. Paste

pengantar panas tersebut akan menjaga kontak CPU dengan kipas

sehingga prosessor akan leih terjaga. Langkah pemasangan heatsink

prosessor adalah sebagai berikut :

a. sebelum heatsink dipasang berikan thermal paste pada chip

prosessor.

b. Perhatikan posisi kabel daya untuk kipas dengan lokasi konektor

dayanya, kondisikan agar konektor daya tidak bersinggungan

dengan kipas.

c. Pasang heatsink sesuai dengan pengait pada socket prosessor

dengan benar.

d. Sambungkan kabel daya ke motherboard.

e. Konektor daya untuk kipas biasanya memiliki 3 PIN dan biasanya

PINnya tertulis FAN

Gambar 2.12 Screenshot Pemasangan Heatsink

3. RAM dipasang secara slot pada motherboard, hanya pasang dan

hidupkan komputer untuk menguji RAM yang telah terpasang.

Langkah pemasangan RAM pada motherboard adalah sebagai berikut :

a. buka pengunci pada masing-masing ujung slot pada motherboard.

Page 55: Laporan DKP Kelompok 1 SISKOM 2012

55

b. Masukan RAM pada slot dengan melihat tanda cekungan yang

diberikan, tekan dengan kuat sehingga penguncinya akan menutup

dengan sendirinya.

c. Jika terjadi masalah pada pemasangan, periksa kembali kedudukan

RAM.

Gambar 2.13 Screenshot Pemasangan RAM

4. Cara pemasangan motherboard pada casing adalah sebagai berikut :

a. siapkan casing terlebih dahulu

b. masukan dan pasang motherboard ke casing dan atur penempatan

sesuai dengan lubang-lubang yang telah ada di casing dan

motherboard.

c. Tempatkan motherboard sehingga port pada motherboard sesuai

dengan kedudukannya.

d. Pasang sekrup pengunci pada setiap lubang yang telah ada.

Gambar 2.14 Screenshot Pemasangan motherboard ke casing

5. setelah motherboard terpasang di casing secara pas, selanjutnya pasang

kabel I/O pada casing dan panel pada casing, langkah-langkah

pemasngan kabel ke motherboard adalah sebagai berikut :

Page 56: Laporan DKP Kelompok 1 SISKOM 2012

56

a. pasang kabel I/O pada slot / port yang sudah ada padamotherboard

b. perhatikan nama pada kabel dan cocokan dengan yang ada di

motherboard

Gambar 2.15 Screenshot Pemasangan Kabel ke motherboard

6. Sebelum pemasangan VGA card, kenali dulu tipe VGA card yang akan

digunakan. Teliti bahwa VGA card tersebut sudah support dengan

motherboard yang tersedia. Langka-langkah pemasangan VGA adalah

sebagai berikut :

a. perhatikan pada motherboard adanya slot VGA sesuai dengan PCI,

AGP, PCA express

b. jika sudah diketahui jenis slot yang digunakan, pasang VGA card

yang sudah tersedia.

c. Sesuaikan port VGA dengan case CPU untuk tempat memasang

VGA card

d. Untuk menguatkan pemasangan VGA, maka kuatkan dengan

obeng / sejenisnya

e. Cek kembali apakah VGA card telah terpasang dengan benar

Gambar 2.17 Screenshot Pemasangan VGA Card

Page 57: Laporan DKP Kelompok 1 SISKOM 2012

57

7. sebelum pemasangan sound card, kenali dulu tipe sound card yang

akan digunakan. Teliti bahwa sound card tersebut sudah support

dengan motherboard yang tersedia. Langka-langkah pemasangan

sound card adalah sebagai berikut :

a. jika sudah diketahui jenis slot yang digunakan, pasang sound card

yang sudah tersedia.

b. Sesuaikan port sound card dengan case CPU untuk tempat

memasang sound card

c. Untuk menguatkan pemasangan sound card, maka kuatkan dengan

obeng / sejenisnya

d. Cek kembali apakah sound card telah terpasang dengan benar

Gambar 2.18 Screenshot Pemasangan Sound Card

8. Beberapa casing yang menggunakan sistem bracket yang dapat dilepas

untuk memudahkan pemasangan drive atau harddisk, berikut cara

menghubungkan harddisk ke motherboard :

a. masukan drive ke ruang untuk drive pada casing, sesuaikan posisi

ruang sekrup pada casing dan pasang sekrup agar drive tertahan

pada casing

b. hubungkan konektor kabel ke drive dan konektor kabel ke

motherboard, perhatikan terdapat dua tipe kabel IDE yaitu kabel

40-wire yang digunakan untuk harddidk dan kabel 34-wire

digunakan untuk flopy disk drive

c. pastikan pemasangan kabel tidak boleh terbalik.

Page 58: Laporan DKP Kelompok 1 SISKOM 2012

58

Gambar 2.19 Pemasangan Drive

9. seperti halnya hardidsk, optical drive juga menggunakan jumper untuk

posisi master dan slave. Atur jamper tersebut pada posisi yang

diinginkan. Apabila hanya terdapat satu harddisk maka jumper berada

pada posisi master. Seandainya terdapat dua buah harddisk pada

sebuah komputer dan keduanya diaktifkan, maka satu harddisk

dijadikan master dan yang lainnya diatur pada posisi slave, berikut cara

pemasangan optical drive :

a. untuk memasang optical drive biasanya kita perlu melepas panel

depan casing terlebih dahulu, / tergantung jenis dan model casing

yang digunakan.

b. Pasanglah optical drive pada panel yang telah terbuka dengan

benar.

c. Pemasangan kabel data IDE dari optical drive ke motherboard

sama dengan pemasangan harddisk.

d. Pasang konektor optical drive dan ujung satunya ke motherboard

pada konektor yang bertuliskan CD.

e. Jangan lupa untuk selalu merapikan kabe-kabel tersebut agar tidak

saling terkait, jika perlu ikatlah agar lebih rapi.

Page 59: Laporan DKP Kelompok 1 SISKOM 2012

59

Gambar 2.20 Pemasangan Optical Drive

10. cara pemasangan power supply adalh sebagai berikut :

a. masukan dan letakkan power supply pada rak dibagian belakang

casing, pasang pengunci ke 4 buah sekrup yang tersedia

b. hubungkan kabel daya dari power supply ke motherboard,

kemudian juga sambungkan kabel-kabel daya ke harddisk, optical

drive dan flopy jika ada.

c. Jika casing menggunakan kipas pendingin, maka hubungkan ke

catu daya atau ke motherboard sesuai dengan yang dimiliki.

d. Mengecek dan memasang kabel daya.

1. kabel daya untuk motherboard, berukuran paling besar

dibandingkan dengan kabel daya lainnya. Cari konektor kabel

ini pada motherboard, biasanya konektor tersebut diletakkan di

samping prosessor. Hubungkan

2. kabel daya untuk prosessor berbentuk segi empat kecil dengan

4 lubang konektor didalamnya, biasanya dipasang disamping

konektor, cari konektor lalu hubungkan.

3. Kabel daya untuk harddisk dipasang disamping kabel data pada

harddisk.

Page 60: Laporan DKP Kelompok 1 SISKOM 2012

60

Gambar 2.21 Pemasangan Power Suply

11. Pengujian

Setelah memasang semua komponen pada PC kemudian

dilanjutkan dengan menghidupkan monitor lalu unit sistem. Program

FOST dari BIOS secara otomatis akan mendeteksi hardware yang

terpasang dikomputer.

Gambar 2.22 Pengujian

Page 61: Laporan DKP Kelompok 1 SISKOM 2012

61

2.4.3 Instalasi Windows

1. Starting Windows

Gambar 2.23 screenshot Starting Windows

Setelah setting konfigurasi di virtual box kemudian mulai

menjalankan proses instalasi

2. Pemilihan Bahasa, waktu dan dan lay out keyboard

Gambar 2.24 screenshot Pemilihan Bahasa, waktu dan lay out keyboard

Setelah tampilan animasi starting windows berakhir, maka akan

segera melakukan instalasi windows 7 mulai dari pemilihan bahasa,

konfigurasi waktu dan lay out pada keyboard. Pilihlah sesuai dengan

yang diinginkan. setelah selesai lanjutkan pada jendela berikutnya.

Page 62: Laporan DKP Kelompok 1 SISKOM 2012

62

3. Install Windows

Gambar 2.25 screenshot install windows

Pada jendela selanjutnya klik install windows untuk melanjutkan

penginstalan.

4. Memulai Set Up

Gambar 2.26 screenshot memulai Set Up

Selanjutnya set up akan segera dimulai. Tunggu proses berikut

sampai selesai dan ikuti langkah selanjutnya

5. persetujuan Lisensi

Gambar 2.27 screenshot Persetujuan Lisensi

Page 63: Laporan DKP Kelompok 1 SISKOM 2012

63

pada jendela selanjutnya berikutnya yang muncul adalah jendela

persetujuan lisensi dan harus menyetujui persetujuan dengan memberi

tanda centang pada “ i accept the license terms “. Kemudian klik next

6. Tipe Instalasi

Gambar 2.28 screenshot Tipe Instalasi

Pada jendela selanjutnya kita dapat memilih tipe instalasi yang

diinginkan. Tipe instalasi upgrade dan custom. Upgrade digunakan untuk

mereka yang telah menggunakan windows vista yang sudah terinstal SP1

(service pack 1). Dan bagi yang baru akan menginstal windows 7 dapat

memilih custom

7. Pilihan Tempat Penyimpanan Windows

Gambar 2.29 screenshot Tempat Penyimpanan Instalasi

Page 64: Laporan DKP Kelompok 1 SISKOM 2012

64

Pada jendela selanjutnya kita diharuskan untuk membuat partisi

seperti gambar dengan memilih new, dan menuliskan besar partisi yang

ingin kta buat. Setelah itu klik “apply”.

Gambar 2.30 screenshot patisi disk

Selanjutnya akan muncul tampilan seperti gambar dibawah ini, dan pilih “next”

untuk melanjutkan ke tahap selanjutnya.

8. Proses Instalasi

Gambar 2.31 screenshot Proses Install

Menunggu proses instalasi sampai selesai, maka set up secara

otomatis akan me restart komputer dengan sendirinya, dan akan kembali

booting seperti semula. Pada saat bersamaan windows akan mulai meng

update seperti registry dsb. Pada langkah selanjutnya windows kana

Page 65: Laporan DKP Kelompok 1 SISKOM 2012

65

memulai pelayanan (service) pada komputer untuk melanjtkan instalasi.

Setelah persiapan selesai maka jendela instalasi sebelumnya akan tampil

kembali untuk menyelesaikan langkah-langkah instalasi.

9. Memberi Nama User

Gambar 2.32 screenshot Memberi Nama User

Jendela yang muncul setelah konfigurasi selesai adalah jendela

konfigurasi user mulai dari User Name, Compuer Name, Password,

Product Key, Windows Update, Waktu dan Jaringan.

10. Pengaturan Pengaman

Gambar 2.33 screenshot Pengaturan Pengaman

Selanjutnya melakukan konfigurasi password untuk keamanan

login. Jika perlu password ketikan password nya dua kali atau kosongkan

saja jika tidak ingin mempassword user.

Page 66: Laporan DKP Kelompok 1 SISKOM 2012

66

11. Pengaturan Product Key

Gambar 2.34 screenshot Pengaturan Product Key

pada jendela berikutnya memasukan product key windows yang

terdapat pada box namun kita tetap dapat menggunakan windows jika

tidak ingin menggunakan trial.

12. Pilihan Proteksi Komputer

Gambar 2.35 screenshot Pilihan Proteksi Komputer

Pada langkah selanjutnya memilih jenis konfigurasi untuk

keamanan seperti automatic update dan sebaiknya memilih “user

recomended setting”

Page 67: Laporan DKP Kelompok 1 SISKOM 2012

67

13. Pengaturan Waktu

Gambar 2.36 screenshot Pengaturan Zona Waktu

Pada jendela selanjutnya melakukan konfigurasi waktu dan tanggal

yang sesuai dengan waktu sekarang.

14. Pilihan Lokasi komputer

Gambar 2.37 screenshot Pemilihan Lokasi Komputer

Jika komputer yang digunakan sudah terkoneksi dalam jaringan,

maka dapat memilih salah satu jaringan yang digunakan pada saat itu

misalnya Home Network, Public Network, Work Network.

15. Akhir Pengaturan Windows

Gambar 2.38 screenshot Akhir Pengaturan Windows

Page 68: Laporan DKP Kelompok 1 SISKOM 2012

68

Setelah melewati semua yang dibutuhkan windows, akan

dilanjutkan untuk menerapkan konfigurasi tadi dan tunggu proses sampai

selesai.

16. Tampilan Desktop Windows

Gambar 2.39 screenshot Tampilan Desktop windows

Selanjutnnya kita dapat memasuki jendela utama windows 7.

2.4.4 Instalasi Linux

1. Pemilihan Bahasa Untuk Komputer Pada Linux

Gambar 2.40 screenshot Pilihan Bahasa Untuk komputer pada Linux

Pilihan awal penginstalan, setelah itu komputer akan loading

sampai muncul seperti pada Gambar 2.36. setelah itu pilihlah bahasa yang

ingin dipakai untuk pengoperasian komputer. [ENTER].

Page 69: Laporan DKP Kelompok 1 SISKOM 2012

69

2. Starting Instalation Linux

Gambar 2.41 screenshot starting Installation Linux

`setelah pemilihan bahasa yang diinginkan kemudian akan muncul

Gambar 2.37 dibawah ini, dapat dilihat bahwa da beberapa pilihan namun

juka ingin langsung menginstall tanpa mencoba tampilan lain maka bisa

memilih Install Ubuntu [ENTER]

3. Pihan Bahasa Untuk Instalasi

Gambar 2.42 screenshot Pilihan Bahasa Untuk Proses Instalasi

Setelah install ubuntu akan disajikan beberapa pilihan bahasa yang

ingin digunakan setelah instalasi selesai [ENTER]

Page 70: Laporan DKP Kelompok 1 SISKOM 2012

70

4. Pemilihan Lokasi Waktu

Gambar 2.43 screenshot Pemilihan Lokasi waktu

Tahapan selanjutnya adalah memilih waktu berdasarkan lokasi

sesuai daerah yang ditempati.

5. Konfigurasi Keyboard

Gambar 2.44 screenshot Konfigurasi keyboard

Menentukan lay out keyboard yang digunakan sesuai standar

internasional keyboard lay out yaitu USA [ENTER]

Page 71: Laporan DKP Kelompok 1 SISKOM 2012

71

Gambar 2.45 screenshot Konfigurasi keyboard

Gambar 2.46 screenshot Konfigurasi keyboard

6. Konfigurasi Jaringan

Gambar 2.47 screenshot konfigurasi Jaringan

Langkah selanjutnya adalah membuat sebuah hostname yang

berfungsi untuk mengidentifikasi komputer anda apabila memasuki sebuah

jaringan. Lalu tekan [CONTINUE]

Page 72: Laporan DKP Kelompok 1 SISKOM 2012

72

7. Konfigurasi Zona Waktu

Gambar 2.48 screenshot Zona Waktu

Pada tahap ini kita diminta untuk menentukan zona waktu sesuai

dengan daerah tempat kita berada.

8. Pengaturan Partisi Disks

Gambar 2.49 screenshot Pengaturan Partisi Disk

Apabila ingin menentukan partisi secara leluasa yang akan dibuat

serta menentukan kapasitas masing-masing partisinya, maka pilih manual.

Page 73: Laporan DKP Kelompok 1 SISKOM 2012

73

Gambar 2.50 screenshot Pengaturan Partisi Disk

Arahkan pilihan ke tipe harddisk yang terdeteksi seperti gamabr

2.48 dibawah ini [ENTER]

Gambar 2.51 screenshot Pilihan Membuat Partisi Baru

Pilih [yes] untuk membuat partisi baru yang masih kosong.

Page 74: Laporan DKP Kelompok 1 SISKOM 2012

74

Gambar 2.52 screenshot Pengaturan Partisi

Pilih partisi yang masih kosong lalu tekan [ENTER]

Gambar 2.53 screenshot Membuat Partisi baru

Pilih “create new partition” untuk membuat partisi baru.

Page 75: Laporan DKP Kelompok 1 SISKOM 2012

75

Gambar 2.54 screenshot Ukuran Partisi

Tentukan besar kapasitas partisi.

Gambar 2.55 screenshot Tipe Partisi Primary

Page 76: Laporan DKP Kelompok 1 SISKOM 2012

76

Gambar 2.56 screenshot Lokasi Partisi

Tentukan lokasi partisi pada Primary Partition Untuk pilihan

“beginning” partisi diletakkan awal harddisk, demikian juga untuk partisi-

partisi lainnya.

Gambar 2.57 screenshot Menyudahi Partisi Primary

Page 77: Laporan DKP Kelompok 1 SISKOM 2012

77

Setiap selesai membuat partisi pilih “Done setting up the partition”,

setelah itu buat lagi partisi selanjutnya.

Gambar 2.58 screenshot Partisi Baru

Setelah membuat partisi yang pertama, maka selanjutnya membuat

partisi yang kedua

Gambar 2.59 screenshot Partisi baru

Kemudian buat partisi baru kembali dengan memilih “create a new

partition”

Page 78: Laporan DKP Kelompok 1 SISKOM 2012

78

Gambar 2.60 screenshot Ukuran Partisi

Tentukan kapasitas partisi yang diinginkan

Gambar 2.61 screenshot Tipe Partisi

Pilih tempat partisi, karena tadi sudah menggunakan tipe primary

maka untuk partisi yang kedua menggunkan tipe partisi logical.

Page 79: Laporan DKP Kelompok 1 SISKOM 2012

79

Gambar 2.61 screenshot Pengaturan partisi

Gambar 2.62 screenshot cara penggunaan partisi

Page 80: Laporan DKP Kelompok 1 SISKOM 2012

80

Gambar 2.63 screenshot Selesai mengatur partisi

Gambar 2.64 screenshot Mengakhiri pengaturan partisi

Setelah pengaturan semua partisi selesai, maka akhiri pengaturan

dengan memilih “finish partitioning and write changes to disk”

Page 81: Laporan DKP Kelompok 1 SISKOM 2012

81

9. Konfigurasi Akun dan Password

Gambar 2.65 screenshot Perubahan Nama Pengguna Baru

Masukkan nama lengkap pengguna, pilih “continue” untuk

melanjutkan.

Gambar 2.66 screenshot Nama Pengguna Akun

Tentukan user untuk akun pengguna.

Page 82: Laporan DKP Kelompok 1 SISKOM 2012

82

Gambar 2.67 screenshot Password Baru Pengguna

Selanjutnya tentuka password untuk akun pengguna

Gambar 2.68 screenshot Verifikasi Pasword

Masukan password yang sama dengan sebelumnya untuk verifikasi

password.

Gambar 2.69 screenshot Mengenskripsi Direktori

Langkah selanjutnya pilih “yes” untuk menkonfigurasi direktori

untuk enskripsi file yang tersimpan tetap terjaga

Page 83: Laporan DKP Kelompok 1 SISKOM 2012

83

Gambar 2.70 screenshot Pengisian HTTP Proxy

Pengisian HTTP Proxy jika ada, bila tidak lanjutkan dengan

memilih “continue”.

10. Instalasi paket-paket Linux Ubuntu

Gambar 2.71 screenshot Persetujuan Instalasi

Gambar 2.72 screenshot Instalasi

Tunggu proses instalasi sampai selesai.

Gambar 2.73 screenshot Persetujuan Pengaturan Waktu ke UTC

Page 84: Laporan DKP Kelompok 1 SISKOM 2012

84

Pada akhir instalasi kita diminta untuk menetujui kembali zona

waktu untuk komputer, jika ingin men set up ulang pilih “yes” jika tidak

pilih “no”

Gambar 2.74 screenshot I instalasi Selesai

Setelah itu kita harus me restast instalasi Linux yang telah kita

proses, pilih “continue” untuk melanjutkannya.

Gambar 2.75 screenshot Starting Ubuntu

Setelah itu kita tinggal menunggu loading ubuntu.

Gambar 2.76 screenshot Dekstop Linux

Setelah semua selesai, baru kita dapat menggunakan Linux Ubuntu

Page 85: Laporan DKP Kelompok 1 SISKOM 2012

85

2.4.5 Perintah-perintah MS-DOS

1. Perintah MD

Berfungsi untuk membuat suatu direktori.

Rumus : MD [nama directory yang akan dibuat]

Contoh : Ketik MD kelompok1 untuk membuat direktori

kemudian tekan Enter.

Gambar 2.77 Screenshot MD kelompok

Gambar 2.78 Screenshot MD nama

Page 86: Laporan DKP Kelompok 1 SISKOM 2012

86

Gambar 2.79 Screenshot MD nim

Setelah perintah MD dimasukkan, ternyata berjalan sesuai perintah.

2. Perintah CD

Berfungsi untuk memasukkan/turun ke suatu direktory atau sub

direktori.

Rumus : CD [nama direktory yang telah dibuat]

Contoh : Ketik CD kelompok1 untuk turun satu tingkat ke sub

direktori.

Gambar 2.80 Screenshot CD kelompok

Page 87: Laporan DKP Kelompok 1 SISKOM 2012

87

Gambar 2.81 Screenshot CD nama

Gambar 2.82 Screenshot CD nim

Setelah perintah CD dimasukkan, ternyata berjalan sesuai perintah.

3. Perintah CD..

Berfungsi untuk naik satu level /tingkat dari suatu direktori.

Rumus : CD..

Contoh : ketik CD.. dari C:\Users\RINGGAS\kelompok1>cd..

untuk kembali ke C:\Users\RINGGAS>

Page 88: Laporan DKP Kelompok 1 SISKOM 2012

88

Gambar 2.83 Screenshot CD..

Setelah perintah CD.. dimasukkan, ternyata berjalan sesuai perintah.

4. Perintah tree

Berfungsi untuk melihat sub-direktori yang telah dibuat dengan

system pohon.

Rumus : TREE

Ketik TREE pada C:\Users\RINGGAS\kelompok1>

Maka akan tampak sub-direktori yang ada dalam direktori

Guspan

Contoh :

C:\Users\RINGGAS\kelompok1>tree

Folder PATH listing

Volume serial number is 00000200 E8C6:0158

Gambar 2.84 Screenshot tree

Page 89: Laporan DKP Kelompok 1 SISKOM 2012

89

Setelah perintah TREE dimasukkan, ternyata berjalan sesuai

perintah.

5. Perintah DATE

Berfungsi untuk melihat atau mengisikan tanggal yang berlaku pada

BIOS komputer.

Rumus : Date (mm-dd-yy) atau bulan- tanggal-tahun. Jika Anda

menyetujui tanggal yang ditampilkan layar monitor, maka Anda

cukup menekan tombol Enter saja tanpa perlu mengisi.

Contoh : C:\Users\RINGGAS\kelompok1>date The current date is : 31/03/2012

Enter the new date : <dd-mm-yy>

Setelah perintah CLS.. dimasukkan, ternyata berjalan sesuai perintah.

Gambar 2.85 Screenshot Date

Setelah perintah date dimasukkan, ternyata berjalan sesuai

perintah.

6. Perintah CLS

Berfungsi untuk membersihkan tampilan layar pada monitor.

Rumus : CLS. Ketik CLS (Clear Screen) di akhir sebuah Command

Prompt. Contoh : C:\Users\RINGGAS\kelompok1>>cls

Page 90: Laporan DKP Kelompok 1 SISKOM 2012

90

Gambar 2.86 Screenshot CLS sebelum dijalankan

Gambar 2.87 Screenshot CLS setelah dijalankan

Setelah perintah CLS.. dimasukkan, ternyata berjalan sesuai perintah.

7. Perintah DIR

Berfungsi untuk melihat daftar isi dari suatu media penyimpanan.

Rumus : DIR [drive:][path][filename][syntax]

[drive] drive dimana isi media penyimpanan tersebut berada,

misalnya DIR D:

[path][filename] menyatakan direktori,dan/atau file yang

ingin dilihat.

Contoh : Ketik

Page 91: Laporan DKP Kelompok 1 SISKOM 2012

91

C:\Users\RINGGAS\kelompok1>DIR

Volume in drive C has no label

Volume Serial Number is E8C6-0158

Directory of C:\Users\RINGGAS\kelompok1

31/03/2012 12:03 <DIR> .

31/03/2012 12:03 <DIR> ..

31/03/2012 12:10 <DIR> Anggi

31/03/2012 12:14 <DIR> Bagus

31/03/2012 12:17 <DIR> Elad

0 File(s) 0 bytes

5 Dir(s) 43.758.727.168 bytes free

C:\Users\RINGGAS\kelompok1>

Gambar 2.88 Screenshot DIR

Setelah perintah DIR dimasukkan, ternyata berjalan sesuai

perintah.

8. Perintah TIME

Berfungsi untuk melihat atau mengisikan tanggal yang berlaku

pada BIOS komputer.

Rumus : TIME (hour-minute-second) atau bulan- tanggal-

tahun. Jika kita menyetujui tanggal yang ditampilkan layar monitor,

maka kita cukup menekan tombol Enter saja tanpa perlu mengisi.

Contoh : C:\Users\Asus\kelompok_11>time The current time is : 12:20:52,92

Enter the new time:_

Page 92: Laporan DKP Kelompok 1 SISKOM 2012

92

Gambar 2.89 Screenshot TIME

Setelah perintah TIME dimasukkan, ternyata berjalan sesuai

perintah.

9. Operasi Terminal

Tampilan terminal awal dibuka, kemudian ketikan perintah

“sudo su” untuk masuk ke login

Gambar 2.90 Screenshot Terminal linux

Kemdian setelah terminal masuk ke login, setelah

itu masukkan password untuk masuk ke super user. [enter]

Page 93: Laporan DKP Kelompok 1 SISKOM 2012

93

Gambar 2.91 Screenshot Masukkan Password

Gambar 2.92 Screenshot Masuk direktori

Setelah masuk direktory, kemudian dilanjutkan

denganmengetikkan perintah “cd home” untuk masuk ke direktory

home. [enter]

Gambar 2.93 Screenshot Perintah masuk direktory home

Sekarang kita sudah berada di direktory home, kemudian

untuk membuat folder baru dengan mengetikkan “mkdir nama

folder”. Misal “mkdir klmpk1”. [enter]

Page 94: Laporan DKP Kelompok 1 SISKOM 2012

94

Gambar 2.94 Screenshot Perintah Masuk home

Gambar 2.95 Screenshot Membuat folder klmpk1

Pada home telah muncul folder yang telah dibuat tadi.

Yaitu folder “kelmpk1”

Gambar 2.96 Screenshot Folder pada explorer

Selanjutnya masuk ke folder kelompok1 dengan

mengetikkan cd klmpk1. [enter]

Page 95: Laporan DKP Kelompok 1 SISKOM 2012

95

Gambar 2.97 Screenshot Masuk Folder

Buat folder baru di dalam folder kelompok1 tersebut.

Dengan mengetikkan perintah mkdir anggi. [enter]

Gambar 2.98 Screenshot Membuat folder anggi

Maka akan terlihat folder baru yang bernama anggi didalam

folder kelompok1 satu tersebut jika dilihat melalui explorer.

Gambar 2.99 Screenshot Folder anggi pada eksplorer

Lanjutkan melakukan perintah membuat folder tersebut

sampai folder nim yaitu 21120111120001 pada folder anggi.

Page 96: Laporan DKP Kelompok 1 SISKOM 2012

96

Gambar 2.100 Screenshot Masuk folder anggi

Gambar 2.101 Screenshot Buat folder Nim

Gambar 2.102 Screenshot Folder nim pada ekplorer

Gambar 2.103 Screenshot Masuk folder nim

Page 97: Laporan DKP Kelompok 1 SISKOM 2012

97

Kemudian setelah masuk folder nim, maka biodata berupa

.txt, dengan mengetikan perintah nano perintah biodata_anggi.txt.

[enter]

Gambar 2.104 Screenshot Perintah Memanggil aplikasi nano

Masukkan biodata yang ingin diisikan.

Gambar 2.105 Screenshot Tampilan nano

Masukkan biodata yang ingin diisikan. Disini berupa nama, nim,

no hp, dan email.

Gambar 2.106 Screenshot Pengisian biodata

Kemudian klik ^X untuk save. [enter]

Page 98: Laporan DKP Kelompok 1 SISKOM 2012

98

Gambar 2.107 Screenshot Nano setelah disimpan

Gambar 2.108 Screenshot Nano

Maka akan muncul pada ekplorer biodata anggi didalam folder nim

yaitu 21120111120001. Ulangi langkah dari awal apabila ingin

membuat biodata berikutnya.

Gambar 2.109 Screenshot File .txt pada ekplorer

Page 99: Laporan DKP Kelompok 1 SISKOM 2012

99

Gambar 2.110 Screenshot Terminal

2.4 STUDI KASUS

Tipe Kasus 1 : Komponen Komputer

Identifikasi Masalah:

Teman Anda telah membeli sebuah motherboard dengan merek ASROCK

dengan seri X5TREME 3:

CPU socket = LGA 1336

CHIPSET = X 58

SLOT RAM = 6X DDR3

Intergrated Graphics = N/A

Intergrated Audio = VIA VT2020 AUDIO CODEC 7.1 CH HD

Intergrated Lan = Realtek gigabyte lan

Expansion slot = 3 X PCI X16

2X PCI

1X PCIe X1

2 X SATA 3 6Gb/s

6 X SATAII 3Gb/s

Bantu teman anda dalam menentukan komponen yang lain agar dapat

menjadi personal komputer yang dapat digunakan

Solusi :

Motherboard :

RAMPAGE III Extreme LGA 1336, Intel X58, QPI 6.4 GT/s, DDR

3 Triple Channel, 4x PCI Express, 16x2.0, SATA III, USB 3.0, Firewire,

Audio.

Page 100: Laporan DKP Kelompok 1 SISKOM 2012

100

Kami memilih ini karena CPU socket yang digunakan LGA 1336,

dan kami merasa motherboard yang kami pilih cocok dengan socket yang

tersedia.

Gambar 2.111 Motherboard

Prossesor :

Intel Core i7 960 (Box) 3.2 GHz, QPI 4.8, HT, 8 MB Cache,

LGA1366

Kami memilih Intel Core i7 920 karena memiliki socket LGA 1366

dan cocok dengan socket yang tersedia.

Gambar 2.112 prosessor

VGA :

Asus GTX 560 Ti DIRECTCU II TOP 1280Mb 320Bit DDR5.

Kami memilih VGA ini karena sesuai dngan kebutuhan mahasiswa

yang hobby nge-game, dan kemampuan VGA ini dalam menjalankan

game cukup memadai.

Page 101: Laporan DKP Kelompok 1 SISKOM 2012

101

Gambar 2.113 VGA

RAM :

CORSAIR Dominator GT (CMT12GX3M3A2000C9)

(i7/1355,Triple Chanel 4GB DDR3 PC3-16000 Ultimate Performance .

RAM yang kami pilihkan ini merupakan RAM yang memiliki

kapasitas yang cukup besar.

Gambar2. 114 RAM

Power Supply :

CORSAIR AX 1200W

Menggunakan power supply 1200 w kami rasa cukup cocok jika

disesuaikan dengan motherboard dan juga kebutuhan.

Gambar 2.115 power supply

Page 102: Laporan DKP Kelompok 1 SISKOM 2012

102

Cashing :

Cooler Master HAF -X RC-942-KKN Full Tower

Casing ini dilengkapi dengan Cooler master yang befungsi untuk

mengurangi panas pada CPU pada saat digunakan, dan juga casing ini

merupakan casing yang cocok dengan piranti yang ada didalamnya.

Gambar 2.116 Cashing

Hard Disk :

WDC SATA III Caviar Black 1 TB 64Mb

Kapasitas harddisk yang kami pilihkan disini cukup besar,

mengingat yang mau disimpan mahasiswa itu banyak sekali, jadi untuk

mengatasi kekurangan kapasitas dalam penyimpanan, kami memilihkan

harddisk 1 terabyte

Gambar 2.117 Hardsisk

Optical Drive :

Lite On DVDRW Sata 24x OEM

Untuk memudahkan dalam pembacaan perangkat

penyimpan berupa kaset, maka kami pilihkan DVD RW sata 24x

OEM, yang dapat membaca semua jenis kaset, mulai dari VCD,

VCD RW, dll.

Page 103: Laporan DKP Kelompok 1 SISKOM 2012

103

Gambar 2.118 Optical Drive

Sound Card :

Sound Blaster X-Fi Xtreme

Untuk menambah performa suara, kami menambahkan

Sound Blaster X-Fi Xtreme karena memiliki PCIe X1.

Gambar 2.119 Sound Card

Heatshink : V8 GT

Menggunakan heatsink V8 GT untuk mengantisipasi panas yang

ditimnbulkan oleh panas prosesor yang harus bekerja dengan performa tinggi.

Gambar 2.120 Heatshink

Page 104: Laporan DKP Kelompok 1 SISKOM 2012

104

Tipe Kasus 2 : Hidden folder menggunakan CMD

Identifikasi Masalah : menyembunyikan dan memunculakan file

Solusi :

Dalam beberapa masalah tertentu tentang folder dapat terhidden biasanya

disebabkan oleh virus. Berikut cara menyembunyikan dan menapilkan file atau

folder tersebut.

1. Menyembunyikan folder anggi, dengan cara mengetikkan perintah

Attrib +s +h /s /d

Keterangan :

Tanda + pada +s +h untuk menghilangkan

Perintah /s untuk identitas file

Perintah /d untuk identitas folder

Gambar 2.121 Perintah Hidden File dengan Menggunakan Atribut

2. Menampilkan file yang terhidden, dengan mengetikkan perintah attrib

–s –h /s /d

Keterangan : Tanda – pada –s –h untuk menampilkan

Page 105: Laporan DKP Kelompok 1 SISKOM 2012

105

Gambar 2.122 Perintah Hidden File dengan Menggunakan Atribut

Page 106: Laporan DKP Kelompok 1 SISKOM 2012

106

1.5. KESIMPULAN

1. Komputer adalah suatu perangkat elektronik yang mampu menerima

input, mengolah input (proses), memberikan informasi, serta bekerja

secara otomatis. Adapun elemen elemen yang meyusun komputer terdiri

perangkat keras (hardware), perangkat lunak (software), dan pengguna

komputer (brainware).

2. DOS (Disk Operating System) merupakan sistem operasi yang pertama

kali dibuat oleh Microsoft dengan berbasiskan tampilan karakter teks.

Perintah-perintah yang terdapat dalam DOS terbagi dalam dua kategori

besar yaitu :

a. Internal Command adalah perintah-perintah yang telah tersimpan

dalam memori komputer pada saat pembacaan DOS selesai.

Contoh : date, del, cls, copy, copy con, dir, prompt, ren, time, type, ver.

b. External Command adalah pelaksanaan seluruh perintah-perintah yang

diperlukan program eksekusi yang berektensi COM atau EXE.

Contoh : chkdsk, diskcopy, format, label, move.

3. Windows adalah salah satu system operasi yang berbasis GUI. Karena

berbasis GUI (Graphical User Interface), Windows memiliki tampilan

lebih menarik. Selain itu, pengoperasian Windows juga lebih mudah .

4. Perbedaan Windows dan Linux

5.

PERBEDAAN WINDOWS LINUX

1.Awal

Perkembangannya.

Berkembang dari dunia

Mikro yang serba

personal.

Berkembang dari dunia

UNIX dengan segala

personal multitasking dan

multiusernya. Linux

dirancang dengan

karakteristik server atau

workstation high end.

Page 107: Laporan DKP Kelompok 1 SISKOM 2012

107

2.Hak Atas

Kekayaan

Intelektual

Lisensi merupakan

syarat mutlak

menggunakannya.

Berlisensi gratis dan

mendorong penggunanya

untuk menyebarluaskan

perangkat lunak tersebut.

3.Kelengkapan

Program

Tidak menyediakan

banyak program setelah

diinstal, seperti Internet

Explorer, Media Player,

Notepad,dll.

Akan banyak ditemui

setelah diinstal, seperti :

Office Suite,Multimedia,

Internet,3D,Games,

Utility.

4.Konfigurasi

sistem

Sudah siap pakai Perlu menyunting file

secara manual melalui

command prompt.

5. Sistem File

Menggunakan FAT dan

NTFS.Tidak

membedakan

penggunaan huruf besar

atau kecil.

Menggunakan

ext2,ext3,reiserfs,xfs,ifs.M

embedakan penggunaan

huruf besar dan kecil.

6. Menangani Crash

Stabil.Apabila terjadi

crash dapat dimatikan

dengan mudah dengan

menekan Ctrl+Esc.

Merestart komputer

dengan cara menekan

Ctrl+Alt+Backspace

Page 108: Laporan DKP Kelompok 1 SISKOM 2012

108

BAB III

Pemrograman Delphi Bagian I

3.1 Tujuan

1. Praktikan memahami struktur bahasa pemrograman pascal

2. Praktikan mengenal Borland Delphi sebagai tool untuk membuat

program

3. Praktikan dapat membuat program pascal sederhana menggunakan

Borland Delphi.

3.2 Dasar Teori

3.2.1 Pengenalan Borland Delphi

1. Borland Delphi

Borland Delphi merupakan sebuah alat pengembangan aplikasi-

aplikasi untuk sistem operasi Microsoft Windows. Delphi sangat

berguna dan mudah digunakan untuk membuat program berbasis

GUI (Graphical user interface) atau console (mode teks)

Gambar 3.1 screenshoot tampilan console delphi

Kelebihan yang dapat diambil ketika seorang pengembang

perangkat lunak menggunakan program Borland Delphi adalah :

A. Delphi mendukung pemrograman berorientasi objek (Object

Oriented Programing/OOP)

B. Pengembangan aplikasi secara cepat (Rapid Application

Development/RAD)

Page 109: Laporan DKP Kelompok 1 SISKOM 2012

109

C. Menggunakan bahasa tingkat tinggi

D. Hasil dari proses kompilasi berupa sebuah file yang dapat

dieksekusi (executable file) sehingga lebih mudah dalam

pendistribusian program dan mengurangi banyaknya file

pendukung

E. Delphi menyediakan banyak sekali komponen yang dapat

digunakan. Selain itu banyak juga komponen yang bersunber

dari pihak ketiga yang biasana disertai dengan dokumentasi,

source code dan lain-lain. Komponen dari pihak ketiga bisa

yang komersil / freee

F. Mendukung banyak database server (MySQL, SQL Server,

Interbase, Oracle, dll) sehingga mempermdah dalam

membuat aplikasi database.

2. Bahasa Pemrograman Delphi

Pascal adalah bahasa dasar yang digunakan delphi. Bahasa

pascal diembangkan pada tahun1970 oleh professor Niklaus Wirth

di Politeknik Zurich, Swiss. Nama pascal diambil dari nama

seorang matematikawan Prancis yang bernama blaise Pascal.

Untuk memulai pemrograman dalam bahasa pascal, terlebih

dahulu kita harus mengetahui dulu struktur program dari bahasa

tersebut. Berikut adalah kerangka umum yang digunakan oleh

program pascal.

Program <judul program>

Uses <daftar unit>

<bagian deklarasi>

Begin

<statemen-statemen>

End.

<judul program> biasanya sama dengan nama program,

perhatikan contoh kode berikut :

Program contoh ;

Page 110: Laporan DKP Kelompok 1 SISKOM 2012

110

<daftar unit> berisi daftar unit yang akan digunakan

dalam program. Unit merupakan suatu modul program yang

terpisah dan digunakan untuk menyimpan roses-proses tertentu

yang berkaitan. Untuk membatasi unit yang satu dengan unit yang

lainnya, digunakan tanda koma (,). Berikut contoh penggunaanya :

Uses Win32CRT, windows, SysUtils;

<bagian deklarasi> berisi macam-macam deklarasi

yang dibutuhkan oleh program, yang meliputi hal-hal berikut :

a. Deklarasi tipe data

b. Deklarasi konstanta

c. Deklarasi variabel

d. Deklarasi prosedur

e. Deklarasi fungsi

f. Deklarasi label

Berikut ini contok bentuk deklarasi

{deklarasi tipe data}

Tipe

Larik = array [1..100] of integer;

{deklarasi konstanta}

Cons;

N = 100;

{deklarasi prosedur};

Prosedur contoh {s: string};

Begin

Writeln (s)

End

{deklarasi fungsi}

Function kuadrat (a: integer): integer,

Begin

Kuadrat : “ a*a/;

End

{deklarasi label}

Label BARIS;

Page 111: Laporan DKP Kelompok 1 SISKOM 2012

111

3.2.2 Program Hello Siskom

Setelah mengetahui struktur program dalam pascal, sekarang kita

akan menggunakan dalam program sederhana. Kita akan membuat

program console yang sederhana. Gunakan Console Aplication untuk

memulai membuat program baru.

Gambar 3.2 screenshoot items delphi

Progran program1;

Uses

Win32CRT;

Begin

ClrScr;

Writeln („selamat datang di praktikum dkp

2012‟);

Readln;

End.

simpan program tersebut dengan nama progran 1 degna ekstensi

.pas. periksa program diatas dengan kompilasi, tekan CTRL + F9 dan

untuk menjalankan program tekan F9 maka hasil yang akan didapat

adalah sebagai berikut.

Gambar 3.3 screenshoot tampilan compilasi delphi

Page 112: Laporan DKP Kelompok 1 SISKOM 2012

112

3.3.3 Elemen Dasar Pascal

1. Variabel

Variabel adalah suatu pengenal yang didefenisikan oleh program

untuk menyimpan nilai atau data tertentu yang dibutuhkan dalam

program pada saat program sedang bejalan. Hal yang perlu

diperhatikan adalah tipe data dari variabel yang dideklarasian

haruslah sama dengan data atau nilai yang akan dimasukkan

kedalamnya. Berikut adalah bentuk umum dari pendeklarasian

variabel.

Var

NamaVariabel : tipe data;

Perhatikan contoh pendeklarasisn variabel dibawah ini

Var

x : integer ; {variabel x dengan tipe

integer}

nama : stirng [25; {variabel Nama dengan tipe

string}

x, y, z ; integer; {variabel x, y,z dengan tipe

integer}

untuk lebih mengetahui kegunaan variabel dalam program,

perhatikan contoh berikut.

program progra2;

uses

win32CRT;

var

nama : string [25];

kelompok : integer;

begin

Clrscr;

Write („nama : „);

Readln (nama);

Writeln;

Write („saya‟, nama, „anggota kelompok‟,

kelompok‟;

Readln;

End

Page 113: Laporan DKP Kelompok 1 SISKOM 2012

113

Adapun aturan penamaan variabel dalam pascal adalah sebagai

berikut:

a. Tidak mengandung spasi

b. Tidak mengandung simbol

c. Tidak diawali dengan angka

d. Tidak menggunakan kata kunci yang terdapat pada pascal (for,

while, do dsb)

2. Konstanta

Berbeda dengan variabel, nilai konstanta tidak dapat diubah,

berikut bentuk umum pendeklarasiannya.

Const

NamaKonstanta1 = nilai_konstanta1;

NamaKonstanta2 = nilai_konstanta2;

Contoh

Const

MYPI = 3,1416

MAX RECORD = 100;

Berikut contoh prnggunaan dan menggunakan konstanta

Program program3

Uses

Win32CRT;

Const

Namaku = „Nama Kelompok‟;

Begin

Clrscr;

Write („saya‟ , namaku)‟

Readln;

End

3. Tipe Data Dasar

A. Tipe Bilangan Bulat

Tabel 3.1 tipe bilangan bulat

Tipe data Ukuran (byte) Rentang nilai

ShortInt 1 -128 -127

Integer 2 -32.768 – 32.768

LongInt 4 -2.147.483.648 – 2.147.438.640

Byte 1 0 – 255

Word 2 0 – 65.535

Page 114: Laporan DKP Kelompok 1 SISKOM 2012

114

B. Tipe Data Rill

Tabel 3.2 tipe bilangan rill

Tipe data Ukuran (byte) Digit penting Rentang nilai

Real 6 11 -12 2.9*10-39

1,7*10-38

Single 4 7 – 8 1.5*10-45

3.4*1038

Double 8 15 – 16 5.0*10-324

1.7*10308

Extended 10 19 – 20 3.4*10-4932

1.1*104932

Comp 8 19 - 20 9.2*10-18

9.2*1018

C. Tipe Karakter

Tipe ini digunakan untuk mempresentasikan nilai-nilai

yang bertipe karakter, misalnya „A‟, „a‟, „$‟, „ „ dan sebagainya.

Berikut adalah contoh program yang menggunakan

variabel dengan tipe chart.

Program progra4;

Uses

Win32CRT

Var

Huruf1, huruf2 : char;

Beegin

Huruf1 := „A‟,

Huruf2 := „4‟;

Writeln (huruf1, huruf2);

End

D. Tipe String

Tipe string merupakan kumpulan dari karakter yang

terangkai menjadi satu kata. Contoh penggunaannya adalah

sebagai berikut.

Program program5;

Uses

Win32CRT;

Var

Stirng1, string2, stirng(6);

Begin

Stirng1 := „SISKOM‟;

String2 := „Sistem Komputer‟;

Writeln := (string1);

Writeln :=(srting2);

End.

Page 115: Laporan DKP Kelompok 1 SISKOM 2012

115

E. Tipe Logika

Tipe Logika (bolean) merupakan tipr yang hanya memiliki

dua buah nilai, yaitu benar (true) atau salah (false). Berikut

contoh pendeklarasian

Var

saya, kamu: boolean;

Contoh pemberian nilai pada variabel sebagai berikut. Saya := true;

Kamu := false;

3.3.4 Operator dalam Pascal

Operator didefenisikan sebagai sesuatu yang digunakan untuk

melakukan operasi-operasi tertentu, misalnya operasi aritmatika,

penggunaan string dan lainnya.

1. Operator Aritmatika

Tabel 3.3 tabel operasi aritmatika

Operator Jenis Operasi Ripe Operand Tipe hasil Contoh

+ Penjumlahan Integer,

real

Integer,

real

a + b

- Pengurangan Integer,

real Integer,

real

x – 1

* Perkalian Integer,

real Integer,

real

a * b

/ Pembagian Integer,

real

real 5 / 3

Div Pembagian

untuk

bilangan

bulat

Integer Integer 10 div

4

Mod Sisa bagi Integer Integer 10 mod

3

Page 116: Laporan DKP Kelompok 1 SISKOM 2012

116

Contoh program yang menggunakan operasi aritmatika

Program program6;

Uses

Win32CRT;

Const

X = 10;

Y = 3;

Begin

ClrScr

Writeln („x + y‟=‟ , x +y);

Writeln („x - y‟=‟ , x - y);

Writeln („x * y‟=‟ , x * y);

Writeln („x / y‟=‟ , x / y);

Writeln („x div y‟=‟ , x div y);

Writeln („x mod y‟=‟ , x mod y);

End.

2. Operator Logika

A. Operasi not

Program program7;

Uses

Win32CRT;

Var

A : boolean;

Begin

ClrScr;

A := false;

A := not A;

Writeln (A);

Readln;

End

B. Operasi and

Program program8;

Uses

Win32CRT

Begin

ClrScr;

Writeln („true and true = „ , true and true);

Writeln („true and false = ‟ , true and false);

Writeln („false and true= ‟ , false and true);

Writeln („false and false= ‟ , false and false);

Readln;

End.

Page 117: Laporan DKP Kelompok 1 SISKOM 2012

117

C. Operator or

Program program9;

Uses

Win32CRT

Begin

ClrScr;

Writeln („true or true = „ , true or true);

Writeln („true or false = ‟ , true or false);

Writeln („false or true= ‟ , false or true);

Writeln („false or false= ‟ , false or false);

Readln;

End.

D. Operasi xor

Program program10;

Uses

Win32CRT

Begin

ClrScr;

Writeln („true xor true = „ , true xor true);

Writeln („true xor false = ‟ , true xor false);

Writeln („false xor true= ‟ , false xor true);

Writeln („false xor false= ‟ , false xor false);

Readln;

End.

3. Operator Relasional

Tabel 3.4 operasi relasional

Operator Arti Contoh

= Sama dengan A = 3

< > Tidak sama dengan A < > 3

< Lebih kecil A < 1

> Lebih besar A > 1

< = Lebih keil sama dengan A <= B

>= Lebih besar sama dengan A >= B

3.3.5 Input Output

Untuk membaca masukan dari keyboard, kita menggunakan

readln dalam ascal. Berikut contoh program yang meneeerima

masukan dari keyboard.

Page 118: Laporan DKP Kelompok 1 SISKOM 2012

118

Program program11;

Uses

Win32CRT

Var

A, B : integer;

Begin

ClrScr;

Writeln („menghitung luas persegi panjang‟);

Writeln („‟);

Write („nilai panjang = ‟); readln (A);

Write („nilai lebaar =‟); readln (B);

Writeln („luas = ‟ , A * B);

Readln;

End.

3.3.6 Pengkondisian

1. Statemen if

program Program12;

uses

win32CRT;

var

NA, NUTS, NUAS: real;

NI : char;

begin

ClrScr;

write(„Masukkan Nilai UTS : ‟); readln(NUTS);

writeln;

write(„Masukkan Nilai UAS : ‟); readln(NUAS);

writeln;

NA := (0.6 * NUAS) + (0.4 * NUTS);

if (NA >= 80) then begin

NI := „A‟;

end else if (NA >= 70) then begin

NI := „B‟;

end else if (NA >= 50) then begin

NI := „C‟;

end else if (NA >= 30) then begin

NI := „D‟;

end else begin

NI := „E‟;

end;

writeln („Nilai Akhir : ‟, NA);

writeln („Indeks : ‟, NI);

readln;

end.

2. Statemen case

Page 119: Laporan DKP Kelompok 1 SISKOM 2012

119

program Program13;

uses

win32CRT;

var

hari : integer;

begin

ClrScr;

write(„masukkan nomor hari (1..7) ‟);

readln(hari);

wrriteln;

case (hari) of

1 : write („Hari Minggu‟);

2 : write („Hari Senin‟);

3 : write („Hari Selasa‟);

4 : write („Hari Rabu‟);

5 : write („Hari Kamis‟);

6 : write („Hari Jumat‟);

7 : write („Hari Sabtu‟);

else write („angka yang anda masukkan

salah‟);

end;

readln;

end.

3.3.7 Pengulangan

A. Statemen for 1. For to do

program Program14;

uses

win32CRT; var

i : integer;

begin

ClrScr;

for i:=0 to 5 do

writeln(i);

readln;

end.

2. For downto do program Program15;

uses

win32CRT;

var

i : integer;

begin

ClrScr;

for i:=5downto 0 do begin

writeln(i);

end;

readln;

end.

Page 120: Laporan DKP Kelompok 1 SISKOM 2012

120

B. Statemen while

program Program16;

uses

win32CRT;

var

i : integer;

begin

ClrScr;

i := 1;

while (i <=5) do begin

writeln („Praktikum DKP‟);

i := i+1;

end;

readln;

end.

C. Statemen repeat

program Program17;

uses

win32CRT;

var

i : integer;

begin

ClrScr;

i := 1;

repeat

writeln („Praktikum DKP‟);

i := i+1; u

ntil (i > 5);

readln;

end.

Page 121: Laporan DKP Kelompok 1 SISKOM 2012

121

3.3 Analisa dan Pembahasan

3.3.1 Program Sederhana Console

Program yang dibuat untuk percobaan kali ini berbasis console.

Cara membuat program dengan console yaitu : File > New > Other >

Console Application.

1. Program Selamat Datang

Program_kelompok1_program1;

uses

SysUtils;

begin

writeln(„selamat datang di Praktikum DKP 2012‟);

readln;

end.

Gambar 3.4 screenshoot Source code program 1

Program : Menerangkan nama program.

Uses : Menerangkan unit yang digunakan program tersebut.

Writeln : Digunakan untuk menampilkan output ke monitor dan

memberikan satu enter setelahnya.

Readln : Digunakan untuk membaca masukan dari user.

Page 122: Laporan DKP Kelompok 1 SISKOM 2012

122

Gambar 3.5 screenshoot program selamat datang

Program ini berfungsi untuk menampilkan suatu output berupa tulisan

pada layar monitor.

3.3.2 Variabel

Program_kelompok1_program2;

uses

SysUtils;

var

nama:string[25];

klmpk:integer;

begin

write(„nama : ‟);

readln(nama);

write(„kelompok : ‟);

readln(klmpk);

writeln;

write(„Saya ‟,nama, „anggota kelompok ‟,klmpk);

readln;

end.

Gambar 3.6 screenshoot Source code program 2

Page 123: Laporan DKP Kelompok 1 SISKOM 2012

123

Program : Menerangkan nama program.

Uses : Menerangkan unit yang digunakan program tersebut.

String[25] : Menerangkan bahwa program tersebut menggunakan

variabel dengan tipe string dengan panjang maksimal

25 karakter.

Integer : Menerangkan bahwa program tersebut menggunakan

variabel dengan tipe integer untuk bilangan bulat.

Write : Digunakan untuk menampilkan dan menginput

informasi ke monitor.

Writeln : Digunakan untuk menampilkan output ke monitor dan

memberikan satu enter setelahnya.

Readln : Digunakan untuk membaca masukan dari user.

Gambar 3.7 screenshoot penggunaan variabel

Program ini digunakan untuk menampilkan kembali input yang telah

kita tuliskan pada program tersebut.

3.3.3 Konstanta

Program Kelompok1_Program3;

const

namaku = „Nama Kelompok‟;

begin

writeln(„Saya ‟,namaku);

readln;

end.

Page 124: Laporan DKP Kelompok 1 SISKOM 2012

124

Gambar 3.8 screenshoot Source code program 3

Program : Menerangkan nama program.

Uses : Menerangkan unit yang digunakan program tersebut.

Const : Menerangkan bahwa program tersebut menggunakan

konstanta dengan nilai yang sudah ditetapkan.

Write : Digunakan untuk menampilkan dan menginput informasi ke

monitor

Readln : Digunakan untuk membaca masukan dari user.

Gambar 3.9 screenshoot kegunaan konstanta

Program ini berfungsi untuk menampilkan suatu output dengan nilai

konstanta yang telah diinput sebelumnya.

Page 125: Laporan DKP Kelompok 1 SISKOM 2012

125

3.3.4 Tipe Karakter Char

Program Kelompok1_Program4;

uses

SysUtils;

var

huruf1,huruf2:char;

begin

huruf1:=„A‟;

huruf2:=„4‟;

writeln(huruf1,huruf2);

readln;

end.

Gambar 3.10 screenshoot Source code program 4

Program : Menerangkan nama program.

Uses : Menerangkan unit yang digunakan program tersebut.

Char : Menerangkan bahwa program tersebut menggunakan

variabel dengan tipe karakter.

Writeln : Digunakan untuk menampilkan output ke monitor dan

memberikan satu enter setelahnya.

Readln : Digunakan untuk membaca masukan dari user.

Page 126: Laporan DKP Kelompok 1 SISKOM 2012

126

Gambar 3.11 screenshoot penggunaan variabel char

Program ini berfungsi untuk menampilkan tulisan berupa karakter

pada layar monitor. Ketika dimasukkan huruf1:=‟A‟ dan huruf2:=‟4‟

maka akan tampil tulisan A4 pada layar.

3.3.5 Tipe String

Program Kelompok1_Program5;

uses

SysUtils;

var

string1,string2:string[6];

begin

string1:=„SISKOM‟;

string2:=„Sistem Komputer‟;

writeln(string1);

writeln(string2);

readln;

end.

Gambar 2.12 screenshoot Source code program 5

Page 127: Laporan DKP Kelompok 1 SISKOM 2012

127

Program Menerangkan nama program.

Uses : Menerangkan unit yang digunakan program tersebut.

String[6] : Menerangkan bahwa program tersebut menggunakan

variabel dengan tipe string dengan panjang maksimal 6

karakter.

Writeln : Digunakan untuk menampilkan output ke monitor dan

memberikan satu enter setelahnya.

Readln : Digunakan untuk membaca masukan dari user.

Gambar 3.13 screenshoot penggunaan string

Program ini berfungsi untuk menampilkan tulisan berbasi variabel

string yang dibatasi hanya sampai 6 karakter saja. Oleh karena itu

tidak semua tulisan dapat tampil karena hanya 6 karakter saja yang

diperbolehkan untuk tampil pada output.

3.3.6 Operasi Aritmatika

Program Kelompok1_Program6;

uses

SysUtils;

const

x=10;

y=3;

begin

writeln(„x + y = ‟, x + y);

writeln(„x - y = ‟, x - y);

writeln(„x * y = ‟, x * y);

writeln(„x / y = ‟, x / y);

writeln(„x div y = ‟, x div y);

writeln(„x mod y = ‟, x mod y);

Page 128: Laporan DKP Kelompok 1 SISKOM 2012

128

readln;

end.

Gambar 3.14 screenshoot Source code program 6

Program : Menerangkan nama program.

Uses : Menerangkan unit yang digunakan program tersebut.

Const : Menerangkan bahwa program tersebut menggunakan

konstanta dengan nilai yang sudah ditentukan.

+ - * / div mod : Operasi Aritmatika

Writeln : Digunakan untuk menampilkan output ke monitor dan

memberikan satu enter setelahnya.

Readln : Digunakan untuk membaca masukan dari user.

Gambar 3.15 screenshoot penggunaan operasi aritmatika

Program ini digunakan jika ingin menggunakan operasi aritmatika di

dalam program. Seperti misalnya penambahan, pengurangan,

perkalian, dll.

Page 129: Laporan DKP Kelompok 1 SISKOM 2012

129

3.3.7 Tipe Logika

Program Kelompok1_Program7;

uses

SysUtils;

var

A:boolean;

begin

A:=false;

A:=not A;

writeln(A);

readln;

end.

Gambar 3.16 screenshoot Source code program 7

Program : Menerangkan nama program.

Uses : Menerangkan unit yang digunakan program tersebut.

Boolean : Menerangkan bahwa program menggunakan variabel

boolean (true or false).

Writeln : Digunakan untuk menampilkan output ke monitor dan

memberikan satu enter setelahnya.

Readln : Digunakan untuk membaca masukan dari user.

Page 130: Laporan DKP Kelompok 1 SISKOM 2012

130

Gambar 3.17 screenshoot penggunaan logika

Program ini digunakan apabila ingin menampilkan hasil yang

berkebalikan dengan nilai dari variabel yang telah dimasukkan.

Contoh seperti pada program di atas, diberikan nilai A:=false

kemudian diberikan kembali nilai A:=not A yang akan menghasilkan

output TRUE.

3.3.8 Operator And

Program Kelompok1_Program8;

uses

SysUtils;

begin

writeln(„true and true = ‟, true and true);

writeln(„true and false = ‟, true and false);

writeln(„false and true = ‟, false and true);

writeln(„false and false = ‟, false and false);

readln;

end.

Gambar 3.18 screenshoot Source code program 8

Program : Menerangkan nama program.

Uses : Menerangkan unit yang digunakan program tersebut.

Page 131: Laporan DKP Kelompok 1 SISKOM 2012

131

And : Operator logika menyatakan perbandingan. And

digunakan apabila diinginkan keluaran dengan hasil true

dimana inputan-inputannya kedua duanya harus bernilai

true. Jika salah satu bernilai true maka hasil keluaran akan

bernilai false.

Writeln : Digunakan untuk menampilkan output ke monitor dan

memberikan satu enter setelahnya.

Readln : Digunakan untuk membaca masukan dari user.

Gambar 3.19 screenshoot pengunaan operator and

Program ini berfungsi untuk menampilkan output berdasarkan hasil

perbandingan AND dari dua macam input (true – false) yang

dimasukkan sebelumnya.

3.3.9 Operator Or

Program Kelompok1_Program9;

uses

SysUtils;

begin

writeln(„true or true = ‟, true or true);

writeln(„true or false = ‟, true or false);

writeln(„false or true = ‟, false or true);

writeln(„false or false = ‟, false or false);

readln;

end.

Page 132: Laporan DKP Kelompok 1 SISKOM 2012

132

Gambar 3.20 screenshoot Source code program 9

Program : Menerangkan nama program.

Uses : Menerangkan unit yang digunakan program tersebut.

Or : Operator logika menyatakan perbandingan. Or digunakan

apabila diinginkan keluaran dengan hasil true dimana

inputan-inputannya salah satu bernilai true dan false atau

kedua-duanya true.

Writeln : Digunakan untuk menampilkan output ke monitor dan

memberikan satu enter setelahnya.

Readln : Digunakan untuk membaca masukan dari user.

Gambar 3.21 screenshoot penggunaan operator or

Program ini berfungsi untuk menampilkan output berdasarkan hasil

perbandingan OR dari dua macam input (true – false) yang

dimasukkan sebelumnya.

3.3.10 Operator Xor

Program Kelompok1_Program10;

Page 133: Laporan DKP Kelompok 1 SISKOM 2012

133

uses

SysUtils;

begin

writeln(„true xor true = ‟, true xor true);

writeln(„true xor false = ‟, true xor false);

writeln(„false xor true = ‟, false xor true);

writeln(„false xor false = ‟, false xor false);

readln;

end.

Gambar 3.22 screenshoot Source code program 10

Program : Menerangkan nama program.

Uses : Menerangkan unit yang digunakan program tersebut.

Xor : Operator logika menyatakan perbandingan. Xor

digunakan apabila diinginkan keluaran dengan hasil true

dimana salah satu inputannya harus bernilai true. Meskipun

kedua inputan bernilai true maka hasil keluaran akan tetap

bernilai false.

Writeln : Digunakan untuk menampilkan output ke monitor dan

memberikan satu enter setelahnya.

Readln : Digunakan untuk membaca masukan dari user.

Page 134: Laporan DKP Kelompok 1 SISKOM 2012

134

Gambar 3.23 screenshoot penggunaan operator xor

Program ini berfungsi untuk menampilkan output berdasarkan hasil

perbandingan XOR dari dua macam input (true – false) yang

dimasukkan sebelumnya.

3.3.11 Input Output

Program Kelompok1_Program11;

uses

SysUtils;

var

A,B:integer;

begin

writeln(„Menghitung Luas Persegi Panjang‟);

writeln(„‟);

write(„Nilai Panjang = ‟);readln(A);

write(„Nilai Lebar = ‟);readln(B);

writeln(„Luas = ‟,A*B);

readln;

end.

Gambar 3.24 screenshoot Source code program 11

Program : Menerangkan nama program.

Uses : Menerangkan unit yang digunakan program tersebut.

Page 135: Laporan DKP Kelompok 1 SISKOM 2012

135

Integer : Menerangkan bahwa program tersebut menggunakan

variabel dengan tipe integer untuk bilangan bulat.

Write : Digunakan untuk menampilkan dan menginput

informasi ke monitor.

Writeln : Digunakan untuk menampilkan output ke monitor dan

memberikan satu enter setelahnya.

Readln : Digunakan untuk membaca masukan dari user.

Gambar 3.25 screenshoot penggunaan operasi input

Program ini digunakan apabila diinginkan untuk memasukkan data

dari keyboard dan ditampilkan pada monitor.

3.3.12 Statement If

Program Kelompok1_Program12;

uses

SysUtils;

var

NA,NUTS,NUAS:real;

NI:char;

begin

write(„Masukkan Nilai UTS : ‟);readln(NUTS);

writeln;

write(„Masukkan Nilai UAS : ‟);readln(NUAS);

writeln;

NA:=(0.6*NUAS)+(0.4*NUTS);

if (NA >= 80) then begin

NI:=„A‟;

end else if (NA >= 70) then begin

NI:=„B‟;

end else if (NA >= 50) then begin

NI:=„C‟;

end else if (NA >= 30) then begin

NI:=„D‟;

Page 136: Laporan DKP Kelompok 1 SISKOM 2012

136

end else begin

NI:=„E‟;

end;

writeln(„Nilai Akhir : ‟,NA);

writeln(„Indeks : ‟,NI);

end.

Gambar 3.26 screenshoot Source code program 12

Program : Menerangkan nama program.

Uses : Menerangkan unit yang digunakan program tersebut.

Char : Menerangkan bahwa program tersebut menggunakan

variabel dengan tipe karakter.

Real : Menerangkan bahwa program tersebut menggunakan

variabel dengan tipe bilangan real.

If – then : Suatu statemen kondisional jika banyak pilihan

kemungkinan yang akan terjadi.

Write : Digunakan untuk menampilkan dan menginput

informasi ke monitor.

Writeln : Digunakan untuk menampilkan output ke monitor dan

memberikan satu enter setelahnya.

Readln : Digunakan untuk membaca masukan dari user.

Page 137: Laporan DKP Kelompok 1 SISKOM 2012

137

Gambar 3.27 screenshoot penggunaan statement if

Program ini akan menampilkan suatu hasil dari perhitungan nilai UTS

dan UAS serta memberikan indeks nilai berdasarkan statemen if –

then. Jika nilai diatas 80, maka nilai A, jika nilai diatas 70 maka nilai

B, dst.

3.3.13 Statement Case

Program Kelompok1_Program13;

uses

SysUtils;

var

hari:integer;

begin

write(„Masukkan nomor hari (1..7) : ‟);

readln(hari);

writeln;

case (hari) of

1 : write („Hari Minggu‟);

2 : write („Hari Senin‟);

3 : write („Hari Selasa‟);

4 : write („Hari Rabu‟);

5 : write („Hari Kamis‟);

6 : write („Hari Jumat‟);

7 : write („Hari Sabtu‟);

else write(„Angka yang anda masukkan salah‟);

end;

readln;

end.

Page 138: Laporan DKP Kelompok 1 SISKOM 2012

138

Gambar 3.28 screenshoot Source code program 13

Program : Menerangkan nama program.

Uses : Menerangkan unit yang digunakan program tersebut.

Integer : Menerangkan bahwa program tersebut menggunakan

variabel dengan tipe bilangan bulat.

Case – of : Suatu statemen kondisional jika banyak pilihan

kemungkinan yang akan terjadi.

Write : Digunakan untuk menampilkan dan menginput

informasi ke monitor.

Writeln : Digunakan untuk menampilkan output ke monitor dan

memberikan satu enter setelahnya.

Readln : Digunakan untuk membaca masukan dari user.

Gambar 3.29 screenshoot penggunaan statement case 1

Page 139: Laporan DKP Kelompok 1 SISKOM 2012

139

Gambar 3.30 penggunaan statement case 2

Fungsi dari program ini hampir sama dengan program yang

menggunakan statemen if – then. Program ini akan menampilkan

suatu hasil dari pilihan yang kita input. Apabila kita memilih 1, maka

tampil „Hari Minggu‟, apabila kita memilih 2, maka tampil „Hari

Senin, sampai pada pilihan 7 yaitu „Hari Sabtu”. Apabila pilihan kita

tidak tertera, maka program akan menampilkan tulisan kesalahan.

3.3.14 Statement For

Program Kelompok1_Program14;

uses

SysUtils;

var

i:integer;

begin

for i:=0 to 5 do

writeln(i);

readln;

end.

Page 140: Laporan DKP Kelompok 1 SISKOM 2012

140

Gambar 3.31 screenshoot Source code program 14

Program : Menerangkan nama program.

Uses : Menerangkan unit yang digunakan program tersebut.

Integer : Menerangkan bahwa program tersebut menggunakan

variabel dengan tipe bilangan bulat.

For-to-do : Menerangkan bahwa program akan menuliskan suatu

nilai yang berurutan secara meningkat dari nilai terkecil

hingga terbesar dan sampai nilai yang telah ditentukan.

Writeln : Digunakan untuk menampilkan output ke monitor dan

memberikan satu enter setelahnya.

Readln : Digunakan untuk membaca masukan dari user.

Gambar 3.32 screenshoot penggunaan statement for

Program ini akan menampilkan nilai 0 dan terus meningkat sampai

dengan 5 secara berurutan.

Page 141: Laporan DKP Kelompok 1 SISKOM 2012

141

3.3.15 Statement Down to do

Program Kelompok1_Program15;

uses

SysUtils;

var

i:integer;

begin

for i:=0 downto 5 do begin

writeln(i);

end;

readln;

end.

Gambar 3.33 screenshoot Source code program 15

Program : Menerangkan nama program.

Uses : Menerangkan unit yang digunakan program

tersebut.

Integer : Menerangkan bahwa program tersebut

menggunakan variabel dengan tipe bilangan bulat.

For-downto-do : Menerangkan bahwa program akan menuliskan

suatu nilai yang berurutan secara menurun dari nilai

terbesar hingga nilai terkecil dan sampai nilai yang

telah ditentukan.

Writeln : Digunakan untuk menampilkan output ke monitor

dan memberikan satu enter setelahnya.

Readln : Digunakan untuk membaca masukan dari user.

Page 142: Laporan DKP Kelompok 1 SISKOM 2012

142

Gambar 3.34 screenshoot penggunaan statement down to do

Program ini akan menampilkan nilai 5 dan terus menurun sampai

dengan 0 secara berurutan.

3.3.16 Statement While

Program Kelompok1_Program16;

uses

SysUtils;

var

i:integer;

begin

i:=1;

while (i <= 5) do begin

writeln(„Praktikum DKP‟);

i:=i+1;

end;

readln;

end.

Gambar 3.35 screenshoot Source code program 16

Program : Menerangkan nama program.

Uses : Menerangkan unit yang digunakan program tersebut.

Page 143: Laporan DKP Kelompok 1 SISKOM 2012

143

Integer : Menerangkan bahwa program tersebut menggunakan

variabel dengan tipe bilangan bulat.

While-do : Menerangkan bahwa program akan menuliskan suatu

nilai yang sama secara terus menerus sampai ketika

jumlah nilai sudah mencapai target yang ditetapkan.

Writeln : Digunakan untuk menampilkan output ke monitor dan

memberikan satu enter setelahnya.

Readln : Digunakan untuk membaca masukan dari user.

Gambar 3.36 screenshoot penggunaan statement while

Program ini akan menampilkan tulisan „Praktikum DKP‟ secara

berulang dari nilai i:=1 dan terus bertambah secara bertahap dengan

rumus i:=i+1 sampai state dimana nilai i <= 5.

3.3.17 Statement Repeat

Program Kelompok1_Program17;

uses

SysUtils;

var

i:integer;

begin

i:=1;

repeat

writeln(„Praktikum DKP‟);

i:=i+1;

until (i > 5);

readln;

end.

Page 144: Laporan DKP Kelompok 1 SISKOM 2012

144

Gambar 3.37 Source code program 17

Program : Menerangkan nama program.

Uses : Menerangkan unit yang digunakan program tersebut.

Integer : Menerangkan bahwa program tersebut menggunakan

variabel dengan tipe bilangan bulat.

Repeat : Menerangkan bahwa program akan menuliskan suatu

nilai yang sama secara terus menerus hingga mencapai

jumlah target yang ditetapkan.

Writeln : Digunakan untuk menampilkan output ke monitor dan

memberikan satu enter setelahnya.

Readln : Digunakan untuk membaca masukan dari user.

Gambar 3.38 screenshoot penggunaan statement repeat

Program ini akan menampilkan tulisan „Praktikum DKP‟ secara

berulang dimulai dari i:=1 dan terus bertambah secara bertahap

dengan rumus i:=i+1 sampai pada akhirnya nilai i > 5.

Page 145: Laporan DKP Kelompok 1 SISKOM 2012

145

3.3.18 Program Mengalikan Dua Bilangan Bulat dengan Operator (+)

program kelompok1_program18;

uses

SysUtils;

var

a,b,c,i:integer;

begin

writeln('masukkan bil 1: ');

readln(a);

writeln('masukkan bil 2: ');

readln(b);

begin

for i:=1 to b do

c:=c+a;

end;

writeln('hasil kali: ',c);

readln;

end.

Gambar 3.39 screenshoot source code dan compile operator

3.3.19 Program Mencari Luas Bangun Datar

Source code

program luas_bangun_datar;

{$APPTYPE CONSOLE}

uses

SysUtils;

var

a,b,c,d,j,m : integer;

h : char;

label k;

const

n = 2;

Page 146: Laporan DKP Kelompok 1 SISKOM 2012

146

begin

k: writeln ('Program Menghitung Luas Bangun Datar');

writeln ('- - - - - - - - - - - - - - - - - - - ');

writeln ('');

writeln ('pilih menu berikut dengan menekan tombol

[1..3]');

writeln ('[1] Luas Persegi Panjang');

writeln ('[2] Luas Segitiga') ;

writeln ('[3] Keluar Program');

writeln ('');

writeln ('Masukkan Pilihan Anda : ');readln(a);

if (a=1)then begin

writeln ('Anda memilih program penghitung -Luas Persegi

Panjang-');

writeln ('');

writeln ('Masukkan panjang persegi panjang :

');readln(b);

writeln ('Masukkan lebar persegi panjang :

');readln(c);

d := b*c;

writeln ('Maka Luas Persegi Panjang tersebut adalah :

',d);

writeln ('');

writeln ('Mau menghitung lagi

[Ya(y)/tidak(n)?');readln(h);

writeln ('');

writeln

('"""""""""""""""""""""""""""""""""""""""""""""""""""""""""

"""""""""');

if (h='n') then begin

exit;

end else goto k;

end else if (a=2)then begin

writeln ('Anda memilih program penghitung -Luas

Segitiga-');

writeln ('');

writeln ('Masukkan sisi pertama segitiga :

');readln(b);

writeln ('Masukkan sisi kedua segitiga : ');readln(c);

writeln ('Masukkan sisi ketiga segitiga : ');readln(d);

j := (b+c+d) div n;

m :=(j*(j-b)*(j-c)*(j-d));

writeln ('Maka Luas Segitiga tersebut adalah :

',sqrt(m));

writeln ('');

writeln ('Mau menghitung lagi

[Ya(y)/tidak(n)?');readln(h);

writeln ('');

writeln

('"""""""""""""""""""""""""""""""""""""""""""""""""""""""""

"""""""""');

if (h='n') then begin

exit;

end else goto k;

end else if(a=3)then begin

writeln ('Anda Akan Keluar Dari Program Menghitung

Luas Bangun Datar');

Page 147: Laporan DKP Kelompok 1 SISKOM 2012

147

writeln ('');

writeln ('apa anda yakin?? [Ya(y)/tidak(n)]');readln

(h);

writeln ('');

writeln

('"""""""""""""""""""""""""""""""""""""""""""""""""""""""""

"""""""""');

if (h='y') then begin

exit;

end else goto k;

end;

end.

Gambar 3.40 Screenshot souce code #1 program luas_bangun_datar

Pada source code ini diterangkan nama program yang dibuat yaitu

“luas_bangun_datar” , penggunaan library SysUtils , pendeklarasian

variabel yaitu a,b,c,d,j,m dengan tipe data integer , h dengan tipe data

char , label k , dan konstanta n adalah 2 . Kemudian penulisan source

code setelah struktur begin . Label “k” diletakkan di awal source code

untuk memanggilnya . Source code awal yaitu tampilan yang akan

ditampilkan pada awal ketika program dijalankan seperti yang sudah

ditetapkan dalam modul dengan menggunakan writeln.

Page 148: Laporan DKP Kelompok 1 SISKOM 2012

148

Gambar 3.41 Screenshot source code #2 program luas_bangun_datar

Setelah tampilan awal program sudah dibuat tinggal membuat

bagaimana program bekerja . Pada source code ini , dijelaskan ketika

input awal adalah 1 maka program akan menuju perhitungan luas

persegi panjang yang ditandai dengan tulisan “Anda memilih program

penghitung -Luas Persegi Panjang-” yang kemudian diminta untuk

memasukkan panjang dan lebar persegi panjang. Lalu masukan data

tersebut akan diolah sesuai dengan rumus luas persegi panjang yaitu

yang kemudian hasilnya akan dioutputkan pada tampilan

program yang kemudian akan ditanya untuk menghitung program lagi

atau tidak , jadi ketika inputan adalah “n” maka program akan

langsung exit dan sebaliknya ketika inputan adalah “y” maka program

akan berlanjut ke awal program ketika program dijalankan dengan

bantuan label ”k” .

Gambar 3.42 Screenshot source code #3 program luas_bangun_datar

Page 149: Laporan DKP Kelompok 1 SISKOM 2012

149

Pada source code ini , dijelaskan ketika input awal adalah 2 maka

program akan menuju perhitungan luas segitiga yang ditandai dengan

tulisan “Anda memilih program penghitung -Luas Segitiga-” yang

kemudian diminta untuk memasukkan sisi pertama, kedua dan ketiga

pada segitiga . Lalu masukan data tersebut akan diolah sesuai dengan

rumus luas segitiga umumnya yaitu √ ( )( )( )

dimana

yang kemudian hasilnya akan dioutputkan pada tampilan

program yang kemudian akan ditanya untuk menghitung program lagi

atau tidak, jadi ketika inputan adalah “n” maka program akan

langsung exit dan sebaliknya ketika inputan adalah “y” maka program

akan berlanjut ke awal program ketika program dijalankan dengan

bantuan label ”k”.

Gambar 3.43 Screenshot source code #4 program luas_bangun_datar

Pada source code ini , dijelaskan ketika input awal adalah 3 maka

program akan menuju menu keluar program yang ditandai dengan

outputan “Anda Akan Keluar Dari Program Menghitung Bangun

Datar ” lalu akan diminta untuk meyakinkan untuk keluar program

dengan outputan “apa anda yakin?? [Ya(y)/Tidak(n)]” jadi ketika

inputan adalah “y” maka program akan langsung exit dan sebaliknya

ketika inputan adalah “n” maka program akan berlanjut ke awal

program ketika program dijalankan dengan bantuan label ”k”.

Page 150: Laporan DKP Kelompok 1 SISKOM 2012

150

Gambar 3.44 Screenshot awal program luas_bangun_datar (running)

Hasil program awal dari source code yang telah dituliskan yang

sudah sesuai dengan tampilan yang diminta oleh modul yang

kemudian diminta untuk memilih menu luas persegi panjang atau luas

segitiga atau keluar dari program .

Gambar 3.45 Screenshot program luas_bangun_datar inputan awal 1

Ketika inputan awal adalah 1 maka program akan masuk ke menu

untuk menghitung luas persegi panjang yang kemudian diminta untuk

memasukkan besar dari panjang persegi panjang .

Gambar 3.46 Screenshot program luas_bangun_datar (menu luas persegi panjang)

Page 151: Laporan DKP Kelompok 1 SISKOM 2012

151

Setelah dimasukkan besar panjang persegi panjang selanjutnya

akan diminta besar lebar persegi panjang , yang kemudian akan

otomatis menampilkan hasil nya dan akan muncul bersamaan

permintaan untuk menghitung lagi atau tidak .

Gambar 3.47 Screenshot program luas_bangun_datar (hitung lagi atau tidak)

Apabila pada permintaan untuk menghitung lagi atau tidak ,

diinputkan “y” maka program akan lanjut ke awal program .

Gambar 3.48 Screenshot program luas_bangun_datar inputan awal 2

Ketika inputan awal adalah 2 maka program akan masuk ke menu

untuk menghitung segitiga yang kemudian diminta untuk memasukkan

besar sisi pertama dari segitiga .

Page 152: Laporan DKP Kelompok 1 SISKOM 2012

152

Gambar 3.49. Screenshot program luas_bangun_datar (menu segitiga)

Setelah dimasukkan besar sisi pertama selanjutnya akan diminta

besar sisi kedua dan ketiga dari segitiga , yang kemudian akan otomatis

menampilkan hasil nya dan akan muncul bersamaan permintaan untuk

menghitung lagi atau tidak .

Gambar 3.50 Screenshot program luas_bangun_datar inputan awal 3

Ketika inputan awal adalah 3 maka program akan masuk ke menu

keluar program yang kemudian akan ditandai dengan outputan “Anda

Akan Keluar Dari Program Menghitung Bangun Datar ” lalu akan

diminta untuk meyakinkan untuk keluar program dengan outputan “apa

anda yakin?? [Ya(y)/Tidak(n)]”

Page 153: Laporan DKP Kelompok 1 SISKOM 2012

153

Gambar 3.51 Screenshot program luas_bangun_datar (menu keluar program)

Ketika diinputkan “y” maka program akan otomatis keluar .

Gambar 3.52 Screenshot program luas_bangun_datar (input tidak)

Ketika diinputkan “n” maka program akan menuju ke awal

program ketika dijalankan .

Page 154: Laporan DKP Kelompok 1 SISKOM 2012

154

4. Program Mencari Luas Bangun Ruang

Source code luas balok

program luas_balok;

uses

SysUtils;

var

a,b,c,d : integer;

h : char;

label k;

const

e=2;

begin

k:writeln ('- - - - - - - - WELCOME ON OUR PROJECT - -

- - - - - --');

writeln ('-:::::: Program Penghitung Luas Permukaan

Balok ::::::-');

writeln ('- - - - - - - - - - - - - - - - - - - - - - -

- - - - -');

Page 155: Laporan DKP Kelompok 1 SISKOM 2012

155

writeln ('- Rumus Permukaan Luas Balok adalah

L=2(p.l+p.t+l.t) --');

writeln ('- - - - - - - - - - - - - - - - - - - - - - -

- - - - -');

write ('Masukkan Panjang Balok : ');readln(a);

writeln ('');

write ('Masukkan Lebar Balok : ');readln(b);

writeln ('');

write ('Masukkan Tinggi Balok : ');readln(c);

writeln ('');

d:= e*((a*b)+(a*c)+(b*c));

writeln ('Maka Luas Permukaan Balok tersebut adalah '

,d);

writeln ('_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

_ _ _ _ _');

writeln ('');

write ('Mau menghitung lagi [(y)] atau keluar program

[(n)] ?');readln(h);

writeln ('');

writeln ('');

if (h='n') then begin

exit;

end else goto k;

end.

Gambar 3.53 Screenshot souce code #1 program luas_balok

Pada source code ini diterangkan nama program yang dibuat yaitu

“luas_balok” , penggunaan library SysUtils , pendeklarasian variabel

yaitu a,b,c,d dengan tipe data integer , h dengan tipe data char , label k ,

dan konstanta e adalah 2 . Kemudian penulisan source code tampilan

awal program setelah struktur begin . Label “k” diletakkan di awal

source code untuk memanggilnya . Pada tampilan awal program akan

diminta memasukkan panjang , lebar , dan tinggi balok .

Page 156: Laporan DKP Kelompok 1 SISKOM 2012

156

Gambar 3.54 Screenshot source code #2 program luas_balok

Setelah tampilan awal program sudah dibuat tinggal membuat

bagaimana program bekerja . Pada source code ini , dijelaskan ketiga

inputan akan diolah sesuai rumusnya yaitu ( ) yang

kemudian akan dioutputkan pada tampilan program . Lalu otomatis

muncul pertanyaan “menghitung lagi [(y)] atau keluar program [(n)] ?”

yang apabila diinputkan “y” program akan melanjut ke awal program

dengan bantuan label “k” dan sebaliknya apabila diinputkan “n”

program akan otomatis keluar .

Gambar 3.55 Screenshot awal program luas_balok (running)

Merupakan tampilan awal program ketika akan di jalankan , disini

digunakan write dan writeln serta kata-kata dan tanda baca sekehendak

pembuat program untuk membuatnya tampak lebih menarik . Ketika

program dijalankan , program akan otomatis meminta inputan yaitu

besar panjang balok .

Page 157: Laporan DKP Kelompok 1 SISKOM 2012

157

Gambar 3.56 Screenshot #2 program luas_balok

Setelah besar panjang balok diinputkan maka diminta untuk

menginputkan lebar balok .

Gambar 3.57 Screenshot #3 program luas_balok

Setelah besar lebar balok diinputkan maka diminta untuk menginputkan

tinggi balok .

Gambar 3.58 Screenshot #4 program luas_balok

Ketika ketiga inputan diterima maka data akan langsung diolah kedalam

rumus yang sudah dituliskan dalam source code nya yang kemudian

Page 158: Laporan DKP Kelompok 1 SISKOM 2012

158

akan keluar kedalam outputnya. Lalu otomatis akan muncul pertanyaan

mau menghitung lagi atau tidak .

Gambar 3.59 Screenshot #5 program luas_balok

Apabila diinputkan karakter “y” maka program akan melanjut ke

bagian awal program dengan bantuan label “k” pada sourcecode nya

Gambar 3.60 Screenshot #6 program luas_balok

Apabila diinputkan karakter “n” maka program akan otomatis keluar .

Page 159: Laporan DKP Kelompok 1 SISKOM 2012

159

Page 160: Laporan DKP Kelompok 1 SISKOM 2012

160

3.4 Kesimpulan

Delphi adalah sebuah IDE Compiler untuk bahasa pemrograman

Pascal dan lingkungan pengembangan perangkat lunak yang digunakan untk

merancang suatu aplikasi program. IDE (Integrated Development

Environment) adalah program komputer yang memiliki beberapa fasilitas

yang diperlukan dalam pembangunan perangkat lunak. Tujuan dari IDE

adalah untuk menyediakan semua utilitas yang diperlukan dalam membangun

perangkat lunak. Pembuatan program menggunakan Delphi 7 dapat dikatakan

tidak terlalu sulit karena telah mendukungan interface yang memudahkan user

dalam menggunakannya. Delphi berbasis bahasa pemrograman Pascal,

dengan perbaharuan pada pustaka/library salah satunya untuk

mengakomodasi fitur pembuatan Graphical User Interface.

Beberapa program disusun dalam bentuk console dan beberapa

menggunakan visual application. Untuk tipe console, program tidak

memerlukan pustaka Graphics dan pustaka-pustaka visual lainnya karena

pada tipe ini, program tidak menampilkan GUI seperti form, panel, dsb.

Pendeklarasian tipe program terletak setelah pendeklarasian nama program.

Praktikan juga membuat program dengan tipe visual. Pada tipe ini, GUI akan

ditampilkan sehingga diperlukan pemanggilan beberapa pustaka pendukung

seperti Graphics, Windows, Forms, dsb. Setiap unit visual akan

dideklarasikan tipe dan prosedurnya dalam source code agar terbentuk system

interkoneksi dengan unit lain. Dari berbagai pembuatan tipe aplikasi,

praktikan telah sukses mengompilasi seluruh program dan Delphi 7

merupakan salah satu IDE Compiler yang dapat mengkompilasi program

menjadi single executable (aplikasi portable), memudahkan distribusi dan

meminimalisir masalah.

Page 161: Laporan DKP Kelompok 1 SISKOM 2012

161

BAB IV

Pemrograman Delphi BagianII

4.1. Tujuan

1. Praktikan mengerti konsep dari array dan record serta cara

pengaplikasiannya.

2. Praktikan paham dengan penggunaan pemilihan dan perulangan dalam

memanipulasi array.

3. Praktikan mengerti konsep Queue dan Stack dalam array.

4.2. Dasar Teori

4.2.1 Array

Array adalah suatu struktur variabel yang terdiri dari sejumlah elemen

yang memiliki tipe data yang sama. Elemen-elemen array tersusun

secara sekuensial dalam memory computer. Array dapat berupa satu

dimensi, dua dimensi, tiga dimensi ataupun banyak dimensi (multi

dimensi). Array itu :

1. Array : a finite ordered set of homogenous elements

2. Elemen-elemen array tersusun secara berderet dan dapat diakses

secara random di dalam memori.

3. Array memiliki alamat yang besebelahan/ berdampingan

tergantung lebar tipe datanya.

4. Array dapat berupa array 1 dimensi, 2 dimensi, bahkan n-dimensi.

5. Elemen-elemen array bertipe data sama dan bisa berisi nilai yang

sama atau berbeda-beda. terdapat beberapa array diantaranya :

a. Array Satu Dimensi

Array Satu Dimensi tidak lain adalah kumpulan elemen-elemen

identik yang tersusun dalam satu baris. Elemen-elemen tersebut

memiliki tipe data yang sama, tetaoi isi dari elemen tersebut

boleh berbeda.

Page 162: Laporan DKP Kelompok 1 SISKOM 2012

162

b. Array Dua Dimensi

Array Dua Dimensi sering digambarkan sebagai sebuah

matriks, merupakan perluasan dari array satu dimensi. Jika

array satu dimensi hanya terdiri dari sebuah baris dan beberapa

kolom elemen, maka array dua dimensi terdiri dari beberapa

baris dan beberapa kolom elemen yang bertipe sama.

c. N- Array

N-array artinya masih banyak lagi array array yang diatas dua

dimensi.

Pengaksesan Elemen Array :

- Elemen-elemen array dapat diakses oleh program

menggunakan suatu indeks tertentu secara random ataupun

berurutan.

- Pengisian dan pengambilan nilai pada indeks tertentu dapat

dilakukan dengan mengeset nilai atau menampilkan nilai

pada indeks yang dimaksud.

4.2.2 RECORD

Sebuah record merupakan koleksi satuan data yang heterogen, yakni

terdiri dari berbagai type. Satuan data tersebut sering disebut sebagai

field dari record. Field dipanggil dengan menggunakan namanya

masing-masing. Suatu field dapat terdiri atas beberapa subfield.

Sebagai Contoh, data personalia dari seorang pegawai suatu

perusahaan di Amerika Serikat,merupakan sebuah record yang dapat

terdiri dari berbagai field, dan subfield seperti berikut ini:

1. NOMOR-JAMINAN-SOSIAL

2. NAMA, yang terdiri atas: NAMA-BELAKANG NAMA-

DEPAN NAMA-TENGAH

3. ALAMAT, terdiri atas: JALAN NOMOR RUMAH NAMA-

JALAN KOTA NEGARA-BAGIAN KODE-POS program

sensus_penduduk

Page 163: Laporan DKP Kelompok 1 SISKOM 2012

163

4.2.3 Metode pengurutan data

Metode pengurutan data atau lebih dikenal dengan Sorting, yaitu suatu

proses yang dilakukan terhadap sekumpulan data data yang

sebelumnya masih acak/ tidak terurut, menjadi data yang terurut.

Sorting terdiri dari dua jenis Sorting Descending (Pengurutan Atas

Bawah) dan Sorting Ascending (Pengurutan Bawah Atas).

Sebagai contoh : 1,2,3,4,5,6,7,8,9,10 --> Ascending

10,9,8,7,6,5,4,3,2,1 --> Descending Beberapa metode pengurutan

data/Sorting terdiri atas beberapa jenis :

1. Bubble Sort Pengurutan ini melakukan penukaran data dengan

tepat disebelahnya secara terus menerus sampai bisa dipastikan

dalam suatu perulangan tertentu tidak ada lagi perubahan. Nama

lain dari pengurutan ini yaitu Pengurutan Gelembung (metode

gelembung)

2. Selection Sort Metode pengurutan data selanjutnya yaitu Selection

Sort. Pada algoritma selection sort mencari elemen yang tepat

untuk diletakkan di posisi yang telah diketahui dan meletakkannya

di posisi tersebut setelah data tersebut ditemukan. Selection sort ini

membandingkan elemen yang saat ini dengan suatu elemen yang

berikutnya hingga elemen yang terakhir. Apabila ditemukan

elemen lain yang lebih kecil dari elemen yang saat ini maka dicatat

posisinya dan kemudian ditukar.

3. Insertion Sort Algoritma pengurutan ini memilah data yang

diurutkan menjadi dua bagian. Yang belum terurut (meja pertama)

dan yang telah diurut (meja kedua). Elemen yang pertama diambil

dari bagian array yang belum diurutkan, kemudian diletakkan pada

posisi sesuai dengan bagian lain dari array yang telah diurutkan.

Langkah tersebutdiulang hingga tidak ada lagi elemen yang tersisa

pada meja pertama yang belum terurut.

4. Heap Sort Merupakan satu bentuk dari selection sort yang

memiliki kompleksitas algoritma O(n log(n) ) yang menggunakan

struktur data heap. Heap sort bekerja dengan menentukan elemen

Page 164: Laporan DKP Kelompok 1 SISKOM 2012

164

terbesar (atau terkecil) dari sebuah susunan elemen, dan diletakkan

pada akhir (atau awal) dari daftar tersebut.

5. Radix Sort Radix sort merupakan suatu algoritma pengurutan yang

dilakukan tanpa melakukan perbandingan antardata yang dijadikan

sebagai input. Radix dapat diartikan sebagai posisi dalam angka.

Pada sistem decimal, radix adalah digit dalam angka decimal.

6. Shell Sort Algoritma ini sama cara kerjanya dengan Insertion Sort,

yaitu dengan membandingkan elemen elemen dengan jarak

tertentu.

7. Quick Sort Pengurutan ini berprinsip pada devide dan conquer.

Devide adalah suatu langkah memilah masalah menjadi sub-

masalah dalam proses rekursi, sedangkan conquer proses

menyelesaikan sub masalah tersebut, kemudian dilakukan

pendekatan terhadap masalah utama. Prinsip kerja pada dasarnya

membagi atau memartisi sekumpulan data menjadi dua bagian data

sehingga elemen yang ke -1 berada tepat pada posisinya, dimana

semua elemen yang nilainya kecil dari pada elemen ke-1 akan

terletak disebelah kiri, sedangkan yang nilai lebih besar terletak

disebelah kanan.

8. Merge Sort Merge sort merupakan salah satu teknik sorting yang

mengurutkan suatu data dengan cara penggabungan. Merge sort

juga menggunakan proses divide dan conquer pada rekursi.

Page 165: Laporan DKP Kelompok 1 SISKOM 2012

165

4.2.4 QUEUE

Jika diartikan secara harafiah, queue berarti antrian, queue merupakan

salah satu contoh aplikasi dari pembuatan double linked list yang

cukup sering kita temui dalam kehiduypan sehari-hari, misalnya saat

Anda mengantri di loket untuk membeli tiket. Istilah yang cukup

sering dipakai seseorang masuk dalam sebuah antrian adalah enqueue.

Dalam suatu antrian, yang dating terlebih dahulu akan dilayani lebih

dahulu. Istilah yang sering dipakai bila seseorang keluar dari antrian

adalah dequeue. Walaupun berbeda implementasi, struktur data queue

setidaknya harus memiliki operasi-operasi sebagai berikut :

- EnQueue Memasukkan data ke dalam antrian

- DeQueue Mengeluarkan data terdepan dari antrian

- Clear Menghapus seluruh antrian

- IsEmpty Memeriksa apakah antrian kosong

- IsFull Memeriksa apakah antrian penuh Queue ( Antrian )

merupakan kumpulan daya yang seolah – olah terihat seperti ada data

yang diletakkan disebelah data yang lainnya . Queue memiliki sifat

FIFO(First In First Out)

Macam-macam queue :

1. Queue dengan Linear Array Linear Array adalah suatu array yan

dibuat seakan – akan merupakan suatu garis lurus dengan satu

pintu masuk dan satu pintu keluar .

2. Queue dengan Circular Array Circular Array merupakan suatu

array yang dibuat seakan – akan merupakan sebuah lingkaran

dengan titik awal an titik akhir saling bersebelahan jika array

dalam keadaan kosong .

3. Queue dengan Double Lingked List Merupakan Queue yang

menggunakan Double Lingked List yang dapat menghemat

memori dalam pengerjaan nya seperti pengertian Double Lingked

List sebelumnya. Implementasi Queue dengan Linear Array

Linear Array Linear array adalah suatu array yang dibuat seakan-

Page 166: Laporan DKP Kelompok 1 SISKOM 2012

166

akan merupakan suatu garis lurus dengan satu pintu masuk dan

satu pintu keluar.

4.2.5 STACK

Stack adalah suatu bentuk khusus dari linear list di mana operasi

penyisipan dan penghapusan atas elemen-elemennya hanya dapat

dilakukan pada satu sisi saja yang disebut sebagai “TOP”.

Ada empat operasi dasar yang didefinisikan pada stack, yaitu :

Page 167: Laporan DKP Kelompok 1 SISKOM 2012

167

1. CREATE : Operator ini berfungsi untuk membuat sebuah stack

kosong .

2. ISEMPTY : Operator ini berfungsi untuk menentukan apakah

suatu stack adalah stack kosong. Operasinya akan bernilai

boolean

3. PUSH : Operator ini berfungsi untuk menambahkan satu

elemen ke dalam stack.

4. POP : Operator ini berfungsi untuk mengeluarkan satu elemen

dari dalam stack.

5.

6.

7.

8.

9.

Repeat

Mulai

Masukan X

kekolom

terakhir

output

Keluaran X

kolom

pertama

Push Pop Keluar

Prosedur

Push

Prosedur

Pop

end

Page 168: Laporan DKP Kelompok 1 SISKOM 2012

168

4.3. Analisa Dan Pembahasan

4.3.1. Percobaan ke 1 (Menjalankan 5 Program)

1. Program Mengakses Elemen Array

Source Code program :

program kelompok1_program1;{judul program}

{$APPTYPE CONSOLE}

Uses {deklarasi unit yang akan digunakan}

SysUtils;

{nama unit yang sesuai dengan aplikasi yang kita

gunakan}

const

max = 26;

{menyatakan nilai yang tidak akan berubah}

var

A: array[1..max] of char; {deklarasi dengan array

dari 1 sampai max yang bernilai 26}

C: char; {deklarasi bahwa data yang dimasukkan

adalah huruf}

i: integer; {menyatakan bahwa i bernilai bilangan

bulat}

begin

{mengisikan elemen array}

C:= 'a';{C diisi dengan karakter pertama}

i := 1;

while (i <= max) do begin

A[i]:= C;

inc(C);

inc(i);

end;

{menampilkan nilai yang terdapat pada setiap elemen

array}

for i:=1 to max do begin

write ((A[i]), '');

end;

readln;

Page 169: Laporan DKP Kelompok 1 SISKOM 2012

169

end.

Gambar 4.1 screenshot source code program

Gambar 4.2 screenshot tampilan program 1

Program ini digunakan untukmengurutkan secara teratur

suatu nilai. Seperti contoh diatas, program ini mengurutkan

huruf dari a sampai z

2. Program Mencari Data dalam Array

Source coden program :

program kelompok1_program2;{nama program}

{$APPTYPE CONSOLE}

Uses

{memilih deklarasi unit yang akan kitagunakan}

Page 170: Laporan DKP Kelompok 1 SISKOM 2012

170

SysUtils;

{deklarasi unit yang sesuai dengan aplikasi yang

akan kita gunakan}

const

{menyatakan bahwa data bernilai tetap sesuai

dengan yang ditentukan}

A: array[1..5] of integer = (23,45,22,71,34);

var

i, x, indeks: integer; {menyatakan bahwa data

bernilai bulat}

begin

{membaca array}

write ('masukan nilai yang akan dicari: ');

readln (x);

indeks:= 0;

{mengurutkan array}

for i:=0 to 5 do begin {loop pencarian indeks}

if A[i]=x then begin

{kondisi fungsi yang digunakan untuk mencari

nilai yang telah dimasukkan}

indeks := i;

{ proses diatas akan memproses angka yang telah

diinput untuk dicari letakna berdasarkan indeks

array yang telah di susun pada konstanta }

break;

end;

end;

writeln(x, ' ditemukan pada indeks ke-',

indeks);

readln;

end.

Page 171: Laporan DKP Kelompok 1 SISKOM 2012

171

Gambar 4.3 screenshot source code program 2

Gambar 4.4 screenshot tampilan program 2 jika angka ditemukan

Gambar 4.5 screenshot tampilan program 2 jika angka tidak diitemukan

Program ini digunakan untuk mencari indeks tehadap data

yang telah ditentukan. Pada program ini telah dimasukkan

indeks dengan urutran 1 sampai 5 tetapi angkanya bervariasi.

Apabila kita melakukan pencarian diluar angka yang tersedia,

maka bilangan itu akan berada pada indeks 0.

Page 172: Laporan DKP Kelompok 1 SISKOM 2012

172

3. Program Mengurutkan Data dalam Array

Source code program :

program kelompok1_program3;{nama program}

{$APPTYPE CONSOLE}

Uses {memilih deklarasi unit yang akan

kitagunakan}

SysUtils; {deklarasi yang cocok kita gunakan dalam

aplikasi}

const

ArraySize = 5; {penentuan nilai konstanta}

Type {pendeklarasian tipe}

Range = 1..ArraySize;

NumbersArray = ARRAY[Range] OF INTEGER;

Var {pendeklarasian variabel}

Numbers :NumbersArray;

I, J , Pot :integer;

Begin

{membaca array}

for I := 1 to ArraySize do

begin

write('Masukkan angka #', I,': ');

readln(Numbers[I])

end;

{mengurutkan array}

for I := 1 to ArraySize-1 do { outer loop }

begin

for J := I+1 to ArraySize do { inner loop }

begin

if Numbers[I] > Numbers[J] then {fungsi untuk

mengurutkan array dari yang terbesar ke yang

terkecil}

begin

Pot := Numbers[J];

Numbers[J] := Numbers[I];

Numbers[I] := Pot

end

end { akhir inner loop }

Page 173: Laporan DKP Kelompok 1 SISKOM 2012

173

end; { akhir outer loop }

writeln;

writeln('Angka yang diurutkan : ');

for I := 1 to ArraySize do

writeln(Numbers[I]);

readln;

end.

Gambar 4. 6 screenshoot sourecode program 3

Gambar 4. 7 screenshoot sourecode program 3

Gambar 4. 8 screenshoot tampil program 3

Page 174: Laporan DKP Kelompok 1 SISKOM 2012

174

Program ini digunakan untuk mengurutkan data yang telah

ddimasukkan, pada program ini data akan diurutkan dari yang

terkecil ke yang terbesar.

4. Program Queue

Source code Program Queue:n

program kelompok1_program4;{nama program}

{$APPTYPE CONSOLE}

Uses {memilih deklarasi unit yang akan kita

digunakan }

SysUtils;{deklarsi yang kita gunakan}

const max = 5; {deklarasi nilai konstanta}

type tumpukan = array[1..10] of char;{

pendeklarasian tipe baru array sebagai Tumpukan yang

akan digunakan sebagai penyimpan masukan berukuran

max elemen, dengan tipe nilai char, agar baik angka

maupun karakter dapat tersimpan }

type stack=record { deklarasi tipe}

nilai:tumpukan;

depan:integer;

belakang:integer;

isi:0..max;

end;

var

antrian:stack; {deklarari variabel}

procedure PUSH(var antrian:stack; x:char);{prosedur

push}

{ antrian sebagai record untuk setiap masukan yang

tersimpan dan x sebagai variabel penyimpan sementara

nilai masukan }

begin

{kondisi fungsi jika jumlah maksimal}

if antrian.isi=max then

Page 175: Laporan DKP Kelompok 1 SISKOM 2012

175

write('antrian penuh'); { statement diatas

digunakan apabila semua elemen antrian yang tersedia

sudah terpenuhi }

else

begin

if antrian.belakang=max then

antrian.belakang:=1

else

antrian.belakang:=antrian.Belakang+1;

antrian.nilai[antrian.belakang]:=x;

antrian.isi:=antrian.isi+1;

end;

end;

procedure POP(var antrian:stack; x:char);{prosedur

pop}

begin

{pengkondisian fungsi jika nilainya 0}

if antrian.isi=0 then

write('antrian kosong')

{ statement diatas digunakan untuk memberitahukan

bahwa elemen antrian masih kosong }

else

begin

{ pengkondisian fungsi untuk mengeluarkan nilai

array dan mengeluarkan nilai yang pertama

dimasukkan }

if antrian.depan=max then

antrian.depan:=1

{statement di atas akan menginstruksikan field

depan sebagai penunjuk lokasi untuk fungsi pop,

kembali ke posisi penyimpanan pertama, apabila

penunjuk lokasi berada di posisi akhir. Proses

ini akan menciptakan siklus perulangan hingga

semua lokasi dalam antrian terisi}

else

if antrian.depan <= max then

antrian.depan:=antrian.depan+1;

x:=antrian.nilai[antrian.depan];

antrian.nilai[antrian.depan]:=' ';

Page 176: Laporan DKP Kelompok 1 SISKOM 2012

176

antrian.isi:=antrian.isi-1;

end;

end;

var i, pilih :integer;

x:char;

begin

repeat

writeln;

writeln('1. push');

writeln('2. pop');

writeln('0. selesai');

writeln('Pilihan Anda : ');

readln(pilih);

if pilih<>0 then

case pilih of

1: begin

{memasukkan nilai}

write('Nilai yang dimasukan : ');readln(x);

PUSH(antrian,x);

for i:=1 to max do { loop untuk memasukkan

nilai hingga max }

write(antrian.nilai[i],' ');

writeln;

end;

2: begin

{memasukkan nilai}

x:=' ';

POP(antrian,x);

writeln;

writeln('data keluaran = ',x);

for i:=1 to max do { loop untuk mengeluarkan

nilai hingga habis }

write(antrian.nilai[i],' ');

writeln;

end; {akhir loop}

{ untuk indeks perulangan sebanyak max kali,

program akan menampilkan setiap nilai yang

tersimpan dalam array nilai }

end;

Page 177: Laporan DKP Kelompok 1 SISKOM 2012

177

until pilih=0;

end.

Gambar 4. 9 screenshoot sourcecode program 4

Gambar 4. 10 screenshoot sourcecode program 4

Page 178: Laporan DKP Kelompok 1 SISKOM 2012

178

Gambar 4. 11 screenshoot sourcecode program 4

Gambar 4. 12 screenshoot tampilan program 4

Gambar 4. 13 screenshoot tampilan program 4

Pada program ini dilakukan penambahan suatu elemen di

salah satu ujung (ujung depan) dan apabila ada pengambilan

akan diambil paada ujung lainnya (ujung belakang) yang

menggunakan prinsip FIFO (first in first out.)

Page 179: Laporan DKP Kelompok 1 SISKOM 2012

179

5. Program Stack

Source code Program Stack:

program kelompokok1_program5;{nama program}

{$APPTYPE CONSOLE}

Uses {memilih deklarasi program}

SysUtils;{deklarasi program yang kita gunakan}

const max = 5; {deklarasi conts}

type Tumpukan=array[1..10] of char;

{pendeklarasian tipe baru array sebagai Tumpukan

yang akan digunakan sebagai penyimpan masukan

berukuran max elemen, dengan tipe nilai char, agar

baik angka maupun karakter dapat tersimpan}

type tumpuk=record {deklarasi tipe}

nilai : Tumpukan;

depan : integer;

belakang : integer;

isi : 0..max;

end;

var

antrian : tumpuk; {deklarasi variabel}

procedure PUSH(var antrian : tumpuk; x: char);

{prosedur push}

{antrian sebagai record untuk setiap masukan yang

tersimpan dan x sebagai variabel penyimpan

sementara nilai masukan}

Begin

{pengkondisian fungsi jika jumlah maksimal}

if antrian.isi=max then

write('antrian penuh')

else

begin

{pengkondisian fungsi untuk memasukan nilai array

dan mengatur posisi masukan nilai array}

Page 180: Laporan DKP Kelompok 1 SISKOM 2012

180

if antrian.belakang=max then

antrian.belakang:=max

else

antrian.belakang:=antrian.isi+1;

antrian.nilai[antrian.belakang]:=x;

antrian.isi:=antrian.isi+1;

end;

end;

procedure POP(var antrian : tumpuk; x: char);

begin

if antrian.isi=0 then

write('antrian kosong')

else

begin

antrian.belakang:=antrian.isi;

x:=antrian.nilai[antrian.belakang];

antrian.nilai[antrian.belakang]:=' ';

antrian.isi:=antrian.isi-1;

end;

end;

{pengkondisian fungsi untuk memasukan nilai array

dan mengatur posisi masukan nilai array}

var i, pilih : integer;

x: char;

begin

repeat

writeln;

writeln('1. PUSH');

writeln('2. POP');

writeln('0. Keluar');

Writeln('masukan nilai pilihan anda :');

readln(pilih);

if pilih <>0 then

case pilih of

1: begin

write('nilai yang dimasukan : ');readln(x);

PUSH(antrian,x);

for i :=1 to max do

write(antrian.nilai[i],'');

Page 181: Laporan DKP Kelompok 1 SISKOM 2012

181

writeln;

end;

2: begin

x:=' ';

POP(antrian,x);

writeln('data keluaran = ', x);

for i:=1 to max do

write(antrian.nilai[i],' ');

writeln;

end;

end;

until pilih = 0;

end.

Gambar 4. 14 screenshoot sourcecode program 5

Gambar 4. 15 screenshoot sourcecode program 5

Page 182: Laporan DKP Kelompok 1 SISKOM 2012

182

Gambar 4. 16 screenshoot sourcecode program 5

Gambar 4. 17 screenshoot tampilan program 5

Gambar 4. 18 screenshoot tampilan program 5

Pada program ini penambahan dan pengambilan data hanya

dilakukan di satu sisi yang disebut top (puncak). Dengan kata lain

apabila dilakukan penambahan pada satu ujung, maka pengambilan

juga dilakukan pada ujng yang sama.

Page 183: Laporan DKP Kelompok 1 SISKOM 2012

183

Tugas

Tugas 1

program tugas1;

uses

SysUtils; {penggunaan library SysUtils}

Var

{pendeklarasian variabel}

data : array[1..100]of integer;

i,n,jum :integer;

rata : real;

h: char;

label k;

begin

k: writeln('- Program Rata-Rata -');

write ('Banyaknya nilai?? : '); readln(n); {permintaan

menginputkan banyaknya nilai yang akan diinputkan}

for i:=1 to n do {perlakuan untukinput pertama sampai

sejumlah n}

begin

write('Data',i,':');{permintaan menginputkan data

sejumlah n}

read(data[i]);

jum:=jum+data[i];{penjumlahan nilai yang telah

diinputkan}

rata :=jum div n; {pembagian hasil penjumlahan dengan

n}

end;

write ('Maka Rata-Rata nya adalah ',rata);{output

program}

writeln ('');

writeln ('');

goto k; {kembali ke bagian awal program (ke label k)}

end. {program berakhir}

Penjelasan Program 1

Pada saat Program ini di run , pertama kali yang akan muncul adalah

- Program Rata-Rata –

Banyaknya nilai?? :

Dari sini otomatis diminta untuk menginputkan banyaknya nilai

yang akan dihitung untuk selanjutnya diminta untuk menginputkan

masing-masing nilai tersebut,

semisal kita mengisikan nya dengan angka 5 maka selanjutnya

diminta untuk menginputkan kelima nilainya .

setelah kelima nilai diinputkan maka otomatis program akan memproses

kelima inputan data tersebut dengan menjumlahkannya yang kemudian

Page 184: Laporan DKP Kelompok 1 SISKOM 2012

184

dibagi dengan 5 , maka didapat hasil rata-ratanya yang keluar mengikuti

output tampilan

Maka Rata-Rata nya adalah

Setelah didapat output tersebut maka program langsung kembali ke

bagian awal program dengan bantuan label k .

Sreenshot program

Gambar 4. 19 screenshoot tampilan program

Gambar 4. 20 screenshoot tampilan program

Page 185: Laporan DKP Kelompok 1 SISKOM 2012

185

Gambar 4. 21 screenshoot tampilan program

Gambar 4. 22 screenshoot tampilan program

Tugas ke 2

program tugas2;

uses

SysUtils; {penggunaan library SysUtils}

const

MAX =10; {konstanta max adalah 10}

Var

{pendeklarasian variabel}

data : array[1..MAX]of integer; {array berisi data 1

sampai 10}

i,N :integer;

rata : real;

label k;

begin

k: writeln('- Program Nilai Tertinggi -');

writeln('Masukkan nilai nilainya : ');

for i:=1 to MAX do {perlakuan untuk input pertama sampai

kesepuluh}

begin

write('Nilai ke',i,':'); {permintaan meminta input

kesepuluh nilai}

read(data[i]);

Page 186: Laporan DKP Kelompok 1 SISKOM 2012

186

end;

N:=data[1];

for i:=2 to MAX do {perlakuan untuk input kedua sampai

kesepuluh}

begin

if data[i]>N then N:=data[i]; {membandingkan data yang

paling besar}

end;

write ('Maka nilai tertingginya adalah ',N); {output

program}

writeln ('');

writeln('');

goto k; {menuju ke awal program}

end.

Penjelasan program .

Pada saat Program ini dirun , pertama kali yang akan muncul adalah

- Program Nilai Tertinggi –

Masukkan nilai nilainya :

Nilai ke1 :

Nah dari sini diminta untuk menginputkan sepuluh inputan angka sembarang yang

akan dibandingkan untuk mencari nilai yang paling besar dari sepuluh nilai

tersebut .

Setelah menginputkan ke sepuluh nilai tersebut maka akan otomatis muncul nilai

tertingginya yang mengikuti output

Maka nilai tertingginya adalah

Setelah didapat output tersebut maka program langsung kembali ke bagian awal

program dengan bantuan label k .

Page 187: Laporan DKP Kelompok 1 SISKOM 2012

187

Sreenshot program

Gambar 4. 23 screenshoot tampilan program

Gambar 4. 24 screenshoot tampilan program

Page 188: Laporan DKP Kelompok 1 SISKOM 2012

188

Gambar 4. 25 screenshoot tampilan program

Tugas ke 3 program Kelompok1_tugas3; {nama program}

uses

SysUtils; {pemanggilan pustaka}

const

h='pqrst'; {pendeklarasian huruf yang akan disortir}

n='PQRST'; {dalam huruf kecil maupun capital}

var

s:string; {s sebagai variabel penyimpan input kata}

i,j:integer; {i dan j sebagai indeks perulangan}

A:array[1..100] of integer; {array penyimpan jumlah

suatu huruf pada s}

begin

write('Masukkan kata : ');readln(s);

for i:=1 to Length(s) do begin {outer loop}

for j:=1 to Length(h) do begin {inner loop}

if (s[i]=h[j]) or (s[i]=n[j]) then A[j]:=A[j]+1;

{jumlah total suatu huruf yang ditemukan pada s

akan disimpan dalam array dengan indeks yang

bersesuaian dengan huruf tertentu}

Page 189: Laporan DKP Kelompok 1 SISKOM 2012

189

end; {akhir inner loop}

end; {akhir outer loop}

writeln('Pada kata ',s,' ditemukan :');

for j:=1 to Length(h) do begin

{output program}

writeln(j,'. Huruf ',n[j],' sebanyak ',A[j]);

end;

readln;

end. {mengakhiri program}

Penjelasan program

Yang akan pertama muncul pada tampilan programnya adalah kata “masukkan

kata”. Setelah memasukkan kata yang akan diurutkan. Maka dengan menekan

enter, kata yang ingin diurutkan akan diurutkan berdasarkan inputan yang

tersedia. Apabila kaata yang dimasukkan tetapi tidak terdapat pada inputan, maka

kata tersebut tidak akan terdefenisi.

screenshot program

Gambar 4. 26 screenshoot tampilan program

Gambar 4. 27 screenshoot tampilan program

Page 190: Laporan DKP Kelompok 1 SISKOM 2012

190

Gambar 4. 28 screenshoot tampilan program

Page 191: Laporan DKP Kelompok 1 SISKOM 2012

191

4.4. Kesimpulan

1. Array, queue, record dan stack termasuk kedalam penggolongan istilah

kata pemograman yang berbeda beda.

2. Array merupakan struktur yang terdiri dari sejumlah elemen yang

memiliki tipe data yang sama. Elemen-elemen array tersusun secara

sekuensial dalam memory computer.

3. Record merupakan koleksi satuan data yang heterogen, yakni terdiri dari

berbagai type. Satuan data tersebut sering disebut sebagai field dari record.

Field dipanggil dengan menggunakan namanya masing-masing.

4. Queue merupakan salah satu contoh aplikasi dari pembuatan double linked

list yang cukup sering kita temui dalam kehidupan sehari-hari.

5. Stack suatu bentuk khusus dari linear list di mana operasi penyisipan dan

penghapusan atas elemen-elemennya hanya dapat dilakukan pada satu sisi

saja.

Page 192: Laporan DKP Kelompok 1 SISKOM 2012

192

BAB 5

PEMROGRAMAN C# BAGIAN I

5.1. Tujuan

1. Mengenal bahasa pemrograman C#

2. Memahami struktur dasar pemrograman C#

3. Memahami penyelesaian operasi aritmatika pada C#

4. Memahami penyelesaian operasi input/output pada C#

5. Memahami berbagaima cara mengoperasi percabangan pada C#

6. Memahami berbagaima cara mengoperasi perulangan pada C#

Page 193: Laporan DKP Kelompok 1 SISKOM 2012

193

5.2. Dasar Teori

5.2.1. Pengenalan Pemrograman C# dan Instalasi

5.2.1.1. Sejarah C#

Pada akhir 1990 an, Microsoft membuat program Visual

J++ sebagai langkah percobaan penggunaan Java pada

system operasi Windows. Namun karena terlibat masalah

dengan Sun Micro system selaku pemeilik hak cipta bahasa

pemrograman Java maka program tersebut dihentikan.

Sebagai gantinya Microsoft mengembangkan C# dengan

merekrut Anders Helsberg mantan karyawan Borland

Delphi yang membuat bahasa Turbo Pascal, Borland Delphi

dan juga mendesain Windows Foundation Classes (WFC)

yang digunakan dalam J++. C# pertama kali diperkenalkan

pertama kali pada bulan Juli 2000 sebagai bahasa

berorientasi objek yang menjadi bahasa pemrograman

utama dalam pengembangan platform Microsoft . NET

Framework.

5.2.1.2. Bahasa Pemrograman C#

C# (C sharp) merupakan bahasa pemrograman berorientasi

objek yang didukung oleh Microsoft .NET Framework.

Microsoft .NET Framework merupakan perantara agar

aplikasi dengan bahasa pemrograman yang didukung dapat

berkomunikasi dengan system operasi yang beroperasi pada

computer yang digunakan. Sehingga dapat berjalan di

operasi baik system operasi windows maupun sistem

operasi yang lain seperti Mac OS, LINUX, serta system

operasi berbasis UNIX lainnya. Bahasa pemrograman C#

banyak digunakan untuk membangun aplikasi web, aplikasi

desktop, aplikasi Zune, aplikasi permainan (Desktop,

XBOX) dan berbagai jenis aplikasi lainnya.

Kelebihan bahasa C# :

Page 194: Laporan DKP Kelompok 1 SISKOM 2012

194

1. Termasuk bahasa pemrograman .NET dengan demikian

user dapat menggunakan komponen-komponen yang

dibangun dengan bahasa pemrograman .NET lainnya

(integrasi antar bahasa).

2. Memiliki language integrated query (LINQ) yang

merupakan sintaks query yang dapat digunakan pada

setiap kumpulan data.

3. Windows presentation foundation (WPF) dapat

digunakan untuk membuat tampilan aplikasi dengan

creative.

4. Microsoft memberikan IDE (software pembuat

program) secara gratis, yaitu Microsoft Visual Studio

Express Edition. IDE inilah yang akan digunakan untuk

membangun aplikasi C#.

5.2.1.3. Instalasi C#

C# yang dibangun dalam praktikum ini menggunakan

Visual Studio 2010 Express Edition. Adapun screenshoot

instalasi di bawah ini merupakan screenshoot instalasi

Visual Studio Express Edition (khusus untuk bahasa C#)

yang diinstal via web. Berikut tahapan instalasi C# tersebut.

1. Download lah terlebih dahulu installer Visual Studio

Express Edition (dapat menggunakan link di bawah ini)

http://www.microsoft.com/visualstudio/en-

us/products/2010-editions/visual-csharp-express

2. Setelah itu akan muncul tahapan instalasi di bawah ini

saat meng klik fie yang telah didownload. Hilangkan

tanda pada pilihan “Yes, send information about my

setup experiences to Microsoft Corporation”. Kemudian

klik “Next”.

Page 195: Laporan DKP Kelompok 1 SISKOM 2012

195

Gambar 5.1 Screenshoot instalasi C# tahap 1

3. Berikan tanda pada pilihan “I have read and accept the

licence terms”, kemudian klik “Next”.

Gambar 5.2Screenshoot instalasi C# tahap 2

4. Hilangkan tanda pada tahapan berikutnya dikarenakan

saat ini belum memerlukan fitur tersebut. Kemudian

klik “Next”.

Page 196: Laporan DKP Kelompok 1 SISKOM 2012

196

Gambar 5.3Screenshoot instalasi C# tahap 3

5. Langsung klik “Install”.

Gambar 5.4Screenshoot instalasi C# tahap 4

6. Tunggu hingga instalasi selesai. Setelah itu, Visual

Studio 2010 Express Edition C# siap untuk digunakan.

Page 197: Laporan DKP Kelompok 1 SISKOM 2012

197

Gambar 5.5Screenshoot instalasi C# tahap 5

5.2.2. Variabel dan Tipe Data

Variabel adalah suatu tempat untuk meyimpan data. Contoh apabila

user ingin menghitung volume balok, maka nilai panjang, lebar,

tingggi dan volume dari perhitungan tersebut dapat disimpan di

dalam variabel. Deklarasi variable adalah sebuah perintah agar

komputer menyediakan variable yang akan dipakai

5.2.3. Operator dalam C#

Di dalam bahasa pemrograman, terdapat beberapa macam operator

yang akan sering digunakan, yaitu sebagai berikut :

1. Assignment operator

Operator ini merupakan operator yang ada pada bahasa C yang

berupa perintah penugasan untuk melakukan sebuah operasi

pada variabel.

2. Mathematical operator

Operator ini digunakan untuk operasi-operasi yang berhubungan

dalam perhitungan (aritmatika). Operator yang termasuk ke

dalam kategori ini adalah „*‟ (perkalian), „/‟ (pembagian), „%‟

(sisa pembagian bulat), „+‟ (penjumlahan), „-‟ (pengurangan).

3. Relational operator

Page 198: Laporan DKP Kelompok 1 SISKOM 2012

198

4. Operasi relasional adalah operator binary yang akan bekerja

antara dua nilai. Operator ini tidak seperti operator matematika

yang menghitung bilangan, tetapi operator ini akan menguji satu

nilai terhadap nilai lainnya.

5. Logical operator

Operator logika digunakan untuk melakukan perbandingan

antara suatu nilai data dengan data lainnya. Hasil dari operator

ini menghasilkan nilai boolean, yaitu Not (Tidak), And (Dan),

Or (Atau), Xor (Eksklusif Or).

Dalam sub bab ini, akan dijelaskan mengenai program yang

menggunakan operator aritmatika / matematika dan operator

assignment saja, seperti dalam perhitungan volume balok pada

contoh sebelumnya. Untuk contoh program menggunakan operator-

operator lain (Relational operator dan Logical operator) akan dibahas

pada sub bab berikutnya.

5.2.4. Input Output

Fungsi Console.WriteLine() atau Console.Write() dalam bahasa C#

yaitu untuk menampilkan informasi ke layar. Di dalam C#, terdapat

conversion specifier yang digunakan untuk menampilkan informasi

yang niainya tidak pasti. Nilai yang menggantikan conversion

specifier disebut dengan argument.

5.2.5. Pengkondisian

Di dalam sub bab inilah, operator-operator yang tadi belum

dijelaskan akan dijelaskan (yaitu operator relasional dan operator

logika). Adapun pengkondisian disini terbagi menjadi 2 bagian,

yakni pemrograman dengan menggunakan if ( ) dan switch ( ).

1. Perintah if ( )

Statemen if biasanya digunakan untuk kondisi jawaban yang

memerlukan satu/beberapa pilihan. Kode program biasanya akan

dieksekusi jika kondisi tertentu terpenuhi. Jika tidak maka tidak

akan tereksekusi/error.

Page 199: Laporan DKP Kelompok 1 SISKOM 2012

199

2. Perintah switch ( )

Statemen switch lebih dikhususkan pada kondisi majemuk

dengan beberapa persyaratan, seperti tidak bisa digunakan untuk

kondisi yang mempunya nilai rentang dan kondisi dengan nilai

pecahan.

5.2.6. Perulangan

Perulangan yang akan dibahas disini terdiri dari 3 macam perintah,

yaitu sebagai berikut :

1. Perintah for ( )

Digunakan untuk perulangan dengan jumlah yang ditentukan

terlebih dahulu dari nilai kecil kebesar (Increasing). Bentuk

Umum : For variabel_kontrol := nilai_awal To nilai_akhir Do

Statement;

Perintah for downto Digunakan untuk perulangan dengan

jumlah yang ditentukan terlebih dahulu dari nilai besar ke kecil

(Decreasing). Bentuk Umum : For variabel_kontrol:= nilai_awal

Down To nilai_akhir Do Statement;

2. Perintah while ( )

While digunakan untuk pengulangan instruksi, yang umumnya

dibatasi dengan suatu kondisi. Selama kondisi tersebut TRUE,

maka pengulangan terus dilakukan. Loop akan berhenti, bila

kondisi FALSE, atau program keluar dari blok while melalui

exit atau break.

3. Perintah do while ( )

Digunakan untuk perulangan sebanyak sampai sudah terpenuhi

kriteria yang ditentukan.

Bentuk Umum : While ungkapan_logika Do Statement;

Page 200: Laporan DKP Kelompok 1 SISKOM 2012

200

5.3. Analisa dan Pembahasan

5.3.1. Program Hello Siskom

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

//nama program

namespace Kelompok1_Program1

{

class Program

{

static void Main(string[] args)

{

//menampilkan output pada layar

Console.WriteLine("Hello Siskom...");

}

}

}

Gambar 5.6 Screenshot Source code program 1

Gambar 5.7 Screenshot Hasil program 1

Page 201: Laporan DKP Kelompok 1 SISKOM 2012

201

Program ini akan memiliki output tampilan tulisan pada layar

komputer seperti pada contoh yang muncul tulisan “Hello Siskom

pada layar komputer.

5.3.2. Program dengan Variabel dan Tipe Data

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

//nama program

namespace Kelompok1_Program2

{

class Program

{

static void Main(string[] args)

{

//pernyataan variabel dan konstanta

int panjang, lebar, tinggi, volume;

panjang = 10;

lebar = 5;

tinggi = 2;

volume = panjang * lebar * tinggi;

//menampilkan output berdasarkan variabel

dan konstanta yang telah ditentukan

Console.WriteLine("Volume Balok = "

+volume);

}

}

}

Page 202: Laporan DKP Kelompok 1 SISKOM 2012

202

Gambar 5.8 Screenshot Source code program 2

Gambar 5.9 Screenshot Hasil program 2

Output dari program ini adalah menampilkan hasil sebuah hitungan,

yang pada contoh terdapat hasil dari hitungan volume balok dengan

nilai konstanta yang telh ditentukan.

5.3.3. Program Aritmatika

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

//nama program

namespace Kelompok1_Program3

{

class Program

{

static void Main(string[] args)

{

//pernyataan variabel dan konstanta

Page 203: Laporan DKP Kelompok 1 SISKOM 2012

203

float r, keliling;

const float Pi = 3.14F;

r = 7;

keliling = 4*Pi*r;

//menampilkan output berdasarkan variabel

dan konstanta yang telah ditentukan

Console.WriteLine("Keliling Lingkaran =

{0}", + keliling);

}

}

}

Gambar 5.10 Screenshot Source code program 3

Gambar 5.11 Screenshot Hasil program 3

Program ini memiliki keluaran hasil hitungan sederhana seperti

halnya program 2 dengan nilai konstanta yang telah ditentukan, dan

yang akan keluar nantinya adalah hasil dari hitungan tersebut.

5.3.4. Program Input Output

5.3.4.1. Tanpa TryParse

using System;

Page 204: Laporan DKP Kelompok 1 SISKOM 2012

204

using System.Collections.Generic;

using System.Linq;

using System.Text;

//nama program

namespace Kelompok1_Program4

{

class Program

{

static void Main(string[] args)

{

//pernyataan variabel string

string input, input2;

//masukkan input yg kemudian akan

ditampilkan pada output

input = Console.ReadLine();

input2 = Console.ReadLine();

//menampilkan output berdasarkan

input yang dimasukkan sebelumnya

Console.WriteLine("Nama\t= {0}

\nNIM\t= {1}", input, input2);

}

}

}

Gambar 5.12 Screenshot Source code program 4

Page 205: Laporan DKP Kelompok 1 SISKOM 2012

205

Gambar 5.13Hasil program 4

Program ini bergubna untuk menampilkan kembali hasil inputan

yang telah dituliskan sebelumnya. Seperti yang terdapat pada contoh

inputan yang dimasukkan adalah nama dan NIM, dan yang menjadi

keluarannya juga nama dan NIM tadi.

5.3.4.2. Dengan TryParse

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

//nama program

namespace Kelompok1_Program5

{

class Program

{

static void Main(string[] args)

{

//pernyataan variabel bertipe float

dan string

float alas, tinggi, luas;

string input;

//proses memasukkan input yang

kemudian akan ditampilkan pada output

Console.Write("Masukkan Alas\t: ");

input = Console.ReadLine();

//TryParse mengubah nilai input

(string) menjadi float

float.TryParse(input, out alas);

Page 206: Laporan DKP Kelompok 1 SISKOM 2012

206

Console.Write("Masukkan Tinggi\t: ");

input = Console.ReadLine();

//TryParse mengubah nilai input

(string) menjadi float

float.TryParse(input, out tinggi);

luas = (alas * tinggi) / 2;

//menampilkan output berdasarkan

input yang telah dimasukkan

sebelumnya

Console.WriteLine("Luas Segitiga\t:

{0}", luas);

}

}

}

Gambar 5.14 Screenshot Source code program 5

Gambar 5.15 Screenshot Hasil program 5

Program ini berguna untuk menampilkan hasil dari perhitungan yang

menggunakan rumus aritmatika. Dalam program sudah tersedia

Page 207: Laporan DKP Kelompok 1 SISKOM 2012

207

rumus yang akan digunakan untuk mendapatkan hasil dari

perhitungan tersebut. Seperti pada contoh diatas. Kita akan mencari

nilai luas segitiga, kita Cuma tinggal memasukkan nilai komponen

yang akan kita cari, dan outputnya adalah hasil dari perhitungan

angka yang kita masukkan tadi.

5.3.5. Program Pengkondisian

5.3.5.1. Program If

1. Program If (I)

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

//nama program

namespace Kelompok1_Program6

{

class Program

{

static void Main(string[] args)

{

//pernyataan variabel dan tipe

data

float alas, tinggi, luas;

string input;

//proses memasukkan input yang

kemudian akan ditampilkan pada

output

Console.Write("Masukkan Alas\t:

");

input = Console.ReadLine();

float.TryParse(input, out alas);

Console.Write("Masukkan Tinggi\t:

");

input = Console.ReadLine();

Page 208: Laporan DKP Kelompok 1 SISKOM 2012

208

float.TryParse(input, out tinggi);

//pengkondisian apabila alas dan

tinggi bernilai lebih dari 0

if (alas > 0 && tinggi > 0)

{

luas = (alas * tinggi) / 2;

Console.WriteLine("Luas

Segitiga\t: {0}", luas);

}

//pengkondisian apabila nilai alas

dan tinggi tidak lebih tinggi dari

0

else

{

Console.WriteLine("Alas dan

tinggi harus lebih besar dari

nol");

}

}

}

}

Gambar 5.16 Screenshot Source code program 6

Page 209: Laporan DKP Kelompok 1 SISKOM 2012

209

Gambar 5.17 Screenshot Hasil program 6 jika alas dan tinggi <> 0

Gambar 5.18 Screenshot Hasil program 6 jika alas = 0

Program ini berfungsi untuk menghitung luas segitiga. Luas

segitiga itu sendiri dapat dihitung apabila input alas dan

tinggi lebih dari 0, apabila input alas atau tinggi sama

dengan 2, maka luas segitiga tidak dapat dihitung.

2. Program If (II)

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

namespace Kelompok1_Program7

{

class Program

{

static void Main(string[] args)

{

//pernyataan variabel dan tipe

data

Page 210: Laporan DKP Kelompok 1 SISKOM 2012

210

float UTS, UAS;

string input;

//proses memasukkan input yang

kemudian akan ditampilkan pada

output

Console.Write("Masukkan Nilai

UTS\t: ");

input = Console.ReadLine();

float.TryParse(input, out UTS);

Console.Write("Masukkan Nilai

UAS\t: ");

input = Console.ReadLine();

float.TryParse(input, out UAS);

//penyataan pengkondisian apabila

nilai UTS dan UAS lebih besar atau

sama dengan 80

if (UTS >= 80 && UAS >= 80)

{

Console.WriteLine("Mahasiswa

Mendapat Nilai A");

}

//penyataan pengkondisian apabila

nilai UTS lebih besar atau sama

dengan 80 dan nilai UAS lebih

kecil atau sama dengan 80 atau

apabila nilai UTS lebih kecil atau

sama dengan 80 dan nilai UAS lebih

besar atau sama dengan 80

else if (UTS >= 80 && UAS <= 80 ||

UTS <= 80 && UAS >= 80)

{

Console.WriteLine("Mahasiswa

Mendapat Nilai B");

}

//pernyataan pengkondisian apabila

kondisi tidak sesuai denga yang

telah disebutkan diatas

Page 211: Laporan DKP Kelompok 1 SISKOM 2012

211

else

{

Console.WriteLine("Sebaiknya

Anda Belajar Lagi");

}

}

}

}

Gambar 5.19 Screenshot Source code program 7

Gambar 5.20 Screenshot Hasil program 7 jika nilai > 80

Page 212: Laporan DKP Kelompok 1 SISKOM 2012

212

Gambar 5.21 Screenshot Hasil program 7 jika nilai < 80

Program ini berfungsi untuk mencari indeks nilai seorang

mahasisa yang didapat dari jumlah nilai UTS dan UAS yang

mereka dapatkan. Apabila semua nilai UTS dan nilai UAS

memiliki nilai diatas 80, maka indeks nilai adalah A. Apabila

salah satu dari nilai UTS atau nilai UAS memiliki nilai diatas

80 dan dibawah 80, maka indeks nilai adalah B. Apabila nilai

UTS dan nilai UAS memiliki nilai dibawah 80, maka akan

tampil tulisan “Sebaiknya Anda Belajar Lagi”.

5.3.5.2. Program Switch

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

//nama program

namespace Kelompok1_Program8

{

class Program

{

static void Main(string[] args)

{

//pernyataan variabel dan tipe data

bertipe string

string nilai;

//proses memasukkan input yang

kemudian akan ditampilkan pada output

Page 213: Laporan DKP Kelompok 1 SISKOM 2012

213

Console.Write("Masukkan Nilai [A-

E]\t: ");

nilai = Console.ReadLine();

//proses pengkondisian apabila nilai

yang dimasukkan adalah A, B, C, D, E,

atau yang lainnya

switch (nilai)

{

case"A": Console.WriteLine("Nilai

Anda\t: {0} (Sempurna)", nilai);

break;

case"B": Console.WriteLine("Nilai

Anda\t: {0} (Sangat Baik)", nilai);

break;

case"C": Console.WriteLine("Nilai

Anda\t: {0} (Baik)", nilai);

break;

case"D": Console.WriteLine("Nilai

Anda\t: {0} (Cukup)", nilai);

break;

case"E": Console.WriteLine("Nilai

Anda\t: {0} (Kurang)", nilai);

break;

default:

Console.WriteLine("Nilai yang Anda

Masukkan Salah");

break;

}

}

}

}

Page 214: Laporan DKP Kelompok 1 SISKOM 2012

214

Gambar 5.22 Screenshot Source code program 8

Gambar 5.23 Screenshot Hasil program 8

Program ini berfungsi untuk mengetahui indeks nilai dari input

yang dimasukkan antara A-E. Apabila input A, maka akan

keluar nilai „Sempurna‟, apabila input B, maka akan keluar

nilai „Sangat Baik‟, apabila input C, maka akan keluar

nilai„Baik‟, apabila input D, maka akan keluar nilai „Cukup‟,

dan apabila input E, maka akan keluar nilai „Kurang‟. Apabila

input bukan A-E, maka akan keluar tulisan “Nilai yang Anda

Masukkan Salah”.

5.3.6. Program Perulangan

5.3.6.1. Program For

using System;

using System.Collections.Generic;

using System.Linq;

Page 215: Laporan DKP Kelompok 1 SISKOM 2012

215

using System.Text;

//nama program

namespace Kelompok1_Program9

{

class Program

{

static void Main(string[] args)

{

//pernyataan variabel dan tipe data

int n;

//pernyataan kondisi perulangan untuk

menampilkan data sebanyak mulai dari

1 sampai kurang dari 10

for (n = 1; n < 10; n++)

Console.WriteLine("Welcome in C#");

}

}

}

Gambar 5.24 Screenshot Source code program 9

Page 216: Laporan DKP Kelompok 1 SISKOM 2012

216

Gambar 5.25 Screenshot Hasil program 9

Program ini akan memiliki outputan “welcome to c#” sesuai

dengan jumlah perulangan yang ingin kita buat, pada

program ini, outputnya dimulai dari satu, dan berakhir pada

jumlah yang kurang dari 10.

5.3.6.2. Program While

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

//nama program

namespace Kelompok1_Program9

{

class Program

{

static void Main(string[] args)

{

//pernyataan variabel dan konstanta

int angka;

angka = 10;

//pernyataan kondisi perulangan yang

terus mengeluarkan nilai konstanta

secara berurutan dari besar ke kecil

dimulai dari 10 sampai nilai lebih

dari 0

while (angka > 0)

{

Console.WriteLine("Angka Sekarang\t:

{0}", angka);

angka--;

Page 217: Laporan DKP Kelompok 1 SISKOM 2012

217

}

}

}

}

Gambar 5.26 Screenshot Source code program 10

Gambar 5.27 Screenshot Hasil program 10

Program ini memiliki output pengurutan nilai dadri yang

terbesar ke yang terkecil, kita Cuma memasukkan nilai yang

kita urutkan, dan dia akan terurut sendiri dari nilai yang kita

masukkan tersebut sampai 1.

5.3.6.3. Program Do While

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

//nama program

Page 218: Laporan DKP Kelompok 1 SISKOM 2012

218

namespace Kelompok1_Program11

{

class Program

{

static void Main(string[] args)

{

//pernyataan variabel dan tipe data

int number;

string input;

//proses memasukkan input yang

kemudian akan ditampilkan pada output

input = Console.ReadLine();

//mengubah tipe string menjadi

integer

int.TryParse(input, out number);

//pernyataan kondisi perulangan yang

terus mengeluarkan nilai konstanta

secara berurutan dari besar ke kecil

dimulai dari angka yang diinput

sampai angka lebih dari 0

do

{

Console.WriteLine("{0}", number);

number--;

}

while (number > 0);

}

}

}

Page 219: Laporan DKP Kelompok 1 SISKOM 2012

219

Gambar 5.28Source code program 11

Gambar 5.29Hasil program 11

Program ini berfungsi untuk menampilkan urutan nilai dari

besar ke sampai kecil dari nilai yang anda input, dengan syarat

nilai yang diinput harus lebih besar dari 0. Pada program ini

dimasukkan nilai 10, maka program akan terus menampilkan

nilai secara berurutan dari 10 dan terus menurun sampai nilai

lebih dari 0, yaitu 1.

5.3.7. Tugas Praktikum

5.3.7.1. Latihan

1. Program Switch Menghitung Volume Balok, Kubus,

dan Kerucut

using System;

using System.Collections.Generic;

using System.Linq;

Page 220: Laporan DKP Kelompok 1 SISKOM 2012

220

using System.Text;

//nama program//

namespace Kelompok1_ProgramLatihan1

{

class Program

{

static void Main(string[] args)

{// pendeklarasian variabel dan konstanta//

int j,l,p,s,t,x;

int panjang, lebar;

double vb, vk, vc;

string jenis;

double phi = 3.14;

// pendeklarasian menu//

MENU:

System.Console.WriteLine("VOLUME ");

System.Console.WriteLine("[1]. Balok");

System.Console.WriteLine("[2]. Kubus");

System.Console.WriteLine("[3]. Kerucut");

System.Console.WriteLine("Masukkan Pilihan

");

x= int.Parse(System.Console.ReadLine());

System.Console.WriteLine();

switch (x)// pengkondisian jika memilih MENu

dengan pilihan 1,2,atau 2//

{

case 1://jika memilih 1 maka melakukan

proses Volume Balok//

System.Console.WriteLine("[1]. Volume

Balok");

jenis = "Balok";

System.Console.WriteLine("Masukan panjang =

");//memasukkan inputan panjang//

p = int.Parse(System.Console.ReadLine());

//menerima inputan panjang//

System.Console.WriteLine("Masukan lebar =

");//memasukkan inputan lebar//

Page 221: Laporan DKP Kelompok 1 SISKOM 2012

221

l = int.Parse(System.Console.ReadLine());

System.Console.WriteLine("Masukan tinggi =

");//memasukkan inputan//

t = int.Parse(System.Console.ReadLine());

//menerima inputan tinggi//

vb = p * l * t;//rumus volume balok//

System.Console.WriteLine("volume " + jenis +

" adalah " + vb);//menampilkan hasil volume

balok//

Console.ReadLine();

Console.Clear();

goto MENU;//proses kembali ke MENU untuk

menentukan pilihan kembali//

break;

case 2://jika memilih 2 maka melakukan

proses Volume Kubus//

System.Console.WriteLine("[2]. Volume

Kubus");

jenis = "Kubus";

System.Console.WriteLine("Masukan panjang

sisi nya = ");//memasukkan inputan panjang//

s = int.Parse(System.Console.ReadLine());

//menerima inputan panjang//

vk = s * s * s;//rumus volume kubus//

System.Console.WriteLine("Volume" + jenis +

" adalah " + vk);//menampilkan hasil volume

Kubus//

System.Console.ReadLine();

Console.Clear();

goto MENU;//proses kembali ke MENU untuk

menentukan pilihan kembali//

break;

case 3:

Page 222: Laporan DKP Kelompok 1 SISKOM 2012

222

//jika memilih 3 maka melakukan proses

Volume Kerucut//

System.Console.WriteLine("[3]. Volume

Kerucut");

jenis = "Kerucut";

System.Console.WriteLine("Masukan panjang =

");

p = int.Parse(System.Console.ReadLine());

System.Console.WriteLine("Masukan jari-jari

= ");//memasukkan inputan jari-jari//

j = int.Parse(System.Console.ReadLine());

//menerima inputan jari-jari//

System.Console.WriteLine("Masukan tinggi =

");//memasukkan inputan tinggi//

t = int.Parse(System.Console.ReadLine());

//menerima inputan tinggi//

vk = phi * j * j * t / 3;

//rumus volume kerucut//

System.Console.WriteLine("volume" + jenis +

" adalah " + vk);//menampilkan hasil volume

kerucut//

System.Console.ReadLine();

Console.Clear();

goto MENU;//proses kembali ke MENU untuk

menentukan pilihan kembali//

break;

default:

System.Console.WriteLine("Tidak ada pilihan

selain 1/2/3");

goto MENU;//proses kembali ke MENU untuk

menentukan pilihan kembali//

break;

}

}

}

}

Page 223: Laporan DKP Kelompok 1 SISKOM 2012

223

Gambar 5.30 Screenshot Source code program latihan 1

Page 224: Laporan DKP Kelompok 1 SISKOM 2012

224

Gambar 5.31 Screenshot Hasil program latihan 1

Pada program ini, akan ada output dengan

menampilkan 3 menu, yaitu : balok, kubus, dan

kerucut, kita bisa memilih program mana yang ingin

kita jalankan lebih dulu, dan apabila kita sudah selesai

dan ingin mencari lagi kita bisa memilih lagi program

yang ingin kita jalankan, tetapi harus sesuai dengan

nomor pilihan yang tersedia. Apabila itdak, maka

program tidak akan bisa dijalankan.

2. Output Program

Source code program :

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

//nama program//

namespace Kelompok18_ProgramLatihan2

{

class Program

{

static void Main(string[] args)

{

//pernyataan variabel dan tipe

data//

int n, j;

Page 225: Laporan DKP Kelompok 1 SISKOM 2012

225

//pernyataan kondisi perulangan

sebanyak 10 kali dimulai dari 0

sampai kurang dari 10 secara

menurun//

for (n = 0; n < 10; n++)

{

//pernyataan kondisi

perulangan sebanyak 11 kali

dimulai dari 0 sampai sama

dengan n secara mendatar//

for (j = 0; j <= n; j++)

{

Console.Write("#");

}

Console.Write("\n");

}

}

}

}

Gambar 5.32 Screenshot Source code program latihan 2

Page 226: Laporan DKP Kelompok 1 SISKOM 2012

226

Gambar 5.33 Screenshot Hasil program latihan 2

Output dari program ini adalah tampilan c#1 secara

berurutan dari yang paling atas 1 buah, sampai ke yang

paling bawah, yaitu 10 buah output tulisan C#1.

3. Program Bilangan Prima Antara 0-100

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

//nama program//

namespace Kelompok18_ProgramLatihan3

{

class Program

{

static void Main(string[] args)

{

//pernyataan variabel dan tipe

data//

int i, j, counter;

Console.WriteLine("Bilangan Prima

Antara 0-100 : ");

//digunakan untuk membagi bilangan

ke-, dengan 1 hingga bilangan

prima//

for (i = 1; i <= 100; i++)

{

counter = 0;

Page 227: Laporan DKP Kelompok 1 SISKOM 2012

227

for (j = 2; j <= Math.Sqrt(i);

j++)

{

//apabila nilai bilangan i

dibagi j sama denga 0, maka

bilangan bukan bilangan

prima tersebut tidak

ditampilkan di output//

if (i % j == 0)

{

counter++;

}

}

//bilangan i dibagi j yang

tidak menghasilkan angka 0

akan ditampilkan pada output

karena merupakan bilangan

prima//

if (counter == 0)

{

Console.Write("{0} ", i);

}

}

}

}

}

Gambar 5.34 Screenshot Source code program latihan 3

Page 228: Laporan DKP Kelompok 1 SISKOM 2012

228

Gambar 5.35 Screenshot Hasil program latihan 3

Program ini berfungsi untuk mencari dan mencetak semua

bilangan prima yang ada diantara nilai 0 sampai dengan 100.

5.3.7.2. Studi Kasus

1. Program Menebak Tanggal Lahir

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

//nama program//

namespace Kelompok18_StudiKasus1

{

class Program

{

static void Main(string[] args)

{

//pendeklarasian variabel dan tipe data//

int ans, ttl;

//proses input nama dan tanggal lahir untuk

ditebak nantinya//

Console.Write ("Nama anda : ");

string nama = Console.ReadLine();

rep:

{

Console.Clear();

Console.Write("Nama anda : {0}", nama);

Console.Write("\nTanggal lahir anda : ");

int.TryParse((Console.ReadLine()), out ttl);

if (ttl < 1 || ttl > 31)

Page 229: Laporan DKP Kelompok 1 SISKOM 2012

229

{

Console.Write("Input salah (tanggal 1 -

31)\nTekan enter untuk mencoba lagi");

Console.ReadLine();

goto rep;

}

}

Console.Write ("Tekan sembarang tombol untuk

memulai permainan");

Console.ReadLine();

A :

{

//proses input dan menebak tanggal lahir

yang sudah diinput sebelumnya//

Console.Clear();

Console.WriteLine("Tebak tanggal lahir {0}",

nama);

Console.Write("Tanggal berapa {0} lahir ? ",

nama);

int.TryParse((Console.ReadLine()), out ans);

if (ans != ttl)

{

if (ans >= 1 && ans <= 31)

{

//jika tebakan salah//

Console.Write("Maaf tebakan anda

salah\nTekan enter untuk mencoba lagi");

Console.ReadLine();

}

goto A;

}

}

//jika tebakan benar//

Console.WriteLine("Selamat, tebakan anda

benar...!!!");

Console.ReadLine();

}

}

}

Page 230: Laporan DKP Kelompok 1 SISKOM 2012

230

Gambar 5.36 Screenshot Source code program studi kasus 1

Gambar 5.37 Screenshot Hasil program studi kasus 1

Page 231: Laporan DKP Kelompok 1 SISKOM 2012

231

Program ini merupakan program yang berfungsi untuk

menampilkan tebakan tanggal lahir seseorang. Pada awalnya,

kita perlu memasukkan inputan sesuai dengan yang

diperintahkan program, selanjutnhya program akan mulai

menjalankan tebakan yang inputannya sudah kita masukkan

sebelumnya.

2. Windows Form Application

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace WindowsFormsApplication4Kelompok1

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void button1_Click(object

sender, EventArgs e)

{

if (textBox1.Text == "")//kondisi

untuk textBox1 jika tidak terisi sama sekali

{

errorProvider1.SetError(textBox1, "input tidak

valid");

Page 232: Laporan DKP Kelompok 1 SISKOM 2012

232

MessageBox.Show("Input Tidak

Valid");//Kotak pesan yang akan muncul jika

kolom textBox1 tidak terisi

}

if (textBox2.Text == "")// kondisi

untuk textBox2 jika tidak terisi sama sekali

{

errorProvider2.SetError(textBox2, "input tidak

valid");

MessageBox.Show("Input Tidak

Valid");// Kotak pesan yang akan muncul jika

kolom textBox1 tidak terisi

}

if (textBox3.Text == "")// kondisi

untuk textBox3 jika tidak terisi sama sekali

{

errorProvider3.SetError(textBox3, "input tidak

valid");

MessageBox.Show("Input Tidak

Valid");// Kotak pesan yang akan muncul jika

kolom textBox1 tidak terisi

}

else

{

MessageBox.Show("Selamat Input

Anda Berhasil ! \nNama\t:" + textBox1.Text +

"\nNIM \t:" + textBox2.Text +"\nshift\t:" +

textBox3.Text + "\nNIM \t:" + textBox2.Text

);//Menampilkan keseluruhan

input dari Nama,NIM,Kelas dan Shift bersamaan

MessageBox.Show("Mau Coba

Lagi?", "Question", MessageBoxButtons.OKCancel,

MessageBoxIcon.Question);//untuk mengulang

program (looping)

}

}

Page 233: Laporan DKP Kelompok 1 SISKOM 2012

233

}

}

Gambar 5.38 Source code program studi kasus 2

Gambar 5.39 Hasil program studi kasus 2

Gambar 5.40 Hasil program studi kasus 2 jika form kosong

Program ini digunakan untuk form/isian yang apabila salah satu atau

semua isian tidak diisi, maka program tersebut akan muncul

peringatan yang mengharuskan isi untuk diisi keseluruhannya. Jika

Page 234: Laporan DKP Kelompok 1 SISKOM 2012

234

form semuanya telah terisi maka akan ditampilkan isi inputan pada

messagebox.

Page 235: Laporan DKP Kelompok 1 SISKOM 2012

235

5.4 KESIMPULAN

1. Bahasa pemrograman C#1 adalah bahasa yang dikembangkan oleh

Microsoft yang menggunakan bahasa tingkat tinggi dan lebih kompleks

daripada bahasa C.

2. Semua komponen yang yang ada pada bahasa C#1 belum tentu ada pada

bahasa pemrograman C.

3. Pemrograman C# dapat dilakukan dengan menggunakan program Visual

Studio.

4. Pada C# dapat digunakan beberapa contoh penggunaan variabel,

konstanta, dan fungsi yang lebih lengkap dibandingkan dengan Delphi 7.

5. Pemrograman C# dapat menggunakan tampilan console application

maupun windows form application.

6. C# menyediakan fungsi perulangan seperti for, while, do while.

7. C# juga menyediakan fungsi pengkondisian seperti, if dan switch case.

8. Bahasa C mungkin akan terasa lebih sulit jika tanpa dipelajari terlebih

dahulu, tidak seperti bahasa Pascal yang lebih mudah dimengerti.

Page 236: Laporan DKP Kelompok 1 SISKOM 2012

236

BAB VI

PEMROGRAMAN C# BAGIAN II

6.1 Tujuan

1. Mengenal dan memahami fungsi array (larik) dan kegunaannya serta

dapat membuat program dengan menggunakan array.

2. Praktikan dapat mengenal dan memahami penggunaan queue pada

program serta dapat mengaplikasikannya pada program.

3. Praktikan dapat mengenal dan memahami penggunaan stack pada

program serta dapat mengaplikasikannya pada program.

Page 237: Laporan DKP Kelompok 1 SISKOM 2012

237

6.2 Dasar Teori

6.2.1 Array

Array adalah sebuah struktur data yang terdiri atas banyak

variabel dengan tipe data sama, di mana masing-masing elemen

variabel mempuynyai nilai indeks. Setiap elemen array mampu

untuk menyimpan satu jenis data (variabel). Array bisa dikatakan

memiliki dimensi, baik satu, dua, ataupun tiga, atau bahkan lebih.

Hal ini tergantung pada representasi data yang dimilikinya, array

dimensi satu mewakili suatu bentuk vektor, array dimensi dua

mewakili suatu matriks, dan array berdimensi tiga mewakili bentuk

ruang.

Variabel array dideklarasikan dengan mencantumkan tipe dan nama

variabel yang akan diikuti dengan banyaknya lokasi memori yang

akan dibuat. Contoh penulisan array c adalah seperti berikut :

Int c[5];

Perlu diperhatikan bahwa c secara otomatis akan menyediakan lokasi

memori sesuai dengan yang dideklarasikan, di mana nomor indeks

selalu dimulai dari 0. Nilai suatu variabel array dapat juga

diinisialisasi secara langsung pada saat deklarasi, misalnya :

Int c[5]={-45, 0, 6, 72, 1543};

Berarti setiap lokasi memori dan variabel array c langsung diisi

dengan nilai-nilai yang dituliskan di dalam tanda kurung kurawal.

Contoh berikut adalah deklarasi variabel array dengan sekaligus

mengisi setiap lokasi memorinya dengan nilai 0 :

Int x[5]= {0};

Banyaknya lokasi memori dapat secara otomatis disediakan sesuai

dengan banyaknya nilai yang akan dimasukkan, seperti contoh

berikut yang tentunya membuat variabel array dengan 10 lokasi

memori

Int x[]= {10, 15, 12, 5, 13, 9, 6, 17, 25, 31};

Page 238: Laporan DKP Kelompok 1 SISKOM 2012

238

6.2.2 Array dengan perulangan

Untuk menampilkan semua nilai pada array kita dapat

menggunalan fungsi perulangan untuk menyingkat penulisan source

codenya. Perulangan sendiri adalah teknik pemrograman, di mana

suatu proses akan diulang terus-menerus sampai tercapai suatu

kondisi yang diinginkan.

6.2.3 Queue

Queue adalah salah satu bentuk struktur data yang juga

merepresentasikan linked list. Di mana yang berbeda dalam queue

tersebut adalah cara menambah data dan mengambil data. Sesuai

dengan namanya yaitu queue atau antrian, data yang dimasukkan

dari belakang (insertAtBack), sehingga data yang pertama kali

dimasukkan berada pada node pertama, dan data yang dimasukkan

terakhir juga akan berada pada node yang terakhir. Di mana untuk

pengambilan proses pengambilan datanya, yang diambil adalah data

pertama, dan setelah data pertama diambil maka node yang berisi

data pertama tersebut akan di-null kan, sehingga posisi node pertama

akan berpindah pada node setelah node pertama tersebut. Proses ini

biasa disebut mdengan FIFO atau First In First Out. Dari data pada

tabel di bawah ini, data yang pertama masuk adalah data “a” dan

ketika diinputkan data lagi maka akan berada di node berikutya yaitu

di node ke – 2.

6.2.4 Stack

Stack adalah salah satu bentuk struktur data yang juga

merepresentasikantumpukan data. Di mana yang berbeda dalam

stack tersebut adalah cara menambah data dan mengambil data.

Sesuai dengan namanya yaitu stack atau tumpukan, data yang

dimasukkan pertama berada pada tumpukan paling bawah, sehingga

untuk data yang dimasukkan terakhir berada di tumpukan paling

atas. Ketika kita ingin melakukan pengambilan data, proses

Page 239: Laporan DKP Kelompok 1 SISKOM 2012

239

pengambilan datanya, yang diambil adalah data yang berada pada

tumpukan paling atas, dan setelah itu baru data yang ada di

tumpukan di bawahnya. Proses ini biasanya disebut dengan LIFO

atau Last In First Out. Data “D” merupakan data yang pertama kali

dimasukkan dan data “A” merupakan data yang terakhir dimasukkan

dan berada di tumpukan paling atas.

6.2.5 Pengurutan data (Sorting)

Sorting adalah proses di mana data diurutkan sesuai dengan

kaidah atau aturan tertentu. Ada beberapa algoritma untuk

melakukan sorting, di antaranya adalah :

1. Bubble sort

Algoritma beroperasi sebagai berikut :

Elemen pertama dibandingkan dengan elemen kedua, bila

elemen kedua lebih kecil maka kedua elemen tersebut

ditukar.

Elemen kedua dan ketiga dibandingkan, bila elemen ketiga

lebih kecil daripada elemen kedua, maka elemen tersebut

ditukar.

Proses terus berlangsung dengan elemen ketiga dan elemeen

keempat, dan seterusnya sampai akhir deretan tercapai.

Bila tak ada lagi yang ditukarkan, algoiritma berhenti. Bila

terjadi pertukaran secara berurutan, proses akan diulang.

Sehingga akhirnya semua elemen tersusun, tidak ada

pertukaran lagi dan algoritma berhenti.

2. Selection sort

Algoritma beroperasi sebagai berikut :

Memilih elemen maksimum / minimum dari larik, lalu

menempatkan elemen tersebut pada awal / akhir larik.

Larik yang telah ditempati elemen maksimum / minimum

tersebut diisolasi dan tidak disertakan pada proses

selanjutnya.

Page 240: Laporan DKP Kelompok 1 SISKOM 2012

240

Ada dua algoritma untuk selection sort yaitu elemen

maksimum sebagai basis pengurutan dan elemen minimum

sebagai basis pengurutan.

Operasi elemen hanya dilakukan sekali saja pada setiap

langkah.

3. Insertion sort

Algoritma beroperasi sebagai berikut :

Sembarang elemen diambil dari data yang belum terurut.

Data pertama dibandingkan dengan data kedua. Apabila data

kedua lebih kecil maka data kedua tersebut disisipkan di

depan data pertama.

Lakukan terus sampai data yang belum terurut tersebut habis.

4. Shell sort

Disebut juga diminishing increment sort

Pengurutan dilakukan setiap k elemen dengan metode

pengurutan sisip

Nilai k akan berkurang pada setiap langkah pengurutan

Nilai k disebut juga increment

5. Merge sort

Metode ini banyak digunakan untuk mengurutkan dua atau lebih

tabel yang sudah terurutkan menjadi satu tabel yang terurutkan

juga.

6. Quick sort

Metode ini dalam melakukan pengurutan data menggunakan

babak-babak dengan panjang spasi tertentu.

Ketika kita memasukkan data dalam jumlah besar, dapat

melakukan sortir data, mulai dari ascending atau urut dari nilai yang

paling kecil dan descending atau urut dari nilai yang paling besar.

6.2.6 Matriks

Matriks biasanya dinotasikan dengan huruf besar A, B, C dan

sebagainya. Elemen-elemen di dalam matriks sering disebut dengan

entri dari matriks. Entri ini biasanya merupakan bilangan riil atau

Page 241: Laporan DKP Kelompok 1 SISKOM 2012

241

kompleks. Entri dari matriks pada umumnya dinotasikan dengan

[A]ji yang menyatakan matriks A yang berada pada baris ke j dan

kolom ke i.

Dua matriks A=[aij] dan B=[bij] dikatakan sama , ditulis A=B

jika A dan B berukuran sama dan entri yang seletak sama yaitu aji=bji

untuk setiap j dan i. Jika dua matriks A dan B berukuran sama ,

penjumlahan A dan B didefinisikan sebagai beriut :

A+B = [aji+ bji]

Sifat dasar dari operasi penjumlahan dan perkalian matriks dengan

skalar adalah sebagai berikut :

(A + B) + C = A + (B + C)

A + 0 = 0 + A = A

A + (-A) = (- A) + A = 0

A + B = B + A

k(A + B) = kA + kB

(k+ l)A = kA + lA

(kl)A = k (lA)

Ada beberapa jenis matriks, diantaranya adalah :

1. Suatu matriks dengan banyak baris = banyak kolom = n disebut

matriks bujur sangkar berukuran n. Barisan entri a11, a22, .....,

ann disebut diagonal utama dari matriks bujur sangkar.

2. Matriks diagonal adalah matriks bujur sangkar yang semua

elemen diagonal utamanya adalah nol.

3. Matriks identitas adalah matriks diagonal yang entri pada

diagonal utamanya adalah 1.

4. Matriks segitiga adalah matriks bujur sangkar yang semua entri

di bawah diagonal utama = 0

1 2 3

0 5 3

0 0 8

5. Matriks segitiga bawah adalah matriks bujur sangkar yang semua

entri di atas diagonal utama = 0

Page 242: Laporan DKP Kelompok 1 SISKOM 2012

242

1 0 0

2 5 0

1 0 8

Page 243: Laporan DKP Kelompok 1 SISKOM 2012

243

6.3. Analisa dan Pembahasan

6.3.1. Array 1 dimensi

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

//nama program

namespace latihanArray1dimensikelompok1

{

//kelas program

Class Program

{

Static void Main(string[] args)

{

//deklarasi array

int[] array = { 1, 2, 3 };

//menampilkan program pada layar

System.Console.WriteLine("datanya adalah " + array[0]);

}

}

}

Gambar 6.1 Screenshot tampilan coding program Latihan Aray Dimensi 1

Gambar 6.2 Screenshot Tampilan program Latihan Array 1 Dimensi

Page 244: Laporan DKP Kelompok 1 SISKOM 2012

244

Keluaran dari program ini adalah menampilkan angka 1,

karena pada program ini yang dipanggil adalah array dengan indeks ke-

0.

6.3.2 Array 2 dimensi

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

//nama program

namespace latihanArray2dimensikelompok1

{

//kelas program

Class Program

{

//awal memulai program

Static void Main(string[] args)

{

//deklarasi array

int[,] array = new int[2, 2];

array[0, 0] = 2;

//perintah menampilan program di layar

System.Console.WriteLine("datanya adalah " + array[0,

0]);

}

}

}

Gambar 6.3 Screenshot coding program latihan Array 2dimensi

Page 245: Laporan DKP Kelompok 1 SISKOM 2012

245

Gambar 6.4 Tampilan running program array 2 dimensi

Pada program ini akan keluar tampilan angka 2, karena

indeks array yang dipanggil pada program ini adalah indeks ke-[0,0].

6.3.3 Array dengan perulangan

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

//nama program

namespace latihanArrayperulangankelompok1

{

//kelas program

classProgram

{

//awal memulai program

Static void Main(string[] args)

{

//deklarasi array

int[,] matriks = newint[2, 2];

//penjabaran deklarasi array

matrik[0, 0] = 12;

matrik[0, 1] = 30;

matrik[1, 0] = 45;

matrik[1, 1] = -9;

//perintah untuk melakukan looping

for (int i = 0; i < 1; i++)

{

for (int j = 0; j < 2; j++)

{

//perintah untuk menampilkan program dilayar

System.Console.Write(matrik[i, j] + " ");

}

}

System.Console.WriteLine("");

for (int i = 1; i < 2; i++)

{

for (int j = 0; j < 2; j++)

{

System.Console.Write(matrik[i, j] + " ");

}

Page 246: Laporan DKP Kelompok 1 SISKOM 2012

246

}

System.Console.WriteLine("");

}

}

}

Gambar 6.5 Screenshot coding program Latihan Array Pengulangan

Gambar 6.6Tampilan running program latihan array perulangan

Gambar diatas adalah contoh keluaran dari program

pengulangan array. pada lokasi baris dan kolom 0 diisi dengan nilai

12, baris 0 dan kolom 1 diisi dengan nilai 30, baris 1 dan kolom 0

diisi dengan nilai 45, dan terakhir baris 1 dan kolom 1 diisi dengan

nilai -9.

6.3.4 Penjumlahan matriks

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

//nama program

namespace ConsoleApplicationkelompok1

{

Page 247: Laporan DKP Kelompok 1 SISKOM 2012

247

classProgram

{

//perintah memulai program tanpa tipe

Private static int kolom;

Static void Main(string[] args)

{

//deklarasi program

int baris = 2, kolom = 2;

int[,] matriks1 = newint[baris, kolom];

int[,] matriks2 = newint[baris, kolom];

int[,] hasil = newint[baris, kolom];

//perintah untuk menampilkan program dilayar

Console.WriteLine("Input Matriks1 :");

//perintah untuk melakukan looping

for (int b = 0; b < baris; b++)

{

for (int k = 0; k < kolom; k++)

{

//deklarasi matriks

matriks1[b, k] = 2;

Console.Write(matriks1[b, k] + " ");

}

Console.WriteLine();

}

Console.WriteLine("Input Matriks2 :");

for (int b = 0; b < baris; b++)

{

for (int k = 0; k < kolom; k++)

{

matriks2[b, k] = 4;

Console.Write(matriks2[b, k] + " ");

}

Console.WriteLine();

}

for (int b = 0; b < baris; b++)

{

for (int k = 0; k < kolom; k++)

{

//hasil dari dekrasi matriks

hasil[b, k] = matriks1[b, k] + matriks2[b, k];

}

}

Console.WriteLine("Hasil Penjumlahan Matriks :");

for (int b = 0; b < baris; b++)

{

for (int k = 0; k < kolom; k++)

{

Console.Write(hasil[b, k] + " ");

}

Console.WriteLine();

}

}

}

}

Page 248: Laporan DKP Kelompok 1 SISKOM 2012

248

Gambar 6.7 Screenshot program penjumlahan matriks

Gambar 6.8 Screenshot Tampilan running program penjumlahan matriks

Page 249: Laporan DKP Kelompok 1 SISKOM 2012

249

Keluaran dari program ini aadalah hasil dari penjumlahan

matriks. pada lokasi baris dan kolom matriks1 diisi dengan nilai 2,

baris dan kolom matriks2 diisi dengan nilai 4. Hasil Penjumlahan

Matriks akan dihasilkan dari penambahan kedua matriks tersebut.

6.3.5 Queue

//library system

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Collections;

//nama program

namespace latihan_stackdanqueuekelompok1

{

//kelas program

classProgram

{

///perintah untuk memulai program

staticvoid Main(string[] args)

{

//perintah untuk menampilkan program dilayar

Console.WriteLine("Enter in a string");

//perintah untuk membaca statement

string s1 = Console.ReadLine();

Console.WriteLine(" ");

//deklarasi queue

Queue q1 = newQueue();

//perintah melakukan looping

for (int i = 0; i < s1.Length; i++)

{

q1.Enqueue(s1.Substring(i, 1));

if (i == s1.Length - 1)

{

//perintah untuk menampilkan hasil queue

Console.WriteLine("hasil menggunakan metode queue");

for (i = 0; i < s1.Length; i++)

{

char y = Convert.ToChar(q1.Dequeue());

Console.WriteLine(y);

}

Console.WriteLine(" ");

}

}

}

Page 250: Laporan DKP Kelompok 1 SISKOM 2012

250

}

}

Gambar 6.9 Screenshot coding program latihan queue

Gambar 6.10 Screenshot Tampilan running program latihan queue

Keluaran dari program ini adalah mengurutkan inputan dari

yang paling awal dimasukkan sampai ke yang paling terakhir

dimasukkan, jika Anda masukkan inputan pertama sampai terakhir,

missal: abcde, maka setelah di proses inputan pertama akan duluan

dikeluarkan.

6.3.6 Stack

//library system

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Collections;

//nama program yang akan dijalankan

Page 251: Laporan DKP Kelompok 1 SISKOM 2012

251

namespace latihan_stackdanqueuekelompok1

{

//kelas program

classProgram

{

//perintah untuk emamulai program

staticvoid Main(string[] args)

{

//perintah untuk emnampilkan hasil program dilayar

Console.WriteLine("Enter in a string");

//perintah untuk membaca statement

string s1 = Console.ReadLine();

Console.WriteLine(" ");

//deklarasi stack

Stack st = newStack();

Console.WriteLine("hasil menggunakan metode stack");

//perintah melakukan looping

for (int i = 0; i < s1.Length; i++)

{

st.Push(s1.Substring(i, 1));

//pengkondisian

if (i == s1.Length - 1)

{

for (i = 0; i < s1.Length; i++)

{

Char x = Convert.ToChar(st.Pop());

Console.WriteLine(x);

}

}

}

}

}

}

Gambar 6.11 Screenshot coding program latihan stack

Page 252: Laporan DKP Kelompok 1 SISKOM 2012

252

Gambar 6.12Tampilan running program latihan stack

Pada program ini keluarannya adalah urutan data mulai dari

yang terakhir dimasukkan sampai yang pertama kali dimasukan.

Kebalian dari program queue.

6.3.7 Pengurutan data secara ascending

Ketika kita memasukkan data dalam jumlah besar, dapat melakukan

sortir data, mulai dari ascending atau urut dari nilai yang paling kecil

dan descending atau urut dari nilai yang paling besar.

//library system

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Collections;

/nama program

namespace latihan_bublesortkelompok1

{

//kelas program

classProgram

{

//perintah untuk memulai program dengan tipe string

staticvoid Main(string[] args)

{

//perintah untuk menampilkan hasil program dilayar

Console.Write("Masukkan banyak elemen array = ");

//perintah untuk membaca statement

int n = Convert.ToInt32(Console.ReadLine());

int[] array_sort = newint[n];

perintah untuk melakukan loping

for (int i = 0; i < n; i++)

{

Console.Write("Elemen ke-" + (i + 1) + "=");

Page 253: Laporan DKP Kelompok 1 SISKOM 2012

253

//perintah untuk membaca statement

array_sort[i]=Convert.ToInt32(Console.ReadLine());

}

for (int j = 1; j <= n - 1; j++)

{

for (int k = 0; k <= n - 2; k++)

{

//deklarasi pengkondisian

if (array_sort[k] > array_sort[k + 1])

{

//deklarasi temp dengan menggunakan tipe data integer

int temp = array_sort[k]; array_sort[k] = array_sort[k

+ 1];

array_sort[k + 1] = temp;

}

}

}

Console.WriteLine("");

Console.WriteLine("tampilkan data secara ascending");

for (int i = 0; i < n; i++)

{

Console.WriteLine(array_sort[i]);

}

//perintah membaca kunci / rumus yang terdapat dalam

program

Console.ReadKey(true);

}

}

}

Gambar 6.13 Screenshot coding program pengurutan data secara ascending

Page 254: Laporan DKP Kelompok 1 SISKOM 2012

254

Gambar 6.14 Screenshot Tampilan running program pengurutan data secara

ascending

Keluaran dari program diatas adalah penguruta program

dari yang terkecil sampai ke yang terbesar, tidak seperti queue dan

stack yang datanya diurutkan dari urutan masuknya data.

6.4 Tugas Praktikum

6.4.1 Pengurangan matriks

//library system

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

//nama program

namespace Pengurangan_Matriks_Kelompok1

{

//kelas program

class Program

{

//perintah untuk memulai program dengan tipe data

string

static void Main(string[] args)

{

//deklarasi baris dan kolom

int baris = 3, kolom = 3;

int[,] matriks1 = new int[baris, kolom];

int[,] matriks2 = new int[baris, kolom];

int[,] matriks3 = new int[baris, kolom];

int[,] hasil = new int[baris, kolom];

Console.WriteLine("Input Matriks1: ");

//perintah untuk emlakukan looping

for (int b = 0; b < baris; b++)

{

for (int k = 0; k < kolom; k++)

Page 255: Laporan DKP Kelompok 1 SISKOM 2012

255

{

//deklarasi matriks

matriks1[b, k] = 4;

//perintah utnuk emnampilakn program

dilayar

Console.Write(matriks1[b, k] + " ");

}

Console.WriteLine();

}

Console.WriteLine("Input Matriks2: ");

for (int b = 0; b < baris; b++)

{

for (int k = 0; k < kolom; k++)

{

//dklarasi matriks2

matriks2[b, k] = 6;

Console.Write(matriks2[b, k] + " ");

}

Console.WriteLine();

}

Console.WriteLine("Input Matriks3: ");

for (int b = 0; b < baris; b++)

{

for (int k = 0; k < kolom; k++)

{

//deklarasi matriks3

matriks3[b, k] = 7;

Console.Write(matriks3[b, k] + " ");

}

Console.WriteLine();

}

Console.WriteLine("Hasil: ");

for (int b = 0; b < baris; b++)

{

for (int k = 0; k < kolom; k++)

{

hasil[b, k] = matriks1[b, k] -

matriks2[b, k] - matriks3[b, k];

}

}

Console.WriteLine("Hasil Pengurangan matriks:

");

for (int b = 0; b < baris; b++)

{

for (int k = 0; k < kolom; k++)

{

//perintah untuk menampilkan hasil

dari pencarian pada program ke layar.

Console.Write(hasil[b, k] + " ");

}

Console.WriteLine();

}

Page 256: Laporan DKP Kelompok 1 SISKOM 2012

256

Console.ReadLine();

}

}

}

Page 257: Laporan DKP Kelompok 1 SISKOM 2012

257

Gambar 6.15 Screenshot Tampilan coding program pengurangan matriks

Page 258: Laporan DKP Kelompok 1 SISKOM 2012

258

Gambar 6.16 Screenshot Tampilan running program pengurangan matriks

Apda program diatas, dapat kita lihat, keluaran dari

programnya adalah pengurangan matriks. pada lokasi baris dan

kolom matriks1 diisi dengan nilai 9, baris dan kolom matriks2 diisi

dengan nilai 2, baris dan kolom matriks3 diisi dengan nilai 6. Hasil

Pengurangan Matriks akan dihasilkan dari pengurangan 3 matriks

tersebut.

6.4.2 Menghapus dan Menambah Data dengan Queue

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Collections;

//nama program//

namespace Latihan2_kelompok25

{

class Program

{

static void Main(string[] args)

{

//pernyataan variabel dan queue//

int num = 0;

Queue isi = new Queue();

do

{

//menampilkan menu utama//

Console.WriteLine("");

Console.WriteLine("Pilihan \n 1 untuk

menambah data \n 2 untuk menghapus data \n 3 untuk

menampilkan data \n 4 untuk keluar dari program");

Console.WriteLine("Masukkan pilihan:");

string pilihan = Console.ReadLine();

Page 259: Laporan DKP Kelompok 1 SISKOM 2012

259

//pengkondisian apabila nilai yang

dimasukkan antara 1-4//

switch (pilihan)

{

case "1":

//menambahkan nilai string ke

dalam queue//

Console.WriteLine("Masukkan data

string:");

string s1 = Console.ReadLine();

Console.WriteLine("");

isi.Enqueue(s1);

num = 0;

break;

case "2":

//mengeluarkan nilai queue

apabila nilai = 0//

if (isi.Count == 0)

{

Console.WriteLine("Tidak ada

data yang bisa dihapus");

}

//mengeluarkan nilai yang

pertama masuk pada queue//

else

{

string hasil_stack =

(string)isi.Dequeue();

}

num = 0;

break;

case "3":

//menampilkan data pada queue//

{

Console.WriteLine("Datanya

adalah");

foreach (string d in isi)

{

string hasil = d;

Console.WriteLine(d);

}

}

num = 0;

break;

case "4":

//keluar program//

num = 1;

break;

default:

{

foreach (string d in isi)

{

string hasil = d;

Console.WriteLine(d);

num = 0;

Page 260: Laporan DKP Kelompok 1 SISKOM 2012

260

}

}

break;

}

}

while (num == 0);

}

}

}

Page 261: Laporan DKP Kelompok 1 SISKOM 2012

261

Gambar 6.17 Screenshot coding program Menghapus Menambah Data dengan

Queue

Page 262: Laporan DKP Kelompok 1 SISKOM 2012

262

Gambar 6.18 Screenshot running program Menghapus dan Menambah Data dengan Queue

Pada program diatas dapat kita lihat hasil

keluarannya.Hasilnya diurutkan berdasarkan data yang duluan di

masukkan sehingga jika melalukan penghapusan data maka data

yang pertama dimasukkan akan duluan di hapus.

6.4.3 Menghapus dan Menambah Data dengan Stack

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Collections; //nama program// namespace Latihan3_kelompok1 { class Program { static void Main(string[] args) { //pernyataan variabel dan stack// int num = 0;

Page 263: Laporan DKP Kelompok 1 SISKOM 2012

263

Stack isi = new Stack(); do { //menampilkan menu utama// Console.WriteLine(""); Console.WriteLine("Pilihan \n 1 untuk menambah data \n 2 untuk menghapus data \n 3 untuk menampilkan data \n 4 untuk keluar dari program"); Console.WriteLine("Masukkan pilihan:"); string pilihan = Console.ReadLine(); //pengkondisian apabila nilai yang dimasukkan antara 1-4// switch (pilihan) { case "1": //menambahkan nilai string ke dalam stack// Console.WriteLine("Masukkan data string:"); string s1 = Console.ReadLine(); Console.WriteLine(""); isi.Push(s1); num = 0; break; case "2": //mengeluarkan nilai stack apabila nilai = 0// if (isi.Count == 0) { Console.WriteLine("Tidak ada data yang bisa dihapus"); } //mengeluarkan nilai yang terakhir masuk pada stack// else { string hasil_stack = (string)isi.Pop(); } num = 0; break; case "3": //menampilkan data pada queue// { Console.WriteLine("Datanya adalah"); foreach (string d in isi) { string hasil = d; Console.WriteLine(d); } } num = 0; break; case "4": //keluar program// num = 1;

Page 264: Laporan DKP Kelompok 1 SISKOM 2012

264

break; default: { foreach (string d in isi) { string hasil = d; Console.WriteLine(d); num = 0; } } break; } } while (num == 0); } } }

Page 265: Laporan DKP Kelompok 1 SISKOM 2012

265

Gambar 6.19 Screenshot coding program Menghapus dan Menambah Data

dengan Stack

Page 266: Laporan DKP Kelompok 1 SISKOM 2012

266

Gambar 6.20 Screenshot running program Menghapus dan Menambah Data dengan Stack

Keluaran dari program ini adalh pengurutan data

berdasarkan data yang terakhir di masukkan sehingga jika melalukan

penghapusan data maka data yang terakhir dimasukkan akan duluan

di hapus.

6.4.4 Menghapus dan Mengurutkan Data secara Descending

//library system

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

//nama program

namespace MengurutkanDataDescendingkelompok1

{

//kelas program

class Program

{

//perintah untuk memulai program dengan tipe

data string

static void Main(string[] args)

{

Page 267: Laporan DKP Kelompok 1 SISKOM 2012

267

//perintah untuk menampilkan program ke

layar

Console.Write("Masukkan banyak elemen array

= ");

//perintah program untuk membaca statement

int n = Convert.ToInt32(Console.ReadLine());

//deklarasi aray

int[] array_sort = new int[n];

//perintah untuk melakukan looping

for (int i = 0; i < n; i++)

{

Console.Write("Elemen ke-" + (i + 1) + " = ");

//deklarasi array

array_sort[i] =

Convert.ToInt32(Console.ReadLine());

}

for (int j = 1; j <= n - 1; j++)

{

for (int k = 0; k <= n - 2; k++)

{

//perintah pengkondisian program

if (array_sort[k] < array_sort[k + 1]){

int temp = array_sort[k];

array_sort[k] = array_sort[k + 1];

array_sort[k + 1] = temp;

}

}

}

Console.WriteLine("");

Console.WriteLine("Diurutkan secara

Descending");

for (int i = 0; i < n; i++)

{

//perintah untuk menampilkan deklarasi

array pada layar

Console.WriteLine(array_sort[i]);

}

//perintah untuk membaca kunci atau rumus

Console.ReadKey(true);

}

}

}

Page 268: Laporan DKP Kelompok 1 SISKOM 2012

268

Gambar 6.21 Screenshot coding program Mengurutkan Data secara Descending

Gambar 6.22 Screenshot running program Mengurutkan Data secara Descending

Program diatas berfungsi untuk mengurutkan data dari yang

terbesar ke yang terkecil, bukan dengan cara mengurutkan data dari

yang pertama dimasukkan.

Page 269: Laporan DKP Kelompok 1 SISKOM 2012

269

6.5 Kesimpulan

1. Bahasa pemrograman C# merupakan sebuah bahasa pemrograman

yang berorientasi objek yang dikembangkan oleh Microsoft sebagai

bagian dari inisiatif kerangka .NET Framework. Bahasa pemrograman

ini dibuat berbasiskan bahasa C++ yang telah dipengaruhi oleh aspek-

aspek ataupun fitur bahasa yang terdapat pada bahasa-bahasa

pemrograman lainnya seperti Java, Delphi, Visual Basic, dan lain-lain)

dengan beberapa penyederhanaan.

2. Array adalah sebuah struktur data yang terdiri atas banyak variabel

dengan tipe data yang sama, dimana masing-masing elemnen variabel

mempunyai nilai indeks.

3. Array dengan perulangan menggunakan fungsi for. Perulangan adalah

teknik pemrograman di mana suatu proses akan diulang terus-menerus

sampai kondisi yang diinginkan.

4. Queue adalah salah satu bentuk struktur data yang juga

merepresentasikan linked list yang prosesnya disebut FIFO (First In

First Out).

5. Stack adalah salah satu bentuk struktur data yang juga

merepresentasikan tumpukan data yang prosesnya disebut LIFO (Last

In First Out).

6. Pengurutan data secara ascending dilakukan dari data yang bernilai

paling kecil ke terbesar, sedangkan pengurutan data secara descending

dilakukan dari data yang bernilai paling besar ke terkecil.

7. Pengurutan data (sorting) dapat dilakukan dengan berbagai metode,

antara lain bubble sort, selection sort, insertion sort, shell sort, merge

sort, ataupun quick sort.

8. Bahasa C# harus mencakup pengecekan jenis (type checking) yang

kuat, pengecekan larik (array), pendeteksian terhadap percobaan

terhadap penggunaan Variabel-variabel yang belum diinisialisasikan,

Page 271: Laporan DKP Kelompok 1 SISKOM 2012

271

BAB VII

PEMROGRAMAN JAVA BAGIAN I

7.1 Tujuan

1. Memahami dasar-dasar pemrograman java

2. Memahami pernyataan penyeleksian kondisi IF-THEN-ELSE pada java

3. Memahami pernyataan penyeleksian kondisi SWITCH-CASE pada java

4. Memahami pernyataan perulangan WHILE dan DO…WHILE pada java

5. Memahami pernyataan perulangan FOR pada java

7.2 Dasar Teori

7.2.1 Pengenalan Pemrograman Java dan Instalasi

a. Sejarah Java

Java dipelopori oleh James Gosling, Patrick Naughton, Chris

Warth, Ed Frank, dan Mike Sheridan dari Sun Microsystems, Inc

pada tahun 1991. Mereka membutuhkan kurang lebih 18 bulan

untuk membuat versi pertamanya. Bahasa ini pada awalnya disebut

―Oak‖ tapi kemudian diubah menjadi ―Java‖ pada tahun 1995

karena nama Oak telah dijadikan hak cipta dan digunakan sebagai

bahasa pemrograman lainnya. Antara pembuatan Oak pada musim

gugur 1992 hingga diumumkan ke publik pada musim semi 1995,

banyak orang yang terlibat dalam desain dan evolusi bahasa ini.

Bill Joy, Arthur van Hoff, Jonathan Payne, Frank Yellin, dan Tim

Lindholm merupakan kontributor kunci yang mematangkan

prototipe aslinya. Java Modern Java telah digunakan dalam banyak

hal dan telah membuktikan keberadaannya pada abad ke 21. Saat

ini, Java digunakan bermacam jenis aplikasi seperti aplikasi

embedded, aplikasi keuangan, desktop, simulasi pesawat,

Page 272: Laporan DKP Kelompok 1 SISKOM 2012

272

pemrosesan citra, game, aplikasi perusahaan terdistribusi yang

disebut J2EE dan masih banyak lagi. Java Virtual Machine (JVM)

Java Virtual Machine merupakan aplikasi sederhana yang ditulis

dalam bahasa C untuk mengeksi program yang ditulis dalam

bahasa Java. Pada saat kompilasi (perubahan dari bahasa tingkat

tinggi ke bahasa lebih rendah), program tersebut diubah menjadi

KODE BYTE. Kemudian pada saat eksekusi, JVM membaca kode

byte tersebu dan mengubahnya menjadi bahasa mesin yang

dimengerti oleh sistem operasi tempat program tersebut dijalankan.

Karena JVM sangat bergantung pada platformnya (bahasa mesin

merupakan bahasa level rendah yang hanya dimengerti oleh suatu

mesin tertentu, misalnya Intel, tapi tidak dapat dimengerti oleh

mesin lain, seperti Macintosh), byte code ini dapat dibuat untuk 77

terbebas dari kungkungan platform tertentu. Code byte yang

dihasilkan dalam proses kompilasi bahasa Java akan selalu sama

untuk setiap sistem operasi atau jenis mesinnya, tetapi JVM akan

mengubah kode byte tersebut menjadi bahasa mesin tujuannya.

Just In Time Compiler (JIT) Meskipun Java didesain untuk

diinterpretasi, secara teknis tidak ada yang menghalangi Java untuk

dikompilasi menjadi bahasa mesin seperti bahasa-bahasa

pemrograman lainnya. Sun menyediakan kompiler Just In Time

Compiler (JIT) untuk mengkompilasi kode byte itu menjadi bahasa

mesinnya pada saat yang bersamaan dengan eksekusinya.

Walaupun demikian, pendekatan JIT ini menghasilkan kemampuan

yang lebih dibandingkan dengan interpretasi biasa.

b. Kelebihan dari Java

Keuntungan yang Anda dapat dari Java

Mulai dengan cepat: Java merupakan bahasa pemrograman

berorientasi objek, mudah dipelajari, terutama untuk

programmer yang sudah menguasai C atau C++

Tulis lebih sedikit program: Jumlah kelas, jumlah metode,

dll, menunjukkan bahwa program yang ditulis dalam

Page 273: Laporan DKP Kelompok 1 SISKOM 2012

273

bahasa pemrograman Java memiliki jumlah 4 kali lipat

lebih kecil dari program sama yang ditulis dalam bahasa

C++

Tulis program lebih baik: Bahasa pemrograman Java

menganjurkan praktek membuat program yang baik, dan

automatic garbage collection membantu Anda untuk

menghindari kebocoran memori. Orientasi objeknya,

arsitektur komponen JavaBeans, dan jangkauannya yanga

luas, API yang mudah diperluas, memungkinkan Anda

menggunakan kode yang ada.

Membuat program dengan lebih cepat: Bahasa

pemrograman Java lebih mudah dari C++, pemrograman

akan menjadi 2 kalilipat lebih cepat, dengan jumlah baris

yang jauh lebih sedikit.

Menghindari kebergantungan pada platform tertentu: Anda

dapat menjalankan program Anda pada banyak platform

dengan TIDAK menggunakan library yang ditulis spesifik

untuk platform tertentu.

Tulis sekali, jalankan di mana saja: Karena aplikasi yang

ditulis dalam bahasa Java dikompilasi ke dalam kode byte

yang bebas platform, aplikasi yang ditulis dapat jalan

secara konsisten pada platform apa saja.

Distribusikan software Anda dengan mudah: Dengan Java

Web Start, pengguna program Anda akan dapat

menggunakan aplikasi Anda dengan mudah. Sistem

pengecekan versi otomatis pada saat program dimulai

menjamin pengguna Anda selalu menjalankan versi terkini.

Apabila versi baru tersedia, Java Web Start akan melakukan

instalasi secara otomatis.

Page 274: Laporan DKP Kelompok 1 SISKOM 2012

274

7.2.2. If Else

Pernyataan if merupakan salah satu pernyataan percabangan

padaJava,

Seperti biasa, perintah1 dan perintah2 bisa berbentuk blok yang

terdiri dari beberapa perintah. Pernyataan if merupakan bentuk

percabangan 2 arah. Bagian else yang terdiri dari kata "else"

danperintah2 tidak selalu harus ada. Perhatikan bahwa baik

perintah1 dan perintah2 bisa merupakan pernyataan if itu sendiri.

Pertama-tama, komputer tidak peduli bagaimana Anda memformat

paragraf dan indentasi dari pernyataan if tersebut. Java akan

menganggap else terkait dengan if terdekat, else di program di atas

akan dianggap bagian dari pernyataan jika y> 0, padahal yang kita

maksud adalah else jika x > 0.

Kedua pernyataan tersebut memiliki arti yang berbeda. Jika x <=

0,pada kode pertama Java tidak mencetak apa-apa ke layar,

sedangkan kode kedua java akan mencetak "perintah2".

Dengan kata lain perintah tersebut lebih seperti percabangan 3

arah. Komputer akan mengeksekusi hanya salah satu dari perintah

1, perintah 2, atau perintah 3. Komputer akan mengevaluasi

kondisi_pertama, jika true, maka perintah1 dieksekusi sementara

perintah 2 dan perintah 3 diabaikan. Jika false, maka

kondisi_keduaakan dievaluasi. Jika true, maka perintah2 akan

dieksekusi danperintah3 diabaikan. Jika false, maka hanya

perintah3 saja yang dieksekusi. Kita bahkan dapat membentuk

pernyataan if-else ini menjadi percabangan N arah,

Contoh berikut ini adalah mengurutkan 3 bilangan dari kecil

kebesar. Misalnya kita mempunyai 3 variabel a,b dan c. Bilangan

yang paling kecil adalah bilangan yang lebih kecil dari kedua

bilangan yang lain. Sekarang mari kita rangkai logika untuk

menentukan urutan bilangan dari kecil ke besar. Mula-mula kita

cek apakah alebih kecil dari b dan c, yaitu dengan pernyataan

if (a < b && a <c)

Page 275: Laporan DKP Kelompok 1 SISKOM 2012

275

Jika a betul merupakan bilangan terkecil, maka kita uji apakah

blebih kecil dari c dengan perintah

if (b < c)

Jika a bukan bilangan terkecil, maka b atau c, salah satunya bisa

merupakan bilangan terkecil. Kita hanya perlu membandingkan

apakah b lebih kecil dari c dengan

if (b < c)

Jika b lebih kecil dari c, berarti kita tahu bahwa b adalah bilangan

terkecil. Tetapi kita belum tahu apakah bilangan terkecil berikutnya

adalah a atau c, sehingga kita harus menguji lagi dengan

if (a < c)

Jika a lebih kecil dari c, maka urutannya adalah b, a, c. Jika

tidak,maka urutannya adalah b, c, a.

Demikian halnya apabila jika b > c, maka kita bisa tentukan

urutanbilangannya.

Logika di atas bisa juga dituangkan dengan cara lain, yaitu melihat

urutannya. Pertama kita cek apakah a < b. Jika ya, kita tahu bahwa

urutannya pasti a terlebih dahulu baru b. Kemudian kita lihat

apakah c berada di sebelah kiri a atau disebelah kanan b atau di

tengah tengah.Demikian seterusnya jika urutannya b terlebih

dahulu baru a. Switch case

Penyataan percabangan kedua yang dimiliki Java adalah

switch.Pernyataan switch lebih jarang digunakan, tetapi sering

bermanfaat apabila kita ingin menuliskan percabangan multi arah.

Di sini pernyataan switch akan mencari nilai ekspresi yang

sesuai dengan nilai-nilai yang didaftarkan pada pernyataan

case.Jika salah satu nilai ditemui, maka program akan melompat

kecabang case tersebut dan melakukan perintah yang terdapat

disana. Jika tidak ditemui, maka program akan melompat ke

perintah yang terdapat pada pernyataan default.Pernyataan

break di atas sebetulnya tidak harus selalu ada. Tetapi,perintah

break di sini memerintahkan komputer agar segera keluar dari

Page 276: Laporan DKP Kelompok 1 SISKOM 2012

276

blok switch apabila perintah tersebut telah selesai dilaksanakan.

Apabila perintah break tidak diberikan, maka program akan terus

mengeksekusi perintah lain meskipun sudah berada di luar nilai

yang tertera dalam pernyataan casenya.

Salah satu aplikasi di mana pernyataan switch berguna adalah

untuk memproses menu. Menu memiliki beberapa pilihan dan user

akan diminta untuk memilih suatu pilihan. Kita dapat

menggunakan switch untuk menginstruksikan komputer untuk

melakukan tugas tertentu sesuai dengan menu yang dipilih oleh

user. Jika Anda ingat pernyataan main() pada program Java,

pernyataan main memiliki parameter String[] args,di mana

args merupakan argumen yang diberikan pada saat program

dijalankan melalui konsol. Biasanya argumen yang diberikan

berupa opsi bagaimana program harus dilaksanakan. Di sini

pernyataan switch juga berguna untuk memilih bagaimana program

akan berjalan.Jika Anda terbiasa atau pernah bergaul dengan

Linux, maka tidak asing untuk menemukan perintah pada Linux

seperti "ls -l" atau "tarxfz blabla". Di sini ls atau tar adalah nama

program dan "-l" atau"xfz blabla" adalah argumen yang diberikan

pada saat program dijalankan.

7.2.3. For

Kita akan membahas bentuk perulangan lain, yaitu perulangan

for.Setiap bentuk perulangan for dapat diubah menjadi bentuk

perulangan

While dengan fungsi yang sama tanpa mengubah alur program.

Tetapi tergantung dari permasalahan yang akan kita pecahkan,

menulis program dengan for akan membuat alur program lebih

mudah dipahami. Misalnya, kita akan menghitung

1+2+3+4+5+...+100. Di sini perulangan while memiliki 3

komponen penting, yaitu inisialisasi, yaitu memberikan nilai awal

suatu variabel, suatu_kondisi_variabel, yaitu pengujian bahwa

perulangan akan terus dilakukan selama kondisi ini bernilai true,

Page 277: Laporan DKP Kelompok 1 SISKOM 2012

277

dan terakhir update_variabel, yaitu instruksi mengubah nilai

kondisi variabel untuk membatasi perulangan sehingga akan

selesai suatu saat, tidak berulang terus menerus. Pada perulangan

for,ketiga komponen ini dirangkai menjadi satu dalam bentuk

for (inisialisasi_variabel; kondisi_variabel; update_variabel)

perintah

atau jika perintah merupakan blok yang terdiri dari banyak

perintah,dapat dituliskan juga dalam bentuk

for (inisialisasi_variabel; kondisi_variabel; update_variabel) {

banyak_perintah

}

Di sini inisialisasi variabel bisa berupa apa saja yang berbentuk

perintah.

7.2.4. While

Pernyataan while telah diperkenalkan pada bagian sebelumnya.

Perulangan while memiliki bentuk

while (suatu_kondisi)

perintah

perintah

bisa juga berupa blok yang berisi kumpulan perintah-perintahdi

antara { dan }. Perintah ini disebut juga dengan inti perulangan.

Inti perulangan akan terus dieksekusi selama suatu_kondisi

bernilai true. suatu_kondisi ini disebut juga penguji

perulangan.

Pernyataan do ... while

Kadang-kadang akan lebih mudah menulis perulangan jika penguji

perulangan dilakukan di akhir badan perulangan. Dalam hal ini

badan perulangan akan dieksekusi terlebih dahulu tanpa

memperdulikan apakah suatu kondisi bernilai true atau false.

Pengujian dilakukan diakhir setelah suatu kondisi didapat dalam

eksekusi perulangan pertama kali. Pernyataan do ... while pada

dasarnya merupakan pernyataan while terbalik, Atau apabila

Page 278: Laporan DKP Kelompok 1 SISKOM 2012

278

perintah berbentuk blok kumpulan perintah-perintah, Perlu diingat

bahwa pernyataan do ... while diakhiri dengan tanda ; di akhir

while.Contoh sederhana adalah program bermain game, di mana

game akan menanyakan apakah user ingin bermain lagi.

Page 279: Laporan DKP Kelompok 1 SISKOM 2012

279

7.3 Analisa dan Pembahasan

7.3.1 Program Output

Kegunaan dari program ini adalah untuk menampilkan tulisan dilayar

melalui inputan yang kita masukkan, apabila kita menuliskan “selamat

datang” di inputan, maka yang tampil di layar juga tulisan “selamat

datang”.

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

package program.output.kelompok1;

/**

*

* @author OKTARIZO

*/

public class ProgramOutputKelompok1 {

/**

* @param args the command line arguments

*/

public static void main(String[] args) {

// TODO code application logic here

System.out.println(“Kami Kelompok 1 Praktikum

DKP");

System.out.println (“selamat datang di

pemrograman JAVA Bagian 1”); //System.out.println

digunakan untuk menampilkan tulisan disertai jeda 1

enter setelahnya

}

}

Gambar 7.1 screenshot sourcecode program output

Page 280: Laporan DKP Kelompok 1 SISKOM 2012

280

Gambar 7.2 screenshot running program output

7.3.2 Input Output

Pada program ini, hasil dari keluaran nantinya adalah sebuah nama

yang di inputkan oleh user, tapi nama itu yang mengisinya adalah user,

akan ada teks untuk menanyakan nama ketika program dijalankan.

package program.input.output.kelompok1;

/**

*

* @author OKTARIZO

*/

import java.io.*; //library yang akan digunakan

public class ProgramInputOutputKelompok1 {

/**

* @param args the command line arguments

*/

public static void main(String[] args) {

// TODO code application logic here

// peirintah untuk menampilkan hasil input

dilayar

System.out.print("Siapa Nama Anda ? ");

//kelas untuk membaca string

BufferedReader br = new BufferedReader(new

InputStreamReader(System.in));

//deklarasi variabel nama

String nama = null;

//try {..} perintah yang ingin dijalankan pada

situasi yang “mungkin” tidak berhasil

//catch {..} perintah yang akan dilakukan

apabila kesalahan di tangkap

try {

Page 281: Laporan DKP Kelompok 1 SISKOM 2012

281

nama = br.readLine(); //membaca inputan nama

}catch (IOException ioe){

System.out.println("Kesalahan IO");

System.exit(1);

}

//menampilkan output dari data yang diinput

System.out.println("Selamat datang "+nama+ "

!");

}

}

Gambar 7.3 screenshot sourcecode input output

Gambar 7.4 screenshot Running input output

7.3.3 If Else

Program ini bekerja untuk membaca nilai yang sudah ada dalam

deklarasi nilai, program akan mengecek nilai tersebut pada semua

kondisi, apakah nilai itu masuk pada kondisi pertama atau yang lain,

setelah itu nilai akan ditampilkan sesuai dengan kondisi yang sesuai.

Page 282: Laporan DKP Kelompok 1 SISKOM 2012

282

package program.pkgif.pkgelse.kelompok1;

/**

*

* @author OKTARIZO

*/

public class ProgramIfElseKelompok1 {

/**

* @param args the command line arguments

*/

public static void main(String[] args) {

// TODO code application logic here

//menampilkan informasi di layar

System.out.println("Program menentukan nilai

anda");

//deklarasi variabel nilai dengan diberi nilai

75

int nilai = 75;

//pengkondisian if

//jika nilai antara 80-100

if (nilai >= 80 && nilai <= 100)

//menampilkan tulisan untuk kondisi pertama

System.out.println("Nilai anda A (Sangat

baik)");

//jika nilai antara 70-79

else if (nilai >= 70 && nilai < 80)

//menampilkan tulisan untuk kondisi kedua

System.out.println("Nilai anda B (Baik)");

//jika nilai antara 60-69

else if (nilai >=60 && nilai < 70)

//menampilkan tulisan untuk kondisi ketiga

System.out.println("Nilai anda C (Cukup

Baik)");

//jika nilai antara 45-59

else if (nilai >=45 && nilai < 60)

//menampilkan tulisan untuk kondisi keempat

Page 283: Laporan DKP Kelompok 1 SISKOM 2012

283

System.out.println("Nilai anda D

(Kurang)");

//jika nilai 1-44

else if (nilai > 0 && nilai < 45)

//menampilkan tulisan untuk kondisi kelima

System.out.println("Nilai anda E (Sangat

Kurang)");

else //jika nilai tidak memenuhi kondisi di

atas

System.out.println("Nilai anda terlalu

rendah, silahkan belajar lagi");

}

}

Gambar 7.5 screenshot sourcecode if else

Gambar 7.6 screenshot running program if else

Page 284: Laporan DKP Kelompok 1 SISKOM 2012

284

7.3.4 Switch Case

pada program ini akan dilakukan pengecekan sebuah bilangan, apakah

bilangan tersebut bilangan ganjil atau bilangan genap. Bilangan yang

akan di cek adalah bilangan yang sudah ada pada deklarasi nilai pada

program. Program tinggal menentukan letak bilangan tersebut, ganjil

atau genapnya.

package program.pkgswitch.pkgcase.kelompok1;

/**

*

* @author OKTARIZO

*/

public class ProgramSwitchCaseKelompok1 {

/**

* @param args the command line arguments

*/

public static void main(String[] args) {

// TODO code application logic here

//deklarasi variabel bilangan dengan diberi

nilai -1 dan deklarasi variabel sisa dengan tipe

integer

int bilangan = -1;

int sisa;

//menampilkan informasi

System.out.println("Program menentukan bilangan

ganjil dan genap");

//melakukan perhitungan dimana sisa adalah

bilangan modulus 2

sisa = bilangan % 2;

//pengkondisian dengan mencocokan nilai pada

sisa

switch (sisa){

//jika sisa bernilai 1 maka merupakan

bilangan ganjil

case 1:

System.out.println("Angka "+bilangan+"

adalah bilangan ganjil");

//jika sisa bernilai 0 maka merupakan

bilangan genap

Page 285: Laporan DKP Kelompok 1 SISKOM 2012

285

case 0:

System.out.println("Angka "+bilangan+"

adalah bilangan genap");

//jika sisa bernilai -1 maka merupakan

bilangan ganjil

case -1:

System.out.println("Angka "+bilangan+"

adalah bilangan ganjil");

}

}

}

Gambar 7.7 screenshot sourcecode switch case

Gambar 7.8 screenshot running switch case

7.3.5 For

Program ini melakukan perulangan pada nilai i yang pertama dan

mengalikan dengan setiap nilai j, misal (ixj) 1x1 , 1x2 , dst sampai

1x12. Kemudian menampilkan hasil perkalian dari bilangan tersebut.

Program kembali melakukan perulangan pada nilai i selanjutnya dan

Page 286: Laporan DKP Kelompok 1 SISKOM 2012

286

mengalikan dengan setiap nilai j. Kemudian menampilkan hasil

perkalian. Program akan terus mengulang hingga i=12

package program.pkgfor.kelompok1;

/**

*

* @author OKTARIZO

*/

public class ProgramForKelompok1 {

/**

* @param args the command line arguments

*/

public static void main(String[] args) {

// TODO code application logic here

//menampilkan informasi

System.out.println("Program menampilkan tabel

perklaian \n");

//perulangan outer loop

for (int i = 1; i <= 12; i++)

{

//perulangan inner loop

for (int j = 1; j <= 12; j++)

{

//menampilkan hasil perkalian dari 1

nilai dari i(outer loop) dengan 12 nilai dari j(inner

loop)

System.out.print(i*j + " ");

}

System.out.println("");

}

}

}

Page 287: Laporan DKP Kelompok 1 SISKOM 2012

287

Gambar 7.9 screenshot sourcecode for

Gambar 7.10 screenshot running for

7.3.6 While

Kegunaan dari rogram ini adalah untuk menghitung rata-rata dari setiap

nilai yang diinputkan. Program akan meminta kita untuk memasukkan

beberapa bilangan, Perulangan terjadi terus menerus hingga pada suatu

kondisi tertentu, pada program ini yaitu dengan memasukkan angka nol

(0), maka proses penginputan akan berakhir. Setelah itu akan

ditampilkan berapa jumlah bilangan yang kita masukkan dan rata-rata

dari bilangan tersebut.

package program.pkgwhile.kelompok1;

import java.io.*;

/**

*

* @author OKTARIZO

*/

public class ProgramWhileKelompok1 {

/**

* @param args the command line arguments

*/

public static void main(String[] args) {

// TODO code application logic here

Page 288: Laporan DKP Kelompok 1 SISKOM 2012

288

//deklarasi variabel

double jumlah = 0;

double bilangan = 0;

int n = 0;

//membaca string

BufferedReader br = new BufferedReader(new

InputStreamReader(System.in));

//deklarasi variabel string

String strbilangan = null;

//menampilkan informasi

System.out.print("Masukkan bilangan pertama :

");

//membaca inputan yang disimpan dalam variabel

strbilangan untuk sementara

try {

strbilangan = br.readLine();

} catch (IOException ioe) {

System.out.println("Kesalahan IO, program

berhenti");

System.exit(1);

}

//mengubah input menjadi double agar bisa

diproses lebih lanjut

bilangan = Double.parseDouble(strbilangan);

while (bilangan != 0) {

jumlah += bilangan; //sama dengan : jumlah

= jumlah + bilangan

n++; //sama dengan : n = n+1

//menampilkan informasi untuk meminta inputan

System.out.print("Masukkan bilangan berikutnya

(atau 0 untuk mengakhiri) : ");

//membaca inputan yang disimpan dalam variabel

strbilangan untuk sementara

try {

strbilangan = br.readLine();

Page 289: Laporan DKP Kelompok 1 SISKOM 2012

289

} catch (IOException ioe) {

System.out.println("Kesalahan IO, program

berhenti");

System.exit(1);

}

//mengubah input menjadi double agar bisa

diproses lebih lanjut

bilangan = Double.parseDouble(strbilangan);

}

//hitung rata-rata

double ratarata = jumlah /n;

//cetak hasilnya ke layar

//jika n adalah 0 maka menjalankan statement1

if (n == 0)

{

//statement1

System.out.println("Data kosong, rata-rata

tidak bisa dihitung");

}

//jika n bukan 0 atau kondisi false maka

menjalankan statement2

else

{

//statement2

System.out.println("Anda memasukkan " + n + "

data");

System.out.println("Rata-rata bilangan yang

dimasukkan adalah " + ratarata);

}

}

}

Page 290: Laporan DKP Kelompok 1 SISKOM 2012

290

Gambar 7.11 screenshot sourcecode while

Gambar 7.12 screenshot running program while

Page 291: Laporan DKP Kelompok 1 SISKOM 2012

291

7.4 Latihan Praktikum

1. Program Untuk menampilkan nama melalui Inputan

Pada program ini, menampilkan sesuatu dilayar apabila kita memasukan

sebuah inputan, pada program ini perintahnya yaitu disuruh untuk

memasukkan nama, ketika nama kita masukkan, maka nanti akan ada

tampilan di layar, yaitu nama yang kita masukkan tadi.

import java.io.*;//library untuk kinpit output

public class Main {

/**

* @param args the command line arguments

*/

public static void main(String[] args) {

// TODO code application logic here

//menampilkan informasi

System.out.print("Masukkan nama Anda : ");

//membaca string

BufferedReader br = new BufferedReader

(new InputStreamReader(System.in));

//deklarasi variabel

String nama = null;

try {

//meminta inputan

nama = br.readLine();

} catch(IOException ioe) {

//menampilkan data yang diinput

System.out.println("Kesalahan IO pada saat menanyakan

nama Anda");

//perintah untuk mengakrihi program

System.exit(1);

}

System.out.println("Nama anda adalah " + nama);

}

}

Page 292: Laporan DKP Kelompok 1 SISKOM 2012

292

Gambar 7.13 screenshot sourcecode program latihan 1

Gambar 7.14 screenshot runing program latihan 1

2. Program Untuk menampilkan nilai ujian dengan inputan Angka

a. If Then Else

Pada program ini kita akan diminta untuk memasukkan inputan berupa

nilai, setelah kita memasukkan inputan, program akan mengecek kondisi

dari nilai yang kita masukkan tadi, dimana posisi nilai yang kita

masukkan, setelah pengecekan selesai, akan ada output “nilai anda.....”

yang dilanjutkan dengan variabel nilai yang dimasukkan. Sebagai

contoh apabila kita memasukkan nilai 90, maka akan muncul tampilan

“nilai anda adalah A”.

package program.latihan2.pkgif.then.pkgelse;

import java.io.*;

/**

*

* @author OKTARIZO

*/

public class ProgramLatihan2IfThenElse {

/**

* @param args the command line arguments

*/

public static void main(String[] args) {

// TODO code application logic here

//deklarasi variabel

Page 293: Laporan DKP Kelompok 1 SISKOM 2012

293

int nilai = 0;

//menampilkan informasi

System.out.println("Program nilai ujian

\nMasukkan nilai ujian anda = ");

//membaca string

BufferedReader br = new BufferedReader(new

InputStreamReader(System.in));

String strnilai = null;

try {

//meminta input

strnilai = br.readLine();

}catch (IOException ioe){

System.out.println("Kesalahan IO, Program

berhenti");

System.exit(1);

}

//konversi string ke integer

nilai = Integer.parseInt(strnilai);

//pengkondisian

//kondisi1 jika nilai di antara 80-100

if (nilai >= 80 && nilai <= 100){

//menampilkan informasi1

System.out.println("Nilai anda A");

}

//kondisi2 jika nilai antara 70-79

else if (nilai >= 70 && nilai < 80){

//menampilkan informasi2

System.out.println("Nilai anda B");

}

//kondisi3 jika nilai antara 50-69

else if (nilai >= 50 && nilai < 70){

//menampilkan informasi3

System.out.println("Nilai anda C");

Page 294: Laporan DKP Kelompok 1 SISKOM 2012

294

}

//kondisi4 jika nilai antara 35-49

else if (nilai >= 35 && nilai < 50){

//menampilkan informasi4

System.out.println("Nilai anda D");

}

//kondisi5 jika nilai kurang dari 35

else if (nilai < 35){

//menampilkan informasi5

System.out.println("Nilai anda E");

}

}

}

Gambar 7.15 screenshot sourcecode program latihan 2 if then else

Gambar 7.16 screenshot running program latihan 2 if then else

Page 295: Laporan DKP Kelompok 1 SISKOM 2012

295

b. Switch Case

Sama seperti program sebelumnya, pada program ini kita juga akan

diminta untuk meng input sebuah nilai, dan akan dilakukan pengecekan

oleh program. Setelah itu akan ditampilkan hasil dari pengecekan

tersebut berupa variabel A,B,C,D

package program.latihan.pkg2.pkgswitch.pkgcase.kel1;

import java.io.*;

/**

*

* @author OKTARIZO

*/

public class ProgramLatihan2SwitchCaseKel1 {

/**

* @param args the command line arguments

*/

public static void main(String[] args) {

// TODO code application logic here

//deklarasi variabel

int nilai = 0;

//menampilkan informasi

System.out.println("Program nilai ujian

\nMasukkan nilai ujian anda = ");

//membaca string

BufferedReader br = new BufferedReader(new

InputStreamReader(System.in));

String strnilai = null;

try {

//meminta input

strnilai = br.readLine();

}catch (IOException ioe){

System.out.println("Kesalahan IO, Program

berhenti");

System.exit(1);

}

//konversi string ke integer

nilai = Integer.parseInt(strnilai);

//pengkondisian if

if (nilai >=80 && nilai <=100)

Page 296: Laporan DKP Kelompok 1 SISKOM 2012

296

{

nilai=1;

}

else if (nilai >=70 && nilai < 80)

{

nilai=2;

}

else if (nilai >=50 && nilai < 70)

{

nilai=3;

}

else if (nilai >=35 && nilai < 50)

{

nilai=4;

}

else if (nilai < 35)

{

nilai=5;

}

//pengkondisian switch

switch (nilai)

{

case 1:

System.out.println("Nilai anda A");

break;

case 2:

System.out.println("Nilai anda B");

break;

case 3:

System.out.println("Nilai anda C");

break;

Page 297: Laporan DKP Kelompok 1 SISKOM 2012

297

case 4:

System.out.println("Nilai anda D");

break;

case 5:

System.out.println("Nilai anda E");

break;

}

}

}

Gambar 7.17 screenshot sourcecode program latihan 2 switch case

Gambar 7.18 screenshot running program latihan 2 switch case

Page 298: Laporan DKP Kelompok 1 SISKOM 2012

298

3. Program Pengulangan

a. For

Program ini berungsi untuk menampilkan jumlah angka sesuai dengan

angka yang kita masukkan dan nilai 0 (nol) sebagai awalan nya. Sebagai

contoh, apabila kita memasukkan angaka 19, maka akan tampil urutan

angk dari 0-19 secara berurutan.

import java.util.Scanner; //deklarasi input output

public class Main {

/**

* @param args the command line arguments

*/

public static void main(String[] args) {

// TODO code application logic here

//perintah untuk menampilkan inputan dilayar

System.out.print("Masukkan sebuah angka : ");

Membaca string

Scanner scan = new Scanner(System.in);

int a = scan.nextInt();

int i;

//perintah perulangan

for(i=0;i<=a;i++)

{

//menampilkan hasil dilayar

System.out.print(" "+i+"");

}

System.out.println("");

}

}

Gambar 7.19 screenshot sourcecode program latihan 3 for

Page 299: Laporan DKP Kelompok 1 SISKOM 2012

299

Gambar 7.20 screenshot running program latihan 3 for

b. While

Sama seperti program sebelumnya, program ini juga berfungsi untuk

mengurutkan bilangan yang kita input, dan dimulai dari angka 0 (nol)

sebagai awalan.

import java.util.Scanner; //library input output

public class Main {

/**

* @param args the command line arguments

*/

public static void main(String[] args) {

// TODO code application logic here

//menampilkan input dilayar

System.out.print("Masukkan sebuah angka : ");

//membaca string

Scanner scan = new Scanner(System.in);

int a = scan.nextInt();

int i=0;

//perintah untuk perulangan

while(i<=a)

{

//perintah untuk menampilkan input ke layar

System.out.print(" "+i+"");

i++;

}

System.out.println("");

}

}

Page 300: Laporan DKP Kelompok 1 SISKOM 2012

300

Gambar 7.21 screenshot sourcecode program latihan 3 while

Gambar 7.22 screenshot running program latihan 3 while

Page 301: Laporan DKP Kelompok 1 SISKOM 2012

301

7.5 Kesimpulan

1. Dalam Java terdapat beberapa operator yaitu operator hitung, operator

relasi, operator penurunan dan penaikan serta operator ukuran.

2. Operator Relasi pada pemrograman Java dapat dilakukan dengan

menggunakan AND dan OR.

3. Untuk mendapatkan input string dari keyboard dapat menggunakan

fungsi BufferedReader.

4. Penyeleksian kondisi pada bahasa pemrograman Java dilakukan

dengan menggunakan statemen If dan Switch.

5. Statemen if-else merupakan perluasan dari statemen if. Dalam

statemen ini terdapat dua atau lebih kondisi dimana bila kondisi

pertama tidak terpenuhi, maka proses akan lari kepadav kondisi yang

kedua atau dan seterusnya.

Page 302: Laporan DKP Kelompok 1 SISKOM 2012

302

BAB VIII

PEMROGRAMAN JAVA BAGIAN 2

8.1. Tujuan

1. Mengetahui penggunaan Array dalam pemrograman Java serta

penggunaannya.

2. Mengetahui dan mengimplementasikan perulangan pada Array.

3. Mengetahui konsep Queue pada pemrograman Java.

4. Mengetahui konsep Stack pada pemrograman Java.

8.2. Dasar Teori

8.2.1. Array

Array adalah sekumpulan variabel yang mempunyai tipe data yang

sama. Array mempunyai anggota. Anggota himpunan array sebagai

elemen yang mempunyai nomor indeks lokasi. Nomor indeks lokasi

adalah tempat atau posisi data berada. Java mempunyai nomor

indeks dari 0 (nol).

Sebuah array akan menyimpan beberapa item data yang

mempunyai tipe data sama didalam memori yang berdekatan, yang

kemudian di bagi menjadi beberapa slot. Variabel array adalah

sebuah lokasi tertentu yang memiliki satu nama sebagai identifier,

akan tetapi ia dapat menyimpan lebih dari sebuah nilai (value).

Pendeklarasian array dalam Java :

a. Pendekatan array satu dimensi

b. Pendekatan array dua dimensi

berbagai macam variabel dengan menggunakan tipe data

primitif. Dalam pendeklarasian variabel, kita sering menggunakan

sebuah tipe data beserta nama variabel atau identifier yang unik.

Apabila kita ingin menggunakan variabel tersebut, kita akan

Page 303: Laporan DKP Kelompok 1 SISKOM 2012

303

memanggil dengan nama identifier-nya. Sebagai contoh, kita

memiliki tiga variabel dengan tipe data int yang memiliki identifier

berbeda untuk tiap variabel.

int number1;

int number2;

int number3;

number1 = 1;

number2 = 2;

number3 = 3;

Seperti yang dapat Anda perhatikan pada contoh di

atas, kode tersebut akan sia-sia karena harus menginisialisasi dan

menggunakan setiap variabel padahal sebenarnya variabel-

variabel tersebut digunakan untuk tujuan yang sama. Pada

bahasa pemrograman Java maupun di bahasa pemrograman yang

lain, terdapat sebuah kemampuan untuk menggunakan satu

variabel yang dapat menyimpan beberapa data dan

memanipulasinya dengan lebih efektif. Tipe variabel inilah yang

disebut sebagai array.

Gambar 8.1 Contoh dari Integer Array

Sebuah array akan menyimpan beberapa item data

yang memiliki tipe data sama didalam sebuah blok memori

yang berdekatan yang kemudian dibagi menjadi beberapa ruang.

Array adalah sebuah variabel/sebuah lokasi tertentu yang

memiliki satu nama sebagai identifier, namun identifier ini dapat

menyimpan lebih dari sebuah nilai.

1. Pendeklarasian larik satu dimensi

Merupakan sebuah variabel yang menyimpan sekumpulan data

yang memiliki tipe sama dan elemen yang akan diakses hanya

melalui 1 indeks atau subskrip.

Page 304: Laporan DKP Kelompok 1 SISKOM 2012

304

Bentuk umum pendeklarasian:

nama_array[jumlah_eleman];

2. Pendeklarasian larik dua dimensi

Merupakan sebuah variabel yang menyimpan sekumpulan data

yang memiliki tipe sama dan elemen yang akan diakses melalui 2

indeks atau subskrip yaitu indeks baris dan indeks kolom.

Bentuk umum pendeklarasian:

nama_array[jumlah_eleman_baris][jumah_eleme_kolom];

8.2.2. Queue

Queue atau Antrian adalah struktur data yang terdiri dari

item dalam urutan tertentu. Antrian memiliki dua ujung yaitu ujung

depan dan belakang. Item selalu dimasukkan dari belakang antrian

dan selalu dikeluarkan dari depan antrian. Operasi memasukkan

dan mengeluarkan item dari dalam antrian sering disebut dengan

Enqueue dan Dequeue.

Suatu item yang ditambahkan di belakang antrian tidak bisa

dihapus sebelum item di depannya dihapus. Analoginya seperti

antrian ketika akan menabung di bank, nasabah akan dilayani

dalam urutan ketika mereka datang.

Gambar 8.2 Source code program 1

Page 305: Laporan DKP Kelompok 1 SISKOM 2012

305

Pada pemrograman Java, agar dapat menggunakan Queue

perlu digunakan kelas Queue dan LinkedList. Untuk membuat

objek Queue pada java menggunakan syntax sebagai berikut :

Queue objekqueue = new LinkedList();

Untuk memasukkan nilai pada objek yang telah dibuat

tersebut (objekqueue) dapat digunakan method offer().

Objekqueue.offer(objek_yang_hendak_dimasukkan);

Untuk mendapatkan panjang antrian dapat digunakan

method size().

Objekqueue.size();

Untuk mengambil nilai (tidak menghapus) dari objek queue

dapat digunakan method peek(). Method ini akan menampilkan

nilai dari objek queue yang pertama kali dimasukkan. Seperti

antrian pada kehidupan nyata, jika nilai yang pertama dimasukkan

tidak dihapus, method peek() akan tetap menampilkan objek yang

pertama kali dimasukkan dengan method offer().

Objekqueue.peek();

Sedangkan untuk mengambil dan menghapus antrian

terdepan pada objek queue digunakan method poll(). Method ini

akan mengembalikan nilai null jika pada antrian tidak ada nilainya.

Dengan method offer, dimasukkan 3 buah nilai berturut-

turut yaitu Satu, Dua dan Tiga pada objek „antrian‟. Method size()

akan menampilkan nilai ukuran queue. Kemudian untuk

menampilkan isi seluruhnya dari objek Antrian dapat

menggunakan System.out.println() dengan menyebutkan objeknya.

Kemudian menggunakan method poll() akan mendapatkan nilai

sekaligus menghapusnya pada antrian terdepan. Sehingga jika

ditampilkan sekali lagi isi keseluruhan dari objek Antrian, isinya

akan berkurang yaitu „Satu‟ yang merupakan nilai yang pertama

kali dimasukkan menggunakan method offer().

Page 306: Laporan DKP Kelompok 1 SISKOM 2012

306

8.2.3. Stack

Stack atau disebut juga Tumpukan terdiri dari kumpulan

item yang disusun sedemikian rupa sehingga satu item ditumpuk di

atas item lainnya, mirip seperti tumpukan boks. Hanya item paling

atas yang bisa diakses pada suatu saat.

Item tersebut bisa diambil dari tumpukan dengan method

yang disebut pop(). Item paling bawah hanya bisa diambil jika

semua item di atasnya telah diambil dari tumpukan. Dengan kata

lain, kita hanya dapat mengakses data pada tumpukan teratas.

Untuk menambahkan item pada tumpukan dilakukan dengan

method push().

Page 307: Laporan DKP Kelompok 1 SISKOM 2012

307

8.3. Analisa dan Hasil Percobaan

8.3.1. Latihan 1

package kelompok1;

public class Kelompok1_Latihan1 {

public static void main(String[] args) {

// TODO code application logic here

// Pendeklarasian jumlah array sama dengan 4

dalam tipe String

String[] kelompok = new String[4];

// Pendeklarasian data array

kelompok[0] = "Kelompok 1";

kelompok[1] = "Anggi Anugraha";

kelompok[2] = "Bagus Lingga Tudanto";

kelompok[3] = "Elad Oktarizo";

// Pernyataan perulangan untuk menampilkan array

dari jumlah 0 sampai kurang dari 4

for(int i = 0; i < 4; i++) {

System.out.println(kelompok[i]);

}

}

}

Gambar 8.1 ScreenShootSource code program 1

Gambar 8.2 Screenshoot Hasil program 1

Page 308: Laporan DKP Kelompok 1 SISKOM 2012

308

Program ini merupakan program sederhana untuk menampilkan data

dari array yang telah ditentukan sebelumnya. Data pada array adalah

“Kelompok 1”, “Anggi Anugraha” , “Bagus Lingga Tudanto” dan

“Elad Oktarizo”.

8.3.2. Latihan 2

package kelompok1;

public class Kelompok1_Latihan2 {

public static void main(String[] args) {

// TODO code application logic here

// Pendeklarasian jumlah array sama dengan 10

dalam tipe String

String[] x = new String[10];

// Pernyataan perulangan array dari jumlah 0

sampai kurang dari 10

for(int i = 0; i < 10; i++) {

x[i] = "Kelompok 1";

}

// Pernyataan perulangan untuk menampilkan array

for(int i = 0; i < 10; i++) {

System.out.println(x[i]);

}

}

}

Gambar 8.3 Screenshoot Source code program 2

Page 309: Laporan DKP Kelompok 1 SISKOM 2012

309

Gambar 8.4 Screenshoot Hasil program 2

Program ini merupakan program perulangan array yang akan

menampilkan data array yang telah dideklarasikan sebelumnya

sebanyak yang telah ditentukan. Pada program ini ditentukan array

akan melakukan pengulangan hingga berjumlah 10 kali.

8.3.3. Latihan 3

package kelompok1;

import java.util.*;

import java.io.*;

public class Kelompok18_Java2_Latihan3 {

public static void main(String[] args) {

// TODO code application logic here

// Pendeklarasian jumlah array sama dengan 4

dalam tipe String

String[] kelompok = new String[4];

for(int i = 0; i < 4; i++) {

System.out.println("Masukkan data ke-" + i +

" : ");

// Pernyataan input output menggunakan

BufferedReader

BufferedReader reader = new

BufferedReader(new

InputStreamReader(System.in));

// Proses pembacaan input dengan metode

BufferedReader

try {

String rd = null;

rd = reader.readLine();

Page 310: Laporan DKP Kelompok 1 SISKOM 2012

310

kelompok[i] = rd;

}

catch(IOException ex) {

System.out.println(ex);

}

}

// Pernyataan perulangan untuk menampilkan array

dari jumlah 0 sampai kurang dari 4

for(int i = 0; i < 4; i++) {

System.out.println(kelompok[i]);

}

}

}

Gambar 8.5 Screenshoot Source code program 3

Gambar 8.6 Screenshoot Hasil program 3

Program ini merupakan program untuk menampilkan data dari array

yang diinput oleh user. Program ini digunakan untuk membaca input

dan menampilkan input yang berisi nama kelompok dan nama

anggota.

Page 311: Laporan DKP Kelompok 1 SISKOM 2012

311

8.3.4. Latihan 4

package kelompok1;

import java.util.*;

import java.io.*;

public class Kelompok1_Latihan4 {

public static void main(String[] args) {

// TODO code application logic here

// Pendeklarasian jumlah array sama dengan 12

dalam tipe String

String[] bulan = new String[12];

for(int i = 0; i < 12; i++) {

System.out.print("Masukkan bulan ke-" +

(i+1) + " : ");

// Pernyataan input output menggunakan

BufferedReader

BufferedReader reader = new

BufferedReader(new

InputStreamReader(System.in));

// Proses pembacaan input dengan metode

BufferedReader

try {

String rd = null;

rd = reader.readLine();

bulan[i] = rd;

}

catch(IOException ex) {

System.out.println(ex);

}

}

// Pernyataan perulangan untuk menampilkan array

dari jumlah 0 sampai kurang dari 3

for(int i = 0; i < 12; i++) {

System.out.println("Bulan ke-" + (i+1) + "

adalah bulan " + bulan[i]);

}

}

}

Page 312: Laporan DKP Kelompok 1 SISKOM 2012

312

Gambar 8.7 Screenshoot Source code program 4

Gambar 8.8 Screenshoot Hasil program 4

Program ini merupakan program untuk menampilkan data dari array

yang diinput oleh user. Program ini digunakan untuk membaca input

dan menampilkan input yang berisi nama bulan dalam 1 tahun.

Page 313: Laporan DKP Kelompok 1 SISKOM 2012

313

8.3.5. Latihan 5

package kelompok1;

import java.util.*;

import java.io.*;

public class Kelompok1_Latihan5 {

public static void main(String[] args) {

// TODO code application logic here

// Pendeklarasian jumlah array sama dengan 5

dalam tipe Integer

int[] angka = new int[5];

for(int i = 0; i < 5; i++) {

System.out.print("Masukkan angka ke-" +

(i+1) + " : ");

// Pernyataan input output menggunakan

BufferedReader

BufferedReader reader = new

BufferedReader(new

InputStreamReader(System.in));

// Proses pembacaan input dengan metode

BufferedReader

try {

String x = null;

x = reader.readLine();

angka[i] = Integer.parseInt(x);

}

catch(IOException ex) {

System.out.println(ex);

}

}

// Proses untuk mengambil dan menampilkan data

terbesar yang diinput

int x = angka [0];

for(int i = 1; i < 5; i++) {

// Apabila x lebih kecil dari nilai angka,

maka nilai angka akan disimpan ke x dan x

akan menampilkan nilai yang terbesar

if(x < angka[i]) {

x = angka[i];

Page 314: Laporan DKP Kelompok 1 SISKOM 2012

314

}

}

System.out.println("Angka terbesar adalah : " +

x);

}

}

Gambar 8.9 Screenshoot Source code program 5

Gambar 8.10 Screenshoot Hasil program 5

Program ini berfungsi untuk menginput 5 buah data bilangan dalam

array dan kemudian program ini akan menampilkan bilangan

terbesar dari data yang telah diinput.

8.3.6. Latihan 6

public class Kelompok1 {

public static void main(String[] args) {

// Pendeklarasian array dengan tipe data string

sekaligus isi dari array

Page 315: Laporan DKP Kelompok 1 SISKOM 2012

315

String[][]A={{"21120111110001","Anggi

Anugraha"},{"21120111110002","Elad Oktarizo"}};

// Looping untuk membentuk matriks 2 dimensi

for(intbaris=0;baris<A[0].length;baris++)

for(intkolom=0;kolom<A[0].length;kolom++)

{

//Menampilkan isi array berdasarkan indeksnya

System.out.println(A[0][0]+"\t\t\t"+A[1][0]);

System.out.println(A[0][1]+"\t\t\t"+A[1][1]);

}

}

}

Gambar 8.11 Screenshoot Source code program 6

Gambar 8.12 Screenshoot Hasil program 6

Program ini merupakan program untuk menampilkan NIM dan nama

anggota kelompok yang telah dideklarasikan sebelumnya dalam

bentuk matriks 2 dimensi.

8.3.7. Latihan 7

package kelompok1;

import java.io.*;

public class Kelompok1_Latihan7 {

public static void main(String[] args) throws

IOException {

//Membaca input dengan BufferReader

Page 316: Laporan DKP Kelompok 1 SISKOM 2012

316

BufferedReader in= new BufferedReader (new

InputStreamReader (System.in));

String [][] data = new String [1][4];

// Looping untuk memasukkan array

for (int i = 0; i < data.length; i++){

System.out.print("Nama 1 : ");

// Mengambil input dan membaca input

data[i][0]=in.readLine();

System.out.print("NIM 1 : ");

data[i][1]=in.readLine();

System.out.print("Nama 2 : ");

data[i][2]=in.readLine();

System.out.print("NIM 2 : ");

data[i][3]=in.readLine();

System.out.println();

}

// Menampilkan array

System.out.println();

System.out.println("Tampilan NIM dan Nama");

//Menampilkan array dengan looping

for (int i=0; i<data.length; i++){

// Menampilkan array dengan indeks

System.out.println(data[i][1]+"\t\t"+data

[i][3]);

// Menampilkan array dengan indeks

System.out.println(data[i][0]+"\t"+data[i

][2]);

System.out.println();

}

}

}

Page 317: Laporan DKP Kelompok 1 SISKOM 2012

317

Gambar 8.13 Screenshoot Source code program 7

Gambar 8.14 Screenshoot Hasil program 7

Program ini merupakan program untuk menampilkan NIM dan nama

anggota kelompok yang diinputoleh user dalam bentuk matriks 2

dimensi.

8.3.8. Latihan 8

package kelompok1;

import java.io.*;

import java.util.*;

public class Kelompok1_Latihan8 {

public static void main(String[] args) {

// Deklarasi variabel x dengan tipe data integer

Integer x;

// Membaca input dengan BufferReader

Page 318: Laporan DKP Kelompok 1 SISKOM 2012

318

BufferedReader in = new BufferedReader(new

InputStreamReader(System .in));

// Pendeklarasian fungsi queue

Queue nama = new LinkedList();

// Meminta inputan

System.out.print("Masukkan jumlah data : ");

try {

// Looping jumlah anggota

x = Integer.parseInt(in.readLine());

System.out.println("Nama Anggota : ");

for (int i = 0; i < x; i++)

{

System.out.print((i+1) + ". ");

nama.offer(in.readLine());

}

}

catch (IOException ex) {

System.out.println(ex);

}

// Menampilkan data input berdasarkan input

queue

x = nama.size();

System.out.println("\nData yang Anda masukkan" +

"\nJumlah Data : " + x + "\nNama Anggota :");

for (int i = 0; i < x; i++)

{

System.out.println((i+1) + ". " +

nama.poll());

}

}

}

Page 319: Laporan DKP Kelompok 1 SISKOM 2012

319

Gambar 8.15 Screenshoot Source code program 8

Gambar 8.16 Screenshoot Hasil program 8

Program ini merupakan program untuk menginput dan menampilkan

data array yang telah diinput oleh user sebelumnya. Pada contoh

program diminta untuk memasukkan dua buah data pada array.

8.3.9. Latihan 9

package kelompok1;

import java.io.*;

import java.util.*;

public class Kelompok1_Latihan9 {

public static void main(String[] args) {

Page 320: Laporan DKP Kelompok 1 SISKOM 2012

320

// deklarasi stack

Stack kotor = new Stack();

Stack bersih = new Stack();

for (int i = 1; i <= 5; i++)/*Looping stack*/

{

// Proses memasukkan data pada stack

kotor.push("piring " + i);

}

// Menampilkan jumlah piring sebelum dicuci

System.out.println("SEBELUM DICUCI" + "\nJumlah

piring kotor : " + kotor.size()

+ "\nJumlah piring bersih : " +

bersih.size()

+ "\nTumpukan piring kotor :");

for (int i = 1; i <= 5; i++)

{

// Proses mengeluarkan data pada stack

System.out.println(kotor.peek());

bersih.push(kotor.pop());

}

// Menampilkan jumlah piring setelah dicuci dan

diambil

System.out.println("\nSETELAH DICUCI" +

"\nJumlah piring kotor : " + kotor.size()

+ "\nJumlah piring bersih : " + bersih.size

+ "\nTumpukan piring bersih :");

for (int i = 4; i >= 0; i--)

{

System.out.println(bersih.elementAt(i));

}

}

}

Page 321: Laporan DKP Kelompok 1 SISKOM 2012

321

Gambar 8.17 Screenshoot Source code program 9

Gambar 8.18 Screenshoot Hasil program 9

Program ini merupakan program sederhana untuk menjelaskan

fungsi pemakaian dari stack. Dimana pada program menampilkan

urutan masukan dari akhir ke awal (5 sampai 1) dan mengeluarkan

data dari awal ke akhir (1 ke 5) berdasarkan prinsip LIFO.

Page 322: Laporan DKP Kelompok 1 SISKOM 2012

322

8.4. Tugas Praktikum

8.4.1. Studi Kasus

package studi.kasus.kelompok1;

import java.util.*;

/**

*

* @author OKTARIZO

*/

public class StudiKasusKelompok1 {

/**

* @param args the command line arguments

*/

public static void main(String[] args) {

// TODO code application logic here

Stack s = new Stack(); //deklarasi variabel stack

Integer[] set = new Integer[100]; /*deklarasi

variabel array*/

System.out.println("Nilai akhir array :");

for(int j=0;j<100;j++) //perulangan

{int g = 0;set[j] = j+1; /*deklarasi variabel integer

dan input nilai untuk variabel array*/

for(int a=1;a<=100;a++)//perulangan tingkat dua

{

if(set[j] % a==0) /*metode modulasi untuk

mengecek nilai variabel yang prima*/

{g++;/*penghitung jumlah modulasi yang hasilnya

0*/}

}

if(g==2) /*pengkondisian jika nilai hasil modulasi 0

ada 2 maka nilai adalah bilangan prima*/

{

s.push(set[j]); set[j] = 0; /*input nilai variabel

stack dari nilai pengkondisian variabel array*/

}

Page 323: Laporan DKP Kelompok 1 SISKOM 2012

323

System.out.print(set[j]+" ");

}

//pencetakan nilai dalam variabel stack dan array

System.out.println("\nNilai dalam stack :");

System.out.println(s);

}

}

Gambar 8.19 Screenshoot Source code program studi kasus

Gambar 8.20 Screenshoot Hasil program studi kasus

Program ini merupakan program untuk menampilkan bilangan

komposit dan bilangan prima secara terpisah.

Page 324: Laporan DKP Kelompok 1 SISKOM 2012

324

8.5. Kesimpulan

1. Java merupakan bahasa pemrograman berorientasi objek, mudah

dipelajari, terutamauntuk programmer yang sudah menguasai C atau

C++.

2. Proses memasukkan input pada Java dapat dilakukan dengan beberapa

cara. Cara yang paling biasa digunakan adalah dengan metode input

output atau metode scanner. Untuk dapat menggunakan kedua metode

itu, kita harus memanggil library yang sesuai dengan metode yang akan

digunakan.

3. Array adalah sebuah struktur data yang terdiri atas banyak variabel

dengan tipe data yang sama, dimana masing-masing elemnen variabel

mempunyai nilai indeks.

4. Array dengan perulangan menggunakan fungsi for. Perulangan adalah

teknik pemrograman di mana suatu proses akan diulang terus-menerus

sampai kondisi yang diinginkan.

5. Queue adalah salah satu bentuk struktur data yang juga

merepresentasikan linked list yang prosesnya disebut FIFO (First In

First Out).

6. Stack adalah salah satu bentuk struktur data yang juga

merepresentasikan tumpukan data yang prosesnya disebut LIFO (Last

In First Out).

Page 325: Laporan DKP Kelompok 1 SISKOM 2012

325

BAB IX

DASAR PEMROGRAMAN PHP

9.1. Tujuan

1. Praktikan mampu memahami dasar pemrograman PHP.

2. Praktikan mampu memahami cara kerja bahasa pemrograman PHP.

3. Praktikan mampu mengimplementasikan pemrograman PHP

dalam

pembuatan website.

9.2. Dasar Teori

8.2.4. Pengenalan PHP

PHP atau PHP Hypertext Preprocessor adalah sebuah bahasa

pemrograman web berbasis server (server side) yang mampu

menerjemahkan kode php dari kode web dengan ekstensi .php,

sehingga menghasilkan tampilan website yang dinamis di sisi

client (browser).

Dengan PHP, kita dapat menjadikan halaman HTML menjadi

lebih powerful dan bisa dipakai sebagai aplikasi lengkap. PHP

awalnya dikembangkan oleh seorang programmer bernama

Rasmus Lerdorf pada tahun 1995, namun semenjak itu

selalum dikembangkan oleh kelompok independen yang

disebut Group PHP dan kelompok ini juga mendefinisikan

standar de facto untuk PHP karena tidak ada spesifikasi

formal. Saat ini, perkembangannya dipimpin oleh Andi

Gutmans dan Zeev Suraski.PHP bersifat opensource artinya

merupakan aplikasi perangkat lunak bebas yang dirilis di

bawah lisensi PHP.Oleh karena itu, bahasa pemrograman ini

banyak dipakai oleh banyak orang. Setiap kode PHP akan di

eksekusi oleh runtime PHP, hasilnya adalah kode PHP yang

dinamis tergantung script PHP yang dituliskan. PHP dapat

digunakan di banyak server web, sistem operasi dan platform.

Page 326: Laporan DKP Kelompok 1 SISKOM 2012

326

Selain itu, digunakan juga di sistem manajemen database

relasional (RDBMS). Semuanya diperoleh secara gratis, dan Grup

PHP menyediakan kode sumber lengkap bagi pengguna untuk

membangun, menyesuaikan dan mengutak-atik sesuai fungsi yag

mereka inginkan.

8.2.5. Instalasi PHP

Seperti yang dijelaskan di atas, bahwa bahasa pemrograman

PHP berjalan pada sisi server (server-side) sehingga

membutuhkan sebuah penerjemah (parser) PHP di

server.Penerjemah tersebut di antaranya adalah Apache dan IIS.

Sedangkan editor yang digunakan untuk menuliskan kode PHP

dapat berupa editor apa saja seperti Dreamweaver, Bluefish,

Eclipse, Emacs, Geany, jEdit, Netbeans IDE, Vim, Notepad++,

dan yang paling sederhana adalah notepad bawaan

windows.Karena di jalankan pada sebuah server, tentu saja

kita membutuhkan sebuah server dan pastinya tidak

memungkinkan membeli server web yang besar.Tetapi tidak

usah bingung karena kita bisa menjadikan komputer pribadi

menjadi server local dengan bantuan aplikasi seperti Appserve,

LAMP dan XAMPP.Aplikasi tersebut sudah all in one, artinya

yang dibutuhkan untuk menjalankan kode PHP sudah ada

semuanya pada satu aplikasi. Di sini kita akan menggunakan

Appserv dan editornya menggunakan Notepad++.

Cara instalasi Appserv adalah sebagai berikut :

1. Klik dua kali aplikasi appserv-win32-2.5.10.exe

2. Kemudian klik next

Page 327: Laporan DKP Kelompok 1 SISKOM 2012

327

Gambar 9.1 Screenshot Setup Appserv

3. Klik next terus hingga nanti diminta untuk mengisikan

password

database MySQL. Hal ini dikarenakan kode PHP dapat berinteraksi

dengan database sehingga biasanya dalam sebuah aplikasi

parser PHP sudah disertakan aplikasi database.

8.2.6. Penulisan Kode PHP

Tidak seperti halaman HTML biasa, kode PHP tidak akan

diberikan oleh server secara langsung ketika ada permintaan dari

client (browser), namun melalui pemrosesan dari sisi server,

makanya PHP disebut skrip server-side.Dengan adanya kode

PHP, sebuah halaman web bisa melakukan banyak hal dinamis,

seperti mengakses database, membuat gambar, membaca dan

menulisi file, dan sebagainya. Hasil pengolahan akhir kode PHP

akan dikembalikan lagi dalam bentuk kode HTML. Penulisan kode

PHP haruslah ditulis dalam sebuah tag PHP yaitu :

Tag Standar : Tag Pembuka ( <?php ) , Tag Penutup ( ?> )

Tag Pendek : Tag Pembuka ( <? ) , Tag Penutup ( ?> )

Page 328: Laporan DKP Kelompok 1 SISKOM 2012

328

Perlu diingat, jika ingin menggunakan tag pendek, harus mengatur

konfigurasi PHP dalam file php.ini dan yang harus di ubah dengan

salah satu alternatif sebagai berikut:

a. Short_open_tag = on

b. Short_open_tag = true

c. Short_open_tag = yes

8.2.7. Variabel dan Tipe Data

Di semua bahasa pemrograman, dikenal adanya kata variabel.

Apakah variabel itu dan mengapa peranannya dalam dunia

pemrograman sangan penting ?.Variabel merupakan sebuah istilah

yang menyatakan sebuah tempat yang digunakan untuk

menampung nilai-nilai tertentu di mana nilai di dalamnya bisa

berubah-ubah.Variabel sangat penting karena tanpa variabel, kita

tidak bisa menyimpan nilai tertentu untuk diolah. Bagaimana cara

menuliskan variabel di PHP ?. Di PHP, variabel dikenali

dengan adanya tanda dollar ($) yang kemudian bisa diikuti

dengan angka, huruf, dan underscore. Namun variabel tidak

dapat mengandung spasi.Untuk dapat mendefinisikan variabel,

kita hanya perlu menuliskannya maka otomatis variabel dikenali

oleh penerjemah

8.2.8. Pengkondisian

IF statement di atas hanya menampilkan satu alternatif solusi,

sehingga jika kondisi IF tidak terpenuhi, tidak ada aksi apapun dan

blok kode aksi akan dilewati.

If (kondisi){

Aksi;

}

Jika terdiri dari beberapa kondisi atau lebih dari 2 digunakan :

if(kondisi){

Aksi;

}else{

Page 329: Laporan DKP Kelompok 1 SISKOM 2012

329

Aksi 2;

}

8.2.9. Switch dan Case

Statement untuk pengaturan alur program berikutnya adalah switch.

Salah satu keuntungan switch adalah Kita bisa langsung

mengevaluasi satu statement dan memerintahkan aksi dalam

jumlah yang lebih banyak. Sintak nya :

switch(ekpresi){

case kondisi 1: aksi 1; break;

case kondisi 2: aksi 2; break;

case kondisi n: aksi n; break;

default : aksi jika tidak ada yang cocok

}

Kelebihan switch adalah alternatif tindakan yang diambil bisa

langsung banyak tanpa harus menulis IF..ELSE secara

bertingkat yang sulit dibaca.Jangan lupa menuliskan break; untuk

keluar dari switch ketika aksi dilakukan.

8.2.10. Perulangan

Perbedaan komputer dengan manusia adalah komputer mampu

disuruh untuk melakukan pekerjaan yang sama berulang-ulang

tanpa pernah merasa capek. Untuk memberikan perintah agar

komputer melakukan perintah berulang-ulang, kita bisa

menggunakan perintah loop. Loop dalam PHP terbagi menjadi 3

bentuk.

1. FOR

Sintaks penulisan FOR statement adalah sebagai berikut :

for(kondisi awal; kondisi akhir; perintah){

aksi;

}

2. While

Sintaks penulisan WHILE statement adalah sebagai berikut :

while(kondisi){

aksi;

Page 330: Laporan DKP Kelompok 1 SISKOM 2012

330

perubahan kondisi;

}

3. Do .. While

Sintak DO…WHILE merupakan salah satu statement perulangan

yang hampir sama dengan WHILE akan tetapi kondisinya

berada pada akhir sintak. Sintaks penulisan DO..WHILE

statement adalah

sebagai berikut :

do{

aksi;

perubahan kondisi;

}while(kondisi);

8.2.11. Array

Sebuah bahasa pemrograman umumnya memiliki variabel

berjenis

array. Array (dalam bahasa Indonesia diterjemahkan sebagai

larik)

merupakan variabel yang di dalamnya mengandung nilai-nilai

lain.

8.2.12. Function

Di pemrograman juga ada istilah fungsi/function. Fungsi

membuat proses pemrograman bisa lebih efisien karena aksi-aksi

tertentu bisa ditulis dalam satu kali fungsi yang nantinya bisa

dipanggil jika diperlukan.Sebuah fungsi dapat menerima nilai,

memprosesnya kemudian mengembalikan nilai barunya. Secara

fisik, fungsi merupakan blok kode yang bisa dipanggil nantinya.

Page 331: Laporan DKP Kelompok 1 SISKOM 2012

331

9.3.Analisa Dan Pembahasan

9.3.1. Latihan 1

Buatlah program dengan bahasa pemrograman PHP yang

menampilkan kelompok kalian masing-masing.

Nama file : latihan1.php

<html>

<head>

<title>Kelompok 1</title>//nama program

</head>

<body>//awal perintah

<?php

echo "Kelompok 1";//output kalimat

?>

</body>//penutup perintah

</html>

Gambar 9.2 Screenshot source code menampilkan kata

Gambar 9.3 Screenshot program menampilkan kata

Page 332: Laporan DKP Kelompok 1 SISKOM 2012

332

9.3.2. Latihan 2

Buatlah program dengan bahasa pemrograman PHP yang

menampilkan harga buah di mana kondisinya adalah sebagai

berikutdan disertakan tabel buahnya:

Tabel 9.1 Tabel Buah

Nama Buah Harga

Apel 1500

Semangka 3000

Durian 10000

Pisang 500

Dan buah yang di pilih adalah buah Pisang

Nama file : latihan2.php

<html>

<head>

<title>Tabel Buah</title>//nama program

</head>

<body>

<table border="1">//tebal tabel

<tr>//masuk ke tabel

<td> Buah</td>//masuk baris 1 kolom 1

<td> Harga</td>//masuk baris 1 kolom 2

</tr>

<tr>

<td>Apel</td>//masuk pada baris 2 kolom 1

<td>1500</td>//masuk pada baris 2 kolom 2

</tr>

<tr>

<td>Semangka</td>//masuk pada baris 3 kolom 1

<td>3000</td>//masuk pada baris 3 kolom 2

</tr>

<tr>

<td>Durian</td>// masuk pada baris 4 kolom 1

<td>10000</td>// masuk pada baris 4 kolom 2

Page 333: Laporan DKP Kelompok 1 SISKOM 2012

333

</tr>

<tr>

<td>Pisang</td>//masuk ada baris 5 kolom 1

<td>500</td>// masuk pada baris 5 kolom 2

</tr>

</table>// membuat perintah diatas dimasukkan dalam

tabel

<br />//menambah 1 enter

<hr />//menambah enter dengan garis

<form action="<?php echo $_SERVER['PHP_SELF']; ?>"

method="post" enctype="multipart/form-data">

Nama Buah : <input type="text" name="kdbuah" size="10"

/>//input yang dimasukkan berdasarkan tabel disediakan

<input type="submit" value="Kirim" />// mengirim input

untuk dicocokkan

</form>

<?php

if (isset ($_POST[kdbuah])) {

switch ($_POST[kdbuah]) {

case "Pisang" : echo "harga 500"; break;

default : echo "pilihan salah";

}

} // apabila pilihan yang dimasukkan adalah pisang ,

maka akan muncul harga 500 , apabila tidak sesuai ,

maka akan muncul pilihan salah

?>

</body>

</html>

Page 334: Laporan DKP Kelompok 1 SISKOM 2012

334

Gambar 9.4 Screenshot sourcecode program menampilkan nama buah

Gambar 9.5 Screenshot program menampilkan nama buah

9.3.3. Latihan 3

Buatlah program yang menampilkan perulangan angka

menggunakan

FOR statemen dari 1 – 50, tetapi angka 27 tidak ditampilkan

(dilewati).NB : gunakan fasilitas sintak continue dan break.

Nama file : latihan3.php

<html>

<head>

<meta http-equiv="Content-Type" content="text/html;

charset=utf-8" />

<title>For Statement</title>

</head>

Page 335: Laporan DKP Kelompok 1 SISKOM 2012

335

<body>

<?php

for ($i=1; $i<=50; $i++) {

if ($i==27) {

continue;

} else {

echo $i."<br />";

}

}//diatas adalah untuk menampilkan angka 1 samapai 100

dimana angka dimulai dari angka 1 lalu dengan batas

kurang 50 dan dilakukan penambahan hingga mencapai

kondisi yang diinginkan

?>

</body>

</html>

Gambar 9.6 Screenshot sourcecode menampilkan angka 1 - 100

Page 336: Laporan DKP Kelompok 1 SISKOM 2012

336

Gambar 9.7 Screenshot program menampilkan angka 1 -100

9.3.4. Latihan 4

Buatlah program yang menampilkan 5 kota di Indonesia

menggunakan array dan perulanngan FOR.

Nama file : latihan4.php

Gambar 9.7 Screenshot sourcecode program array menampilkan nama

kota

Page 337: Laporan DKP Kelompok 1 SISKOM 2012

337

Gambar 9.8 Screenshot program array menampilkan nama kota

9.3.5. Latihan 5

Buatlah program dengan fasilitas function (fungsi) dengan nama

fungsi ‗identitas_kelompok„ yang apabila fungsi tersebut

dipanggil akan menampilkan Nama Kelompok, Nama Anggota

dan NIM, serta jurusan kalian.

Nama file : latihan5.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0

Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-

transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html;

</head>

<title>kelompok1_latihan5</title>//nama program

</head>

<body>

<?php

Function

identitas_kelompok($kelompok,$nama_anggota,$NIM,$Jurusa

n){

echo"Kelompok :".$kelompok;

echo"Nama Anggota :".$nama_anggota;

Page 338: Laporan DKP Kelompok 1 SISKOM 2012

338

echo"NIM :".$NIM;

echo"Jurusan :".$Jurusan;

}//membuat fungsi yang dimana terdapat bebefapa

parameter yaitu kelompok, nama annggota , NIM , dan

jurusan

echo identitas_kelompok("1<br>","Bagus Lingga T. ,

Anggi Anugraha P. , Elad

Okktarizo<br>","211201101410033 , 21120111140080 ,

21120111120002<br>","Teknik Sistem

Komputer<br>");//menampilkan statement yang terdapat

dalam parameter dan statement pada fungsi tersebut

?>

</body>

</html>

Gambar 9.9 Screenshot sourcecode program menampilkan biodata kelompok

Gambar 9.10 Screenshot program menampilkan biodata kelompok

9.3.6. Latihan 6

Buatlah program form input biodata Anda dengan isian NIM,

Nama, Nama Kelompok, TTL, Alamat Kos, Golongan Darah,

Jurusan, Hobi, dan Motto pada file biodata.php dan hasilnya di

Page 339: Laporan DKP Kelompok 1 SISKOM 2012

339

tampilkan pada file hasil biodata.php disesuaikan dengan isian

biodata tersebut.

9.3.1.1. Identtitas

Nama file : biodata.php

<html>

<head>

<meta http-equiv="Content-Type" content="text/html;

charset=utf-8" />

<title>Kelompok 1 - Latihan 6_1</title>

</head>

<body>

<title>Kelompok 1 - Latihan 6</title>

<table align=center ><form

action="latihan6_hasilbiodata.php" method="post">

<tr>

<td >Nama</td><td>:</td><td><input type="textarea"

name="nama" maxlength="25" size="30"></td>

</tr>

<tr><td>NIM</td><td>:</td><td><input type="textarea"

maxlength="14" name="nim" size="14"></td>

</tr>

<tr><td>Nama Kelompok</td><td>:</td><td><textarea

cols="30" rows="3" name="kel"

maxlength="75"></textarea></td>

</tr>

<tr><td>TTL</td><td>:</td><td><textarea cols="30"

rows="3" name="ttl" maxlength="75"></textarea></td><td>

</tr>

<tr><td>Alamat Kos</td><td>:</td><td><textarea

cols="30" rows="3" name="kos"

maxlength="75"></textarea></td><td>

</tr>

<tr><td>Golongan Darah</td><td>:</td><td><textarea

cols="30" rows="3" name="gol"

maxlength="75"></textarea></td><td>

</tr>

Page 340: Laporan DKP Kelompok 1 SISKOM 2012

340

<tr><td>Jurusan</td><td>:</td><td><textarea cols="30"

rows="3" name="jur" maxlength="75"></textarea></td><td>

</tr>

<tr><td>Hobi</td><td>:</td><td><textarea cols="30"

rows="3" name="hobi"

maxlength="75"></textarea></td><td>

</tr>

<tr><td>Motto</td><td>:</td><td><textarea cols="30"

rows="3" name="motto"

maxlength="75"></textarea></td><td>

</tr>

<tr><td></td><td></td><td align=center><input

type="submit" name="kirim" value="Save"></td>

</tr>

</body>

</html>

Gambar 9.11 Screenshot sourcecode program memasukan identitas

Page 341: Laporan DKP Kelompok 1 SISKOM 2012

341

Gambar 9.12 Screenshot program menampilkan identitas

9.3.1.2. Hasil Identitas

Nama file : hasil biodata.php

<html>

<head><olink rel="stylesheet" href="" type="css/text">

<meta http-equiv="Content-Type" content="text/html;

charset=UTF-8">

<title>Kelompok 1 - Latihan 6_2</title>

</head>

<body>

<?

// Pengambilan data dan variabel dari file latihan

6_biodata.php //

$nama=$_POST['nama'];

$nim=$_POST['nim'];

$namakel=$_POST['kel'];

$ttl=$_POST['ttl'];

$kos=$_POST['kos'];

$gol=$_POST['gol'];

$jur=$_POST['jur'];

$hobi=$_POST['hobi'];

$motto=$_POST['motto'];

// Menampilkan output berdasarkan data yang diambil

dari file sebelumnya //

echo"Nama : ".$nama."<br>";

Page 342: Laporan DKP Kelompok 1 SISKOM 2012

342

echo"NIM : ".$nim."<br>";

echo"Nama Kelompok : ".$namakel."<br>";

echo"TTL : ".$ttl."<br>";

echo"Alamat Kos : ".$kos."<br>";

echo"Golongan Darah : ".$gol."<br>";

echo"Jurusan : ".$jur."<br>";

echo"Hobi : ".$hobi."<br>";

echo"Motto : ".$motto."<br>";

?>

<a href='latihan6.php'>back</a>

</body>

</html>

Gambar 9.13 Screenshot sourcecode program menampilkan identitas

Gambar 9.14 T Screenshot program menampilkan identitas

Page 343: Laporan DKP Kelompok 1 SISKOM 2012

343

9.3.7. Latihan 7

Buatlah file yang isinya adalah deskripsi kalian, 1 file untuk 1

praktikan dan 1 file utama yang memanggil file deskripsi kalian

menggunakan include. Jumlah file deskripsi disesuaikan.

File 1 :

Nama file : latihan7_file1

<html>

<head><olink rel="stylesheet" href="" type="css/text">

<meta http-equiv="Content-Type" content="text/html;

charset=UTF-8">

<title>Kelompok 1 - Latihan 7_Praktikan 1</title>

</head>

<body>

<?php

// Menampilkan output yang akan diletakkan pada file

latihan7_index //

echo"Nama : Bagus Lingga Tudanto<br>";

echo"NIM : 21120110110033<br>";

echo"Kelompok : 1<br>";

?>

</body>

</html>

Gambaar 9.15 Screenshot sourcecode program file data praktikan 1

Page 344: Laporan DKP Kelompok 1 SISKOM 2012

344

Gambar 9.16 Screenshot program menampilkan data praktikan 1

File 2 :

Nama file : latihan7_file2

<html>

<head><olink rel="stylesheet" href="" type="css/text">

<meta http-equiv="Content-Type" content="text/html;

charset=UTF-8">

<title>Kelompok 1 - Latihan 7_Praktikan 2</title>

</head>

<body>

<?php

// Menampilkan output yang akan diletakkan pada file

latihan7_index //

echo"Nama : Anggi Anugraha Putra<br>";

echo"NIM : 21120111120001<br>";

echo"Kelompok : 1<br>";

?>

</body>

</html>

Page 345: Laporan DKP Kelompok 1 SISKOM 2012

345

Gambar 9.17 Screenshot sourcecode pada file data praktikan 2

Gambar 9.18 Screenshot program menampilkan data praktikan 2

File 3 :

Nama file : latihan7_file3

<html>

<head><olink rel="stylesheet" href="" type="css/text">

<meta http-equiv="Content-Type" content="text/html;

charset=UTF-8">

<title>Kelompok 1 - Latihan 7_Praktikan 2</title>

</head>

<body>

<?php

// Menampilkan output yang akan diletakkan pada file

latihan7_index //

echo"Nama : Elad Oktarizo<br>";

echo"NIM : 21120111120002<br>";

Page 346: Laporan DKP Kelompok 1 SISKOM 2012

346

echo"Kelompok : 1<br>";

?>

</body>

</html>

Gambar 9.19 Screenshot sourcecode pada file data praktikan 3

Gambar 9.20 Screenshot program menampilkan data praktikan 3

Tampilan Semua Data

<html>

<head><olink rel="stylesheet" href="" type="css/text">

<meta http-equiv="Content-Type" content="text/html;

charset=UTF-8">

<title>Kelompok 1 - Latihan 7_Index</title>

</head>

<body>

<?php

echo"Deskripsi Kelompok<br>";

echo"<br>";

include("latihan7s1.php");

Page 347: Laporan DKP Kelompok 1 SISKOM 2012

347

echo"<br>";

include("latihan7s2.php");

echo

"<br>";

include ("latihan7s3.php");

?>

</body>

</html>

Gambar 9.21 Screenshot sourcecode program menampilkan data praktikan

Gambar 9,22Screenshot program menampilkan data praktikan ,1,2 dan 3

Page 348: Laporan DKP Kelompok 1 SISKOM 2012

348

9.4.Tugas Praktikum

9.4.1. Studi kasus

Buatlah sebuah program untuk menampilkan indentis kelompok

di mana terdapat menu :

a. Tentang kelompok

Menu‗tentang kelompok„ berisi deskripsi kelompok.

b. Anggota 1

Menu‗anggota 1„ berisi biodata anggota 1 secara lengkap (terserah

Anda)

c. Anggota 2

Menu ‗anggota 2„ berisi biodata anggota 2 secara lengkap

seperti

anggota 1.

Menu tersebut, jika di klik akan menampilkan sebuah isi tetapi

dalam halaman yang sama. Halaman-halaman dan menu tersebut

dibuat dalam satu halaman dengan nama indentias_kelompok.php

Nama file : studikasus.php

<html>

<html xmlns="http://www.w3.org/1999/xhtml"><style

type="text/css">body {

background-image: url(3dwallpaper40.jpg);

background-repeat: no-repeat;

}

</style>

<head>

<meta http-equiv="Content-Type" content="text/html;

charset=utf-8" />

<title>Identitas Kelompok 1</title>

</head>

<body>

<!-- pembuatan 3 tombol beserta pengkondisian saat

tombol di klik -->

<p align='center'><a

href="?studikasus=deskripsi">Tentang Kelompok 1

</a>&nbsp;|&nbsp;<a

href="?studikasus=anggota">Praktikan 1

Page 349: Laporan DKP Kelompok 1 SISKOM 2012

349

</a>&nbsp;|&nbsp;<a

href="?studikasus=anggota1">Praktikan 2

</a>&nbsp;|&nbsp;<a

href="?studikasus=anggota2">Praktikan 3

</a></p>

<?php

if ($_GET[studikasus]=="anggota"){

?>

<hr />

<tr>

<td><br />Nama Anggota 1</td>

<td>:</td>

<td>Bagus Lingga Tudanto</td>

</tr>

<hr />

<tr>

<td><br />NIM Anggota</td>

<td>:</td>

<td>21120110110033</td>

</tr>

<hr />

<tr>

<td><br />Kelompok</td>

<td>:</td>

<td>1</td>

</tr>

<hr />

<tr>

<td><br />Asal</td>

<td>:</td>

<td>Semarang</td>

</tr>

<hr />

<tr>

<td><br />No HP</td>

<td>:</td>

<td>085640588526</td>

</tr>

<hr />

Page 350: Laporan DKP Kelompok 1 SISKOM 2012

350

<?php

} else if($_GET[studikasus]=="anggota1"){

?>

<hr/>

<tr>

<td><br />Nama Anggota 2</td>

<td>:</td>

<td>Anggi Anugraha Putra</td>

</tr>

<hr />

<tr>

<td><br/>NIM Anggota</td>

<td>:</td>

<td>21120111120001</td>

</tr>

<hr />

<tr>

<td><br />Kelompok</td>

<td>:</td>

<td>1</td>

</tr>

<hr />

<tr>

<td><br />Asal</td>

<td>:</td>

<td>Padang</td>

</tr>

<hr />

<tr>

<td><br />No HP</td>

<td>:</td>

<td>085363000470</td>

</tr>

<hr />

<?php

} else if($_GET[studikasus]=="anggota2"){

?>

Page 351: Laporan DKP Kelompok 1 SISKOM 2012

351

<hr/>

<tr>

<td><br />Nama Anggota 3</td>

<td>:</td>

<td>Elad Oktarizo</td>

</tr>

<hr />

<tr>

<td><br/>NIM Anggota</td>

<td>:</td>

<td>21120111120002</td>

</tr>

<hr />

<tr>

<td><br />Kelompok</td>

<td>:</td>

<td>1</td>

</tr>

<hr />

<tr>

<td><br />Asal</td>

<td>:</td>

<td>Padang</td>

</tr>

<hr />

<tr>

<td><br />No HP</td>

<td>:</td>

<td>085274479193</td>

</tr>

<hr />

<?php

}else {

echo "<p align='center'>kami adalah kelompok 1

praktikum DKP SISKOM 2012 yang terdiri dari 3 orang

anggota, yaitu : bagus lingga tudanto, anggi anugraha

putra, dan elad oktarizo</p>";

Page 352: Laporan DKP Kelompok 1 SISKOM 2012

352

echo "<p align='center'>sebagai kelompok 1 kami

juga akan berusaha untuk menjadi NOMOR 1</p>";

echo "<p align='center'>siapa yang menghalangi,

akan kami hadapi :)</p>";

}

?>

<body>

</body>

</html>

Page 353: Laporan DKP Kelompok 1 SISKOM 2012

353

Gambar 9.23 Screenshot source code menampilkan menu

Page 354: Laporan DKP Kelompok 1 SISKOM 2012

354

Gambar 9.24 Screenshot pada menu “Tentang Kelompok”

Gambar 9.26 Screenshot Tampilan menu “Anggota1”

Page 355: Laporan DKP Kelompok 1 SISKOM 2012

355

Gambar 9.27 Screenshot Tampilan menu “Anggota 2”

Gambar 9.28 Screenshot Tampilan menu “Anggota 3”

Page 356: Laporan DKP Kelompok 1 SISKOM 2012

356

9.5.Kesimpulan

1. PHP atau PHP Hypertext Preprocessor adalah sebuah bahasa

pemrograman web berbasis server (server side) yang mampu

menerjemahkan kode php dari kode web dengan ekstensi .php,

sehingga menghasilkan tampilan website yang dinamis di sisi

client (browser).

2. Di PHP, variabel dikenali dengan adanya tanda dollar ($) yang

kemudian bisa diikuti dengan angka, huruf, dan underscore.

3. Dalam bahasa pemrograman PHP, ada 2 kode program yang

digunakan untuk penyeleksian suatu kondisi yaitu IF dan While

4. Statement if merupakan statement yang penting dan pasti

terdapat

di semua bahasa pemrograman. Statement ini berguna untuk

membuat percabangan berdasarkan kondisi tertentu , jika kondisi

IF tidak terpenuhi, tidak ada aksi apapun dan blok kode aksi akan

dilewati. Untuk bisa membuat alternatif terdiri dari 2 buah, Kita

bisa menggunakan IF..ELSE..

5. Statement untuk pengaturan alur program berikutnya adalah switch.

Salah satu keuntungan switch adalah Kita bisa langsung

mengevaluasi satu statement dan memerintahkan aksi dalam

jumlah yang lebih banyak.

6. Loop dalam PHP terbagi menjadi 3 bentuk yaitu for, while , dan do

while.

7. Array (dalam bahasa Indonesia diterjemahkan sebagai larik)

merupakan variabel yang di dalamnya mengandung nilai-nilai

lain.

8. Di pemrograman juga ada istilah fungsi/function. Fungsi

membuat proses pemrograman bisa lebih efisien karena aksi-

aksi tertentu bisa ditulis dalam satu kali fungsi yang nantinya

bisa dipanggil jika diperlukan.Sebuah fungsi dapat menerima

nilai, memprosesnya kemudian mengembalikan nilai barunya.

Page 357: Laporan DKP Kelompok 1 SISKOM 2012

357

Secara fisik, fungsi merupakan blok kode yang bisa dipanggil

nantinya.

9. 2Sebuah halaman web sering kali memproses nilai yang

diperoleh dari halaman lainnya. Untuk itu PHP harus mampu

mem-parsing variabel antar halaman. Ada banyak cara untuk

mem-parsing variabel antar halaman. Salah satunya adalah

dengan via URL.

10. Form dalam pemrograman HTML dikenal dengan adanya tag

<form> dan ditutup dengan tag </form>. Di dalam tag pembuka

<form> diikuti dengan atribut action dan method. Action

menjelaskan ke halaman yang digunakan untuk memproses input,

sementara method digunakan untuk mengatur cara mem-parsing

konten.

11. Di dalam bahasa pemrograman PHP, ada sintak yang berfungsi

sebagai pemanggil halaman di dalam sebuah halaman yang

aktif. Sintak tersebut adalah include dan require. Fungsi dari

keduanya sama yaitu memanggil halaman, tetapi perbedaannya

yaitu jika include apabila terjadi kesalahan atau error akan

kesalahan tersebut akan ditampilkan sebagai warning dan script

kode tetap di eksekusi.

12. Sedangkan require, jika ada kesalahan atau error maka kesalahan

tersebut akan ditampilkan sebagai fatal error dan script kode

akan berhenti diproses

Page 358: Laporan DKP Kelompok 1 SISKOM 2012

358

LAMPIRAN

MAKALAH TUGAS AKHIR

Makalah Tugas Akhir

Praktikum Dasar Komputer dan Pemrograman

PROGRAM BILLING SEDERHANA

Bagus Lingga Tudanto (21120110110033)

Jurusan Sistem Komputer, Fakultas Teknik, Universitas Diponegoro

Jl. Prof. Sudharto, Tembalang, Semarang, Indonesia

Abstrak - Perkembangan Teknologi saat ini amatlah sangat cepat.

Maka kebutuhan akan barang elektronik seiring naik dengan perkembangan

teknologi tersebut. Untuk itu manusia perlu menciptakan alat untuk

membantunya dalam melakukan tugas – tugas yang membebaninya. Dengan

alat elektronik tersebut, manusia kan terbantu sedikit meringankan beban

pekerjaannya. Bukan hanya dalam perangkat keras saja tapi juga perangkat

lunaknya. Manusia akan sangat perlu suatu printah –perintah yang dapat

menghubungkan keinginanya dengan computer ataupun mesin sekalipun.

Perintah perintah itu diterjemahkan dalam bahasa – bahasa yang dimengerti

mesin. Bahasa manusia merupakan bahasa tingkat tinggi yang tidak dimengerti

oleh mesin, sedangkan bahasa yang dimengerti mesin adalah bahasa tingkat

rendah yaitu bahasa assemble. Salah satu bahasa mesin adalah JAVA.

Java adalah bahasa pemrograman yang dapat dijalankan di berbagai

komputer termasuk telepon genggam. Bahasa ini awalnya dibuat oleh James

Gosling saat masih bergabung di Sun Microsystems saat ini merupakan bagian

dari Oracle dan dirilis tahun 1995. Bahasa ini banyak mengadopsi sintaksis

yang terdapat pada C dan C++ namun dengan sintaksis model objek yang lebih

sederhana serta dukungan rutin-rutin aras bawah yang minimal. Saat ini java

merupakan bahasa pemrograman yang paling populer digunakan, dan secara

luas dimanfaatkan dalam pengembangan berbagai jenis perangkat lunak

aplikasi ataupun aplikasi berbasis web.

Kata kunci : Bahasa Pemograman, Bahasa JAVA, Billing Sederhana

Page 359: Laporan DKP Kelompok 1 SISKOM 2012

359

BAB I

PENDAHULUAN

1.1. LatarBelakang

Era modern dimana semua sudah memasuki teknologi

canggih,Hampir semua kegiatan manusia pada saat ini melibatkan teknologi

Komputer mulai dari skala personal sampai dengan skala Perusahaan besar.

Seiring dengan itu lahirlah bahasa pemrograman.dengan bermacam-macam

jenis ragamnya . Salah satunya adalah JAVA dimana bahasa pemrograman

ini lebih kompleks dan memiliki fitur yang luar biasa dan dapat

diaplikasikan dalam berbagai platform , termasuk platform untuk telepon

genggam .JAVA juga memiliki fitur GUI untuk memudahkan penggunanya

dalam menyelesaikan suatu masalah .

1.2. Tujuan

Adapun tujuan dari penulisan makalah ini adalah untuk memenuhi

tugas praktikum Dasar Komputer dan Pemrograman yang diberikan asisten

kepada praktikan. Mengimplementasikan ilmu – ilmu yang di dapat dalam

praktikum praktikum sebelumnya. Mengetahui lebih jauh tentang program

JAVA dan menerapkannya untuk membuat program sedehana.

1.3. Pembatasan Masalah

Dalam pembuatan makalah ini batasan- batasan membahas tentang

program JAVA dan GUI-nya dalam aplikasinya di Program Billing

Sederhana

Page 360: Laporan DKP Kelompok 1 SISKOM 2012

360

1.4. Sistematika Penulisan

I. PENDAHULUAN

1.1 Latar Belakang

1.2 Tujuan

1.3 Pembatasan Masalah

1.4 Metode Penulisan

1.5 Sistematika Penulisan

II. DASAR TEORI

2.1 Sejarah Visual Basic

2.2 Pemahaman GUI pada Java

2.3 Fungsi GUI

III. ALGORITMA DAN FLOWCHART

3.1 Algoritma Program

3.2 Flowchart

IV. ANALISA DAN PEMBAHASAN

4.1 Source Code

4.2 Tampilan Program

V. PENUTUP

5.1 Kesimpulan

5.2 Saran

Page 361: Laporan DKP Kelompok 1 SISKOM 2012

361

BAB II

DASAR TEORI

2.1. Sejarah Perkembangan Java

Bahasa pemrograman Java terlahir dari The Green Project, yang

berjalan selama 18 bulan, dari awal tahun 1991 hingga musim panas 1992.

Proyek tersebut belum menggunakan versi yang dinamakan Oak. Proyek ini

dimotori oleh Patrick Naughton, Mike Sheridan, James Gosling dan Bill

Joy, beserta sembilan pemrogram lainnya dari Sun Microsystems. Salah satu

hasil proyek ini adalah maskot Duke yang dibuat oleh Joe Palrang.

Pertemuan proyek berlangsung di sebuah gedung perkantoran Sand

Hill Road di Menlo Park. Sekitar musim panas 1992 proyek ini ditutup

dengan menghasilkan sebuah program Java Oak pertama, yang ditujukan

sebagai pengendali sebuah peralatan dengan teknologi layar sentuh (touch

screen), seperti pada PDA sekarang ini. Teknologi baru ini dinamai "*7"

(Star Seven).

Setelah era Star Seven selesai, sebuah anak perusahaan Tv kabel

tertarik ditambah beberapa orang dari proyek The Green Project. Mereka

memusatkan kegiatannya pada sebuah ruangan kantor di 100 Hamilton

Avenue, Palo Alto.

Perusahaan baru ini bertambah maju: jumlah karyawan meningkat

dalam waktu singkat dari 13 menjadi 70 orang. Pada rentang waktu ini juga

ditetapkan pemakaian Internet sebagai medium yang menjembatani kerja

dan ide di antara mereka. Pada awal tahun 1990-an, Internet masih

merupakan rintisan, yang dipakai hanya di kalangan akademisi dan militer.

Mereka menjadikan perambah (browser) Mosaic sebagai landasan awal

untuk membuat perambah Java pertama yang dinamai Web Runner,

terinsipirasi dari film 1980-an, Blade Runner. Pada perkembangan rilis

pertama, Web Runner berganti nama menjadi Hot Java.

Pada sekitar bulan Maret 1995, untuk pertama kali kode sumber

Java versi 1.0a2 dibuka. Kesuksesan mereka diikuti dengan untuk

pemberitaan pertama kali pada surat kabar San Jose Mercury News pada

Page 362: Laporan DKP Kelompok 1 SISKOM 2012

362

tanggal 23 Mei 1995. Sayang terjadi perpecahan di antara mereka suatu hari

pada pukul 04.00 di sebuah ruangan hotel Sheraton Palace. Tiga dari

pimpinan utama proyek, Eric Schmidt dan George Paolini dari Sun

Microsystems bersama Marc Andreessen, membentuk Netscape.

Nama Oak, diambil dari pohon oak yang tumbuh di depan jendela

ruangan kerja "Bapak Java", James Gosling. Nama Oak ini tidak dipakai

untuk versi release Java karena sebuah perangkat lunak lain sudah terdaftar

dengan merek dagang tersebut, sehingga diambil nama penggantinya

menjadi "Java". Nama ini diambil dari kopi murni yang digiling langsung

dari biji (kopi tubruk) kesukaan Gosling. Konon kopi ini berasal dari Pulau

Jawa. Jadi nama bahasa pemrograman Java tidak lain berasal dari kata Jawa

(bahasa Inggris untuk Jawa adalah Java).

2.2. Pemahaman GUI pada Java

GUI atau kepanjangan dari Graphical User Interface merupakan

salah satu model interaksi antara manusia dan komputer. Selain GUI, ada

juga model yang lain seperti Character User Interface (CUI) yang sering

kita kenal dengan command line. Dari sisi kenyamanan (attitude), kedua

model ini memiliki fungsinya masing-masing. Fungsi CUI biasanya adalah

administrator sistem berbasis sistem operasi LINUX. Bagi mereka, CUI

dirasakan lebih nyaman dibandingkan dengan GUI, bahkan setelah GUI

pada LINUX berkembang dengan pesat, mereka tetap bertahan untuk

menggunakan CUI. Pengguna GUI biasanya adalah mereka yang sudah

terbiasa dengan sistem operasi Windows.

GUI atau Graphical Unit Interface, merupakan perangkat pertama

untuk mengendalikan fungsi-fungsi suatu software, dan membuat pengguna

mudah untuk memahami bagaimana menggunakan software tersebut. Kita

dapat mengasumsikan bahwa GUI merupakan sebagai bagian dari suatu

software yang pertama kali ditangkap mata (secara interface). Dimana suatu

software akan kelihatan bagus, jika GUI tersebut tampak menarik. Hal ini

termasuk untuk GUI sistem pengenal suara,GUI ini diperlukan agar orang

awam mudah dalam mempelajari dan menggunakan sistem tersebut. Untuk

Page 363: Laporan DKP Kelompok 1 SISKOM 2012

363

lebih kenal dekat dengan GUI, anda dapat perhatikan pada komputer

masing-masing yang mana telah dibalut oleh GUI. Contoh saja Sistem

Operasi Windows anda atau pun Linux, memiliki tampilan yang disesuaikan

dengan cara penggunaan sistem.

2.3. Fungsi GUI

Dari pemahaman tentang GUI sebelumnya, fungsi-fungsi GUI

dalam dunia teknologi dan informasi saat ini sangat beragam. Berikut

beberapa fungsi dari penggunaan GUI dalam dunia Iptek khususnya

komputer :

(1). Pointing device dengan perangkat berupa mouse

(2). Memiliki fungsi sebagai plug and play, yang mana memudahkan user

dalam menginstall dan uninstall hardware/sofware (sinkronisasi)

(3). Membuat software-software yang menuntut aplikasi dalam komputer

user yang dapat digunakan untuk kegiatan user dalam proses seperti menulis

text, spreadsheet. sound, graphic dan lain-lain

(4). Untuk digunakan dalam pembuatan System Operasi sebagai User

friendly dan ergonomis

(5). Pembuatan website

(6). Opensource software/hardware atau pengembang aplikasi-aplikasi

skala besar lainnya.

JAVA GUI sendiri secara umum sama dengan pemahaman GUI

sendiri, namun disini GUI pada JAVA adalah salah satu dari fasilitas Java

dalam mengembangkan suatu aplikasi dengan memberikan suatu interface

yang nantinya akan disesuaikan dengan kebutuhan suatu aplikasi, baik skala

kecil dan besar. Intinya, GUI pada Java adalah komponen-komponen

penyempurna dalam sebuah sistem, seperti komponen navigasi, graphic,

interface desktop, komponen menu, sinkronisasi antar interface dan

semuanya itu dirancang dengan penelitian yang baik, dimana nantinya

aplikasi tersebut dapat dengan mudah dioperasikan user. Banyak sudah

aplikasi yang telah Java kembangankan dengan menggunakan GUI sebagai

nilai penggunaan dan nilai jual. Software perangkat lunak dan keras juga

Page 364: Laporan DKP Kelompok 1 SISKOM 2012

364

termasuk di dalamnya. Java GUI adalah program pengembangan suatu user

interface dengan mengetengahkan graphic sebagai penghubung user dengan

sistem, sehingga mudah dalam implementasi aplikasi sistem tersebut.

Page 365: Laporan DKP Kelompok 1 SISKOM 2012

365

BAB III

ALGORITMA

3.1. AlgoritmaPseudocode

Mencentang checkbox menu yang telah dipesan .

Mengisikan jumlah pesanan ke text field di samping menu pesanan .

Menekan button Total untuk menampilkan harga total tiap pesanan dan

harga total untuk dibayar .

Memasukkan uang yang dibayarkan .

Menekan button Kembalian untuk mendapati uang kembaliannya .

Menekan button Mulai Baru untuk menghapus semua yg telah diinputkan

dan dioutputkan .

Menekan button Keluar untuk exit dari program tersebut .

3.2. Algoritma Flowchart

Page 366: Laporan DKP Kelompok 1 SISKOM 2012

366

Gambar 1 Flowchart Program

Page 367: Laporan DKP Kelompok 1 SISKOM 2012

367

BAB IV

ANALISA DAN PEMBAHASAN

4.1. Source Code Program

Kelas struk.java :

/**

*

* @author RINGGAS

*/

public class struk extends javax.swing.JFrame {

/** Creates new form struk */

public struk() {

initComponents();

}

/** This method is called from within the

constructor to

* initialize the form.

* WARNING: Do NOT modify this code. The

content of this method is

* always regenerated by the Form Editor.

*/

@SuppressWarnings("unchecked")

// <editor-fold defaultstate="collapsed"

desc="Generated Code">

private void initComponents() {

jLabel1 = new javax.swing.JLabel();

jLabel2 = new javax.swing.JLabel();

jLabel3 = new javax.swing.JLabel();

jLabel4 = new javax.swing.JLabel();

cbAyam = new javax.swing.JCheckBox();

Page 368: Laporan DKP Kelompok 1 SISKOM 2012

368

tfAyam = new javax.swing.JTextField();

hargaAyam = new javax.swing.JTextField();

cbBangka = new javax.swing.JCheckBox();

cbJawa = new javax.swing.JCheckBox();

cbMedan = new javax.swing.JCheckBox();

tfBangka = new javax.swing.JTextField();

tfJawa = new javax.swing.JTextField();

tfMedan = new javax.swing.JTextField();

hargaBangka = new

javax.swing.JTextField();

hargaJawa = new javax.swing.JTextField();

hargaMedan = new javax.swing.JTextField();

jLabel5 = new javax.swing.JLabel();

cbRamen = new javax.swing.JCheckBox();

tfRamen = new javax.swing.JTextField();

hargaRamen = new javax.swing.JTextField();

cbSoda = new javax.swing.JCheckBox();

tfSoda = new javax.swing.JTextField();

hargaSoda = new javax.swing.JTextField();

cbCampur = new javax.swing.JCheckBox();

cbTeh = new javax.swing.JCheckBox();

cbJeruk = new javax.swing.JCheckBox();

tfCampur = new javax.swing.JTextField();

tfTeh = new javax.swing.JTextField();

tfJeruk = new javax.swing.JTextField();

hargaCampur = new

javax.swing.JTextField();

hargaJeruk = new javax.swing.JTextField();

hargaTeh = new javax.swing.JTextField();

jLabel6 = new javax.swing.JLabel();

cbKerupuk = new javax.swing.JCheckBox();

tfKerupuk = new javax.swing.JTextField();

Page 369: Laporan DKP Kelompok 1 SISKOM 2012

369

hargaKerupuk = new

javax.swing.JTextField();

tfTotal = new javax.swing.JTextField();

jLabel7 = new javax.swing.JLabel();

tfUang = new javax.swing.JTextField();

tfSusuk = new javax.swing.JTextField();

butTotal = new javax.swing.JButton();

butSusuk = new javax.swing.JButton();

butBaru = new javax.swing.JButton();

butKeluar = new javax.swing.JButton();

// Coding diatas digunakan sebagai :

// Penginisialisasian komponen-komponen dalam

form java

setDefaultCloseOperation(javax.swing.WindowConstan

ts.EXIT_ON_CLOSE);

setTitle("TUGAS AKHIR PRAKTIKUM DKP");

setBackground(new java.awt.Color(255, 204,

204));

setForeground(java.awt.Color.black);

// Coding diatas digunakan sebagai :

// Memberi title pada program

jLabel1.setFont(new java.awt.Font("Times

New Roman", 3, 16)); // NOI18N

jLabel1.setForeground(new

java.awt.Color(51, 51, 51));

jLabel1.setText("BILLING -KEDAI MIE-");

jLabel2.setFont(new java.awt.Font("Times

New Roman", 3, 14));

jLabel2.setText("* MAKANAN");

Page 370: Laporan DKP Kelompok 1 SISKOM 2012

370

jLabel3.setFont(new

java.awt.Font("Tahoma", 2, 10));

jLabel3.setText("BANYAKNYA");

jLabel4.setFont(new java.awt.Font("Times

New Roman", 2, 10));

jLabel4.setText("HARGA (Rp ,-)");

cbAyam.setFont(new java.awt.Font("Tahoma",

1, 10));

cbAyam.setText("Mie Ayam (Rp7000,-)");

cbAyam.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent evt) {

cbAyamActionPerformed(evt);

}

});

tfAyam.setEditable(false);

tfAyam.setFont(new java.awt.Font("Times

New Roman", 1, 10));

tfAyam.setHorizontalAlignment(javax.swing.JTextFie

ld.CENTER);

tfAyam.setText(" ");

tfAyam.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent evt) {

tfAyamActionPerformed(evt);

}

Page 371: Laporan DKP Kelompok 1 SISKOM 2012

371

});

tfAyam.addKeyListener(new

java.awt.event.KeyAdapter() {

public void

keyTyped(java.awt.event.KeyEvent evt) {

tfAyamKeyTyped(evt);

}

});

hargaAyam.setEditable(false);

hargaAyam.setFont(new java.awt.Font("Times

New Roman", 1, 11));

hargaAyam.setHorizontalAlignment(javax.swing.JText

Field.CENTER);

cbBangka.setFont(new

java.awt.Font("Tahoma", 1, 10));

cbBangka.setText("Mie Bangka (Rp9000,-)");

cbBangka.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent evt) {

cbBangkaActionPerformed(evt);

}

});

cbJawa.setFont(new java.awt.Font("Tahoma",

1, 10));

cbJawa.setText("Mie Jawa (Rp8500,-)");

cbJawa.addActionListener(new

java.awt.event.ActionListener() {

Page 372: Laporan DKP Kelompok 1 SISKOM 2012

372

public void

actionPerformed(java.awt.event.ActionEvent evt) {

cbJawaActionPerformed(evt);

}

});

cbMedan.setFont(new

java.awt.Font("Tahoma", 1, 10));

cbMedan.setText("Mie Medan (Rp9000,-)");

cbMedan.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent evt) {

cbMedanActionPerformed(evt);

}

});

tfBangka.setEditable(false);

tfBangka.setFont(new java.awt.Font("Times

New Roman", 1, 10));

tfBangka.setHorizontalAlignment(javax.swing.JTextF

ield.CENTER);

tfBangka.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent evt) {

tfBangkaActionPerformed(evt);

}

});

tfBangka.addKeyListener(new

java.awt.event.KeyAdapter() {

Page 373: Laporan DKP Kelompok 1 SISKOM 2012

373

public void

keyTyped(java.awt.event.KeyEvent evt) {

tfBangkaKeyTyped(evt);

}

});

tfJawa.setEditable(false);

tfJawa.setFont(new java.awt.Font("Times

New Roman", 1, 10));

tfJawa.setHorizontalAlignment(javax.swing.JTextFie

ld.CENTER);

tfJawa.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent evt) {

tfJawaActionPerformed(evt);

}

});

tfJawa.addKeyListener(new

java.awt.event.KeyAdapter() {

public void

keyTyped(java.awt.event.KeyEvent evt) {

tfJawaKeyTyped(evt);

}

});

tfMedan.setEditable(false);

tfMedan.setFont(new java.awt.Font("Times

New Roman", 1, 10));

tfMedan.setHorizontalAlignment(javax.swing.JTextFi

eld.CENTER);

Page 374: Laporan DKP Kelompok 1 SISKOM 2012

374

tfMedan.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent evt) {

tfMedanActionPerformed(evt);

}

});

tfMedan.addKeyListener(new

java.awt.event.KeyAdapter() {

public void

keyTyped(java.awt.event.KeyEvent evt) {

tfMedanKeyTyped(evt);

}

});

hargaBangka.setEditable(false);

hargaBangka.setFont(new

java.awt.Font("Times New Roman", 1, 11));

hargaBangka.setHorizontalAlignment(javax.swing.JTe

xtField.CENTER);

hargaJawa.setEditable(false);

hargaJawa.setFont(new java.awt.Font("Times

New Roman", 1, 11));

hargaJawa.setHorizontalAlignment(javax.swing.JText

Field.CENTER);

hargaMedan.setEditable(false);

hargaMedan.setFont(new

java.awt.Font("Times New Roman", 1, 11));

Page 375: Laporan DKP Kelompok 1 SISKOM 2012

375

hargaMedan.setHorizontalAlignment(javax.swing.JTex

tField.CENTER);

jLabel5.setFont(new java.awt.Font("Times

New Roman", 3, 14));

jLabel5.setText("* MINUMAN");

cbRamen.setFont(new

java.awt.Font("Tahoma", 1, 10));

cbRamen.setText("Mie Ramen (Rp10000,-)");

cbRamen.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent evt) {

cbRamenActionPerformed(evt);

}

});

tfRamen.setEditable(false);

tfRamen.setFont(new java.awt.Font("Times

New Roman", 1, 10));

tfRamen.setHorizontalAlignment(javax.swing.JTextFi

eld.CENTER);

tfRamen.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent evt) {

tfRamenActionPerformed(evt);

}

});

Page 376: Laporan DKP Kelompok 1 SISKOM 2012

376

tfRamen.addKeyListener(new

java.awt.event.KeyAdapter() {

public void

keyTyped(java.awt.event.KeyEvent evt) {

tfRamenKeyTyped(evt);

}

});

hargaRamen.setEditable(false);

hargaRamen.setFont(new

java.awt.Font("Times New Roman", 1, 11));

hargaRamen.setHorizontalAlignment(javax.swing.JTex

tField.CENTER);

cbSoda.setFont(new java.awt.Font("Tahoma",

1, 10));

cbSoda.setText("Soda (Rp4000,-)");

cbSoda.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent evt) {

cbSodaActionPerformed(evt);

}

});

tfSoda.setEditable(false);

tfSoda.setFont(new java.awt.Font("Times

New Roman", 1, 10));

tfSoda.setHorizontalAlignment(javax.swing.JTextFie

ld.CENTER);

Page 377: Laporan DKP Kelompok 1 SISKOM 2012

377

tfSoda.addKeyListener(new

java.awt.event.KeyAdapter() {

public void

keyTyped(java.awt.event.KeyEvent evt) {

tfSodaKeyTyped(evt);

}

});

hargaSoda.setEditable(false);

hargaSoda.setFont(new java.awt.Font("Times

New Roman", 1, 11));

hargaSoda.setHorizontalAlignment(javax.swing.JText

Field.CENTER);

cbCampur.setFont(new

java.awt.Font("Tahoma", 1, 10));

cbCampur.setText("Es Campur (Rp5000,-)");

cbCampur.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent evt) {

cbCampurActionPerformed(evt);

}

});

cbTeh.setFont(new java.awt.Font("Tahoma",

1, 10));

cbTeh.setText("Teh [Panas/Es] (Rp2500,-

)");

cbTeh.addActionListener(new

java.awt.event.ActionListener() {

Page 378: Laporan DKP Kelompok 1 SISKOM 2012

378

public void

actionPerformed(java.awt.event.ActionEvent evt) {

cbTehActionPerformed(evt);

}

});

cbJeruk.setFont(new

java.awt.Font("Tahoma", 1, 10));

cbJeruk.setText("Lemontea (Rp5000,-)");

cbJeruk.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent evt) {

cbJerukActionPerformed(evt);

}

});

tfCampur.setEditable(false);

tfCampur.setFont(new java.awt.Font("Times

New Roman", 1, 10));

tfCampur.setHorizontalAlignment(javax.swing.JTextF

ield.CENTER);

tfCampur.addKeyListener(new

java.awt.event.KeyAdapter() {

public void

keyTyped(java.awt.event.KeyEvent evt) {

tfCampurKeyTyped(evt);

}

});

tfTeh.setEditable(false);

Page 379: Laporan DKP Kelompok 1 SISKOM 2012

379

tfTeh.setFont(new java.awt.Font("Times New

Roman", 1, 10));

tfTeh.setHorizontalAlignment(javax.swing.JTextFiel

d.CENTER);

tfTeh.addKeyListener(new

java.awt.event.KeyAdapter() {

public void

keyTyped(java.awt.event.KeyEvent evt) {

tfTehKeyTyped(evt);

}

});

tfJeruk.setEditable(false);

tfJeruk.setFont(new java.awt.Font("Times

New Roman", 1, 10));

tfJeruk.setHorizontalAlignment(javax.swing.JTextFi

eld.CENTER);

tfJeruk.addKeyListener(new

java.awt.event.KeyAdapter() {

public void

keyTyped(java.awt.event.KeyEvent evt) {

tfJerukKeyTyped(evt);

}

});

hargaCampur.setEditable(false);

hargaCampur.setFont(new

java.awt.Font("Times New Roman", 1, 11));

hargaCampur.setHorizontalAlignment(javax.swing.JTe

xtField.CENTER);

Page 380: Laporan DKP Kelompok 1 SISKOM 2012

380

hargaJeruk.setEditable(false);

hargaJeruk.setFont(new

java.awt.Font("Times New Roman", 1, 11));

hargaJeruk.setHorizontalAlignment(javax.swing.JTex

tField.CENTER);

hargaTeh.setEditable(false);

hargaTeh.setFont(new java.awt.Font("Times

New Roman", 1, 11));

hargaTeh.setHorizontalAlignment(javax.swing.JTextF

ield.CENTER);

jLabel6.setFont(new java.awt.Font("Times

New Roman", 3, 14));

jLabel6.setText("* TAMBAHAN");

cbKerupuk.setFont(new

java.awt.Font("Tahoma", 1, 10));

cbKerupuk.setText("Kerupuk (Rp1000,-)");

cbKerupuk.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent evt) {

cbKerupukActionPerformed(evt);

}

});

tfKerupuk.setEditable(false);

tfKerupuk.setFont(new java.awt.Font("Times

New Roman", 1, 10));

Page 381: Laporan DKP Kelompok 1 SISKOM 2012

381

tfKerupuk.setHorizontalAlignment(javax.swing.JText

Field.CENTER);

tfKerupuk.addKeyListener(new

java.awt.event.KeyAdapter() {

public void

keyTyped(java.awt.event.KeyEvent evt) {

tfKerupukKeyTyped(evt);

}

});

hargaKerupuk.setEditable(false);

hargaKerupuk.setFont(new

java.awt.Font("Times New Roman", 1, 11));

hargaKerupuk.setHorizontalAlignment(javax.swing.JT

extField.CENTER);

tfTotal.setEditable(false);

tfTotal.setFont(new java.awt.Font("Times

New Roman", 3, 18));

tfTotal.setHorizontalAlignment(javax.swing.JTextFi

eld.CENTER);

jLabel7.setFont(new

java.awt.Font("Tahoma", 1, 11));

jLabel7.setText("Uang (Rp,-)");

tfUang.setFont(new java.awt.Font("Times

New Roman", 3, 18)); // NOI18N

Page 382: Laporan DKP Kelompok 1 SISKOM 2012

382

tfUang.setHorizontalAlignment(javax.swing.JTextFie

ld.CENTER);

tfUang.addKeyListener(new

java.awt.event.KeyAdapter() {

public void

keyTyped(java.awt.event.KeyEvent evt) {

tfUangKeyTyped(evt);

}

});

tfSusuk.setEditable(false);

tfSusuk.setFont(new java.awt.Font("Times

New Roman", 3, 18)); // NOI18N

tfSusuk.setHorizontalAlignment(javax.swing.JTextFi

eld.CENTER);

butTotal.setFont(new java.awt.Font("Times

New Roman", 1, 14));

butTotal.setText("TOTAL HARGA");

butTotal.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent evt) {

butTotalActionPerformed(evt);

}

});

butSusuk.setFont(new java.awt.Font("Times

New Roman", 1, 14));

butSusuk.setText("KEMBALIAN");

Page 383: Laporan DKP Kelompok 1 SISKOM 2012

383

butSusuk.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent evt) {

butSusukActionPerformed(evt);

}

});

butBaru.setFont(new java.awt.Font("Times

New Roman", 1, 12));

butBaru.setForeground(new

java.awt.Color(51, 0, 255));

butBaru.setText("MULAI BARU");

butBaru.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent evt) {

butBaruActionPerformed(evt);

}

});

butKeluar.setFont(new java.awt.Font("Times

New Roman", 1, 12));

butKeluar.setForeground(new

java.awt.Color(255, 0, 51));

butKeluar.setText("KELUAR");

butKeluar.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent evt) {

butKeluarActionPerformed(evt);

}

});

Page 384: Laporan DKP Kelompok 1 SISKOM 2012

384

javax.swing.GroupLayout layout = new

javax.swing.GroupLayout(getContentPane());

getContentPane().setLayout(layout);

layout.setHorizontalGroup(

layout.createParallelGroup(javax.swing.GroupLayout

.Alignment.LEADING)

.addGroup(layout.createSequentialGroup()

.addContainerGap()

.addGroup(layout.createParallelGroup(javax.swing.G

roupLayout.Alignment.LEADING)

.addComponent(jLabel5)

.addGroup(layout.createSequentialGroup()

.addGroup(layout.createParallelGroup(javax.swing.G

roupLayout.Alignment.LEADING)

.addComponent(jLabel2,

javax.swing.GroupLayout.PREFERRED_SIZE, 85,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(cbRamen)

.addComponent(cbMedan)

.addComponent(cbJawa)

.addComponent(cbBangka)

.addComponent(cbAyam)

.addComponent(cbSoda)

.addComponent(cbCampur)

.addComponent(cbTeh)

Page 385: Laporan DKP Kelompok 1 SISKOM 2012

385

.addComponent(cbJeruk))

.addGap(42, 42, 42)

.addGroup(layout.createParallelGroup(javax.swing.G

roupLayout.Alignment.LEADING, false)

.addComponent(tfKerupuk,

javax.swing.GroupLayout.Alignment.TRAILING, 0, 0,

Short.MAX_VALUE)

.addComponent(tfJeruk)

.addComponent(tfTeh)

.addComponent(tfCampur)

.addComponent(tfSoda,

0, 0, Short.MAX_VALUE)

.addComponent(jLabel3,

javax.swing.GroupLayout.Alignment.TRAILING,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

Short.MAX_VALUE)

.addComponent(tfMedan,

javax.swing.GroupLayout.Alignment.TRAILING)

.addComponent(tfRamen,

javax.swing.GroupLayout.Alignment.TRAILING,

javax.swing.GroupLayout.DEFAULT_SIZE, 51,

Short.MAX_VALUE)

.addComponent(tfAyam,

javax.swing.GroupLayout.DEFAULT_SIZE, 39,

Short.MAX_VALUE)

.addComponent(tfBangka)

Page 386: Laporan DKP Kelompok 1 SISKOM 2012

386

.addComponent(tfJawa,

javax.swing.GroupLayout.DEFAULT_SIZE, 33,

Short.MAX_VALUE))

.addGap(18, 18, 18)

.addGroup(layout.createParallelGroup(javax.swing.G

roupLayout.Alignment.LEADING, false)

.addComponent(hargaKerupuk)

.addComponent(hargaJeruk)

.addComponent(hargaTeh)

.addComponent(hargaCampur)

.addGroup(layout.createSequentialGroup()

.addGap(30, 30,

30)

.addComponent(jLabel4))

.addComponent(hargaMedan,

javax.swing.GroupLayout.DEFAULT_SIZE, 111,

Short.MAX_VALUE)

.addComponent(hargaAyam,

javax.swing.GroupLayout.DEFAULT_SIZE, 111,

Short.MAX_VALUE)

.addComponent(hargaJawa,

javax.swing.GroupLayout.DEFAULT_SIZE, 111,

Short.MAX_VALUE)

.addComponent(hargaBangka,

javax.swing.GroupLayout.DEFAULT_SIZE, 111,

Short.MAX_VALUE)

.addComponent(hargaRamen,

javax.swing.GroupLayout.DEFAULT_SIZE, 111,

Short.MAX_VALUE)

.addComponent(hargaSoda)))

.addComponent(jLabel6)

.addGroup(layout.createSequentialGroup()

Page 387: Laporan DKP Kelompok 1 SISKOM 2012

387

.addGroup(layout.createParallelGroup(javax.swing.G

roupLayout.Alignment.LEADING, false)

.addComponent(butSusuk,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

Short.MAX_VALUE)

.addComponent(cbKerupuk,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

Short.MAX_VALUE)

.addGroup(layout.createSequentialGroup()

.addGap(32, 32, 32)

.addComponent(jLabel7))

.addComponent(butTotal,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

Short.MAX_VALUE))

.addGap(23, 23, 23)

.addGroup(layout.createParallelGroup(javax.swing.G

roupLayout.Alignment.TRAILING)

.addComponent(tfSusuk,

javax.swing.GroupLayout.PREFERRED_SIZE, 170,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(tfTotal,

javax.swing.GroupLayout.PREFERRED_SIZE, 170,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(tfUang,

javax.swing.GroupLayout.PREFERRED_SIZE, 170,

javax.swing.GroupLayout.PREFERRED_SIZE))))

.addContainerGap(javax.swing.GroupLayout.DEFAULT_S

IZE, Short.MAX_VALUE))

.addGroup(layout.createSequentialGroup()

.addGap(81, 81, 81)

Page 388: Laporan DKP Kelompok 1 SISKOM 2012

388

.addComponent(butBaru,

javax.swing.GroupLayout.PREFERRED_SIZE, 111,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addPreferredGap(javax.swing.LayoutStyle.Component

Placement.RELATED, 42, Short.MAX_VALUE)

.addComponent(butKeluar,

javax.swing.GroupLayout.PREFERRED_SIZE, 106,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addGap(75, 75, 75))

.addGroup(javax.swing.GroupLayout.Alignment.TRAILI

NG, layout.createSequentialGroup()

.addContainerGap(124, Short.MAX_VALUE)

.addComponent(jLabel1,

javax.swing.GroupLayout.PREFERRED_SIZE, 178,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addGap(113, 113, 113))

);

layout.setVerticalGroup(

layout.createParallelGroup(javax.swing.GroupLayout

.Alignment.LEADING)

.addGroup(layout.createSequentialGroup()

.addContainerGap()

.addComponent(jLabel1)

.addGap(25, 25, 25)

.addGroup(layout.createParallelGroup(javax.swing.G

roupLayout.Alignment.BASELINE)

.addComponent(jLabel4)

.addComponent(jLabel3)

.addComponent(jLabel2))

.addPreferredGap(javax.swing.LayoutStyle.Component

Placement.RELATED)

Page 389: Laporan DKP Kelompok 1 SISKOM 2012

389

.addGroup(layout.createParallelGroup(javax.swing.G

roupLayout.Alignment.BASELINE)

.addComponent(hargaAyam,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(tfAyam,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(cbAyam))

.addPreferredGap(javax.swing.LayoutStyle.Component

Placement.RELATED)

.addGroup(layout.createParallelGroup(javax.swing.G

roupLayout.Alignment.BASELINE)

.addComponent(tfBangka,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(hargaBangka,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(cbBangka))

.addPreferredGap(javax.swing.LayoutStyle.Component

Placement.RELATED)

.addGroup(layout.createParallelGroup(javax.swing.G

roupLayout.Alignment.BASELINE)

Page 390: Laporan DKP Kelompok 1 SISKOM 2012

390

.addComponent(tfJawa,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(hargaJawa,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(cbJawa))

.addPreferredGap(javax.swing.LayoutStyle.Component

Placement.RELATED)

.addGroup(layout.createParallelGroup(javax.swing.G

roupLayout.Alignment.BASELINE)

.addComponent(tfMedan,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(hargaMedan,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(cbMedan))

.addGap(6, 6, 6)

.addGroup(layout.createParallelGroup(javax.swing.G

roupLayout.Alignment.BASELINE)

.addComponent(tfRamen,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

Page 391: Laporan DKP Kelompok 1 SISKOM 2012

391

.addComponent(hargaRamen,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(cbRamen))

.addPreferredGap(javax.swing.LayoutStyle.Component

Placement.UNRELATED)

.addComponent(jLabel5)

.addPreferredGap(javax.swing.LayoutStyle.Component

Placement.RELATED)

.addGroup(layout.createParallelGroup(javax.swing.G

roupLayout.Alignment.BASELINE)

.addComponent(tfSoda,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(hargaSoda,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(cbSoda))

.addPreferredGap(javax.swing.LayoutStyle.Component

Placement.RELATED)

.addGroup(layout.createParallelGroup(javax.swing.G

roupLayout.Alignment.BASELINE)

.addComponent(cbCampur)

.addComponent(tfCampur,

javax.swing.GroupLayout.PREFERRED_SIZE,

Page 392: Laporan DKP Kelompok 1 SISKOM 2012

392

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(hargaCampur,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE))

.addPreferredGap(javax.swing.LayoutStyle.Component

Placement.UNRELATED)

.addGroup(layout.createParallelGroup(javax.swing.G

roupLayout.Alignment.BASELINE)

.addComponent(cbTeh)

.addComponent(tfTeh,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(hargaTeh,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE))

.addPreferredGap(javax.swing.LayoutStyle.Component

Placement.UNRELATED)

.addGroup(layout.createParallelGroup(javax.swing.G

roupLayout.Alignment.BASELINE)

.addComponent(cbJeruk)

.addComponent(tfJeruk,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

Page 393: Laporan DKP Kelompok 1 SISKOM 2012

393

.addComponent(hargaJeruk,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE))

.addPreferredGap(javax.swing.LayoutStyle.Component

Placement.UNRELATED)

.addComponent(jLabel6)

.addPreferredGap(javax.swing.LayoutStyle.Component

Placement.UNRELATED)

.addGroup(layout.createParallelGroup(javax.swing.G

roupLayout.Alignment.BASELINE)

.addComponent(tfKerupuk,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(hargaKerupuk,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(cbKerupuk))

.addPreferredGap(javax.swing.LayoutStyle.Component

Placement.RELATED)

.addGroup(layout.createParallelGroup(javax.swing.G

roupLayout.Alignment.BASELINE)

.addComponent(tfTotal,

javax.swing.GroupLayout.PREFERRED_SIZE, 29,

javax.swing.GroupLayout.PREFERRED_SIZE)

Page 394: Laporan DKP Kelompok 1 SISKOM 2012

394

.addComponent(butTotal,

javax.swing.GroupLayout.PREFERRED_SIZE, 42,

javax.swing.GroupLayout.PREFERRED_SIZE))

.addGap(14, 14, 14)

.addGroup(layout.createParallelGroup(javax.swing.G

roupLayout.Alignment.BASELINE)

.addComponent(tfUang,

javax.swing.GroupLayout.PREFERRED_SIZE, 23,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(jLabel7))

.addPreferredGap(javax.swing.LayoutStyle.Component

Placement.RELATED)

.addGroup(layout.createParallelGroup(javax.swing.G

roupLayout.Alignment.BASELINE)

.addComponent(tfSusuk,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(butSusuk))

.addGap(18, 18, 18)

.addGroup(layout.createParallelGroup(javax.swing.G

roupLayout.Alignment.BASELINE)

.addComponent(butBaru)

.addComponent(butKeluar))

.addContainerGap(javax.swing.GroupLayout.DEFAULT_S

IZE, Short.MAX_VALUE))

);

Page 395: Laporan DKP Kelompok 1 SISKOM 2012

395

jLabel1.getAccessibleContext().setAccessibleName("

BILLING -KEDAI MIE-");

pack();

}// </editor-fold>

// Coding diatas digunakan sebagai :

// Pengaturan properties pada komponen-

komponen dalam form java

private void

cbAyamActionPerformed(java.awt.event.ActionEvent

evt) {

if (cbAyam.isSelected() == true){

tfAyam.setEditable(true);

}

else {

tfAyam.setEditable(false);

tfAyam.setText("");

}

}

private void

cbBangkaActionPerformed(java.awt.event.ActionEvent

evt) {

if (cbBangka.isSelected() == true){

tfBangka.setEditable(true);

}

else {

tfBangka.setEditable(false);

tfBangka.setText("");

}

Page 396: Laporan DKP Kelompok 1 SISKOM 2012

396

}

private void

cbJawaActionPerformed(java.awt.event.ActionEvent

evt) {

if (cbJawa.isSelected() == true){

tfJawa.setEditable(true);

}

else {

tfJawa.setEditable(false);

tfJawa.setText("");

}

}

private void

cbMedanActionPerformed(java.awt.event.ActionEvent

evt) {

if (cbMedan.isSelected() == true){

tfMedan.setEditable(true);

}

else {

tfMedan.setEditable(false);

tfMedan.setText("");

}

}

private void

cbRamenActionPerformed(java.awt.event.ActionEvent

evt) {

if (cbRamen.isSelected() == true){

tfRamen.setEditable(true);

}

Page 397: Laporan DKP Kelompok 1 SISKOM 2012

397

else {

tfRamen.setEditable(false);

tfRamen.setText("");

}

}

private void

cbSodaActionPerformed(java.awt.event.ActionEvent

evt) {

if (cbSoda.isSelected() == true){

tfSoda.setEditable(true);

}

else {

tfSoda.setEditable(false);

tfSoda.setText("");

}

}

private void

cbCampurActionPerformed(java.awt.event.ActionEvent

evt) {

if (cbCampur.isSelected() == true){

tfCampur.setEditable(true);

}

else {

tfCampur.setEditable(false);

tfCampur.setText("");

}

}

Page 398: Laporan DKP Kelompok 1 SISKOM 2012

398

private void

cbTehActionPerformed(java.awt.event.ActionEvent

evt) {

if (cbTeh.isSelected() == true){

tfTeh.setEditable(true);

}

else {

tfTeh.setEditable(false);

tfTeh.setText("");

}

}

private void

cbJerukActionPerformed(java.awt.event.ActionEvent

evt) {

if (cbJeruk.isSelected() == true){

tfJeruk.setEditable(true);

}

else {

tfJeruk.setEditable(false);

tfJeruk.setText("");

}

}

private void

cbKerupukActionPerformed(java.awt.event.ActionEven

t evt) {

if (cbKerupuk.isSelected()==true){

tfKerupuk.setEditable(true);

}

Page 399: Laporan DKP Kelompok 1 SISKOM 2012

399

else {

tfKerupuk.setEditable(false);

tfKerupuk.setText("");

}

}

// Coding diatas digunakan sebagai :

// Coding dimana apabila checkbox menu di

centang , mengaktifkan text field agar dapat

diedit untuk mengisikan jumlah pesanan

private void

tfAyamKeyTyped(java.awt.event.KeyEvent evt) {

char[] x=new

char[]{'0','1','2','3','4','5','6','7','8','9'};

boolean boleh=false;

for(int i=0;i<x.length;i++){

if(x[i]==evt.getKeyChar()){

boleh=true;break;}

}

if(!boleh){evt.setKeyChar((char)0);}

}

private void

tfBangkaKeyTyped(java.awt.event.KeyEvent evt) {

char[] x=new

char[]{'0','1','2','3','4','5','6','7','8','9'};

boolean boleh=false;

for(int i=0;i<x.length;i++){

if(x[i]==evt.getKeyChar()){

boleh=true;break;}

}

Page 400: Laporan DKP Kelompok 1 SISKOM 2012

400

if(!boleh){evt.setKeyChar((char)0);}

}

private void

tfJawaKeyTyped(java.awt.event.KeyEvent evt) {

char[] x=new

char[]{'0','1','2','3','4','5','6','7','8','9'};

boolean boleh=false;

for(int i=0;i<x.length;i++){

if(x[i]==evt.getKeyChar()){

boleh=true;break;}

}

if(!boleh){evt.setKeyChar((char)0);}

}

private void

tfMedanKeyTyped(java.awt.event.KeyEvent evt) {

char[] x=new

char[]{'0','1','2','3','4','5','6','7','8','9'};

boolean boleh=false;

for(int i=0;i<x.length;i++){

if(x[i]==evt.getKeyChar()){

boleh=true;break;}

}

if(!boleh){evt.setKeyChar((char)0);}

}

private void

tfRamenKeyTyped(java.awt.event.KeyEvent evt) {

char[] x=new

char[]{'0','1','2','3','4','5','6','7','8','9'};

boolean boleh=false;

for(int i=0;i<x.length;i++){

Page 401: Laporan DKP Kelompok 1 SISKOM 2012

401

if(x[i]==evt.getKeyChar()){

boleh=true;break;}

}

if(!boleh){evt.setKeyChar((char)0);}

}

private void

tfSodaKeyTyped(java.awt.event.KeyEvent evt) {

char[] x=new

char[]{'0','1','2','3','4','5','6','7','8','9'};

boolean boleh=false;

for(int i=0;i<x.length;i++){

if(x[i]==evt.getKeyChar()){

boleh=true;break;}

}

if(!boleh){evt.setKeyChar((char)0);}

}

private void

tfCampurKeyTyped(java.awt.event.KeyEvent evt) {

char[] x=new

char[]{'0','1','2','3','4','5','6','7','8','9'};

boolean boleh=false;

for(int i=0;i<x.length;i++){

if(x[i]==evt.getKeyChar()){

boleh=true;break;}

}

if(!boleh){evt.setKeyChar((char)0);}

}

private void

tfTehKeyTyped(java.awt.event.KeyEvent evt) {

Page 402: Laporan DKP Kelompok 1 SISKOM 2012

402

char[] x=new

char[]{'0','1','2','3','4','5','6','7','8','9'};

boolean boleh=false;

for(int i=0;i<x.length;i++){

if(x[i]==evt.getKeyChar()){

boleh=true;break;}

}

if(!boleh){evt.setKeyChar((char)0);}

}

private void

tfJerukKeyTyped(java.awt.event.KeyEvent evt) {

char[] x=new

char[]{'0','1','2','3','4','5','6','7','8','9'};

boolean boleh=false;

for(int i=0;i<x.length;i++){

if(x[i]==evt.getKeyChar()){

boleh=true;break;}

}

if(!boleh){evt.setKeyChar((char)0);}

}

private void

tfKerupukKeyTyped(java.awt.event.KeyEvent evt) {

char[] x=new

char[]{'0','1','2','3','4','5','6','7','8','9'};

boolean boleh=false;

for(int i=0;i<x.length;i++){

if(x[i]==evt.getKeyChar()){

boleh=true;break;}

}

if(!boleh){evt.setKeyChar((char)0);}

}

Page 403: Laporan DKP Kelompok 1 SISKOM 2012

403

private void

tfUangKeyTyped(java.awt.event.KeyEvent evt) {

char[] x=new

char[]{'0','1','2','3','4','5','6','7','8','9'};

boolean boleh=false;

for(int i=0;i<x.length;i++){

if(x[i]==evt.getKeyChar()){

boleh=true;break;}

}

if(!boleh){evt.setKeyChar((char)0);}

}

// Coding diatas digunakan sebagai :

// Pengaturan pada textfield agar hanya

menerima inputan berupa angka ketika

textfield bisa diedit

private void

butTotalActionPerformed(java.awt.event.ActionEvent

evt) {

if (cbAyam.isSelected() == true){

int a = Integer.parseInt(tfAyam.getText())

* 7000;

hargaAyam.setText(""+a);}

else{ hargaAyam.setText("0");

tfAyam.setText("-");

}

if (cbBangka.isSelected() == true){

int b =

Integer.parseInt(tfBangka.getText()) * 9000;

hargaBangka.setText(""+b);}

else{ hargaBangka.setText("0");

Page 404: Laporan DKP Kelompok 1 SISKOM 2012

404

tfBangka.setText("-");}

if (cbJawa.isSelected() == true){

int c = Integer.parseInt(tfJawa.getText())

* 8500;

hargaJawa.setText(""+c);}

else{ hargaJawa.setText("0");

tfJawa.setText("-");}

if (cbMedan.isSelected() == true){

int d =

Integer.parseInt(tfMedan.getText()) * 9000;

hargaMedan.setText(""+d);}

else{ hargaMedan.setText("0");

tfMedan.setText("-");}

if (cbRamen.isSelected() == true){

int e =

Integer.parseInt(tfRamen.getText()) * 10000;

hargaRamen.setText(""+e);}

else{ hargaRamen.setText("0");

tfRamen.setText("-");}

if (cbSoda.isSelected() == true){

int f = Integer.parseInt(tfSoda.getText())

* 4000;

hargaSoda.setText(""+f);}

else{ hargaSoda.setText("0");

tfSoda.setText("-");}

if (cbCampur.isSelected() == true){

int g =

Integer.parseInt(tfCampur.getText()) * 5000;

hargaCampur.setText(""+g);}

else{ hargaCampur.setText("0");

tfCampur.setText("-");}

if (cbTeh.isSelected() == true){

Page 405: Laporan DKP Kelompok 1 SISKOM 2012

405

int h = Integer.parseInt(tfTeh.getText())

* 2500;

hargaTeh.setText(""+h);}

else{ hargaTeh.setText("0");

tfTeh.setText("-");}

if (cbJeruk.isSelected() == true){

int i =

Integer.parseInt(tfJeruk.getText()) * 5000;

hargaJeruk.setText(""+i);}

else{ hargaJeruk.setText("0");

tfJeruk.setText("-");}

if (cbKerupuk.isSelected() == true){

int j =

Integer.parseInt(tfKerupuk.getText()) * 1000;

hargaKerupuk.setText(""+j);}

else{ hargaKerupuk.setText("0");

tfKerupuk.setText("-");}

int k =

Integer.parseInt(hargaAyam.getText()) +

Integer.parseInt(hargaBangka.getText())+

Integer.parseInt(hargaJawa.getText())+

Integer.parseInt(hargaMedan.getText())+

Integer.parseInt(hargaRamen.getText())+

Integer.parseInt(hargaSoda.getText())+

Integer.parseInt(hargaCampur.getText())+

Integer.parseInt(hargaTeh.getText()) +

Page 406: Laporan DKP Kelompok 1 SISKOM 2012

406

Integer.parseInt(hargaJeruk.getText()) +

Integer.parseInt(hargaKerupuk.getText());

tfTotal.setText("Rp"+k+",-");

}

// Coding diatas digunakan sebagai :

// Pengaturan untuk tombol TOTAL HARGA yaitu

menghitung harga tiap pesanan dan jumlah

total harganya serta menampilkannya kedalam

textfield nya masing-masing

private void

butSusukActionPerformed(java.awt.event.ActionEvent

evt) {

int k =

Integer.parseInt(hargaAyam.getText()) +

Integer.parseInt(hargaBangka.getText())+

Integer.parseInt(hargaJawa.getText())+

Integer.parseInt(hargaMedan.getText()+

Integer.parseInt(hargaRamen.getText()))+

Integer.parseInt(hargaSoda.getText())+

Integer.parseInt(hargaCampur.getText())+

Integer.parseInt(hargaTeh.getText()) +

Page 407: Laporan DKP Kelompok 1 SISKOM 2012

407

Integer.parseInt(hargaJeruk.getText()) +

Integer.parseInt(hargaKerupuk.getText());

int l =

Integer.parseInt(tfUang.getText());

int m = l - k;

if(l >= k){

tfSusuk.setText("Rp" +m+",-");

}

else{

tfSusuk.setText("Uangnya Kuraaaaaaaang

!!!");}

}

// Coding diatas digunakan sebagai :

// Pengaturan untuk tombol KEMBALIAN yaitu

menghitung uang kembalian yang didapat dari

uang yang diisikan yang dikurangi dengan

total harga

private void

butBaruActionPerformed(java.awt.event.ActionEvent

evt) {

tfUang.setText("");

tfSusuk.setText("");

tfTotal.setText("");

tfNama.setText("");

if (cbAyam.isSelected() == true){

cbAyam.setSelected(false);

tfAyam.setEditable(false);

tfAyam.setText("");

Page 408: Laporan DKP Kelompok 1 SISKOM 2012

408

hargaAyam.setText("");

}

else {tfAyam.setText("");

hargaAyam.setText("");}

if (cbBangka.isSelected() == true){

cbBangka.setSelected(false);

tfBangka.setEditable(false);

tfBangka.setText("");

hargaBangka.setText("");

}

else{tfBangka.setText("");

hargaBangka.setText("");}

if (cbJawa.isSelected() == true){

cbJawa.setSelected(false);

tfJawa.setEditable(false);

tfJawa.setText("");

hargaJawa.setText("");

}

else{tfJawa.setText("");

hargaJawa.setText("");}

if (cbMedan.isSelected() == true){

cbMedan.setSelected(false);

tfMedan.setEditable(false);

tfMedan.setText("");

hargaMedan.setText("");

}

else {tfMedan.setText("");

hargaMedan.setText("");}

if (cbRamen.isSelected() == true){

cbRamen.setSelected(false);

tfRamen.setEditable(false);

tfRamen.setText("");

hargaRamen.setText("");

Page 409: Laporan DKP Kelompok 1 SISKOM 2012

409

}

else{tfRamen.setText("");

hargaRamen.setText("");}

if (cbSoda.isSelected() == true){

cbSoda.setSelected(false);

tfSoda.setEditable(false);

tfSoda.setText("");

hargaSoda.setText("");

}

else{tfSoda.setText("");

hargaSoda.setText("");}

if (cbCampur.isSelected() == true){

cbCampur.setSelected(false);

tfCampur.setEditable(false);

tfCampur.setText("");

hargaCampur.setText("");

}

else{tfCampur.setText("");

hargaCampur.setText("");}

if (cbTeh.isSelected() == true){

cbTeh.setSelected(false);

tfTeh.setEditable(false);

tfTeh.setText("");

hargaTeh.setText("");

}

else{tfTeh.setText("");

hargaTeh.setText("");}

if (cbJeruk.isSelected() == true){

cbJeruk.setSelected(false);

tfJeruk.setEditable(false);

tfJeruk.setText("");

hargaJeruk.setText("");

}

Page 410: Laporan DKP Kelompok 1 SISKOM 2012

410

else{tfJeruk.setText("");

hargaJeruk.setText("");

}

if (cbKerupuk.isSelected() == true){

cbKerupuk.setSelected(false);

tfKerupuk.setEditable(false);

tfKerupuk.setText("");

hargaKerupuk.setText("");

}

else{tfKerupuk.setText("");

hargaKerupuk.setText("");

}

}

// Coding diatas digunakan sebagai :

// Pengaturan ketika tombol MULAI BARU di klik ,

akan mengeset semua aksi yg telah dilakukan

sebelumnya .

private void

dataActionPerformed(java.awt.event.ActionEvent

evt) {

System.out.println("-------------------

RUMAH MAKAN MIE-------------------");

Tanggal tgl = new Tanggal();

System.out.println("Pada :

"+tgl.getTanggal());

System.out.println("Pelanggan : "+

tfNama.getText());

System.out.println("Membeli : ");

if (cbAyam.isSelected() == true){

Page 411: Laporan DKP Kelompok 1 SISKOM 2012

411

System.out.println(tfAyam.getText()+" porsi

mie ayam seharga Rp" +hargaAyam.getText()+",-");

}

if (cbBangka.isSelected() == true){

System.out.println(tfBangka.getText()+"

porsi mie bangka seharga Rp"

+hargaBangka.getText()+",-");

}

if (cbJawa.isSelected() == true){

System.out.println(tfJawa.getText()+" porsi

mie jawa seharga Rp" +hargaJawa.getText()+",-");

}

if (cbMedan.isSelected() == true){

System.out.println(tfMedan.getText()+" porsi

mie medan seharga Rp" +hargaMedan.getText()+",-");

}

if (cbRamen.isSelected() == true){

System.out.println(tfRamen.getText()+" porsi

mie ramen seharga Rp" +hargaRamen.getText()+",-");

}

if (cbSoda.isSelected() == true){

System.out.println(tfSoda.getText()+" soda

seharga Rp" +hargaSoda.getText()+",-");

}

if (cbCampur.isSelected() == true){

System.out.println(tfCampur.getText()+" es

campur seharga Rp" +hargaCampur.getText()+",-");

}

if (cbTeh.isSelected() == true){

System.out.println(tfTeh.getText()+" Teh

seharga Rp" +hargaTeh.getText()+",-");

}

if (cbJeruk.isSelected() == true){

Page 412: Laporan DKP Kelompok 1 SISKOM 2012

412

System.out.println(tfJeruk.getText()+"

Lemontea seharga Rp" +hargaJeruk.getText()+",-");

}

if (cbKerupuk.isSelected() == true){

System.out.println(tfKerupuk.getText()+"

Kerupuk seharga Rp" +hargaKerupuk.getText()+",-");

}

System.out.println("");

System.out.println("Total Harga :

" +tfTotal.getText()+"");

System.out.println("Uang yang dibayarkan :

Rp" +tfUang.getText()+",-");

System.out.println("Kembalian :

" +tfSusuk.getText()+"");

System.out.println("------------------------

------------------------------");

System.out.println("");

System.out.println("::Terima kasih atas

kunjungannya::");

System.out.println("");

}

// Coding diatas digunakan sebagai :

// Pengaturan ketika tombol STRUK di klik , akan

menampilkan sajian yang telah dibeli

private void

simpanActionPerformed(java.awt.event.ActionEvent

evt) {

jTable1.setValueAt(tfNama.getText(),

baris, 0);

jTable1.setValueAt(tfTotal.getText(),

baris, 1);

Page 413: Laporan DKP Kelompok 1 SISKOM 2012

413

jTable1.setValueAt(tfUang.getText(),

baris, 2);

jTable1.setValueAt(tfSusuk.getText(),

baris, 3);

baris++;

}

// Coding diatas digunakan sebagai :

// Pengaturan ketika tombol SIMPAN di klik , akan

menyimpan data nama , total harga , uang ,

kembalian kedalam table

private void

hapusActionPerformed(java.awt.event.ActionEvent

evt) {

baris--;

jTable1.setValueAt("", baris, 0);

jTable1.setValueAt("", baris, 1);

jTable1.setValueAt("", baris, 2);

jTable1.setValueAt("", baris, 3);

}

// Coding diatas digunakan sebagai :

// Pengaturan ketika tombol HAPUS di klik akan

menghapus data dalam tabel

private void

butKeluarActionPerformed(java.awt.event.ActionEven

t evt) {

System.exit(0);

}

// Coding diatas digunakan sebagai :

Page 414: Laporan DKP Kelompok 1 SISKOM 2012

414

// Pengaturan ketika tombol KELUAR di klik , akan

meng-exit-kan program

/**

* @param args the command line arguments

*/

public static void main(String args[]) {

java.awt.EventQueue.invokeLater(new

Runnable() {

public void run() {

new struk().setVisible(true);

}

});

}

// Variables declaration - do not modify

private javax.swing.JButton butBaru;

private javax.swing.JButton butKeluar;

private javax.swing.JButton butSusuk;

private javax.swing.JButton butTotal;

private javax.swing.JCheckBox cbAyam;

private javax.swing.JCheckBox cbBangka;

private javax.swing.JCheckBox cbCampur;

private javax.swing.JCheckBox cbJawa;

private javax.swing.JCheckBox cbJeruk;

private javax.swing.JCheckBox cbKerupuk;

private javax.swing.JCheckBox cbMedan;

private javax.swing.JCheckBox cbRamen;

private javax.swing.JCheckBox cbSoda;

private javax.swing.JCheckBox cbTeh;

private javax.swing.JTextField hargaAyam;

private javax.swing.JTextField hargaBangka;

private javax.swing.JTextField hargaCampur;

Page 415: Laporan DKP Kelompok 1 SISKOM 2012

415

private javax.swing.JTextField hargaJawa;

private javax.swing.JTextField hargaJeruk;

private javax.swing.JTextField hargaKerupuk;

private javax.swing.JTextField hargaMedan;

private javax.swing.JTextField hargaRamen;

private javax.swing.JTextField hargaSoda;

private javax.swing.JTextField hargaTeh;

private javax.swing.JLabel jLabel1;

private javax.swing.JLabel jLabel2;

private javax.swing.JLabel jLabel3;

private javax.swing.JLabel jLabel4;

private javax.swing.JLabel jLabel5;

private javax.swing.JLabel jLabel6;

private javax.swing.JLabel jLabel7;

private javax.swing.JTable jTable1;

private javax.swing.JButton simpan;

private javax.swing.JButton data;

private javax.swing.JButton hapus;

private javax.swing.JScrollPane jScrollPane1;

private javax.swing.JTextField tfAyam;

private javax.swing.JTextField tfBangka;

private javax.swing.JTextField tfCampur;

private javax.swing.JTextField tfJawa;

private javax.swing.JTextField tfJeruk;

private javax.swing.JTextField tfKerupuk;

private javax.swing.JTextField tfMedan;

private javax.swing.JTextField tfNama;

private javax.swing.JTextField tfRamen;

private javax.swing.JTextField tfSoda;

private javax.swing.JTextField tfSusuk;

private javax.swing.JTextField tfTeh;

private javax.swing.JTextField tfTotal;

private javax.swing.JTextField tfUang;

Page 416: Laporan DKP Kelompok 1 SISKOM 2012

416

// End of variables declaration

}

// Coding diatas digunakan sebagai :

// Pendeklarasian variabel untuk masing masing

komponen form yang telah digunakan .

Kelas Tanggal.java :

/*

* To change this template, choose Tools |

Templates

* and open the template in the editor.

*/

/**

*

* @author RINGGAS

*/

import java.util.Date;

import java.text.DateFormat;

import java.text.SimpleDateFormat;

public class Tanggal {

public String getTanggal() {

DateFormat dateFormat = new

SimpleDateFormat("yyyy/MM/dd HH:mm:ss");

Date date = new Date();

return dateFormat.format(date);

}

}

Page 417: Laporan DKP Kelompok 1 SISKOM 2012

417

4.2. Tampilan Program

Gambar 2 Tampilan awal

Gambar 3 Tampilan mengisi nama dan memilih menu

Page 418: Laporan DKP Kelompok 1 SISKOM 2012

418

Gambar 4 Tampilan mengisi jumlah pesanan

Gambar 5 Tampilan menekan tombol TOTAL HARGA

Page 419: Laporan DKP Kelompok 1 SISKOM 2012

419

Gambar 6 Tampilan mengisi uang yang dibayarkan

Gambar 7 Tampilan setelah menekan tombol KEMBALIAN

Page 420: Laporan DKP Kelompok 1 SISKOM 2012

420

Gambar 8 Tampilan setelah menekan tombol STRUK

Gambar 9 Tampilan setelah menekan tombol SIMPAN

Page 421: Laporan DKP Kelompok 1 SISKOM 2012

421

Gambar 10 Tampilan sebelum menekan tombol HAPUS

Gambar 10 Tampilan setelah menekan tombol HAPUS

BAB V

Page 422: Laporan DKP Kelompok 1 SISKOM 2012

422

PENUTUP

5.1. Kesimpulan

1. GUI sangat jelas kaitanya dengan kegiatan penggunaan suatu aplikasi

dalam komputer yang sering digunakan.

2. GUI mempermudah user dalam penggunaannya, dengan tampilan yang

friendly seta ergonomis, user dengan mudah dapat menyesuaikan aplikasi-

aplikasi .

3. GUI membantu didalam interface yang dapat dipahami penggunaannya.

Sehingga antara user dan sistem, tidak terjadi misscommuncation dalam

menerapkan sistem komputerisasi.

5.2. Saran

1. Kuasai dulu bahasa JAVA agar lebih mudah dipahami, penggunaan GUI

pun lebih mudah digunakan .

2. Gunakan JDK versi terbaru agar softwarenya lebih up to date.

Page 423: Laporan DKP Kelompok 1 SISKOM 2012

423

DAFTAR PUSTAKA

JENI ebook pdf – GUI (Graphical User Interface)

http://id.wikipedia.org/wiki/Java

Kannedy , Eko Kurniawan ,Pemrograman GUI Menggunakan Java dan

NetBeans .2000

Page 424: Laporan DKP Kelompok 1 SISKOM 2012

424

BIOGRAFI PENULIS

Bagus Lingga Tudanto ( 21120110110033 )

Anak bungsu dari lima bersaudara ini lahir dari pasangan

suami-istri Ignatius Sudarto - Bernadine Sri Hastuti di sebuah

kota di Jawa Tengah yaitu Surakarta pada 25 April 1992 .

Riwayat Pendidikannya adalah TK Santa Theresia Semarang , SD Marsudirini

Gedangan Semarang , SMP Negeri 6 Semarang , SMA Negeri 6 Semarang dan

ketika makalah ini dibuat sedang menempuh pendidikan sebagai Mahasiswa

Fakultas Teknik S1 Sistem Komputer di Universitas Diponegoro

Pembimbing

Andhika Dewanta

NIM 21120110130073

Semarang, 28 Juni 2012

Mengetahui

KoordinatorPraktikum

Noer Tjahja Moekthi P.

NIM L2N009024

Page 425: Laporan DKP Kelompok 1 SISKOM 2012

425

Makalah Tugas Akhir

Praktikum Dasar Komputer dan Pemrograman

(Babo) Hitung Nilai Gizi Makanan Anda

Anggi Anugraha Putra (21120111120001)

Jurusan Sistem Komputer, Fakultas Teknik, Universitas Diponegoro

Jl. Prof. Sudharto, Tembalang, Semarang, Indonesia

Abstrak – Komputer dan gizi belakang ini menjadi sorotan pemerhati IT,

dimana para pemerhati gizi berusaha membuat suatu program/software mengenai gizi

untuk tujuan tertentu, seperti perhitungan kandungan zat gizi, konsultasi gizi,

pengolahan data dan lain-lain.

Memilih makanan dan melakukan perhitungan kalori dengan tangan dapat

berlangsung cukup lama. Nutrisi perangkat lunak dapat membuat sesuatu lebih

mudah. Dengan program gizi perangkat lunak Anda dapat memilih makanan yang

biasa Anda makan dan menyesuaikan ukuran porsi makanan dalam kelompok

makanan yang berbeda untuk di makan dengan rasio makronutrien yang

diinginkan.

Kebanyakan perangkat lunak program gizi datang dengan database ribuan

makanan. Anda dapat memilih makanan yang Anda makan dengan klik mouse

dan kemudian menyesuaikan ukuran porsi. Anda dapat memasukkan semua

makanan Anda akan makan di makan. Perangkat lunak ini akan menghitung

jumlah kalori serta jumlah protein, karbohidrat, lemak, vitamin dan mineral.

Program Hitung Nilai Gizi Makanan (Babo) perangkat lunak akan

memungkinkan anda untuk memilih makanan yang anda makan dan kemudian

melaporkan nilai gizi dari makanan yang anda pilih.

Page 426: Laporan DKP Kelompok 1 SISKOM 2012

426

BAB I

PENDAHULUAN

1.1. Latar Belakang

Berawal dari tahun 1970 ketika professor Niklaus Wirth

mengembangkan Bahasa Pascal di Politeknik Zurich, Swiss. Salah satu

Perkembangan itu adalah Bahasa Pemrograman Dhelpi. Yang hasilnya,

Bahasa Pemrograman Dhelpi sudah banyak digunakan pada saat ini. Dhelpi

mendukung pemrograman berbasis Objek, menggunakan bahasa tingkat

tinggi yang yang memungkinkan terjadinya perkembangan secara cepat

(Rapid Aplication Development / RAD). Bahasa Pemrograman Delphi

cukup banyak mendukung server DataBase seperti MySQL, Oracle, SQL

Server dll ygng mempermudah dalam membuat Program yang

menggunakan Database. Ketika Kompilasi program, filenya berupa

executable yang dapat dieksekusi.

Dalam kehidupan sehari-hari kita di zaman sekarang ini kita temukan,

bahwa kita sudah dimudahkan dengan adanya program komputer dalam

melakukan aktifitas kita dalam pekerjaan, termasuk didalam bidang

pembayaran. Salah satu contohnya adalah untuk menhitung nilai gizi

makanan (Babo). Proagram ini memudahkan kita untuk menghitung nilai

gizi makanan yang kita makan secara cepat dibandingkan menghitung

secara manual yang memerlukan waktu relatif lama.

Dengan program gizi perangkat lunak anda dapat memilih makanan

yang biasa anda makan dan menyesuaikan ukuran porsi makanan dalam

kelompok makanan yang berbeda untuk di makan dengan rasio

makronutrien yang diinginkan.

Page 427: Laporan DKP Kelompok 1 SISKOM 2012

427

1.2. Tujuan

a. Sebagai Tugas Praktikum Dasar Komputer Dan Pemrograman Untuk

menerapkan ilmu yang didapat oleh praktikan selama praktikum

khususnya Pemrograman Delphi.

b. Lebih mengetahui tentang Pemrograman Dhelpi dan Menerapkannya

dengan program sederhana yang dibuat oleh praktikan.

c. Program Babo untuk membantu menhitung nilai gizi makanan dengan

cepat dan mudah.

1.3. Pembatasan Masalah

Dalam pembuatan makalah ini batasan-batasan membahas tentang

program bahasa Delphi dalam aplikasinya di Perhitungan Nilai Gizi

Makanan.

1.5. Sistematika Penulisan

BAB PENDAHULUAN berisi latar belakang masalah, rumusan

masalah, tujuan penulisan, manfaat, batasan masalah, serta sistematika

penulisan.

BAB DASAR TEORI membahas mengenai Mengenal Borland

Delphi 7, Sejarah Borland Delphi 7, dan Kelebihan Borland Delphi

7.

BAB ALGORITMA menguraikan metode yang digunakan dalam

pembuatan program SCENERY, disajikan dalam bentuk Pseudocode

dan Bagan Alir atau Flowchart.

Page 428: Laporan DKP Kelompok 1 SISKOM 2012

428

BAB ANALISA DAN PEMBAHASAN berisi tentang analisa dan

pembahasan teknis mengenai pengolahan data yang dilakukan oleh

program Babo.

BAB PENUTUP menyajikan kesimpulan dan saran berdasarkan bab

hasil analisa dan pembahasan agar dapat memberikan gambaran

konsep pengembangan program SCENERY.

Page 429: Laporan DKP Kelompok 1 SISKOM 2012

429

BAB II

DASAR TEORI

2.1. Mengenal Borland Delphi 7

Delphi adalah sebuah bahasa pemrograman visual di lingkungan

windows ( under windows) yang menggunakan bahasa pascal sebagai

Compiler. Keberadaan bahasa pemrograman Delphi tidak bisa dipisahkan

dari bahasa Turbo pascal yang diluncurkan pada tahun 1983 oleh Borland

International Incorporation. Turbo pascal memang dirancang untuk

dijalankan pada operasi DOS (Disk Operating System) yang merupakan

sistem operasi yang banyak digunakan pada saat ini. Seiring dengan

perkembangan zaman, dimana sistem operasi mulai bergeser ke sistem

operasi windows, maka borland International merilis Turbo Pascal for

windows yang dijalankan dibawah sistem operasi windows 3.X.

2.2. Sejarah Borland Delphi 7

pada tahun 1992 muncul bahasa pemrograman baru bernama

Borland Pascal 7 yang merupakan penggabungan dari Turbo Pascal dan

Turbo pascal for windows. Namun ternyata bahasa pemrograman baru

tersebut ternyata masih sulit di gunakan. Trend penggunaan bahasa

pemrograman visual untuk membangun sebuah aplikasi telah mendorong

Borland membuat bahasa pemrograman baru pada tahun 1995

diperkenalkan kepengguna komputer sebuah bahasa pemrograman visual

yang berbasis bahasa pascal. Bahasa pemrograman baru tersebut diberi

nama Borland Delphi setahun kemudian versi ke dua dari delphi dilempar

kepasaran.

Penggunaan delphi dapat mempersingkat waktu pemrograman,

karena anda tidak perlu lagi menuliskan kode program yang rumit dan

panjang untuk menggambar, meletakkan dan mengatur komponen. Selain

itu anda dapat menyusun aplikasi yang lebih interaktif. Delphi menyediakan

Page 430: Laporan DKP Kelompok 1 SISKOM 2012

430

cukup banyak pilihan komponen interface aplikasi, antara lain berupa

tombol menu, drop down, ataupun menu pop up, kotak text, radio button,

check box, dan sebagainya. Bahkan ada berbagai mascam komponen Skin

tampilan yang beragam yang disediakan oleh beberapa vendor lainnya,

seperti, SUIPack, Sxskincomponents, dan lain sebagainya. Anda tinggal

memilih komponen yang dibutuhkan dengan klik mouse, mengatur

tampilannya kemudian menuliskan sedikit kode program, maka aplikasi

anda siap dijalankan.

Delphi 7.0, versi terbaru yang dikeluarkan oleh Borland, memiliki

support yang sangat tinggi terhadap data base-data base yang sudah terkenal

(seperti MS Accsses, Paradox, Foxpro, Dbase, Oracce, dan lain sebagainya),

dan dilengkapi dengan objek-objek yang baru sehingga memudahkan

pembuatan database maupun program lainnya (Game, Utility dan lainnya).

2.3 Kelebihan Borland Delphi 7

Borland delphi 7.0 merupakan pilihan bagi sebagian kalangan

programmer untuk membuat aplikasi. Hal ini disebabkan kelebihan yang

ada pada borland delphi 7.0 berikut ini beberapa kelebihan borlan delphi 7.0

antara lain :

1. Berbasis Objek Oriented programming, seperti bagian yang ada pada

program dipandang sebagai suatu objek yang mempunyai sifat-sifat yang

dapat diubah dan diatur , sehingga kita dapat membuat tampilan sebuah

program dengan desain kita sendiri tanpa harus membuat codding yang

panjang.

2. Suatu file EXE, setelah anda merancang program pada IDE Delphi akan

mengkomplikasinya pada sebuah file executable tunggal. Program yang

anda buat dapat langsung didistribusikan dan dijalankan pada komputer

lain tanpa perlu menyertakan file lain, kecuali file yang beretensi *.exe

atau Applikasi tersebut membutuhkan file lain seperti database, koneksi

atau file pendukung lainnya.

3. Borland delphi 7.0 hadir bersama borland Kylix 3 yang berbasis Linux,

bila ingin berganti flattform dari Windows ke Linux maka aplikasi yang

Page 431: Laporan DKP Kelompok 1 SISKOM 2012

431

dibuat di Delphi dapat dijalankan di Kylix 3 yang dikarenakan kedua

produk tersebut merupakan produk Borland.

4. Pengembangan aplikasi secara cepat (Rapid Application Development

/RAD)

5. Menggunakan bahasa tingkat tinggi

6. Delphi menyediakan banyak sekali komponen yang banyak digunakan.

Selain itu banyak juga komponen yang bersumber dari pihak ketiga yang

biasanya disertai dengan dokumentasi, source code dan lain-lain.

Page 432: Laporan DKP Kelompok 1 SISKOM 2012

432

BAB III

ALGORITMA

3.1. Algoritma Pseudocode

DEKLARASI

total1,protein,lemak,karbo,kalsium,posfor,besi,vita,vitb,vit

c: real;

ALGORITMA

If(jika checkbox bernilai benar)

then begin

jenis makanan ← jenis makanan+kandungan gizi;

(Maka akan hasil akan menampilkan jumlah nilai gizi checkbox

yang bernilai benar)

else if (jika checkbox bernilai salah)

then begin jenis makanan ← jenis makanan-kandungan gizi;

(akan megurangi nilai jumlah gizi)

end;

Mencentang checkbox jenis makanan yang disediakan

Menekan tombol button ok untuk menampilkan hasil nilai gizi makanan

yang dicentang

Menekan tombol button reset untuk mengulangi dan menghapus semua

perhitungan nilai gizi makanan

Page 433: Laporan DKP Kelompok 1 SISKOM 2012

433

3.2. Algoritma Flowchart

Page 434: Laporan DKP Kelompok 1 SISKOM 2012

434

BAB IV

ANALISA DAN PEMBAHASAN

4.1. Source Code Program

unit asd;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics,

Controls, Forms,

Dialogs, StdCtrls, ExtCtrls;

type

Tform1 = class(TForm)

Panel1: TPanel;

Label3: TLabel;

Bevel2: TBevel;

Edit2: TEdit;

Edit3: TEdit;

Edit4: TEdit;

Edit5: TEdit;

Edit6: TEdit;

Edit7: TEdit;

Label1: TLabel;

Label4: TLabel;

Label5: TLabel;

Label6: TLabel;

Label7: TLabel;

Edit8: TEdit;

Edit9: TEdit;

Edit10: TEdit;

Edit11: TEdit;

Label13: TLabel;

Label8: TLabel;

Label9: TLabel;

Label10: TLabel;

Label11: TLabel;

Label15: TLabel;

Label21: TLabel;

Label24: TLabel;

Page 435: Laporan DKP Kelompok 1 SISKOM 2012

435

Label14: TLabel;

Label16: TLabel;

Label17: TLabel;

Label18: TLabel;

Label19: TLabel;

Label20: TLabel;

Label22: TLabel;

Label23: TLabel;

CheckBox1: TCheckBox;

CheckBox2: TCheckBox;

Button2: TButton;

CheckBox3: TCheckBox;

CheckBox4: TCheckBox;

CheckBox5: TCheckBox;

CheckBox6: TCheckBox;

CheckBox7: TCheckBox;

CheckBox8: TCheckBox;

CheckBox9: TCheckBox;

CheckBox10: TCheckBox;

CheckBox11: TCheckBox;

CheckBox12: TCheckBox;

Button1: TButton;

procedure CheckBox1Click(Sender: TObject);

procedure CheckBox2Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure CheckBox3Click(Sender: TObject);

procedure CheckBox4Click(Sender: TObject);

procedure CheckBox5Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure CheckBox6Click(Sender: TObject);

procedure CheckBox7Click(Sender: TObject);

procedure CheckBox8Click(Sender: TObject);

procedure CheckBox9Click(Sender: TObject);

procedure CheckBox10Click(Sender: TObject);

procedure CheckBox11Click(Sender: TObject);

procedure CheckBox12Click(Sender: TObject);

private

{ Private declarations }

Page 436: Laporan DKP Kelompok 1 SISKOM 2012

436

public

{ Public declarations }

end;

var

Form1: TForm1;

total1,protein,lemak,karbo,kalsium,posfor,besi,vita,vitb,vitc

: real;(Variabel yang digunakan)

implementation

{$R *.dfm}

procedure Tform1.CheckBox1Click(Sender: TObject);

begin

if CheckBox1.Checked=true then begin (Jika bernilai benar akan

menampilkan jumlah nilai gizi)

total1:=total1+83;

protein:=protein+2;

lemak:=lemak+0.1;

karbo:=karbo+19.1;

kalsium:=kalsium+11;

posfor:=posfor+56;

besi:=besi+1;

vita:=vita+0;

vitb:=vitb+0.11;

vitc:=vitc+17;

end

else if CheckBox1.Checked=false then begin (Jika bernilai salah

maka akan menampilkan kurang dari jumlah nilai gizi)

total1:=total1-83;

protein:=protein-2;

lemak:=lemak-0.1;

karbo:=karbo-19.1;

kalsium:=kalsium-11;

posfor:=posfor-56;

besi:=besi-1;

vita:=vita-0;

vitb:=vitb-0.11;

Page 437: Laporan DKP Kelompok 1 SISKOM 2012

437

vitc:=vitc-17;

end;

end;

(Ulangi sampai jenis makanan berikutnya)

procedure Tform1.CheckBox2Click(Sender: TObject);

begin

if CheckBox2.Checked=true then begin

total1:=total1+41;

protein:=protein+2.5;

lemak:=lemak+2.5;

karbo:=karbo+5;

kalsium:=kalsium+50;

posfor:=posfor+45;

besi:=besi+1;

vita:=vita+200;

vitb:=vitb+0.08;

vitc:=vitc+2;

end

else if CheckBox2.Checked=false then begin

total1:=total1-41;

protein:=protein-2.5;

lemak:=lemak-2.5;

karbo:=karbo-5;

kalsium:=kalsium-50;

posfor:=posfor-45;

besi:=besi-1;

vita:=vita-200;

vitb:=vitb-0.08;

vitc:=vitc-2;

end;

end;

procedure Tform1.CheckBox3Click(Sender: TObject);

begin

Page 438: Laporan DKP Kelompok 1 SISKOM 2012

438

if CheckBox3.Checked=true then begin

total1:=total1+345;

protein:=protein+22.2;

lemak:=lemak+1.2;

karbo:=karbo+62.9;

kalsium:=kalsium+125;

posfor:=posfor+320;

besi:=besi+7;

vita:=vita+157;

vitb:=vitb+0.64;

vitc:=vitc+6;

end

else if CheckBox3.Checked=false then begin

total1:=total1-345;

protein:=protein-22.2;

lemak:=lemak-1.2;

karbo:=karbo-62.9;

kalsium:=kalsium-125;

posfor:=posfor-320;

besi:=besi-7;

vita:=vita-157;

vitb:=vitb-0.64;

vitc:=vitc-6;

end;

end;

procedure Tform1.CheckBox4Click(Sender: TObject);

begin

if CheckBox4.Checked=true then begin

total1:=total1+68;

protein:=protein+7.8;

lemak:=lemak+4.6;

karbo:=karbo+1.6;

kalsium:=kalsium+124;

posfor:=posfor+63;

besi:=besi+1;

vita:=vita+0;

vitb:=vitb+0.06;

vitc:=vitc+0;

Page 439: Laporan DKP Kelompok 1 SISKOM 2012

439

end

else if CheckBox4.Checked=false then begin

total1:=total1-68;

protein:=protein-7.8;

lemak:=lemak-4.6;

karbo:=karbo-1.6;

kalsium:=kalsium-124;

posfor:=posfor-63;

besi:=besi-1;

vita:=vita-0;

vitb:=vitb-0.06;

vitc:=vitc-0;

end;

end;

procedure Tform1.CheckBox5Click(Sender: TObject);

begin

if CheckBox5.Checked=true then begin

total1:=total1+302;

protein:=protein+18.2;

lemak:=lemak+25;

karbo:=karbo+0;

kalsium:=kalsium+14;

posfor:=posfor+200;

besi:=besi+2;

vita:=vita+810;

vitb:=vitb+0.03;

vitc:=vitc+0;

end

else if CheckBox5.Checked=false then begin

total1:=total1-302;

protein:=protein-18.2;

lemak:=lemak-25;

karbo:=karbo-0;

kalsium:=kalsium-14;

posfor:=posfor-200;

besi:=besi-2;

vita:=vita-810;

vitb:=vitb-0.03;

Page 440: Laporan DKP Kelompok 1 SISKOM 2012

440

vitc:=vitc-0;

end;

end;

procedure Tform1.Button2Click(Sender: TObject);

begin

edit2.Text:=floattostr(total1);

edit3.Text:=floattostr(protein);

edit4.Text:=floattostr(lemak);

edit5.Text:=floattostr(karbo);

edit6.Text:=floattostr(kalsium);

edit7.Text:=floattostr(posfor);

edit8.Text:=floattostr(besi);

edit9.Text:=floattostr(vita);

edit10.Text:=floattostr(vitb);

edit11.Text:=floattostr(vitc);

end;

procedure Tform1.Button1Click(Sender: TObject);

begin

CheckBox1.Checked:=false;

CheckBox2.Checked:=false;

CheckBox3.Checked:=false;

CheckBox4.Checked:=false;

CheckBox5.Checked:=false;

CheckBox6.Checked:=false;

CheckBox7.Checked:=false;

CheckBox8.Checked:=false;

CheckBox9.Checked:=false;

CheckBox10.Checked:=false;

CheckBox11.Checked:=false;

CheckBox12.Checked:=false;

Edit2.Text:='';

Edit3.Text:='';

Edit4.Text:='';

Edit5.Text:='';

Edit6.Text:='';

Page 441: Laporan DKP Kelompok 1 SISKOM 2012

441

Edit7.Text:='';

Edit8.Text:='';

Edit9.Text:='';

Edit10.Text:='';

Edit11.Text:='';

end;

procedure Tform1.CheckBox6Click(Sender: TObject);

begin

if CheckBox6.Checked=true then begin

total1:=total1+207;

protein:=protein+18.8;

lemak:=lemak+14;

karbo:=karbo+0;

kalsium:=kalsium+11;

posfor:=posfor+120;

besi:=besi+3;

vita:=vita+30;

vitb:=vitb+0.08;

vitc:=vitc+0;

end

else if CheckBox6.Checked=false then begin

total1:=total1-207;

protein:=protein-18.8;

lemak:=lemak-14;

karbo:=karbo-0;

kalsium:=kalsium-11;

posfor:=posfor-120;

besi:=besi-3;

vita:=vita-30;

vitb:=vitb-0.08;

vitc:=vitc-0;

end;

end;

procedure Tform1.CheckBox7Click(Sender: TObject);

begin

if CheckBox7.Checked=true then begin

total1:=total1+130.7;

Page 442: Laporan DKP Kelompok 1 SISKOM 2012

442

protein:=protein+2.16;

lemak:=lemak+0;

karbo:=karbo+28.62;

kalsium:=kalsium+3.02;

posfor:=posfor+0.43;

besi:=besi+1.5;

vita:=vita+0;

vitb:=vitb+0;

vitc:=vitc+0;

end

else if CheckBox7.Checked=false then begin

total1:=total1-130.7;

protein:=protein-2.16;

lemak:=lemak-0;

karbo:=karbo-28.62;

kalsium:=kalsium-3.02;

posfor:=posfor-0.43;

besi:=besi-1.5;

vita:=vita-0;

vitb:=vitb-0;

vitc:=vitc-0;

end;

end;

procedure Tform1.CheckBox8Click(Sender: TObject);

begin

if CheckBox8.Checked=true then begin

total1:=total1+154;

protein:=protein+16.6;

lemak:=lemak+9.2;

karbo:=karbo+0;

kalsium:=kalsium+11;

posfor:=posfor+124;

besi:=besi+1;

vita:=vita+0;

vitb:=vitb+0.09;

vitc:=vitc+0;

end

Page 443: Laporan DKP Kelompok 1 SISKOM 2012

443

else if CheckBox8.Checked=false then begin

total1:=total1-154;

protein:=protein-16.6;

lemak:=lemak-9.2;

karbo:=karbo-0;

kalsium:=kalsium-11;

posfor:=posfor-124;

besi:=besi-1;

vita:=vita-0;

vitb:=vitb-0.09;

vitc:=vitc-0;

end;

end;

procedure Tform1.CheckBox9Click(Sender: TObject);

begin

if CheckBox9.Checked=true then begin

total1:=total1+162;

protein:=protein+12.8;

lemak:=lemak+11.5;

karbo:=karbo+0;

kalsium:=kalsium+54;

posfor:=posfor+180;

besi:=besi+3;

vita:=vita+900;

vitb:=vitb+0.1;

vitc:=vitc+0;

end

else if CheckBox9.Checked=false then begin

total1:=total1-162;

protein:=protein-12.8;

lemak:=lemak-11.5;

karbo:=karbo-0;

kalsium:=kalsium-54;

posfor:=posfor-180;

besi:=besi-3;

vita:=vita-900;

vitb:=vitb-0.1;

vitc:=vitc-0;

Page 444: Laporan DKP Kelompok 1 SISKOM 2012

444

end;

end;

procedure Tform1.CheckBox10Click(Sender: TObject);

begin

if CheckBox10.Checked=true then begin

total1:=total1+129;

protein:=protein+20;

lemak:=lemak+4.8;

karbo:=karbo+0;

kalsium:=kalsium+20;

posfor:=posfor+150;

besi:=besi+2;

vita:=vita+150;

vitb:=vitb+0.05;

vitc:=vitc+0;

end

else if CheckBox10.Checked=false then begin

total1:=total1-129;

protein:=protein-20;

lemak:=lemak+4.8;

karbo:=karbo-0;

kalsium:=kalsium-20;

posfor:=posfor-150;

besi:=besi-2;

vita:=vita-150;

vitb:=vitb-0.05;

vitc:=vitc-0;

end;

end;

procedure Tform1.CheckBox11Click(Sender: TObject);

begin

if CheckBox11.Checked=true then begin

total1:=total1+75;

protein:=protein+16.1;

lemak:=lemak+0.7;

Page 445: Laporan DKP Kelompok 1 SISKOM 2012

445

karbo:=karbo+0.1;

kalsium:=kalsium+32;

posfor:=posfor+200;

besi:=besi+1.8;

vita:=vita+0;

vitb:=vitb+0.08;

vitc:=vitc+0;

end

else if CheckBox11.Checked=false then begin

total1:=total1-75;

protein:=protein-16.1;

lemak:=lemak-0.7;

karbo:=karbo-0.1;

kalsium:=kalsium-32;

posfor:=posfor-200;

besi:=besi-1.8;

vita:=vita-0;

vitb:=vitb-0.08;

vitc:=vitc-0;

end;

end;

procedure Tform1.CheckBox12Click(Sender: TObject);

begin

if CheckBox12.Checked=true then begin

total1:=total1+191;

protein:=protein+13.8;

lemak:=lemak+3.8;

karbo:=karbo+14.1;

kalsium:=kalsium+210;

posfor:=posfor+250;

besi:=besi+1;

vita:=vita+200;

vitb:=vitb+0.05;

vitc:=vitc+0;

end

else if CheckBox12.Checked=false then begin

total1:=total1-191;

protein:=protein-13.8;

Page 446: Laporan DKP Kelompok 1 SISKOM 2012

446

lemak:=lemak-3.8;

karbo:=karbo-14.1;

kalsium:=kalsium-210;

posfor:=posfor-250;

besi:=besi-1;

vita:=vita-200;

vitb:=vitb-0.05;

vitc:=vitc-0;

end;

end;

end.

Page 447: Laporan DKP Kelompok 1 SISKOM 2012

447

4.2. Tampilan Program

Gambar 1.2 Hasil tampilan awal program

Page 448: Laporan DKP Kelompok 1 SISKOM 2012

448

Gambar 1.2 Hasil running setelah memilih makanan

Page 449: Laporan DKP Kelompok 1 SISKOM 2012

449

BAB V

PENUTUP

5.1. Kesimpulan

1. Delphi 7 merupakan salah satu software yang digunakan untuk

membuat suatu program dengan menggunakan bahasa pemrograman

secara console maupun visual berbasis bahasa Pascal.

2. Bahasa delphi merupakan bahasa pemrograman yang cukup mudah

untuk dipahami cara penggunaannya

3. Dalam suatu pemrograman dibutuhkan suatu susunan yang terstruktur

sehingga program tersebut dapat dijalankan dengan lancar.

4. Algoritma dan Flowchart merupakan proses untuk menentukan alur

program yang mendukung agar bahasa pemrograman menjadi

terstruktur.

5. Program Menghitung Nilai Gizi Makanan (Babo) ini bisa

mempermudah setiap orang mengetahui nilai gizi makanannya.

5.2. Saran

1. Apabila mau membuat program, rencanakan dulu model dari program

yang mau dibuat jauh-jauh hari supaya waktu yang dibutuhkan dalam

pembuatan codingnya tidak terlalu tergesa-gesa.

2. Gunakan bahasa yang dirasa mudah untuk dipahami.

Page 450: Laporan DKP Kelompok 1 SISKOM 2012

450

DAFTAR PUSTAKA

Andris Faisal : Ilmu Tambahan/belajar_IT Mengenal Borland Delphi 7.0.html

Detik Kampung 1. Sejarah Perkembangan Delphi.html

Wikipedia.com

Modul Praktikum Dasar Komputer dan Pemrograman Sistem Komputer 2012

Daftar Komposisi Bahan Makanan Indonesia

Page 451: Laporan DKP Kelompok 1 SISKOM 2012

451

Makalah Tugas Akhir

Praktikum Dasar Komputer dan Pemrograman

PROGRAM PENJUALAN TIKET KERETAWISATA

Elad Oktarizo (21120111120002)

Jurusan Sistem Komputer, Fakultas Teknik, Universitas Diponegoro

Jl. Prof. Sudharto, Tembalang, Semarang, Indonesia

Abstrak – Pada era globalisasi seperti yang kita rasakan pada zaman

sekarang ini, menuntut kita untuk mengerti dengan terperkembangan teknologi

itu, kita sebagai objek nya terpaksa harus mengikuti perkembangan itu dengan

menggunakan barang-barang atau alat elektronik yang berteknologi itu yang

salah satu tujuannya adalah untuk memudahkan kita dalam beraktivitas

sehari-hari. Sudah banyak kita temukan alat elektronik yang kita temukan

yang meruapakan karya manusia untuk keperluan kita sehari-hari. Alat-alat

itu bukan hanya alat berbentuk fisik, tetapi juga alat berupa program yang kita

gunakan melalui perangkat yang salah satunya dinakan sebagai komputer,

sedangkan program itu sendiri sering kita dengar dengan sebutan Software.

Tapi, hanya menggunakan software saja tidak cukup, manusia akan terus

berusaha mewujudkan apa yang dia inginkan dengan menghubungkan

Software tersebut dengan mesin atau komputer, menterjemahkan dalam

bahasa yang dimengerti oleh mesin atau komputer. Hasilnya sampai saat

sekarang ini, sudah banyak kita temukan bahasa-bahasa yang sudah

diterjemahkan ke bahasa mesin, salahsatunya adalah pemrograman bahasa

Dhelpi yang berbasis Pascal.

Pascal merupakan bahasa dasar yang digunakan Delphi. Bahasa Pascal

dikembangkan pada tahun 1970 oleh professor Niklaus Wirth di Politeknik

Zurich, Swiss. Sampai saat ini sudah banyak kita temukan program dan

aplikasi yang diciptakan menggunakan bahasa Dhelpi dengan alasan bagi

sebagian orang bahasa pemrograman Dhelpi ini cukup mudah untuk dipahami.

Program Penjualan Tiket Kereta Wisata yang dibuat menggunakan Bahasa

Pemrograman Delphi juga mudah untuk digunakan. Operator penjualan hanya

Page 452: Laporan DKP Kelompok 1 SISKOM 2012

452

perlu memasukkan data pembeli seperti Nama, Alamat, No. Hp/Telepon serta

tanggal pembelian tiketnya. Setelah itu operator bisa menentukan jenis class

gerbong Cuma dengan meng Klik pilihannya saja dan akan keluar berapa

harganya dengan otomatis. Kemudian program akan mengeluarkan

perhitungan pembayarannya seperti halnya pembayaran di supermarket.

Page 453: Laporan DKP Kelompok 1 SISKOM 2012

453

BAB I

PENDAHULUAN

1.4. Latar Belakang

Berawal dari tahun 1970 ketika professor Niklaus Wirth

mengembangkan Bahasa Pascal di Politeknik Zurich, Swiss. Salah satu

Perkembangan itu adalah Bahasa Pemrograman Dhelpi. Yang hasilnya,

Bahasa Pemrograman Dhelpi sudah banyak digunakan pada saat ini. Dhelpi

mendukung pemrograman berbasis Objek, menggunakan bahasa tingkat

tinggi yang yang memungkinkan terjadinya perkembangan secara cepat

(Rapid Aplication Development / RAD). Bahasa Pemrograman Delphi

cukup banyak mendukung server DataBase seperti MySQL, Oracle, SQL

Server dll yang mempermudah dalam membuat Program yang

menggunakan Database. Ketika Kompilasi program, filenya berupa

executable yang dapat dieksekusi.

Dalam kehidupan sehari-hari kita di zaman sekarang ini kita temukan,

bahwa kita sudah dimudahkan dengan adanya program komputer dalam

melakukan aktifitas kita dalam pekerjaan, termasuk didalam bidang

pembayaran. Salah satu contohnya adalah untuk pembayaran tiket kereta

yang mau kita keli. Program Penjualan Tiket Kereta Wisata ini akan

mempermudah Operator untuk menentukan berapa biaya yang akan dibayar

oleh pembeli. Dan akan dilakukan perhitungan secara otomatis seperti

halnya pembayaran ketika kita membayar di kasir

1.5. Tujuan

Adapun maksud dan tujuan dari penulisan makalah ini adalah

a. Sebagai Tugas Praktikum Dasar Komputer Dan Pemrograman Untuk

menerapkan ilmu yang didapat oleh praktikan selama praktikum

khususnya Pemrograman Delphi.

b. Lebih mengetahui tentang Pemrograman Dhelpi dan Menerapkannya

dengan program sederhana yang dibuat oleh praktikan.

Page 454: Laporan DKP Kelompok 1 SISKOM 2012

454

1.6. Pembatasan Masalah

Dalam pembuatan makalah ini batasan-batasan membahas tentang

program bahasa Delphi dalam aplikasinya di Program Penjualan Tiket

Kereta Wisata.

1.7. Sistematika Penulisan

Adapun sistematika penulisan laporan praktikum adalah sebagai berikut :

HALAMAN COVER

BAB I PENDAHULUAN

1.1. Latar Belakang

1.2. Tujuan

1.3. Pembatasan Masalah

1.4. Sistematika Penulisan

BAB II DASAR TEORI

2.1 Mengenal Borland Delphi 7

2.2 Sejarah Borland Delphi 7

2.3 Kelebihan Borland Delphi 7

BAB III ALGORITMA

3.1. Algoritma Program

3.2. Flowchart

BAB IV ANALISA DAN PEMBAHASAN

4.1. Source Code Program

4.2. Tampilan Program

BAB V PENUTUP

5.1. Kesimpulan

5.2. Saran

DAFTAR PUSTAKA

Page 455: Laporan DKP Kelompok 1 SISKOM 2012

455

BAB II

DASAR TEORI

2.3. Mengenal Borland Delphi 7

Delphi adalah sebuah bahasa pemrograman visual di lingkungan

windows ( under windows) yang menggunakan bahasa pascal sebagai

Compiler. Keberadaan bahasa pemrograman Delphi tidak bisa dipisahkan

dari bahasa Turbo pascal yang diluncurkan pada tahun 1983 oleh Borland

International Incorporation. Turbo pascal memang dirancang untuk

dijalankan pada operasi DOS (Disk Operating System) yang merupakan

sistem operasi yang banyak digunakan pada saat ini. Seiring dengan

perkembangan zaman, dimana sistem operasi mulai bergeser ke sistem

operasi windows, maka borland International merilis Turbo Pascal for

windows yang dijalankan dibawah sistem operasi windows 3.X.

2.4. Sejarah Borland Delphi 7

pada tahun 1992 muncul bahasa pemrograman baru bernama

Borland Pascal 7 yang merupakan penggabungan dari Turbo Pascal dan

Turbo pascal for windows. Namun ternyata bahasa pemrograman baru

tersebut ternyata masih sulit di gunakan. Trend penggunaan bahasa

pemrograman visual untuk membangun sebuah aplikasi telah mendorong

Borland membuat bahasa pemrograman baru pada tahun 1995

diperkenalkan kepengguna komputer sebuah bahasa pemrograman visual

yang berbasis bahasa pascal. Bahasa pemrograman baru tersebut diberi

nama Borland Delphi setahun kemudian versi ke dua dari delphi dilempar

kepasaran.

Penggunaan delphi dapat mempersingkat waktu pemrograman,

karena anda tidak perlu lagi menuliskan kode program yang rumit dan

panjang untuk menggambar, meletakkan dan mengatur komponen. Selain

itu anda dapat menyusun aplikasi yang lebih interaktif. Delphi menyediakan

cukup banyak pilihan komponen interface aplikasi, antara lain berupa

tombol menu, drop down, ataupun menu pop up, kotak text, radio button,

Page 456: Laporan DKP Kelompok 1 SISKOM 2012

456

check box, dan sebagainya. Bahkan ada berbagai mascam komponen Skin

tampilan yang beragam yang disediakan oleh beberapa vendor lainnya,

seperti, SUIPack, Sxskincomponents, dan lain sebagainya. Anda tinggal

memilih komponen yang dibutuhkan dengan klik mouse, mengatur

tampilannya kemudian menuliskan sedikit kode program, maka aplikasi

anda siap dijalankan.

Delphi 7.0, versi terbaru yang dikeluarkan oleh Borland, memiliki

support yang sangat tinggi terhadap data base-data base yang sudah terkenal

(seperti MS Accsses, Paradox, Foxpro, Dbase, Oracce, dan lain sebagainya),

dan dilengkapi dengan objek-objek yang baru sehingga memudahkan

pembuatan database maupun program lainnya (Game, Utility dan lainnya).

2.4 Kelebihan Borland Delphi 7

Borland delphi 7.0 merupakan pilihan bagi sebagian kalangan

programmer untuk membuat aplikasi. Hal ini disebabkan kelebihan yang

ada pada borland delphi 7.0 berikut ini beberapa kelebihan borlan delphi 7.0

antara lain :

7. Berbasis Objek Oriented programming, seperti bagian yang ada pada

program dipandang sebagai suatu objek yang mempunyai sifat-sifat yang

dapat diubah dan diatur , sehingga kita dapat membuat tampilan sebuah

program dengan desain kita sendiri tanpa harus membuat codding yang

panjang.

8. Suatu file EXE, setelah anda merancang program pada IDE Delphi akan

mengkomplikasinya pada sebuah file executable tunggal. Program yang

anda buat dapat langsung didistribusikan dan dijalankan pada komputer

lain tanpa perlu menyertakan file lain, kecuali file yang beretensi *.exe

atau Applikasi tersebut membutuhkan file lain seperti database, koneksi

atau file pendukung lainnya.

9. Borland delphi 7.0 hadir bersama borland Kylix 3 yang berbasis Linux,

bila ingin berganti flattform dari Windows ke Linux maka aplikasi yang

dibuat di Delphi dapat dijalankan di Kylix 3 yang dikarenakan kedua

produk tersebut merupakan produk Borland.

Page 457: Laporan DKP Kelompok 1 SISKOM 2012

457

10. Pengembangan aplikasi secara cepat (Rapid Application Development

/RAD)

11. Menggunakan bahasa tingkat tinggi

12. Delphi menyediakan banyak sekali komponen yang banyak digunakan.

Selain itu banyak juga komponen yang bersumber dari pihak ketiga yang

biasanya disertai dengan dokumentasi, source code dan lain-lain.

13. Mendukung banyak database server (MySQL, SQL Server, interbase,

Oracle Dll) sehingga dapat mempermudah dalam membuat aplikasi data

base.

Page 458: Laporan DKP Kelompok 1 SISKOM 2012

458

BAB III

ALGORITMA

3.3. Algoritma Pseudocode

Mengisikan nama pembeli ke teks edit Nama pembeli

Meng Klik Date times picker untuk memilih tanggal pembelian

Mengisikan alamat pembeli ke teks edit Alamat untuk mendata alamat

pembeli

Mengisikan no. HP / Telp ke teks edit no. HP/ Telp untuk mencatat

nomor yang bisa dihubungi

Mencentang check box untuk menentukan kelas gerbong kereta

Menekan button Lakukan Pembayaran untuk perintah melakukan

pembayaran

Mengisikan nominal pada edit teks Pembayaran untuk memasukkan

uang yang kita bayarkan

Menekan button Bayar untuk melakukan pembayaran dan mengetahui

jumlah kembalian uang jikalau uang kita berlebih

Menekan button Cetak Tiket untuk mencetak data yang telah

dimasukkan

Menekan button simpan data untuk menyimpan data yang telah di

inputkan

Menekan button lihat data untuk melihat kembali data yang telah

disimpan

Menekan button kembali untuk kembali ke menu awal (pengisian data)

Menekan button Hapus untuk menghapus data yang telah dimasukkan /

memulai baru untuk pembeli selanjutnya.

Menekan button keluar untuk keluar dari program tersebut.

Page 459: Laporan DKP Kelompok 1 SISKOM 2012

459

3.4. Algoritma Flowchart

Gambar 1.1 Diagram flowchart program

Page 460: Laporan DKP Kelompok 1 SISKOM 2012

460

BAB IV

ANALISA DAN PEMBAHASAN

4.3. Source Code Program

a. Unit 1 (Tugas_Akhir_DKP.pas)

unit TugasAkhirDKP;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics,

Controls, Forms,

Dialogs, ExtCtrls, StdCtrls, ComCtrls;

type

TForm1 = class(TForm)

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

Label5: TLabel;

Label6: TLabel;

Panel1: TPanel;

Caa: TCheckBox;

Cab: TCheckBox;

Cac: TCheckBox;

Cba: TComboBox;

Cbb: TComboBox;

Cbc: TComboBox;

Eaa: TEdit;

Eab: TEdit;

Eaf: TEdit;

Eae: TEdit;

Ead: TEdit;

Eac: TEdit;

Taa: TButton;

Tab: TButton;

Tac: TButton;

Page 461: Laporan DKP Kelompok 1 SISKOM 2012

461

Bevel2: TBevel;

Button1: TButton;

Label7: TLabel;

Edit1: TEdit;

Label8: TLabel;

DateTimePicker1: TDateTimePicker;

Label9: TLabel;

Edit2: TEdit;

Label10: TLabel;

Edit3: TEdit;

Button2: TButton;

Bevel3: TBevel;

Bevel4: TBevel;

Bevel1: TBevel;

procedure CaaClick(Sender: TObject);

procedure CbaChange(Sender: TObject);

procedure CabClick(Sender: TObject);

procedure CbbChange(Sender: TObject);

procedure CacClick(Sender: TObject);

procedure CbcChange(Sender: TObject);

procedure TacClick(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure TaaClick(Sender: TObject);

procedure TabClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

uses Unit3;

Page 462: Laporan DKP Kelompok 1 SISKOM 2012

462

{$R *.dfm}

{mendeskripsikan apabila kita menKlik pada Check Box dan

Menentukan jumlah tiket yang akan dipesan, maka akan keluar

jumlah biaya yang harus kita bayar}

procedure TForm1.CaaClick(Sender: TObject);

begin

if Caa.Checked=true then

Cba.Enabled:=true

else

Cba.Enabled:=false;

Cba.Text:='0';

Eaa.Text:='0';

if Caa.Checked=true then

Eaa.Enabled:=true

else

Eaa.Enabled:=false;

if Caa.Checked=true then

Taa.Visible:=true

else

Taa.Visible:=false;

end;

{mendeskripsikan apabila yang kita klik Check Box untuk kelas

executive, maka berapa jumlah tiket yang kita pilih akan

dikalikan dengan 45000 (harga tiket)}

procedure TForm1.CbaChange(Sender: TObject);

var

jumlah,harga : integer;

begin

jumlah:=StrToInt (Cba.Text);

harga:=jumlah*45000;

Eaa.Text:=IntToStr (harga);

end;

{mendeskripsikan apabila kita menKlik pada Check Box dan

Menentukan jumlah tiket yang akan dipesan, maka akan keluar

jumlah biaya yang harus kita bayar}

Page 463: Laporan DKP Kelompok 1 SISKOM 2012

463

procedure TForm1.CabClick(Sender: TObject);

begin

if Cab.Checked=true then

Cbb.Enabled:=true

else

Cbb.Enabled:=false;

Cbb.Text:='0';

Eab.Text:='0';

if Caa.Checked=true then

Eab.Enabled:=true

else

Eab.Enabled:=false;

if Cab.Checked=true then

Taa.Visible:=true

else

Taa.Visible:=false;

end;

{mendeskripsikan apabila yang kita klik Check Box untuk kelas

bisnis, maka berapa jumlah tiket yang kita pilih akan

dikalikan dengan 30000 (harga tiket)}

procedure TForm1.CbbChange(Sender: TObject);

var

jumlah,harga : integer;

begin

jumlah:=StrToInt (Cbb.Text);

harga:=jumlah*30000;

Eab.Text:=IntToStr (harga);

end;

procedure TForm1.CacClick(Sender: TObject);

begin

if Cac.Checked=true then

Cbc.Enabled:=true

else

Cbc.Enabled:=false;

Cbc.Text:='0';

Eac.Text:='0';

Page 464: Laporan DKP Kelompok 1 SISKOM 2012

464

if Cac.Checked=true then

Eac.Enabled:=true

else

Eac.Enabled:=false;

if Cac.Checked=true then

Taa.Visible:=true

else

Taa.Visible:=false;

end;

{mendeskripsikan apabila yang kita klik Check Box untuk kelas

ekonomi, maka berapa jumlah tiket yang kita pilih akan

dikalikan dengan 15000 (harga tiket)}

procedure TForm1.CbcChange(Sender: TObject);

var

jumlah,harga : integer;

begin

jumlah:=StrToInt (Cbc.Text);

harga:=jumlah*15000;

Eac.Text:=IntToStr (harga);

end;

procedure TForm1.TacClick(Sender: TObject);

begin

Caa.Checked:=false;

Cba.Text:='0';

Cab.Checked:=false;

Cbb.Text:='0';

Cac.Checked:=false;

Cbc.Text:='0';

Eac.Text:='0';

Ead.Text:='0';

Eae.Text:='0';

Eaf.Text:='0';

Edit1.Text:='';

Edit2.Text:='';

Edit3.Text:='';

end;

Page 465: Laporan DKP Kelompok 1 SISKOM 2012

465

{mendeskripsikan apabila kita menekan Button “Lakukan

Pembayaran” maka akan ditampilkan jumlah biaya yang harus

kita bayar dari tiket yang kita pesan}

procedure TForm1.Button1Click(Sender: TObject);

var

executive,bisnis,ekonomi, total : integer;

begin

executive:=StrToInt(Eaa.Text);

bisnis:=StrToInt(Eab.Text);

ekonomi:=StrToInt(Eac.Text);

total:=executive+bisnis+ekonomi;

Ead.text:=IntToStr(total);

end;

{mendeskripsikan ketika kita menekan Button Bayar, sebelum

menekan button tersebut kita diharuskan untuk memasukkan

jumlah nominal yang akan kita bayarkan, setelah itu baru

tekan button tersebut, maka apabila uang kita ada

kembaliannya, akan ditampilkan di kotak kembalian}

procedure TForm1.TaaClick(Sender: TObject);

var

total,bayar,kembalian : integer;

begin

total:=StrToInt(Ead.Text);

bayar:=StrToInt(Eae.Text);

kembalian:=bayar-total;

Eaf.Text:=IntToStr(kembalian);

End;

end.

Page 466: Laporan DKP Kelompok 1 SISKOM 2012

466

b. Unit 2 (File Unit2.pas)

unit Unit2;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics,

Controls, Forms,

Dialogs, StdCtrls, ExtCtrls;

type

TForm2 = class(TForm)

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

Label5: TLabel;

Label6: TLabel;

Label7: TLabel;

Label8: TLabel;

Label9: TLabel;

Label10: TLabel;

Panel1: TPanel;

Panel2: TPanel;

Button1: TButton;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form2: TForm2;

implementation

{$R *.dfm}

Page 467: Laporan DKP Kelompok 1 SISKOM 2012

467

{mendeskripsikan apabila tombol cetak tiket ditekan maka

akan tampil form baru yang didalamnya terdapat tampilan

data-data yang sebelumnya kita masukkan}

procedure TForm2.Button1Click(Sender: TObject);

begin

form2.hide;

end;

end.

c. Unit 3 (File Unit3.pas)

unit Unit3;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics,

Controls, Forms,

Dialogs, StdCtrls, ExtCtrls;

type

TForm2 = class(TForm)

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

Label5: TLabel;

Label6: TLabel;

Label7: TLabel;

Label8: TLabel;

Label9: TLabel;

Label10: TLabel;

Panel1: TPanel;

Panel2: TPanel;

Button1: TButton;

Button2: TButton;

Button3: TButton;

Page 468: Laporan DKP Kelompok 1 SISKOM 2012

468

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form2: TForm2;

implementation

uses Unit4;

{$R *.dfm}

{mendeskripsikan apabila button2 : simpan data diklik, maka

data – data yang dimasukkan di awal akan tersimpan secara

otomatis, dan kita bisa mengulang kembali pengisian data

pembeli dengan men klik button1 : OK dan setelah beberapa

data tersimpan dan kita ingin melihat data tersebut, maka

bisa dengan men klik buuton3 : lihat data dan semua data

yang telah dimasukkan akan ditampilkan kembali}

procedure TForm2.Button1Click(Sender: TObject);

begin

form2.Hide;

end;

procedure TForm2.Button2Click(Sender: TObject);

begin

form4.listbox1.items.add('nama pembeli :' + Label1.Caption);

form4.listbox1.items.add('Tanggal pembelian :' +

Label5.Caption);

form4.ListBox1.Items.add('alamat pembeli :' +

label2.Caption);

form4.listBox1.Items.add('No. HP / Telp :' +

Label3.Caption);

Page 469: Laporan DKP Kelompok 1 SISKOM 2012

469

form4.ListBox1.Items.Add('total :' + label4.caption);

form4.ListBox1.Items.Add('');

end;

procedure TForm2.Button3Click(Sender: TObject);

begin

form2.Hide;

form4.Show;

end;

end.

Page 470: Laporan DKP Kelompok 1 SISKOM 2012

470

4.4. Tampilan Program

Gambar 1.2 Hasil running awal program

Gambar 1.3 Tampilan setelah mengisi Data Pembeli Tiket

Page 471: Laporan DKP Kelompok 1 SISKOM 2012

471

Gambar 1.4 Tampilan setelah mengisi kelas Gerbong

Gamnar 1.5 Setelah klik tombol „Lakukan Pembayaran‟

Page 472: Laporan DKP Kelompok 1 SISKOM 2012

472

Gambar 1.6 Tampilan setelah memasukkan pembayaran dan Klik tombol „Bayar‟

Gambar 1.7 Tampilan Form2 (Hasil Tiket)

Page 473: Laporan DKP Kelompok 1 SISKOM 2012

473

Gambar 1.8 Tampilan Form3 (Hasil penyimpanan data Tiket)

Page 474: Laporan DKP Kelompok 1 SISKOM 2012

474

BAB V

PENUTUP

5.3. Kesimpulan

6. Delphi 7 merupakan salah satu software yang digunakan untuk

membuat suatu program dengan menggunakan bahasa pemrograman

secara console maupun visual berbasis bahasa Pascal.

7. Bahasa delphi merupakan bahasa pemrograman yang cukup mudah

untuk dipahami cara penggunaannya

8. Dalam suatu pemrograman dibutuhkan suatu susunan yang terstruktur

sehingga program tersebut dapat dijalankan dengan lancar.

9. Algoritma dan Flowchart merupakan proses untuk menentukan alur

program yang mendukung agar bahasa pemrograman menjadi

terstruktur.

10. Program Penjualan Tiket Kereta Wisata ini bisa mempermudah operator

dalam melayani pelanggan.

5.4. Saran

3. Apabila mau membuat program, rencanakan dulu model dari program

yang mau dibuat jauh-jauh hari supaya waktu yang dibutuhkan dalam

pembuatan codingnya tidak terlalu tergesa-gesa.

4. Gunakan bahasa yang dirasa mdah untuk dipahami.

Page 475: Laporan DKP Kelompok 1 SISKOM 2012

475

DAFTAR PUSTAKA

Andris Faisal : Ilmu Tambahan/belajar_IT Mengenal Borland Delphi 7.0.html

Detik Kampung 1. Sejarah Perkembangan Delphi.html

Wikipedia.com

Modul Praktikum Dasar Komputer dan Pemrograman Sistem Komputer 2012

Page 476: Laporan DKP Kelompok 1 SISKOM 2012

476

BIOGRAFI PENULIS

Seorang Anak yang bernama Elad Oktarizo lahir di

kota solok Sumatera Barat pada tanggal 6 Oktober 1993.

Anak ke-2 dari 3 bersaudara yang terdiri dari 1 orang saudara

laki-laki dan 1 orang saudara perempuan. Penulis yang

merupakan pemuda berdarah Minang Kabau menghabiskan

masa kecil di Kota solok. Riwayat pendidikan penulis dimulai

dari pendidikan Sekolah Dasar di SD N 10 VI Suku Kota Solok Sumatera Barat

pada tahun 1999 , setelah itu penulis melanjutkan pendidikan di SMP N 3 Kota

Solok pada tahun 2005 dan tamat pada tahun 2008, setelah itu penulis

melanjutkan pendidikan lagi ke SMA N 3 Kota Solok. Dan Alhamdulillah

sekarang ini penulis sedang menjalani rutinitas sebagai mahasiswa di Universitas

Diponegoro Semarang.

Pembimbing

Agus Subkhi Hermawan

NIM L2N009038

Mengetahui

Koordinator Praktikum

Noer Tjahja Moekthi P.

NIM L2N009024