The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.
Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by RINI Idris, 2023-01-22 10:53:06

ole

syukur loci

Keywords: npm

i LAPORAN PRATIKUM PRATIKUM ALGORITMA DAN SRUKTUR DATA Oleh NAMA: RINI IDRIS NPM: 07352211020 PROGRAM STUDI INFORMATIKA FAKULITAS TEKNIK UNIVERSITAS KHAIRUN TERNATE 2023


ii LEMBAR PENGESAHAN


iii KATA PENGANTAR Syukur Allhamdulillah senantiasa saya panjatkan kehadiran Allah Swt. Yang telah melimpahkan rahmat dan karunia-Nya, sehingga saya dapat menyelesaikan laporan praktikum ini guna memenuhi tugas praktikum mata kuliah Algoritma dan Struktur Data. Saya menyadari bahwa dalam penulisan laporan praktikum ini tidak terlepas dari banyak pihak yang tulus memberikan doa, serta saya berterima kasih kepada pihak yang telah berbaik hati menyediakan materi sehingga saya bisa menjadikannya sebagai sumber untuk tugas praktikum ini. Saya juga menyadari bahwa laporan praktikum ini masih jauh dari kata sempurna dikarenakan terbatasnya pengalaman serta pengetahuan yang saya miliki. Oleh karena itu, saya mengharapkan segala bentuk saran serta masukan bahkan kriktik yang membangun dari berbagai pihak


iv DAFTAR ISI Contents LEMBAR PENGESAHAN.......................................................................................................... ii KATA PENGANTAR................................................................................................................. iii DAFTAR ISI...............................................................................................................................iv DAFTAR GAMBAR....................................................................Error! Bookmark not defined. DAFTAR TABEL..................................................................................................................... xvi BAB I ALGORITMA DAN STRUKTUR DATA, DASAR C++ DAN CONTOH C++ ................ 18 1.1 Sejarah Algoritma ...........................................................................................................3 1.1.1 Definisi Algoritma...................................................................................................... 4 1.1.2 Cara penyajian algoritma ...........................................................................................4 1.1.3 Metode penyusunan Algoritma Deskriptif ..................................................................5 1.1.4 Metode penyusunan Algoritma Flowchart................................................................. 6 1.1.5 Metode penyusunan Algoritma Pseudo-Code ...........................................................9 1.1.6 Istilah-Istilah Dasar..................................................................................................12 1.1.7 Ciri-ciri algoritma ..................................................................................................... 13 1.1.8 Sifat Algoritma ......................................................................................................... 14 1.2 Definisi Struktur Data...................................................................................................14 1.2.1 Tipe Data ................................................................................................................15


v 1.3 Stuktur Dasar C++....................................................................................................... 17 1.3.1 // komentar.............................................................................................................. 17 1.3. 2 #include<iostream>............................................................................................... 18 1.3. 3 Main()..................................................................................................................... 18 1.4 Perintah-perintah dasar.............................................................................................. 18 1.4.1 Include .....................................................................................................................18 1.5 Contoh C++.................................................................................................................. 21 1.6 Kesimpulan Dan Saran................................................................................................ 23 1.6.1 Kesimpulan ..............................................................................................................23 1.6.2 Saran.......................................................................................................................23 BAB II VARIABEL DAN KONSTANTA.................................................................................. 21 2.1 PENDAHULUAN............................................................................................................21 2.2 TUJUAN PRAKTIKUM.................................................................................................. 22 2. 3 LANGKAH – LANGKAH KEGIATAN PRAKTIKUM................................................... 22 2.4 LATIHAN KEGIATAN PRAKTIKUM............................................................................. 26 2.5 STUDI KASUS............................................................................................................... 32 2.6 KESIMPULAN DAN SARAN......................................................................................... 55 2.6.1 Kesimpulan .............................................................................................................55


vi 2.6.2 Saran.......................................................................................................................55 BAB III STRUKTUR DASAR ALGORITMA (SELECTION, LOOPING)................................. 54 3.1 PENDAHULUAN............................................................................................................54 3.2 TUJUAN PRATIKUM.....................................................................................................55 3.3 LANGKAH – LANGKAH KEGIATAN PRATIKUM.......................................................55 3.4 LATIHAN KEGIATAN PRAKTIKUM............................................................................. 59 3.5 STUDI KASUS............................................................................................................... 61 3.6 KESIMPULAN DAN SARAN......................................................................................... 86 3.6.1.Kesimpulan:.............................................................................................................86 3.6.2 Saran.......................................................................................................................86 BAB IV ARRAY...................................................................................................................... 88 4.1 PENDAHULUAN............................................................................................................88 4.2 TUJUAN PRAKTIKUM.................................................................................................. 89 4.3 LANGKAH – LANGKAH KEGIATAN PRAKTIKUM..................................................... 89 4.4 LATIHAN KEGIATAN PRAKTIKUM............................................................................. 93 4.5 STUDI KASUS............................................................................................................... 99 4.6 KESIMPULAN DAN SARAN...................................................................................... 114 4.6.1 Kesimpulan ............................................................................................................114


