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 Windaryati, 2023-01-16 22:16:20

LAPORAN PRAKTIKUM

LAPORAN PRAKTIKUM

91 { //inisialisasikan array //int ujian[5]= {90,95,78,85}; int ujian [5]; //input data ke array for (int k=0;k<5;k++) { cout<<" Masukkan data nilai ujian["<<k<<"] = "; cin>>ujian[k]; } //tampilan data array for (int j=0;j<5;j++) { cout<< "Data nilai ujian["<<j<<"] = " <<ujian[j]<<endl; } cout<<""<<endl; cout<<""<<endl; cout<<"Nama\t\t: Windaryati"<<endl; cout<<"NPM\t\t : 07352211016"<<endl; getch(); } Compile dan perbaiki program sampai benar.


92 Gambar 4.8 Source code Latihan C++ Setelah program diperbaiki dan dicompile, maka tampilan hasil running akan tampak seperti gambar dibawah ini :


93 Gambar 4.9 Tampilan hasil running C++ b. Latihan 2 Buatlah program baru dengan cara file-new-source atau Ctrl-N kemudian ketik source code programnya seperti dibawah ini : #include <conio.h> #include <iostream> using namespace std; int main () { float data[5]; float rata, total = 0; //input data ke array for (int k=0; k<5; k++) { cout<<"Masukkan data ["<<k<<"] = "; cin>>data[k]; } //menghitung total nilai pada array for (int j=0; j<5; j++) { total = total + data[j]; }


94 //menghitung rata - rata rata = total / 5; cout<<"Rata-rata data pada array = "<<rata<<endl; cout<<""<<endl; cout<<""<<endl; cout<<"Nama : Windaryati"<<endl; cout<<"NPM : 07352211016"<<endl; getch(); } Compile dan perbaiki program sampai benar.


95 Gambar 4.10 Source code Latihan C++ Setelah program diperbaiki dan decompile, maka tampilan hasil running akan tampak seperti gambar dibawah ini :


96 Gambar 4.11 Tampilan hasil running C++ 4.5 STUDI KASUS


97 Buatlah Flowchart dari Program “Array Dimensi Satu” False True False True Flowchart 4.1 Penjelasan : Flowchart diatas, dimulai dengan menggunakan simbol terminator, lalu mendeklarasikan “int ujian, lalu menginput Nama, NPM, dan judul array menggunakan simbol input/output lalu Start Int Ujian[5] Output Windaryati NPM : 07352211016 Judul : Array 1 Dimensi Int k= 0 K < 5 K++ Input ujian[k] Int j = 0 j++ j < 5 Output ujian[j] End


98 masukkan kondisi dan bandingkan menggunakan simbol preparation dan decision. Jika kondisi benar k<5, j<5 maka pernyataan True, jika kondisi k>5, j>5 maka pernyataan false. Lalu akhiri dengan menggunakan simbol terminator. Tulislah source code dari program berikut ini : a. Latihan 1 Buatlah program baru dengan cara file-new-source atau gunakan Ctrl – N, kemudian ketik source code program seperti dibawah ini : #include <iostream> using namespace std; main() { //inisialosasi array //int ujian[5]= {90, 95, 78, 85}; int ujian[5]; //input data ke array for (int k=0;k<5;k++) { cout<<"masukkan data nilai ujian["<<k<<"]="; cin>>ujian[k]; } //tampil data array for (int j=0;j<5;j++)


99 { cout<<"data nilai ujian["<<j<<"]="<<ujian[j]<<endl; } } Compile dan perbaiki program sampai benar. Gambar 4.12 Source code program Setelah program diperbaiki dan decompile, maka tampilan hasil running akan tampak seperti gambar dibawah ini :


100 Gambar 4.13 Tampilan hasil running program


101 Buatlah Flowchart dari Program “Array Dimensi Satu” False True False True Flowchart 4.2 Penjelasan : Flowchart diatas, dimulai dengan menggunakan simbol terminator, lalu mendeklarasikan “float data, float rata total, menggunakan simbol input/output lalu masukkan kondisi dan bandingkan menggunakan simbol preparation dan decision. Jika kondisi benar k<5, j<5 maka pernyataan True, jika kondisi k>5, j>5 maka pernyataan false. Lalu akhiri dengan menggunakan simbol terminator. Start Float data[5] Float rata, total = 0 Output Windaryati NPM : 07352211016 Judul : Array 1 Dimensi Int k= 0 K++ K < 5 Input data 1 1 Int j= 0 j < 5 j++ Total=tot al + data[j] Rata=total/5 Output data End


