Bagian Depan

23
PRAKTIKUM ALGORITMA PEMROGRAMAN Oleh: KELOMPOK I 1. Ahmad Afifi (1304505064) 2. Ni Made Surasmitha Dewi (1404505022) 3. I Gusti Ngurah Yoga Pawitra (1404505052) 4. Pande Nengah Purnawan (1404505064) 5. Ni Ketut Pradani Gayatri (1404505101) i

description

gambar depan

Transcript of Bagian Depan

PRAKTIKUM ALGORITMA PEMROGRAMAN

Oleh:KELOMPOK I

1. Ahmad Afifi(1304505064)2. Ni Made Surasmitha Dewi(1404505022)3. I Gusti Ngurah Yoga Pawitra(1404505052)4. Pande Nengah Purnawan(1404505064)5. Ni Ketut Pradani Gayatri(1404505101)

JURUSAN TEKNOLOGI INFORMASIFAKULTAS TEKNIK UNIVERSITAS UDAYANA2015

KATA PENGANTAR

Om Swastyastu,Puji syukur penulis haturkan kehadirat Tuhan Yang Maha Esa yang telah melimpahkan rahmat dan karunia-Nya kepada penulis sehingga penulis dapat menyelesaikan laporan algoritma pemrograman ini tepat pada waktunya. Laporan algoritma pemrograman ini memberikan gambaran umum mengenai penggunaan dasar bahasa pemrograman, fungsi dan prosedur, array dan pointer, struktur dan kelas, serta operasi file pada setiap program yang dipraktikkan.Terima kasih penulis sampaikan kepada Bapak Dr.Eng I Putu Bayupati, S.T., M.T. selaku Dosen Pengampu Mata Kuliah Praktikum Algoritma Pemrograman dan para asisten dosen praktikum algoritma pemrograman yang membimbing penulis dalam penyusunan laporan akhir praktikum. Terima kasih juga penulis sampaikan kepada semua pihak yang telah berperan dalam penyusunan laporan algoritma pemrograman ini dari awal sampai akhir.Penulis juga memohon maaf kepada seluruh pihak yang terkait bilamana dalam menjalankan tugas dan pembuatan laporan praktikum ini terdapat banyak kesalahan dan kekurangan. Penulis berharap laporan praktikum basis data ini dapat bermanfaat bagi semua kalangan pembaca khususnya mahasiswa program studi Teknologi Informasi Udayana.Om Santih, Santih, Santih Om.

Badung, 6 Juni 2015

Penulis Laporan

DAFTAR ISI

KATA PENGANTAR iiDAFTAR ISI iiiDAFTAR GAMBAR vDAFTAR KODE PROGRAM ixDAFTAR TABEL xiiDAFTAR TRACE xiiiBAB I PENDAHULUAN 11.1 Latar Belakang 11.2 Rumusan Masalah 21.3 Tujuan 21.4 Manfaat 31.5 Batasan Masalah 31.6 Sistematika Penulisan 4BAB II TINJAUAN PUSTAKA 52.1 Bahasa Pemrograman 52.2 Bahasa Pemrograman C++ 52.3 Tipe Data dalam Bahasa C++ 62.4 Flowchart 92.5 Selection 82.6 Repetition 112.7 Variabel Global dan Variabel Lokal 142.8 Prosedur dan Fungsi 142.9 Pass by Value dan Pass by Reference 152.10 Rekursif dan Iteratif 162.11 Array 172.12 Pointer 172.13 Sorting 172.14 Searching 192.15 Struktur 202.16 Kelas 202.17 Tipe Data String 212.18 Konversi String 222.19 Operasi File 23BAB III PEMBAHASAN 253.1 Dasar Penggunaan Bahasa Pemrograman 253.2 Fungsi dan Prosedur 543.3 Array dan Pointer 1143.4 Struktur dan Kelas 1683.5 Operasi File 184BAB IV PENUTUP 2054.1 Simpulan 2054.2 Saran 206DAFTAR PUSTAKA 207LAMPIRAN

DAFTAR GAMBAR