vii 4.6.2 Saran.....................................................................................................................114 BAB V POINTER.................................................................................................................. 116 5.1 Pendahuluan..............................................................................................................116 5.2 TUJUAN PRATIKUM...................................................................................................118 5.3 LANGKAH – LANGKAH KEGIATAN PRATIKUM......................................................118 5.4 LATIHAN KEGIATAN PRAKTIKUM........................................................................... 124 5.5 Studi Kasus.................................................................................................................129 5.6 Kesimpulan dan Saran...............................................................................................135 5.6.1 KESIMPULAN....................................................................................................... 135 5.6.2 SARAN..................................................................................................................135 BAB VI STACK (TUMPUKAN)..............................................................................................137 6.1 PENDAHULUAN.........................................................................................................137 6.2 TUJUAN PRAKTIKUM................................................................................................ 138 6.3 LANGKAH-LANGKAH PRAKTIKUM..........................................................................138 6.4 LATIHAN KEGIATAN PRAKTIKUM........................................................................... 142 6.5 STUDI KASUS.................................................................. Error! Bookmark not defined. 6.6 KESIMPULAN DAN SARAN....................................................................................... 158 6.6.1. Kesimpulan ...........................................................................................................158


viii 6.6.2. Saran....................................................................................................................158 BAB VII QUEUE (ANTRIAN)................................................................................................159 7.1 PENDAHULUAN..........................................................................................................159 7.2 TUJUAN PRAKTIKUM................................................................................................ 160 7.3 LATIHAN KEGIATAN PRAKTIKUM............................................................................. 161 7.4 STUDI KASUS............................................................................................................. 170 7.5 KESIMPULAN DAN SARAN....................................................................................... 182 7.5.1 KESIMPULAN....................................................................................................... 183 7.5.2 SARAN..................................................................................................................183 DAFTAR PUSTAKA.............................................................................................................. 184


ix Daftar Gambar Bab l Struktur Dasar C++ Dan Contoh Dasar C++: gambar 1 1 Contoh Flowchart Menentukan Bilangan Yang Terbesar Dari Dua Buah Bilangan 9 gambar 1 2 Struktur Data dan Algoritma.................................................................................. 15 gambar 1 3 contoh program..................................................................................................... 17 gambar 1 4Tabel file header.................................................................................................... 20 gambar 1 5 Fungsi endl............................................................................................................21 gambar 1 6 Fungisi\n ................................................................................................................21 Bab ll Konstenta Dan Variabel: gambar 2 1 Tampilan aplikasi Dev C++ ................................................................................... 22 gambar 2 2 Tampilan awal Dev C++ ........................................................................................23 gambar 2 3 Membuat projek baru ............................................................................................ 23 gambar 2 4 Struktur code C++................................................................................................. 24 gambar 2 5 Proses compile ......................................................................................................24 gambar 2 6 Proses Penyimpanan ............................................................................................ 25 gambar 2 7 7 Hasil running ...................................................................................................... 26 gambar 2 8 Source code Latihan C++ ......................................................................................28 gambar 2 9 Tampilan hasil running C++ .................................................................................. 29 gambar 2 10 Struktur code Latihan C++ .................................................................................. 31 gambar 2 11 Tampak hasil running C++.................................................................................. 32 gambar 2 12 Source code nama, alamat, dan sekolah............................................................ 34


x gambar 2 13 Hasil running source code program.................................................................... 34 gambar 2 14 Flowchart Luas Persegi Panjang ........................................................................36 gambar 2 15 Struktur Latihan C++........................................................................................... 38 gambar 2 16.Tampilan hasil running C++................................................................................ 38 gambar 2 17 Flowchart Luas Lingkaran................................................................................... 39 gambar 2 18 Source code luas lingkaran .................................................................................41 gambar 2 19 Hasil running luas lingkaran ................................................................................ 42 gambar 2 20 flowcart menghitung volume kerucut...................................................................44 gambar 2 21 Source code volume kerucut...............................................................................46 gambar 2 22 Tampilan hasil running volume kerucut...............................................................47 gambar 2 23 Flowchart Volume Kubus .................................................................................... 48 gambar 2 24 Source code volume kubus .................................................................................49 gambar 2 25 Hasil running volume kubus ................................................................................ 50 gambar 2 26 Flowchart Volume Tabung .................................................................................. 51 gambar 2 27 Source code volume tabung................................................................................54 gambar 2 28 Hasil running volume tabung ...............................................................................55 Bab lll Sruktur Dasar Algoritma (Selection Looping): gambar 3 1 Aplikasi Dev C++...................................................................................................55 gambar 3 2 Tampilan awal Dev C++ ........................................................................................56 gambar 3 3 Mebuat proyek baru.............................................................................................. 56 gambar 3 4 Struktur Code C++................................................................................................ 57