102 b. Latihan 2 Buatlah program baru dengan cara file-new-source atau gunakan Ctrl – N, kemudian ketik source code program seperti dibawah ini : #include <iostream> #include <conio.h> using namespace std; main() { float data[5]; float rata, total = 0; //input data ke array for (int k=0;k<5;k++) { cout<<"Masukkan data["<<k<<"]="; cin>>data[k]; } //menghitung total nilai pada array for (int j=0;j<5;j++) { total=total + data[j]; } //menghitung rata - rata


103 rata=total / 5; cout<<"rata - rata data pada array="<<rata<<endl; } Compile dan perbaiki program sampai benar. Gambar 4.14 Source code program Setelah program diperbaiki dan dicompile, maka tampilan hasil running akan tampak seperti gambar dibawah ini :


104 Gambar 4.15 Tampilan hasil running program


105 Buatlah Flowchart dari Program “Array 1 Dimensi” No Yes Flowchart 4.3 Penjelasan : Flowchart diatas dimulai dengan menggunakan simbol terminal, lalu mendeklarasikan “int data, int elemen, ketemu dan x”. menginput nilai x menggunakan simbol input/output lalu masukan kondisi dan bandingkan menggunakan simbol preparation dan decision, jika Start Int data [10]={4,1,0,-9,8,5,- 1,2,3,-1,2,3,-7} int elemen, ketemu x Input Data yang ingin dicari For (elemen=0;elemen<=9;elemen++ If ketemu ==0 Data tidak ditemukan End Data ada di elemen


106 kondisi (ketemu=0) maka hasil “data ada di elemen” menggunakan simbol input/output, lalu mengakhiri dengan menggunakan simbol terminal. c. Latihan 3 Buatlah program baru dengan cara file-new-source atau gunakan Ctrl – N, kemudian ketik source code program seperti dibawah ini : #include<iostream> #include<conio.h> Using namespace std ; Main () { Int data[10]={4,1,0,-9,8,5,-1,2,3,-7} ; Int elemen, ketemu, x ; Cout<<’’Data yang dicari’’ :’’ ; Cin >> x ; Ketemu =0 ; For (elemen=0 ;elemen<=9 ;elemen++) { If (data[elemen]==x) { Ketemu = !ketemu ; Break ; }


107 } If (Ketemu ===0) Cout<< ‘’Data tidak ditemukan’’ ; Else Cout<<’’Data ada di elemen :’’<<elemen ; Getch() ; } Perbaiki dan compile sampai benar. Gambar 4.16 Source code program Setelah program diperbaiki dan dicompile, maka tampilan hasil running akan tampak seperti gambar dibawah ini :


108 Gambar 4.17 Tampilan hasil running program


109 Buatlah Flowchart dari Program “Array 2 Dimensi) False True Flowchart 4.4 START Int matrix [3][4] = {5,10,1,11},{4,7,67,-9},{9,0,45,3} For (int i=0, i<3; i++) For (int J=0;J= J<4; J++) Hasil Matrix [i][j] End


110 Penjelasan : Flowchart diatas dimulai dengan menggunakan simbol terminator, lalu mendeklarasikan int matrix [3][4] beserta nilainya. Kemudian masukan kondisi pertama yaitu for (int i=0;I<3;i++) dan kondisi kedua adalah for (int j-0;j<4;j++) menggunakan simbol preparation, lalu hasil matrix [i][J] dengan menggunakan simbol input/output, dan diakhiri dengan menggunakan simbol simbol terminal. d. Latihan 4 Buatlah program baru dengan cara file-new-source atau gunakan Ctrl – N, kemudian ketik source code program seperti dibawah ini : #include<iostream> #using namespace std ; Main() { Int matrix[3][4]= {{5,10,1,11},{4,7,67,-9},{9,0,45,3}} ; For (int i=0 ;i<3 ;i++) { For (int j=0 ;j<4 ;j++) { Cout<<matrix[i][j]<< ‘’’’ ; } Cout<<endl ; }


111 Return 0 ; } Compile dan perbaiki sampai benar. Gambar 4.18 Source code program Setelah program diperbaiki dan dicompile, maka tampilan hasil running akan tampak seperti gambar dibawah ini :