Gambar 2.1 Flowchart selection if 9Gambar 2.2 Flowchart if-else 10Gambar 2.3 Flowchart switch 11Gambar 2.4 Flowchart for 12Gambar 2.5 Flowchart while 13Gambar 2.6 Flowchart do-while 13Gambar 3.1 Flowchart program utama menghitung akar-akar persamaan kuadrat 26Gambar 3.2 Flowchart prosedur akar() 26Gambar 3.3 Hasil compile program menghitung akar-akar persamaan kuadrat pada Dev C++ 30Gambar 3.4 Flowchart program mengonversi bilangan desimal ke biner dan sebaliknya 31Gambar 3.5 Hasil compile program mengonversi bilangan desimal ke biner dan sebaliknya pada Dev C++ 38Gambar 3.6 Flowchart program menentukan zodiak bintang 40Gambar 3.7 Hasil compile program menentukan zodiak bintang pada Dev C++ 43Gambar 3.8 Flowchart program menghitung nilai akhir mata kuliah 45Gambar 3.9 Hasil compile program menghitung nilai akhir mata kuliah pada Dev C++ 49Gambar 3.10Flowchart program menampilkan deret bilangan prima 50Gambar 3.11Hasil compile program menampilkan deret bilangan prima 54Gambar 3.32Flowchart program utama menentukan deret bilangan fibonacci 55Gambar 3.13Flowchart fungsi fibo_rekursif() 56Gambar 3.14 Flowchart prosedur fibo_iteratif() 56Gambar 3.15 Hasil compile program menentukan deret bilangan fibonacci pada Dev C++ 61Gambar 3.16 Flowchart program utama menghitung langkah minimum pada menara hanoi 62Gambar 3.17Flowchart prosedur hanoi_rek() 63Gambar 3.18Flowchart prosedur hanoi_ite() 65Gambar 3.19Flowchart fungsi genap() 66Gambar 3.20Flowchart fungsi counter() 66Gambar 3.21Flowchart fungsi pilihan() 67Gambar 3.22Flowchart fungsi pil_disk() 68Gambar 3.23Hasil compile menghitung langkah minimum pada menara hanoi pada Dev C++ 79Gambar 3.24Flowchart program utama menentukan faktor persekutuan terbesar (FPB) 80Gambar 3.25Flowchart fungsi FPB_rek() 81Gambar 3.26Flowchart prosedur FPB_ite() 82Gambar 3.27Hasil compile program menentukan faktor persekutuan terbesar (FPB) pada Dev C++ 86Gambar 3.28Flowchart program utama menghitung luas dan keliling bangun datar 88Gambar 3.29Flowchart fungsi luas_per_panjang() 89Gambar 3.29Flowchart fungsi kll_per_panjang() 89Gambar 3.31Flowchart fungsi luas_segi_sem() 89Gambar 3.32Flowchart fungsi kll_segi_sem() 90Gambar 3.33Flowchart fungsi luas_lingkaran() 90Gambar 3.34Flowchart fungsi luas_lingkaran() 91Gambar 3.35Flowchart fungsi luas_trapesium() 91Gambar 3.36Flowchart fungsi kll_trapesium() 91Gambar 3.37Flowchart fungsi luas_jajargenjang() 92Gambar 3.38 Flowchart fungsi kll_jajargenjang() 92Gambar 3.39Hasil compile program luas dan keliling bangun datar pada Dev C++ 101Gambar 3.40Flowchart program utama menghitung volume dan luas permukaan bangun ruang 103Gambar 3.41Flowchart prosedur balok() 104Gambar 3.42Flowchart prosedur bola() 104Gambar 3.43Flowchart prosedur limas_seg_sama_sisi () 105Gambar 3.44Flowchart prosedur prisma_segitiga() 105Gambar 3.45Flowchart prosedur tabung() 106Gambar 3.46Hasil compile program menghitung volume dan luas permukaan bangun ruang pada Dev C++ 113Gambar 3.47Flowchart program utama sorting dan searching 116Gambar 3.48Flowchart prosedur fillArray() 117Gambar 3.49Flowchart prosedur inArray() 117Gambar 3.50Flowchart prosedur outArray() 118Gambar 3.51Flowchart prosedur insertionSort() 118Gambar 3.52Flowchart prosedur bubbleSort() 119Gambar 3.53 Flowchart prosedur quickSort() 120Gambar 3.54Flowchart prosedur sequentialSearch() 121Gambar 3.55Flowchart prosedur binarySearch() 122Gambar 3.56Hasil compile program sorting dan searching pada Dev C++ 136Gambar 3.57Flowchart program utama operasi matriks 137Gambar 3.58Flowchart prosedur input_matriks() 138Gambar 3.59Flowchart prosedur output_matriks() 139Gambar 3.60Flowchart prosedur penjumlahan() 140Gambar 3.61Flowchart prosedur transpose() 141Gambar 3.62Flowchart prosedur perkalian() 142Gambar 3.63Hasil compile program operasi matriks pada Dev C++ 150Gambar 3.64Flowchart program menghitung mean, median, dan modus 151Gambar 3.65Flowchart prosedur bubbleSort() 152Gambar 3.66Flowchart fungsi Mean() 153Gambar 3.67Flowchart fungsi Median() 153Gambar 3.68Flowchart prosedur Modus() 154Gambar 3.69Hasil compile program menghitung mean, median, dan modus pada Dev C++ 160Gambar 3.70Flowchart program utama perbandingan sorting melalui cara biasa dan cara pointer 161Gambar 3.71Hasil compile program perbandingan sorting melalui cara biasa dan cara pointer 168Gambar 3.72Flowchart program utama menghitung gaji harian 169Gambar 3.73Hasil compile program menghitung gaji harian pada Dev C++ 172Gambar 3.74Flowchart program utama tamia 173Gambar 3.75Flowchart fungsi setDaya() 174Gambar 3.76Flowchart fungsi setUkuranRoda() 174Gambar 3.77Flowchart fungsi setLama() 174Gambar 3.78Flowchart fungsi setJarakTempuh() 175Gambar 3.79Flowchart fungsi setKecepatan() 175Gambar 3.80Flowchart fungsi getDaya() 176Gambar 3.81Flowchart fungsi getUkuranRoda() 176Gambar 3.82Flowchart fungsi getLama() 176Gambar 3.83Flowchart fungsi getJarakTempuh() 176Gambar 3.84Flowchart fungsi getKecepatan() 177Gambar 3.85Hasil compile program tamia pada Dev C++ 183Gambar 3.86Flowchart program menentukan kata palindrom 186Gambar 3.87Hasil compile program menentukan kata palindrom pada Dev C++ 192Gambar 3.88Flowchart program menyimpan data mahasiswa 193Gambar 3.89Hasil compile program menyimpan data mahasiswa pada Dev C++ 197Gambar 3.90Flowchart program mengurutkan nilai 199Gambar 3.91Hasil compile program mengurutkan nilai pada Dev C++ 203