xi gambar 3 5 Proses Compile .....................................................................................................57 gambar 3 6 Proses Penyimpanan ............................................................................................ 58 gambar 3 7 Tampilan hasil running .......................................................................................... 59 gambar 3 8 Source code Latihan C++ ......................................................................................61 gambar 3 9 Hasil running Latihan C++.....................................................................................61 gambar 3 10 Flowchart Menentukan bilangan ganjil genap .................................................... 62 gambar 3 11 Source code bilangan ganjil genap..................................................................... 64 gambar 3 12 Hasil running bilangan ganjil genap.................................................................... 65 gambar 3 13 Hasil running bilangan ganjil ............................................................................... 65 gambar 3 14 Flowchart Mengurutkan bilangan terbesar dari dua buah bilangan.....................67 gambar 3 15 Source code bilangan terbesar dari dua buah bilangan...................................... 68 gambar 3 16 Hasil running bilangan terbesar dari dua buah bilangan ..................................... 69 gambar 3 17 Flowchart Konversi angka ke nilai huruf..............................................................71 gambar 3 18 Source code konversi nilai angka ke nilai huruf.................................................. 73 gambar 3 19 Hasil running konversi nilai angka ke nilai huruf..................................................73 gambar 3 20 Flowchart Menampilkan angka 1 s/d 10..............................................................74 gambar 3 21 Source code Menampilkan angka 1 s/d 10......................................................... 76 gambar 3 22 Hasil running menampilkan angka 1 s/d 10.........................................................76 gambar 3 23 Source code........................................................................................................ 77 gambar 3 24 Hasil running ....................................................................................................... 77 gambar 3 25 Source code program..........................................................................................79 gambar 3 26 Hasil running program.........................................................................................79


xii gambar 3 27 Source code program..........................................................................................81 gambar 3 28 Hasil running program.........................................................................................81 gambar 3 29 Source code program..........................................................................................83 gambar 3 30 running program Hasil .........................................................................................84 gambar 3 31 Source code program..........................................................................................85 gambar 3 32 running program Hasil .........................................................................................85 Bab lv Arayy: gambar 4 1 Aplikasi Dev C++...................................................................................................89 gambar 4 2 Tampilan awal Dev C++ ........................................................................................90 gambar 4 3 Membuat projek baru ............................................................................................ 90 gambar 4 4 Source code C++.................................................................................................. 91 gambar 4 5 Proses compile ......................................................................................................91 gambar 4 6 Proses penyimpanan .............................................................................................92 gambar 4 7 Tampilan hasil running .......................................................................................... 93 gambar 4 8 Source code Latihan C++ ......................................................................................95 gambar 4 9 Tampilan hasil running C++ .................................................................................. 96 gambar 4 10 Source code Latihan C++....................................................................................97 gambar 4 11 Tampilan hasil running C++................................................................................ 98 gambar 4 12 Flowchart Array dimensi satu .............................................................................. 99 gambar 4 13 Source code program........................................................................................101 gambar 4 14 Tampilan hasil running program........................................................................102


xiii gambar 4 15 Flowchart Array Dimensi Satu ...........................................................................103 gambar 4 16 Source code program........................................................................................105 gambar 4 17 Tampilan hasil running program........................................................................106 gambar 4 18 Flowchart Array Satu Dimensi...........................................................................107 gambar 4 19 Source code program........................................................................................109 gambar 4 20 Tampilan hasil running program........................................................................110 gambar 4 21 Flowchart Array 2 Dimensi ................................................................................ 111 gambar 4 22 Source code program........................................................................................113 gambar 4 23 Tampilan hasil running...................................................................................... 114 Bab V Pointer: gambar 5 1 Aplikasi Dev C++.................................................................................................119 gambar 5 2 Tampilan awal Dev C++ ......................................................................................119 gambar 5 3 Mebuat proyek baru............................................................................................ 120 gambar 5 4 Struktur Code C++.............................................................................................. 121 gambar 5 5 Proses Compile ...................................................................................................122 gambar 5 6 Proses Penyimpanan .......................................................................................... 123 gambar 5 7 Tampilan hasil running ........................................................................................ 123 gambar 5 8 pointer konstanta .................................................................................................125 gambar 5 9 hasil running pointer konstanta ........................................................................... 126 gambar 5 10 Flowchart pointer variabel................................................................................. 126 gambar 5 11 pointer variabel..................................................................................................128


xiv gambar 5 12 Gambar hasil running pointer variabel .............................................................. 129 gambar 5 13 Flowchart Operasi Aritmatika Pada Pointer.......................................................129 gambar 5 14 Operasi Aritmatika Pada Pointer....................................................................... 131 gambar 5 15 hasil running Operasi Aritmatika Pada Pointer..................................................132 gambar 5 16 flowchart Pointer dalam array ............................................................................132 gambar 5 17 Pointer dalam array ...........................................................................................134 gambar 5 18 hasil running Pointer dalam array......................................................................134 Bab Vl Stack: gambar 6 1 Tampilan aplikasi Dev C++ ................................................................................. 139 gambar 6 2 Tampilan awal Dev C++ ......................................................................................139 gambar 6 3 Membuat projek baru .......................................................................................... 140 gambar 6 4 Struktur code C++............................................................................................... 140 gambar 6 5 Struktur code C++............................................................................................... 141 gambar 6 6 Proses compile ....................................................................................................141 gambar 6 7 Proses Penyimpanan .......................................................................................... 141 gambar 6 8 Hasil running ....................................................................................................... 142 gambar 6 9 Source code latihan 1 .........................................................................................148 gambar 6 10 source code latihan 1 ........................................................................................ 148 gambar 6 11 tampilan hasil running latihan 1 .........................................................................149 gambar 6 12 Flowchart stack ................................................................................................. 150 gambar 6 13 source code stack ............................................................................................. 155