112 Gambar 4.19 Tampilan hasil running 4.6 KESIMPULAN DAN SARAN a. Kesimpulan Array adalah sekumpulan variabel yang memiliki tipe yang sama dan dinyatakan dengan nama yang sama. Array dideklarasikan dibagian deklarasi variabel. Array dibedakan menjadi dua yaitu, Array Satu Dimensi dan Array Dua Dimensi. Dan setiap jenis array mempunyai kegunaannya masing – masing. Array dapat bertipe sederhana seperti byte, word, integer, real, Boolean, char, string, dan juga dapat bertpe scalar atau subrange. b. Saran Laporan ini masih terdapat banyak kesalahan karena terbatasnya pengetahuan dan kurangnya referensi mataeri pada laporan ini, diharapkan pembaca dapat memberikan saran sebagai motivasi pembuatan laporan selanjutnya.


113 LEMBAR ASISTENSI BAB IV


114 BAB V POINTER Disusun Oleh : Nama : Windaryati NPM : 07352211016 PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS KHAIRUN 2023


115 BAB V POINTER 5.1 PENDAHULUAN 5.11 PENGENALAN POINTER Pointer adalah sebuah variabel atau objek yang menunjuk ke variabel atau objek lainnya. Pointer hanyalah variabel yang menyimpan alamat memori. Memori tersebut dapat berasal dari variabel, objek, dan lain-lain. Dengan pointer ini dimungkinkan untuk menunjuk suatu memori yang ditunjuk. Suatu pointer dapat berisi alamat dari suatu variabel lain dan untuk dapat mengakses nilai yang ada di dalam variabel berponter secara langsung dapat dilakukan dengan menggunakan operator. Ada dua operator pointer yang disediakan oleh Borland C++ yaitu : a. Operator Deference (&) Operator Deference (&) adalah operator yang berfungsi untuk mendeklarasikan suatu variabel dalam penggantian memori. Operator ini biasa disebut sebagai ‘’Address Of’’. Jadi misalkan ketika ingin mengetahui dimana variabel akan disimpan (untuk mengetahui lokasi/alamat dimana variabel disimpan di memori). Bisa meletakkan ‘’&’’ atau biasa disebut AND (Ampersand Sign) di depan variabel yang berarti Address Of. b. Operator Reference (*)


116 Operator Reference atau biasa disebut dengan ‘’Value Pointed By’’. Bedanya dengan operator deference, operator ini akan menampilkan nilai yang terdapat dalam suatu alamat memori, bukan menampilkan alamat memorinya. 5.12 Cara Mengakses Pointer Variabel yang terkandung di dalam pointer memiliki alamat memori sebagai nilai dan variabel pointer tersebut. Nilai pointer tersebut dapat diakses melalui pointer kita beserta dengan nilai dari alamat memori yang ditunjuk oleh pointer. Pointer sendiri dikenal dengan variabel sehingga cara pengaksesannya tidak jauh berbeda. Untuk kita mengakses nilai dari pointer, kita hanya cukup dengan memanggil identitas dari pointer tersebut. pInt Pemanggilan akan menunjukkan nilai (Alamat memori) dari variabel yang ditujuk oleh pointer tersebut. Untuk mengubah nilai tujuan dari pointer, kita memerlukan operator address-of (&) pada operand sumber. pInt = &myVar Operand sumber akan menampilkan alamat memori dari myVar, dan hal itu merupakan nilai yang dibutuhkan variabel pointer. Kegunaan utama dari pointer adalah untuk menyimpan alamat memori dari sebuah variabel dan alamatnya dari suatu fungsi. Pointer dapat meningkatkan kinerja untuk operasi berulang. 5.2 TUJUAN PRAKTIKUM a. Mengetahui cara penggunaan operator pada pointer b. Mampu mempraktekkan struktur pointer pada program C++ c. Membuat file kerja dengan bahasa program C++


117 5.3 LANGKAH – LANGKAH PRAKTIKUM POINTER C++ a. Bukalah aplikasi Dev C++ melalui start menu : Gambar 5.1 Aplikasi Dev C++ b. Tampilan awal tampak seperti gambar dibawah ini : Gambar 5.2 Tampilan awal C++ c. Buatlah Program baru dengan cara : File – new – source atau gunakan Ctrl – N atau seperti pada gambar di bawah ini :