DAFTAR KODE PROGRAM

Kode Program 2.1Sintaks umum dari if 8Kode Program 2.2Sintaks umum dari if-else 9Kode Program 2.3 Sintaks umum switch 10Kode Program 2.4 Sintaks umum for 11Kode Program 2.5 Sintaks umum while 12Kode Program 2.6 Sintaks umum do-while 13Kode Program 2.7 Contoh penggunaan variabel global 14Kode Program 2.8 Contoh penggunaan variabel lokal 14Kode Program 2.9 Sintaks umum dari prosedur 15Kode Program 2.10Sintaks umum dari fungsi 15Kode Program 2.11Sintaks umum dari pass by value 15Kode Program 2.12Sintaks umum dari pass by reference 16Kode Program 2.13Sintaks umum array 17Kode Program 2.14 Sintaks umum pointer 17Kode Program 2.15Sintaks umum struct 20Kode Program 2.16Sintaks umum class 20Kode Program 2.17Sintaks umum fungsi strlwr() 21Kode Program 2.18Sintaks umum fungsi strupr() 21Kode Program 2.19Sintaks umum dari all to string 23Kode Program 2.20Sintaks umum untuk membuka file 23Kode Program 2.21Sintaks umum untuk menulis file 24Kode Program 2.22Sintaks umum untuk menutup file 24 Kode Program 3.1Pseudocode program menghitung akar-akar persamaan kuadrat 27Kode Program 3.2Program menghitung akar-akar persamaan kuadrat 28Kode Program 3.3Pseudocode program mengonversi bilangan desimal ke biner dan sebaliknya 33Kode Program 3.4Program mengonversi bilangan desimal ke biner dan sebaliknya 35Kode Program 3.5Trace program menentukan zodiak bintang 41Kode Program 3.6 Program menentukan zodiak bintang 43Kode Program 3.7 Pseudocode program menghitung nilai akhir mata kuliah46Kode Program 3.8 Program menghitung nilai akhir mata kuliah 47Kode Program 3.9 Pseudocode program menampilkan deret bilangan prima 51Kode Program 3.10Program menampilkan deret bilangan prima 52Kode Program 3.11Pseudocode program menentukan deret bilangan fibonacci 57Kode Program 3.12Program menentukan deret bilangan fibonacci 59Kode Program 3.13Pseudocode program menghitung langkah minimum pada menara hanoi 71Kode Program 3.14Program menghitung langkah minimum pada menara hanoi 74Kode Program 3.15Pseudocode program menentukan faktor persekutuan terbesar (FPB) 83Kode Program 3.16Program menentukan faktor persekutuan terbesar (FPB) 85Kode Program 3.17Pseudocode program menghitung luas dan keliling bangun datar 94Kode Program 3.18Program menghitung luas dan keliling bangun datar 99Kode Program 3.19Pseudocode program menghitung volume dan luas permukaan bangun ruang 107Kode Program 3.20Program menghitung volume dan luas permukaan bangun ruang 111Kode Program 3.21Pseudocode program sorting and searching 125Kode Program 3.22Program sorting dan searching 130Kode Program 3.23Pseudocode program operasi matriks 144Kode Program 3.24Program operasi matriks 148Kode Program 3.25Pseudocode program menghitug mean, median, dan modus 156Kode Program 3.26Program menghitung mean, median, dan modus 158Kode Program 3.27Pseudocode program perbandingan sorting melalui cara biasa dan cara pointer 163Kode Program 3.28Program perbandingan sorting melalui cara biasa dan cara pointer 165Kode Program 3.28Pseudocode program menghitung gaji harian 170Kode Program 3.29Program menghitung gaji harian 171Kode Program 3.30Pseudocode program tamia 178Kode Program 3.31Program tamia 181Kode Program 3.32Pseudocode program menentukan kata palindrom 187Kode Program 3.33Program menentukan kata palindrom 188Kode Program 3.34Pseudocode program menyimpan data mahasiswa 194Kode Program 3.35Program menyimpan data mahasiswa 195Kode Program 3.36Pseudocode program mengurutkan nilai 200Kode Program 3.37Program mengurutkan nilai 201