xv gambar 6 14 source code stack ............................................................................................. 156 gambar 6 15 source code stack ............................................................................................. 156 gambar 6 16 tampilan hasil running stack.............................................................................. 157 gambar 6 17 tampilan hasil running stack.............................................................................. 157 Bab Vll Quaue: gambar 7 1 Source code latihan 1 queue dalam array ...........................................................167 gambar 7 2 Source code latihan 1 queue dalam array ...........................................................168 gambar 7 3 Source code latihan 1 queue dalam array ...........................................................168 gambar 7 4 Tampilan hasil running latihan 1 queue dalam array ...........................................169 gambar 7 5 Tampilan hasil running latihan 1 queue dalam array ...........................................169 gambar 7 6 Flowchart queue..................................................................................................172 gambar 7 7 Source code queue............................................................................................. 179 gambar 7 8 Source code queue............................................................................................. 179 gambar 7 9 Source code queue............................................................................................. 180 gambar 7 10 Source code queue........................................................................................... 180 gambar 7 11 Tampilan hasil running queue........................................................................... 181 gambar 7 12 Tampilan hasil running queue........................................................................... 182


xvi DAFTAR TABEL tabel 1 1 Simbol flowchart Program................................................................................................8 tabel 1 2 Notasi Pseudocode....................................................................................................... 11