118 Gambar 5.3 Membuat program baru d. Ketik source code programnya seperti pada gambar dibawah ini : Gambar 5.4 Structur code C++ e. Setelah menulis sourcenya, tekan compile and run seperti pada gambar dibawah ini : f.


119 Gambar 5.5 Proses compile g. Akan muncul dialog untuk menyimpan program. Beri nama sesuai keinginan kalian, misalkan “Hello World” kemudian save dengan ekstensi “cpp”. Gambar 5.6 proses penyimpanan


120 h. Setelah klik save, akan muncul jendela yang menampilkan hasil program “Hello World” yang telah dibuat. Gambar 5.7 Tampilan hasil running i. Anda telah berhasil membuat program Hello World pada pemrograman C++ dengan menggunakan Dev C++. 5.4 LATIHAN KEGIATAN PRAKTIKUM a. Latihan 1 (Pointer Konstanta)


121 Berikut Flowchart Pointer Konstanta


122 Penjelasan : Dimulai dengan terminator ‘’mulai’’ dan header sebagai bentuk fungsinya. Setelahnya di proses char const ‘’nama= ‘’Borland C++’’ ; sehingga menampilkan cout<<’’Nama Program=’’<<nama<<endl dan di selesaikan dengan getch() ; #include <stdio.h> #include<conio.h> #include <iostream> using namespace std; main() { cout<<"Nama : Windaryati"<<endl; cout<<"NPM : 07352211016"<<endl; cout<<"======================"<<endl; char const* nama="Borland C++"; cout<<"Nama Program ="<<nama<<endl; nama = "Visual C++"; cout<<"Nama Program ="<<nama<<endl; getch(); } Compile dan perbaiki program sampai benar.


123 Gambar 5.8 Source code program Tampilan setelah di running. Gambar 5.9 Hasil running program


124 b. Latihan 2 (Pointer Variabel) Penjelasan : Dimulai dengan terminator ‘’mulai’’ dan header pada umumnya. Masukkan fungsi pointer int ilham, amir, *raka ; dan di proses ilham = 75 ;amir = ilham ; raka =&ilham ;, lalu tampilkan


125 keterangannya. Cout<<’’Nilai ILHAM = *<<ilham<<endl ; cout<<’’Nilai AMIR = *<<amir<<endl ; dan cout<<’’Nilai RAKA =’’<<raka<<endl ; dan di tutup dengan getch() ; #include <conio.h> #include <iostream> #include <windows.h> using namespace std; main() { system("colour 0A"); cout<<"Nama : Windaryati"<<endl; cout<<"NPM : 07352211016"<<endl; cout<<"===================="<<endl; int ilham, amir, *raka; ilham = 75; amir = ilham; raka = &ilham; cout<<"Nilai ILHAM ="<<ilham<<endl;


126 cout<<"Nilai AMIR ="<<amir<<endl; cout<<"Nilai RAKA ="<<raka<<endl; getch(); } Compile dan perbaiki program sampai benar. Gambar 5.10 Souce code program


127 Gambar 5.11 Tampilan hasil running 5.5 STUDI KASUS


128 a. Buatlah Flowchart dari Program "Operasi Aritmatika Pada Pointer” Flowchart 5.1 Penjelasan : Dimulai dengan simbol terminator, mendeklarasikan int nilai [3], *penunjuk, nilai [0] = 125, nilai [1] = 345, nilai [2] =750, penunjuk =&nilai [0] menggunakan simbol proses. SELESAI


129 Lalu tampilkan nilai [1] ada di dalam memori penunjuk +1, dan nilai [2] ada di dalam penunjuk +2 menggunakan simbol input/output. Diakhiri dengan simbol terminator. #include <iostream> #include <conio.h> using namespace std; main() { cout<<"Nama : Windaryati"<<endl; cout<<"NPM : 07352211016"<<endl; cout<<"======================="<<endl; int nilai[3], *penunjuk; nilai[0]=125; nilai[1]=345; nilai[2]=750; penunjuk = &nilai[0]; cout<<"Nilai"<<*penunjuk<<"ada di alamat memori"<<penunjuk<<endl; cout<<"Nilai"<<*(penunjuk+1)<<"ada di alamat memori"<<(penunjuk+1)<<endl; cout<<"Nilai"<<*(penunjuk+2)<<"ada di alamat memori"<<(penunjuk+2)<<endl; getch(); }