DAFTAR TABEL

Tabel 1.1 Sistematika penulisan 4Tabel 2.1Tabel jenis tipe data 6Tabel 2.2Tabel macam-macam tipe data bilangan atau angka 6Tabel 2.3Tabel simbol-simbol dalam flowchart 7Tabel 3.1 Perbandingan waktu pemrosesan dari masing-masing metode sorting 134Tabel 3.2 Perbandingan waktu pemrosesan dari masing-masing metode searching 135Tabel 3.3 Perbandingan waktu pemrosesan dari masing-masing cara sorting 167

DAFTAR TRACE

Trace 3.1Program menghitung akar-akar persamaan kuadrat 29Trace 3.2 Program mengonversi bilangan desimal ke biner 36Trace 3.3 Program mengonversi bilangan biner ke desimal 37Trace 3.4 Program menentukan zodiak bintang 37Trace 3.5 Program menghitung nilai akhir mata kuliah 48Trace 3.6 Program menampilkan deret bilangan prima 53Trace 3.7 Program menentukan deret bilangan fibonacci 61Trace 3.8 Program menghitung langkah minimum pada menara hanoi 78Trace 3.9 Program menentukan faktor persekutuan terbesar (FPB) 85Trace 3.10 Program menghitung luas dan keliling persegi panjang 99Trace 3.11 Program menghitung luas dan keliling segitiga sembarang 99Trace 3.12 Program menghitung luas dan keliling lingkaran 100Trace 3.13 Program menghitung luas dan keliling trapesium 100Trace 3.14 Program menghitung luas dan keliling jajargenjang 100Trace 3.15 Program menghitung volume dan luas permukaan balok 111Trace 3.16 Program menghitung volume dan luas permukaan bola 112Trace 3.17 Program menghitung volume dan luas permukaan limas segitiga sama sisi 112Trace 3.18Program menghitung volume dan luas permukaan prisma segitiga 112Trace 3.19Program menghitung volume dan luas permukaan tabung 112Trace 3.20 Program sorting 133Trace 3.21 Program searching 134Trace 3.22 Program operasi penjumlahan matriks 148Trace 3.23 Program operasi transpose matriks 149Trace 3.24 Program operasi perkalian matriks 149Trace 3.25 Program menghitung mean, median, dan modus 159Trace 3.26 Program perbandingan sorting melalui cara biasa dan cara pointer 166Trace 3.27 Program menghitung gaji harian 172Trace 3.28 Program tamia 182Trace 3.29 Program menentukan kata palindrom 191Trace 3.30 Program menyimpan data mahasiswa 196Trace 3.31 Program mengurutkan nilai 203

viii