BAB l ALGORITMA DAN STRUKTUR DATA, DASAR C++ DAN CONTOH C++ Oleh NAMA RINI IDRIS NPM: 07352211020 PROGRAM STUDI INFORMATIKA FAS KHAIRUN TERNAT 2023


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAIR 3 BAB I ALGORITMA DAN STRUKTUR DATA, DASAR C++ DAN CONTOH C++ 1.1 Sejarah Algoritma Ditinjau dari asal usul katanya kata Algoritma sendiri mempunyai sejarah yang aneh. Orang hanya menemukan kata Algorism yang berarti proses menghitung dengan angka arab. Anda dikatakan Algorist jika anda menghitung menggunakan Angka Arab. Para ahli bahasa berusaha menemukan asal kata ini namun hasilnya kurang memuaskan. Akhirnya para ahli sejarah matematika menemukan asal kata tersebut yang berasal dari nama seorang ahli matematika dari Uzbekistan Abu Abdullah Muhammad Ibnu Musa Al‐Khuwarizmi (770‐ 840). Al‐Khuwarizmi dibaca orang barat menjadi Algorism. Al‐Khuwarizmi menulis buku yang berjudul Kitab Al Jabar Wal‐Muqabala yang artinya “Buku pemugaran dan pengurangan” (The book of restoration and reduction). Dari judul buku itu kita juga memperoleh akar kata “Aljabar” (Algebra). Perubahan kata dari Algorism menjadi Algorithm muncul karena kata Algorism sering dikelirukan dengan Arithmetic, sehingga akhiran –sm berubah menjadi –thm. Karena perhitungan dengan angka Arab sudah menjadi hal yang biasa. Maka lambat laun kata Algorithm berangsur‐angsur dipakai sebagai metode perhitungan (komputasi) secara umum, sehingga kehilangan makna kata aslinya. Dalam Bahasa Indonesia, kata Algorithm diserap menjadiAlgoritma.


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAIR 4 1.1.1 Definisi Algoritma Kita bisa mendefinisikan algoritma sebagai berikut: “ Algoritma adalah logika, metode dan tahapan (urutan) sistematis yang digunakan untuk memecahkan suatu permasalahan.” Dan kamus besar bahasa Indonesia (Balai Pustaka 1988) secara formal mendefinisikan algoritma sebagai berikut: “Algoritma adalah urutan logis pengambilan putusan untuk pemecahan masalah.” Algoritma: sederetan langkah-langkah logis yang disusun secara sistematis untuk memecahkan suatu masalah. Disebut Logis karena setiap langkah bisa diketahui dengan pasti. Algoritma lebih merupakan alur pemikiran untuk menyelesaikan suatu pekerjaan atau suatu masalah. 1.1.2 Cara penyajian algoritma Secara umum algoritma disusun untuk menggambarkan langkah-langkah penyelesaian suatu msalah. Dalam membuat suatu algoritma harus memenuhi syarat, terstruktur, masuk akal dan dituliskan secara sistematis, untuk menyelesaikan suatu masalah dengan bantuan komputer. Ada 3 cara dalam menyusun algoritma yaitu: 1. Dengan merumuskan langkah-langkah pemecahan masalah melalui kalimat yang terstruktur (tersusun secara logis)


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAIR 5 2. Menggabungkan kalimat dengan penggalan statements yang ada di suatu bahasa pemrograman (misalkan C++) Biasanya disebut Pseudo code (mirip kode/printah pemrograman) 3. Menggunakan diagram alir (Flowchart). 1.1.3 Metode penyusunan Algoritma Deskriptif Algoritma dengan kalimat deskriptif dilakukan dengan cara menuliskan instruksiinstruksi yang harus dilaksanakan dalam bentuk untaian kalimat deskriptif dengan bahasa yang jelas. Namun, agar notasi algoritma mudah ditranslasi ke dalam notasi bahasa pemrograman, maka sebaiknya notasi algoritma tersebut berkoresponden dengan notasi bahasa pemrograman umumnya. Kata kerja adalah jenis kata yang biasa digunakan dalam penulisan bahasa deskriptif, contoh tulis, baca hitung, tampilkan, ulangi, bandingkan dll. Notasi jenis ini cocok untuk algoritma yang pendek. Tapi untuk masalah algoritma yang panjang, notasi ini kurang efektif. Pada dasarnya teks algoritma dengan bahasa deskriptif disusun oleh tiga bagian utama yaitu: a. Bagian judul (Header) b. Bagian deklarasi (kamus/ menyimpan nilai pada variabel) c. Bagian deskripsi Disarankan setiap bagian disertai dengan komentar untuk memperjelas maksud teks yang dituliskan. Komentar adalah kalimat yang diapit pasangan tanda kurung kurawal (‘{ ‘}’).


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAIR 6 Salah satu contoh sederhana adalah algoritma untuk menentukan bilangan mana yang lebih besar dari input dua buah bilangan. Jadi diberikan input dua buah bilangan dari user, dan program akan secara otomatis menentukan dan memberikan output bilangan mana yang lebih besar. Maka penyelesaian yang bisa dibuat adalah: 1. Inisialisasi 2. Input dua buah bilangan, masukan masing-masing dalam variabel, misalkan bil_1 dan bil_2. 3. Apakah bil_1 lebih besar dari bil_2? - Jika Ya, maka bil_1 adalah bilangan yang lebih besar dari bil_2. - Jika Tidak, maka pasti bahwa bil_2 adalah bilangan yang lebih besar dari bil_1. 4. Tampilkan bilangan terbesar (nilai dari bil_1, atau nilai dari bil_2). 5. Selesai 1.1.4 Metode penyusunan Algoritma Flowchart Flowchart merupakan repesentasi secara diagram dari urutan langkah-langkah untuk mendapatkan suatu hasil. Urutan langkah-langkah ini dilakukan dengan menggambarkan tahap-tahap pemecahan masalah dengan merepresentasikan simbol-simbol tertentu yang mudah di mengerti, mudah digunakan dan standar. Tabel simbol-simbol flowchart:


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAIR 7 Simbol Penjelasan Simbol Terminal, simbol yang digunakan untuk menyatakan awal (Start/mulai) atau akhir (end/selesai) suatu program. Simbol Input/Output, untuk menunjukan operasi masukan atau keluaran. Simbol proses, untuk mengambarkan proses pengolahan data. Simbol kondisi atau keputusan/decision, untuk menyatakan suatu pilihan berdasarkan suatu kondisi tertentu. Simbol deklarasi atau persiapan/preperation, digunakan untuk memberikan nilai awal pada suatu variabel atau pencahan. Simbol proses terdefenisi (predefined process), digunakan untuk proses yang detilnya dijelaskan terpisah, misal dalam bentuk subrountine.


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAIR 8 Simbol penghubung ke halaman lain, untuk menghubungkan bagian diagram alir pada halaman yang berbeda. Simbol penghubung ke halaman yang sama, untuk menghubungkan bagian diagram alir pada halaman yang sama. Simbol arah aliran/penghubung (connector) digunakan untuk menunjukkan arah aliran proses. tabel 1 1 Simbol flowchart Program


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAIR 9 Contoh penggunaan flowchart progam: Algoritma untuk menentukan bilangan mana yang lebih besar dari input dua buah bilangan. gambar 1 1 Contoh Flowchart Menentukan Bilangan Yang Terbesar Dari Dua Buah Bilangan 1.1.5 Metode penyusunan Algoritma Pseudo-Code Pseudo artinya semu atau tidak sebenarnya. Pseudo-code berisikan langkah-langkah untuk menyelesaikan suatu permasalahan (hampir sama dengan algoritma), hanya saja bentuknya


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAIR 10 sedikit berbeda dari algoritma. Pseudocode menggunakan bahasa yang hampir menyerupai bahasa pemrograman. Selain itu biasanya menggunakan bahasa yang mudah dipahami secara universal dan juga lebih ringkas dari pada algoritma. Dalam penulisan pseudocode disarankan untuk menggunakan keyword umum digunakan dalam bahasa pemrograman, seperti: if, then, else, while, do , repeat, for, dan lainnya. Beberapa yang perlu diperhatikan dalam penulisan pseudocode: 1. Tulisan secara spesifik dan konsisten 2. Gunakan indentasi 3. Buat dengan sederhanaBerikut tabel penjelasan mengenai penyusunan pseudocode:


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAIR 11 Notasi Fungsi Input Digunakan untuk menunjukan proses masukan suatu isi pada variabel. Output Digunakan untuk menunjukkan proses keluaran yang diinginkan ataupun yang terjadi. While Digunakan untuk sebuah perulangan yang memiliki iterasi awal. For Digunakan untuk sebuah perulangan yang memiliki perhitungan iterasi. Repeat – Until Digunakan untuk sebuah perulangan yang memiliki kondisi akhir. If – Then – Else Digunakan untuk mengambil sebuah keputusan dari beberapa kondisi. tabel 1 2 Notasi Pseudocode Contoh penggunaan pseudocode program: Algoritma untuk menentukan bilangan mana yang lebih besar dari input dua buah bilangan. Header: algoirtma_penentuan_dua_bilangan Algoritma menetukan bilangan mana yang lebih besar dari inputan duah buah bilangan. Deklarasi:


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAIR 12 Bil_1, bil_2 : integer (nilai akan diberikan pada kedua variabel) Deskripsi: 1. Start 2. Declarations bil_1, bil_2 3. Input bil_1, bil_2 4. Read bil_1, bil_2 5. If bil_1 > bil_2 then Cout (“Bilangan terbesar = bil_1”) 6. Else Cout (“Bilangan terbesar = bil_2”) 7. End 1.1.6 Istilah-Istilah Dasar Dalam berkomunikasi dengan komputer, banyak istilah yang harus dipahami sebelum mendalami lebih jauh tentang pemrograman. Istilah-istilah dasar tersebut adalah: a. Program Progam adalah kata, ekspresi, pernyataan atau kombinasi yang disusun dan dirangkai menjadi satu kesatuan prosedur yang menjadi urutan langkah untuk menyesuaikan masalah yang diimplementasikan dengan bahasa pemrograman. b. Bahasa pemrograman


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAIR 13 Bahasa pemrograman merupakan prosedur atau tata cara penulisan program dalam bahasa pemrogaman, ada dua faktor penting yaitu sintaksis dan semantik. Sintak adalah aturan-aturan gramatikal yang mengatur tata cara penulisan kata, ekspresi dan pernyataan. Semantik adalah aturan-aturan untuk menyatakan suatu arti. Contoh: Write, Read. c. Pemrogaman Pemrograman merupakan proses mengimplementasi urutan langkah-langkah untuk menyelesaikan suatu masalah dengan bahasa pemrograman. d. Pemrograman Terstruktur Pemrograman Terstruktur merupakan proses mengimplementasikan urutan langkahlangkah untuk menyelesaikan suatu masalah dalam bentuk program yang memiliki rancang bangun yang terstruktur dan tidak berbelit-belit sehingga mudah ditelusuri, dipahami dan dikembangkan oleh siapa saja. 1.1.7 Ciri-ciri algoritma 1. Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas. 2. Setiap langkah harus didefinisikan dengan tepat dan tidak berarti-dua (Ambiguitas). 3. Algoritma memiliki nol atau lebih masukkan. 4. Algoritma memiliki satu atau lebih keluaran. 5. Algoritma harus efektif (setiap langkah harus sederhana sehingga dapat dikerjakan dalam waktu yang masuk akal).


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAIR 14 1.1.8 Sifat Algoritma a. Tidak menggunakan simbol atau sintaks dari suatu bahasa pemrograman tertentu. b. Tidak tergantung pada suatu bahasa pemrograman tertentu. c. Notasi-notasinya dapat digunakan untuk seluruh bahasa manapun. d. Algoritma dapat digunakan untuk merepresentasikan suatu urutan kejadian secara logis dan dapat diterapkan di semua kejadian sehari-hari. 1.2 Definisi Struktur Data Struktur data adalah pengaturan data di dalam memori komputer atau terkadang didalam disk dengan tujuan agar data dapat diakses secara efesien. Contoh yang termasuk dalam struktur data antara lain senarai berantai, antrian tumpukan, dan pohon biner. Menggunakan struktur data yang tepat dalam proses pemrograman menghasilkan algoritme yang lebih jelas dan akurat, menjadikan program lebih efisien dan sederhana secara keseluruhan


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAIR 15 gambar 1 2 Struktur Data dan Algoritma 1.2.1 Tipe Data Setiap data memiliki tipe data,apakah itu integer,pecahan atau karakter dan lainlain.jadi,tipe data adalah pegelompokan data berdasarkan isi dan sifatnya dalam bidang ilmu komputer,tipe data adalah tipe data yang dapat di manapulasi oleh komputer sesuai dengan kebutuhan pemograman komputer secara umum,tipe data dapat diklasifikasikan menjadi tiga tipe,yaitu tipe data fundamental (tipe data primetif),tipe data komposit,dan tipe data abstrak. a. Tipe data dasar 1. Integer (Bilangan Bulat) Bilangan bulat berarti -1, -2, -3, 0, 1, 2, 3,4 dan lain-lain yang bukan pecahan. 2. Float atau double (Real)


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAIR 16 Bilangan real adalah bilangan yang mengandung pecahan desimal. Contoh: 3.45, 6,233. 3. Char (Karakter) Karakter adalah semua huruf alfabet,tanda baca,dan karakter khusu.Karakter ditulis di antara dua tanda kutip contoh:'SEBUAH'... 4. Boolean (Logika) Boolean adalah tipe data logis yang terdiri dari dua pernyataan benar atau salah. Pernyataan benar biasanya ditulis benar atau angka 1, sedangkan pernyataan salah ditulis salah atau angka 0. Operasi aritmatika sekarang banyak digunakan. b. Tipe data bentukan Tipe data yang dibangun, atau tipe data komposit, adalah tipe data yang dibangun dari tipe data dasar untuk mempermudah pengembang. Tipe data yang dihasilkan termasuk array, string, record, union, struct, dan lainnya. Tujuan membuat tipe data adalah menyederhanakan proses pemrograman, permudah untuk menambahkan variable, dan sederhanakan pengelompokan data untuk melakukannya dengan baik. c. Tipe data abstrak Tipe data abstrak adalah model matematis dari objek data yang menyempurnakan tipe data dengan memetakannya ke fungsi yang menggunakan data tersebut. Tipe data abstrak adalah tipe data yang didefinisikan oleh programmer untuk tujuan tertentu yang tidak dapat dideklarasikan dalam tipe data yang ada. Contoh tipe data abstrak adalah stack, queue, list.


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAIR 17 tree, graph, dan lain-lain. Dengan demikian, definisi umum tipe data abstrak dapat dipahami karena tipe data abstrak adalah struktur data yang berisi fungsi atau aturan tertentu. 1.3 Stuktur Dasar C++ Setiap bahasa (baik bahasa manusia maupun bahasa komputer) harus memiliki struktur khusus bahasa, demikian pula C++ memiliki properti/struktur khusus. gambar 1 3 contoh program 1.3.1 // komentar 1. Baris ini adalah komentar. Semua baris yang diawali dengan dua garis miring (//) akan dianggap sebagai komentar dan tidak akan berpengaruh terhadap program. Dapat digunakan programmer untuk menyertakan penjelasan singkat atau observasi yang terkait dengan program tersebut. 2. Jadi walaupun dibaris ini ada penulisan yang tidak memenuhi sintak, tidak menjadi masalah. Hal ini dikarenakan komentar tidak akan dilakukan pengecekan aturan sintak.


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAIR 18 3. “\\ Komentar baris” dan “/* Komentar Blok */”. Komentar baris, akan mengabaikan apapun mulai dari tanda (//) sampai akhir baris yang sama. Komentar blok, akan mengabaikan apapun yang berada diantara tanda /* dan */. 1.3. 2 #include<iostream> Perintah yang ada dalam tanda siku tidak harus iostream, kalimat yang diawali dengan tanda (#) adalah pre-processor directive. Dalam contoh diatas perintah #include<iostream.h> memberitahukan pre-processor compiler untuk menyertakan file header standard iostream. File spesifik ini juga termasuk library deklarasi standard I/O pada C++ dan file ini disertakan karena fungsi-fungsinya akan digunakan nanti dalam program. 1.3. 3 Main() Dalam tubuh main inilah perintah-perintah bahasa C++ ditulis. Fungsi main merupakan titik awal di mana seluruh program C++ akan mulai dieksekusi. Diletakkan di awal, di tengah atau di akhir program, isi dari fungsi main akan selalu dieksekusi pertama kali. Pada dasarnya, seluruh program C++ memiliki fungsi main.Fungsi main diikuti oleh sepasang tanda kurung () karena merupakan fungsi. 1.4 Perintah-perintah dasar 1.4.1 Include Setiap kali membuat bahasa C++, selalu di awal program harus dituliskan perintah include. Include merupakan suatu header yang mempunyai kegunaan untuk menerjemahkan


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAIR 19 kegunaan dari perintah-perintah yang akan digunakan. Semakin banyak ragam perintah kegunaan ada kemungkinan file header juga akan bertambah. Beberapa kegunaan file header yang biasa digunakan diantaranya: 1. Untuk manejemen memori. 2. Untuk memanggil routines ROM BIOS. 3. Untuk fungsi matematika kompleks. 4. Untuk memanggil console DOS I/O (input output).


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAIR 20 Beberapa file header yang sering digunakan: gambar 1 4Tabel file header Perintah ini hampir dipastikan ada di setiap program. Perintah ini digunakan untuk menampilkan kalimat atau string ke layar monitor dan header yang harus dicantumkan adalah IOSTREAM. Aturan penulisan cout: cout<<” statemen yang ditampilkan”; perintah diatas akan menampilkan statement dan setelah menampilkan statement tidak dilakukan proses ganti baris. Agar berganti baris penulisannya:


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAIR 21 gambar 1 5 Fungsi endl gambar 1 6 Fungisi\n 1.5 Contoh C++ 1. Program Selamat Belajar C++ // programku #include <iostream.h> int main() { cout<<"Selamat Belajar C++"; return 0;


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAIR 22 } 2. Program Mengitung Luas Persegi Panjang #include<iostream> #include<conio.h> #define Judul "PROGRAM C++ MENGHITUNG LUAS PERSEGI PANJANG\n"; using namespace std; main() { float luas, panjang, lebar; cout<<Judul; cout<<"Masukan panjang\t\t:"; cin>>panjang; cout<<"Masukan Lebar\t\t\:"; cin>>lebar; luas=panjang*lebar; cout<<"Luas Persegi Panjang\t:"<<luas<<endl;


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAIR 23 return 0; } 1.6 Kesimpulan Dan Saran 1.6.1 Kesimpulan C++ merupakan Bahasa pemrograman yang banyak digunakan dan memungkinkan kita untuk meng execute dan mengkompilasi kode yang ramping dan efisien sambal tetap memberikan abstraksi tingkat tinggi untuk mengelola proyek pengembangan besar dengan lebih baik beberapa keunggulan lainnya adalah: Berorientasi pada objek, cepat, kuat dan bisa diandalkan, portabilitas yang baik dan masih banyak lagi. 1.6.2 Saran Diperlukan ketelitian dalam penulisan ataupun pengetikkan ejaan pada source kode dengan memperhatikan tata cara dan struktur penulisannya agar Ketika melakukan proses running nanti tidak terdapat erorr


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA BAB II VARIABEL DAN KONSTANTA Oleh Nama: RINI IDRIS NPM: 07352211020 PROGRAM STUDI INFORMATIKA FAKULITAS TEKNIK UNIVERSITAS KHAIRUN TERNAT 2023


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAI 21 BAB II VARIABEL DAN KONSTANTA 2.1 PENDAHULUAN Dalam proses pemrograman tipe data biasa digunakan untuk mendefinisikan suatu variabel atau konstanta. Variabel adalah suatu tempat untuk menampung data yang nilainya selalu berubah. Sedangkan, Konstanta adalah suatu tempat untuk menampung data yang nilainya selalu tetap dan tidak pernah berubah.Variabel adalah suatu memori yang dialokasikan dengan nama tertentu dan hanya bisa menampung data sesuai dengan tipe yang ditentukan. Sifat dari variabel adalah nilai yang disbanding akan mudah diubah sesuai dengan proses yang terjadi dan untuk konstanta sendiri adalah suatu memori yang dialokasikan dengan nama tertentu yang berisi suatu nilai yang memiliki sifat tetap yang tidak akan bisa berubah.Variabel atau peubah adalah objek yang nilainya dapat berubah – ubah dalam sebuah program pada saat sebuah variabel dideklarasikan. Program “Memesan” tempat dengan ukuran tertentu (Sesuai tipe datanya) pada memori untuk menyimpan nilai dari variabel tersebut pada saat mendeklarasikan sebuah variabel. Pemrograman harus menyebutkan nama variabel dan tipe data dari variabel tersebut. Berbeda dengan konstanta yang nilainya tetap dan tidak bisa diubah – ubah.


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAI 22 Konstanta yang bersifat konstan atau tetap, artinya nilai dari konstanta didalam program tidak dapat diubah atau bersifat tetap. Konstanta juga sering dianggap seperti variabel, namun nilainya tetap atau tidak dapat diubah – ubah. 2.2 TUJUAN PRAKTIKUM a. Mempraktekkan variabel dan konstanta b. Membuat file kerja dengan bahasa C++ c. Memulai membuat program baru, meng-compile, menyimpan, dan menjalankan program yang telah dibuat d. Memanggil / membuka kembali program yang telah disimpan e. Membuat program menjadi program yang execute 2. 3 LANGKAH – LANGKAH KEGIATAN PRAKTIKUM a. Bukalah aplikasi Dev C++ melalui start menu gambar 2 1 Tampilan aplikasi Dev C++ b. Tampilan awal tampak seperti gambar dibawah ini :


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAI 23 gambar 2 2 Tampilan awal Dev C++ c. Buatlah program baru dengan cara file-new-source atau gunakan Ctrl – N atau seperti pada gambar dibawah ini : gambar 2 3 Membuat projek baru


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAI 24 d. Ketik source code programnya seperti gambar dibawah ini : gambar 2 4 Struktur code C++ e. Setelah menulis sourcenya, tekan compile and run seperti gambar di bawah ini : gambar 2 5 Proses compile


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAI 25 f. Akan muncul dialog untuk menyimpan program. Berikan nama sesuai dengan keinginan kalian. Missal “Variabel dan Konstanta” kemudian save dengan ekstensi “Cpp”. gambar 2 6 Proses Penyimpanan g. Setelah klik save, akan muncul jendela yang menampakkan hasil program menghitung luas, keliling, dan jari – jari lingkaran yang telah dibuat.


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAI 26 gambar 2 7 7 Hasil running h. Anda telah berhasil membuat program menghitung luas, keliling, dan jari – jari lingkaran dengan bahasa pemrograman C++ menggunakan Dev C++. 2.4 LATIHAN KEGIATAN PRAKTIKUM a. Latihan 1 Buatlah program baru dengan cara file-new-source atau gabungan Ctrl – N kemudian ketik source code programnya seperti dibawah ini : #include <conio.h> #include <iostream> using namespace std; main ()


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAI 27 { const float phi = 3.141592; float jari_jari, keliling, luas; jari_jari = 72; luas = phi*jari_jari*jari_jari*jari_jari; keliling = 2*phi*jari_jari; cout <<"Luas Lingkaran adalah"<<"Luas"<< "Satuan"<<endl; cout<<"Keliling lingkaran adalah" <<keliling<< "Satuan Panjang"; cout<<""<<endl; cout<<""<<endl; cout<< "Nama : Rini"<<endl; cout<< "NPM : 07352211020"<<endl; getch (); } Compile dan perbaiki program sampai benar.


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAI 28 gambar 2 8 Source code Latihan C++ Setelah program diperbaiki dan dicompile, maka tampilan hasil running akan tampak seperti gambar dibawah


PRAKTIKUM ALGORITMA DAN STRUKTUR DATA LAB REKAYASA PERANGKAT LUNAK | TEKNIK INFORMATIKA UNKHAI 29 gambar 2 9 Tampilan hasil running C++ b. Latihan 2 Buatlah program baru dengan cara file-new-source atau gabungan Ctrl – N kemudian ketik source code programnya seperti dibawah ini : #include <conio.h> #include <iostream> using namespace std; int main() { float data1, data2, tambah, kurang, kali, bagi; cout<< "Operasi Aritmetika Dasar"<<endl;


Click to View FlipBook Version