130 Compile dan perbaiki program sampai benar. Gambar 5.12 Source code program Gambar 5.13 Tampilan hasil running


131 b. Buatlah Flowchart dari Program ‘’Pointer dalam Array" Flowchart 5.2


132 Penjelasan : Dimulai dengan menggunakan simbol terminator, kemudian mendeklarasikan char C[4], lalu memasukkan kondisi for (int i=0, i<4, ++i) menggunakan simbol preparation, lalu print address menggunakan simbol input/output, dan diakhiri menggunakan simbol terminator. #include <iostream> #include <conio.h> using namespace std; main() { cout<<"Nama : Windaryati"<<endl; cout<<"NPM : 07352211016"<<endl; cout<<"===================="<<endl; char c[4]; int i; for(i=0;i<4;++i) {printf("Address of c[%d]=%x\n",i,&c[i]);


133 } getch(); } Compile dan perbaiki program sampai benar. Gambar 5.14 Souce code program Gambar 5.15 Tampilan hasil running


134 5.6 KESIMPULAN DAN SARAN a. Kesimpulan Suatu variabel yang bertipe pointer tidaklah berisi data melainkan alamat suatu data. Tipe variabel pointer sama dengan tipe yang dikenal oleh variabel biasa, misalnya int, float, char, dan sebagainya. Nama dan variabel pointer juga mengikuti ketentuan nama variabel biasa. Perbedaan variabel pointer dengan variabel biasa yaitu penggunaan tanda asterisk(*) didepan nama variabel pada waktu deklarasi. b. Saran Penggunaan pointer pada proses program harus benar-benar diperhatikan. Sedikit saja kesalahan dalam menggunakan pointer akan mengakibatkan kesalahan fatal pada program. Karena pointer bisa langsung menunjukkan pada lokasi memori, apabila lokasi yang ditunjuk salah, berarti data yang diambil juga akan salah, dan sudah tentu program anda akan menjadi salah juga.


135 LEMBAR ASISTENSI BAB V


136 BAB VI LAPORAN PRAKTIKUM STACK Disusun Oleh : Nama : Windaryati NPM : 07352211016 PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS KHAIRUN 2023


137 BAB VI STACK 6.1 PENDAHULUAN Stack adalah suatu koleksi atau kumpulan item data yang terorganisir dalam bentuk linear, yang operasi pemasukan dan penghapusan datanya dilakukan pada salah satu sisinya. Sedangkan pengertian stack pada struktur data adalah sebagai tumpukan dari benda, sekumpulan data yang seolah – olah diletakkan diatas data yang lain, koleksi dari objek-objek homogen, atau suatu urutan elemen yang elemennya dapat diambil dan ditambah hanya pada posisi akhir (top) saja. Stack merupakan bentuk khusus dari suatu data, dimana node yang ditambahkan dalam list dan diambil dari list hanya pada kepalanya, atau dengan prinsip pengolahannya adalah Last in First Out (LIFO). Pada struktur ini hanya ada dua fungsi utama yaitu, push (memasukkan node kedalam stack), dan pop (mengambil node dari stack). Secara sederhana tumpukan bisa diartikan sebagai kumpulan data yang seolah-olah diletakkan diatas yang lain. Dalam suatu tumpukan akan dapat dilakukan operasi penambahan (penyisipan) dan pengambilan (penghapusan) data melalui ujung yang sama, ujung ini merupakan ujung atas tumpukan sebelum struktur data tumpukan ini digunakan, dideklarasikan dahulu dalam kamus data.


138 6.2 TUJUAN PRAKTIKUM a. Memahami konsep stack b. Mempraktikkan cara penggunaan stack dalam C++ 6.3 LANGKAH-LANGKAH KEGIATAN PRAKTIKUM a. Bukalah aplikasi Dev C++ melalui start menu. Gambar 6.1 tampilan aplikasi Dev C++ b. Tampilan awal tampak seperti berikut. Gambar 6.2 tampilan awal Dev C++ c. Buatlah program baru dengan cara file-new-source atau gunakan Ctrl-N atau seperti gambar berikut.


139 Gambar 6.3 membuat project baru d. Ketik source code programnya seperti gambar berikut ini :


140 Gambar 6.4 Struktur code C++ Gambar 6.5 Struktur code C++ e. Setelah menulis sourcenya, klik compile and run atau F1 seperti gambar berikut ini : Gambar 6.7 Proses compile


Click to View FlipBook Version