Anda di halaman 1dari 44

LAPORAN PRAKTIKUM

STRUKTUR DATA
SEMESTER GENAP TAHUN AKADEMIK 2023/2024

Disusun Oleh:
Nama : Muhammad khilmi lutfan albab
NIM : 2318059
Prodi : Teknik Informatika S-1
Kelompok :

PROGRAM STUDI TEKNIK INFORMATIKA S-1


FAKULTAS TEKNOLOGI INDUSTRI
INSTITUT TEKNOLOGI NASIONAL MALANG
2024
LEMBAR PERSETUJUAN
PRAKTIKUM STRUKTUR DATA
SEMESTER GENAP TAHUN AKADEMIK 2023/2024

Disusun Oleh
NAMA : Fahmi Rifki Haikal
NIM : 2218078
PRODI : Teknik Informatika S-1

Mengetahui Menyetujui
Ka. Lab. Jaringan Komputer Dosen Pembimbing

(F.X. Ariwibisono, ST, M.Kom) (F.X. Ariwibisono, ST, M.Kom)


NIP. P. 1030300397 NIP. P. 1030300397

PROGRAM STUDI TEKNIK INFORMATIKA S-1


FAKULTAS TEKNOLOGI INDUSTRI
INSTITUT TEKNOLOGI NASIONAL MALANG
2024

i
KATA PENGANTAR
Dengan memanjatkan puji syukur kehadirat Tuhan Yang Maha Esa, karena
atas berkah rahmat dan karunia-Nya sehingga kami dapat menyelesaikan Laporan
Praktikum Mata Kuliah, guna persyaratan dalam menempuh mata kuliah.
Laporan ini disusun berdasarkan percobaan dan teori dasar yang ada dalam
buku panduan praktikum ,teori yang diperoleh praktikan dari perkuliahan, dan
tidak lupa yaitu Internet sehingga praktikan dapat menambah tidak hanya
menguasai teori saja namun juga memahami serta mengaplikasikannya.
Terwujudnya laporan ini, tentunya tidak lepas dari bantuan-bantuan yang
telah kami terima. Pada kesempatan ini, kami menyampaikan terima kasih yang
sebesar-besarnya kepada yang terhormat:
1. Ibu/Bapak .... selaku dosen pembimbing Praktikum Struktur Data.
2. Bapak Yosep Agus Pranoto,ST. selaku dosen mata kuliah Struktur Data.
3. Mira Orisa,ST.MT. selaku Ketua Pelaksana Praktikum Mata Kuliah
Jurusan Teknik Informatika ITN Malang.
4. Instruktur Lab. Jaringan Komputer Teknik Informatika yang telah
memberi petunjuk kepada kami selama pelaksanaan praktikum.
5. Rekan-rekan yang telah membantu dalam pelaksanaan dan penyelesaian
laporan ini.
Dalam menyusun laporan ini kami menyadari bahwa laporan ini masih
memiliki kekurangan, karena itu segala kritik dan saran yang membangun akan
kami nanti demi perbaikan penyusunan laporan selanjutnya.
Harapan kami laporan praktikum ini bermanfaat bagi penulis sendiri
maupun pembaca sekalian.
Malang, Juni 2024

Penulis

ii
DAFTAR ISI
LEMBAR PERSETUJUAN.....................................................................................i

KATA PENGANTAR.............................................................................................ii

DAFTAR ISI..........................................................................................................iii

DAFTAR GAMBAR..............................................................................................vi

DAFTAR TABEL................................................................................................viii

BAB 1 PENDAHULUAN.......................................................................................1

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

1.2 Rumusan Masalah..........................................................................................1

1.3 Batasan Masalah............................................................................................2

1.4 Tujuan............................................................................................................2

BAB 2 POINTER & STRUCTURE........................................................................3

2.1 Jumlah Pertemuan..........................................................................................3

2.2 Tujuan............................................................................................................3

2.3 Alat dan Bahan...............................................................................................3

2.4 Landasan Teori...............................................................................................3

2.5 Tugas Praktikum ke-1:...................................................................................4

2.6 Tugas Praktikum ke-2:...................................................................................5

2.7 Tugas Praktikum ke-3:...................................................................................5

2.8 Kesimpulan....................................................................................................5

BAB 3 REKURSIF & QUEUE...............................................................................6

3.1 Jumlah Pertemuan..........................................................................................6

3.2 Tujuan............................................................................................................6

3.3 Alat dan Bahan...............................................................................................6

3.4 Landasan Teori...............................................................................................6

3.5 Tugas Praktikum ke-1:...................................................................................7

iii
3.6 Tugas Praktikum ke-2:...................................................................................8

3.7 Tugas Praktikum ke-3:...................................................................................8

3.8 Kesimpulan....................................................................................................8

BAB 4 STACK........................................................................................................9

4.1 Jumlah Pertemuan..........................................................................................9

4.2 Tujuan............................................................................................................9

4.3 Alat dan Bahan...............................................................................................9

4.4 Landasan Teori...............................................................................................9

4.5 Tugas Praktikum ke-1:.................................................................................10

4.6 Tugas Praktikum ke-2:.................................................................................11

4.7 Tugas Praktikum ke-3:.................................................................................11

4.8 Kesimpulan..................................................................................................11

BAB 5 SORTING..................................................................................................12

5.1 Jumlah Pertemuan........................................................................................12

5.2 Tujuan..........................................................................................................12

5.3 Alat dan Bahan.............................................................................................12

5.4 Landasan Teori.............................................................................................12

5.5 Tugas Praktikum ke-1:.................................................................................13

5.6 Tugas Praktikum ke-2:.................................................................................14

5.7 Tugas Praktikum ke-3:.................................................................................14

5.8 Kesimpulan..................................................................................................14

BAB 6 SEARCHING.............................................................................................15

6.1 Jumlah Pertemuan........................................................................................15

6.2 Tujuan..........................................................................................................15

6.3 Alat dan Bahan.............................................................................................15

6.4 Landasan Teori.............................................................................................15

iv
6.5 Tugas Praktikum ke-1:.................................................................................16

6.6 Tugas Praktikum ke-2:.................................................................................17

6.7 Tugas Praktikum ke-3:.................................................................................17

6.8 Kesimpulan..................................................................................................17

BAB 7 LINKED LIST...........................................................................................18

7.1 Jumlah Pertemuan........................................................................................18

7.2 Tujuan..........................................................................................................18

7.3 Alat dan Bahan.............................................................................................18

7.4 Landasan Teori.............................................................................................18

7.5 Tugas Praktikum ke-1:.................................................................................19

7.6 Tugas Praktikum ke-2:.................................................................................20

7.7 Tugas Praktikum ke-3:.................................................................................20

7.8 Kesimpulan..................................................................................................20

BAB 8 TREE.........................................................................................................21

8.1 Jumlah Pertemuan........................................................................................21

8.2 Tujuan..........................................................................................................21

8.3 Alat dan Bahan.............................................................................................21

8.4 Landasan Teori.............................................................................................21

8.5 Tugas Praktikum Ke-1:................................................................................22

8.6 Tugas Praktikum Ke-2:................................................................................23

8.7 Tugas Praktikum Ke-3:................................................................................23

8.8 Kesimpulan..................................................................................................23

KESIMPULAN......................................................................................................24

DAFTAR PUSTAKA............................................................................................25

v
DAFTAR GAMBAR
Gambar 2.1 Ingat Gambar Pakai Heading 3............................................................4

Gambar 2.2 Tampilan Program …...........................................................................4

Gambar 2.3 Tampilan Program …...........................................................................5

Gambar 2.4 Tampilan Program …...........................................................................5

Gambar 3.1 Ingat Gambar Pakai Heading 3............................................................7

Gambar 3.2 Tampilan Program …...........................................................................7

Gambar 3.3 Tampilan Program …...........................................................................8

Gambar 3.4 Tampilan Program …...........................................................................8

Gambar 4.1 Ingat Gambar Pakai Heading 3..........................................................10

Gambar 4.2 Tampilan Program ….........................................................................10

Gambar 4.3 Tampilan Program ….........................................................................11

Gambar 4.4 Tampilan Program ….........................................................................11

Gambar 5.1 Ingat Gambar Pakai Heading 3..........................................................13

Gambar 5.2 Tampilan Program ….........................................................................13

Gambar 5.3 Tampilan Program ….........................................................................14

Gambar 5.4 Tampilan Program ….........................................................................14

Gambar 6.1 Ingat Gambar Pakai Heading 3..........................................................16

Gambar 6.2 Tampilan Program ….........................................................................16

Gambar 6.3 Tampilan Program ….........................................................................17

Gambar 6.4 Tampilan Program ….........................................................................17

Gambar 7.1 Ingat Gambar Pakai Heading 3..........................................................19

Gambar 7.2 Tampilan Program ….........................................................................19

Gambar 7.3 Tampilan Program ….........................................................................20

Gambar 7.4 Tampilan Program ….........................................................................20

Gambar 8.1 Ingat Gambar Pakai Heading 3..........................................................22

vi
Gambar 8.2 Tampilan Program …….....................................................................22

Gambar 8.3 Tampilan Program …….....................................................................23

Gambar 8.4 Tampilan Program …….....................................................................23

vii
DAFTAR TABEL
Tabel 2.1 Ingat Tabel Pakai Heading 4....................................................................4

Tabel 3.1 Ingat Tabel Pakai Heading 4....................................................................7

Tabel 4.1 Ingat Tabel Pakai Heading 4..................................................................10

Tabel 5.1 Ingat Tabel Pakai Heading 4..................................................................13

Tabel 6.1 Ingat Tabel Pakai Heading 4..................................................................16

Tabel 7.1 Ingat Tabel Pakai Heading 4..................................................................19

Tabel 8.1 Ingat Tabel Pakai Heading 4..................................................................22

viii
BAB 1
PENDAHULUAN
1.1 Latar Belakang
Struktur data adalah cara penyimpanan, pengorganisasian, dan
pengaturan data di dalam media penyimpanan komputer sehingga data
tersebut dapat digunakan secara efisien. Namun dalam bahasa pemrogaman
Struktur data berarti tata letak data yang berisi kolom-kolom data, baik itu
kolom yang tampak oleh pengguna (user) ataupun kolom yang hanya
digunakan untuk keperluan pemrograman yang tidak tampak oleh pengguna.
Pemakaian struktur data yang tepat didalam proses pemrograman akan
menghasilkan algoritma yang lebih jelas dan tepat, sehingga menjadikan
program secara keseluruhan lebih efisien dan sederhana. Konsep Struktur data
ini dapat di terapkan pada bahasa pemrogaman lainnya seperti pascal, dsb.
Didalam struktur data ini terdapat berbagai macam pengolahan data seperti
pengambilan data dengan menggunakan sebuah pointer dimana pengambilan
data tersebut dengan menyebutkan alamat dari suatu variable, ada lagi yang
bernama struct ialah cara pemanggilan data pada suatu fungsi yang fungsi
tersebut menjadi sebuah tipedata baru di dalam sebuah program C++.
Dalam Struktur data ini program hanya bisa di pelajari secara struktural,
karena program hanya akan bisa berjalan jika penulisan kode/Script di atas
benar maka perlu penganalogian khusus seperti penganalogian pengurutan
data dengan meggunakan metode buble sort, exchange sort, dan lain
sebagainya.
1.2 Rumusan Masalah
1. Apa itu Struktur data?
2. Bagaimana cara pemanggilan sebuah data dengan sebuah alamat?
3. Bagaimana cara pembuatan sebuah fungsi yang nantnya dapat di pakai
sebagai nama variable baru?
4. Bagaimana cara pencarian sebuah data?
5. Bagaimana cara pengurutan sebuah data dari data Terbesar ke terkecil
maupun sebaliknya.

1
6. Bagaimana cara penghitungan sebuah data dengan membedakan mana
operator dan operand?
1.3 Batasan Masalah
1. Mengenal pemanggilan variable
2. Pengurutan sebuah data
3. Pencarian sebuah data
4. Penghitungan data dengan membedakan operand dan operator
1.4 Tujuan
1. Praktikan dapat mengetahui bagaimana cara pemanggilan data dengan
alamat
2. Praktikan dapat mengetahui bagaimana cara pengurutan sebuah data
3. Praktikan dapat mengetahui bagaimana cara pencarian sebuah data
4. Praktikan dapat memahami bagaimana cara penghitungan sebuah data
dengan bahasa tingkat tinggi

Disetujui Aslab Ttd / Paraf

Tgl: 2
BAB 2
POINTER & STRUCTURE
2.1 Jumlah Pertemuan
2 x 50 menit.
2.2 Tujuan
1. Praktikan mampu memahami pengertian pointer dan structure dengan
menggunakan C++.
2. Praktikan mengetahui Aturan main dari pointer dan structure
3. Praktikan dapat mengoperasikan sebuah program menggunakan metode
pointer dan structure
2.3 Alat dan Bahan
1. Perangkat komputer
2. Perangkat lunak: Dev C++
3. Modul Struktur Data 2023
2.4 Landasan Teori
A. Pointer
1. Pengertian Pointer
Pointer dapat didefinisikan sebagai suatu variabel yang menyimpan
alamat memori. Jika kita mempunyai sebuah variabel dengan tipe data
tertentu, maka untuk mendapatkan alamat dari variabel tersebut adalah
dengan menggunakan operator & (Dereference). Alamat inilah yang
kemudian akan disimpan ke dalam variabel yang bertipe pointer.
Untuk mendeklarasikan variabel sebagai pointer, maka hanya
menambahkan tanda asterik (*) di depan nama variabel. Berikut ini
bentuk umum dari pendeklarasian variabel yang bertipe pointer.

Tipe_data *nama_pointer;

Tipe data di atas berguna untuk menyatakan bahwa pointer yang kita
deklarasikan tersebut akan ditempati oleh data dengan tipe tertentu.

3
Ilustrasi pointer:

Gambar 2.1 ilustrasi pointer

Gambar 2.2ilustrasi pointer per step


Kita memiliki variabel X yang berisi nilai karakter “a”, maka
oleh compiler C++ nilai “a” ini akan disimpan di suatu alamat
tertentu di memori. Sehingga alamat variabel X ini dapat diakses
dengan menggunakan statement &X.
Jika kita ingin menyimpan alamat dari variabel X ini, kita dapat
menggunakan suatu variabel misalnya:
int alamat_x = &x;

Maka alamat_x adalah suatu variabel yang berisi alamat dimana nilai
X disimpan. Variabel alamat_x disebut variabel pointer atau sering
disebut dengan pointer saja.

4
Tabel 2.1 oeprator ponter
Operator * Mendapatkan Contoh: Hasil
nilai data dari int *alamat;
10
variabel int nilai = 10;
pointer alamat =
&nilai;
printf(“&d”,
*alamat);
Operator & Mendapatkan Contoh: Hasil
alamat
memori dari int *alamat; 22FF70
int nilai =
variabel
10;
pointer alamat =
&nilai;
printf(“&p”,
*alamat);

Tabel 2.2 Perbedaan pointer dengan variabel biasa


Variabel Biasa Pointer
Berisi data/nilai Berisi alamat memori dari suatu
variabel tertentu
Operasi yang bisa Membutuhkan operator khusus: “&”
yang menunjuk alamat dari suatu
dilakukan seperti
variabel tertentu. Operator “&” hanya
layaknya operasi biasa: dapat dilakukan kepada variabel dan
akan menghasilkan alamat dari
+, -, *, /
variabel itu.
Contoh: p = &n.
Yang kedua : Operator “*”. Operator
ini bersifat menggunakan nilai dari
alamat variabel yang ditunjuk oleh
pointer tersebut.
Contoh: int *p
Bersifat statis Bersifat dinamis
Deklarasi: int a; Deklarasi: int *a;

5
2. Jenis Tipe Data
Tabel 2.3Jenis tipe data
int Bilangan bulat 2 byte -32768 hingga
32768
short Sama dengan int 2 byte -32768 hingga
int namun jangkauanya 32768
lebih pendek
long int Memiliki jangkauan 4 byte -2147483648
lebih panjang dari int hingga
2147483648
bool Tipe data untuk 1 byte 1 atau 0 (True
menampung nilai atau False)
kebenaran (flag)
float Bilangan floating 4 byte 3,4 x 10^-38
point atau koma hingga 3,4 x
10^+38
double Sama dengan float 8 byte 1,7 x 10^-308
namun memiliki hingga 1,7 x
jangkauan dua kali 10^+308
dari float
long Sama dengan double 10 byte 3,4 x 10^-4932
double namun memiliki hingga 3,4 x
jangkauan lebih lebar 10^+4932
char Menampung tipe 1 byte -128 hingga
karakter 128

B. Pointer Tanpa Tipe Data


Ada cara khusus untuk membuat pointer yang dideklarasikan
tersebut dapat menunjuk ke semua tipe data, yaitu dengan
mendeklarasikan pointer tersebut sebagai pointer tanpa tipe atau
disebut “void pointer”. Bentuk umumnya adalah :

Void *nama_pointer;

6
C. Aturan Pointer
Variabel pointer dapat dideklarasikan dengan tipe data apapun.
Pendeklarasian variabel pointer dengan tipe data tertentu digunakan
untuk menyimpan alamat memori yang berisi data sesuai dengan tipe
data yang dideklarasikan, bukan untuk berisi nilai bertipe data tertentu.
Tipe data digunakan sebagai lebar data untuk alokasi memori
(misalnya char berarti lebar datanya 1 byte, Int 4 Bytes, dst).
Jika suatu variabel pointer dideklarasikan bertipe float, berarti
variabel pointer tersebut hanya bisa digunakan untuk menunjuk alamat
memori yang berisi nilai bertipe float juga.
Namun besaran alokasi memori dari sebuah pointer dapat berbeda
sesuai tipe datanya dan juga kompiler nya. Pada komputer yang
menggunakan 32-bit processor, sebuah pointer akan menempati 32
bits atau 4 bytes. Sedangkan pada komputer yang menggunakan 64-bit
processor, pointer akan menempati 64 bits or 8 bytes. Untuk
mengetahui alokasi memori pada setiap tipe data kalian dapat mencoba
menjalankan perintah size of ([Tipe Data] *)

D. Aturan Pointer
Antar variabel pointer dapat dilakukan operasi assignment. Mengisi
variabel dengan nilai yang ditunjuk oleh sebuah variabel pointer.
Tabel 2.4Penjabaran Variabel Program Contoh 1
Tabel 2.5
Variabel Data Alamat
a 25 0x6ffe00
b 25 0x6ffe01
Penjabaran variable program contoh 2
Variabel Data Alamat
a 24.4 0x6ffdfc
X1 0x6ffdfc 0x6ffe01
X2 0x6ffdfc 0x6ffe02

Tabel 2.6 Penjabaran variable contoh 3


Variabel Data Alamat

7
a 30 0x6ffe00
b 15 0x6ffe01
X1 0x6ffe00 0x6ffe02
X2 0x6ffe01 0x6ffe03
E. Pointer Pada Array
Array adalah sebuah variabel yang menyimpan sekumpulan data
yang memiliki tipe sama. setiap data tersebut menempati lokasi atau
alamat memory yang berbeda-beda dan selanjutnya di sebut dengan
element array. Element array tersebut kemudian dapat kita akses melalui
indeks yang terdapat di dalamnya namun penting sekali untuk di
perhatikan bahwa dalam C++, Indeks array selalu di mualai dari 0, bukan
1.

Pada array, setiap element akan memiliki nilai dan memiliki alamat
memori yang berbeda. Variabel pointer perlu increment.
F. Struct
1. Pengertian Struct
Struct (struktur) adalah kumpulan element-elemen data yang
digabungkan menjadi satu kesatuan. Masing-masing elemen data tersebut
dikenal dengan sebutan field. Field data tersebut dapat memiliki tipe data
yang sama ataupun berbeda. Walaupun field-field tersebut berada dalam
satu kesatuan, masing-masing field tersebut tetap dapat diakses secara
individual.
Field-field tersebut digabungkan menjadi satu dengan tujuan untuk
kemudahan dalam operasinya. Misalnya anda ingin mencatat data-data
mahasiswa dan pelajar dalam sebuah program. Untuk membedakannya
anda dapat membuat sebuah struct mahasiswa yang terdiri dari field nama,
nim, program studi, dan ipk. Serta sebuah record pelajar yang terdiri dari
field-field nama, nim, alamat, dan nilai. Dengan demikian akan lebih
mudah untuk membedakan keduanya.

8
BAB 3Deklarasi Struct
Struct pada dasarnya hanyalah sebuah deklarasi untuk membuat
sebuah tipe data baru yang didirikan oleh programmer sebagai data
structure. Data structure tersebut akan digunakan sebagai pembuatan
object yang dapat dilakukan di dalam deklarasi struct atau diluar deklarasi
struct.
Pembuatan object sendiri sama seperti pembuatan variabel seperti pada
umumnya, yang berbeda hanya pada struct menggunakan tipe structure
sebagai tipe datanya.

BAB 4Penggunaan dan Pengaksesan Elemen Terstruktur


Untuk menggunakan struktur, tulis nama struktur beserta dengan
fieldnya yang dipisahkan dengan tanda titik (“ . “). Misalnya anda ingin
menulis nim seorang mahasiswa ke layar maka penulisan yang benar
adalah sebagai berikut :
a) Mahasiswa.nim = “1818126”;
b) cout << mahasiswa.nim;
Jika x adalah pointer bertipe mahasiswa* maka field dari x dapat
diakses dengan mengganti tanda titik dengan tanda panah (“ -> “).
cout << mahasiswa->nim;

BAB 5Pointer Bertype Struct


Sebuah variabel pointer dapat dibuat tidak hanya untuk tipe data asli
seperti (integer, float, double, dll) tetapi pointer dapat juga dibuat untuk
jenis yang ditentukan pengguna seperti structure.
Contoh pointer pada struct:
struct mahasiswa{
int i;
float f;
};
int main(){
Mahasiswa *mhs1; //implementasi ponter pada struct
Jika mhs1 adalah pointer bertipe mahasiswa* maka field dari mhs
dapat diakses dengan mengganti tanda titik (“ . “) dengan tanda panah (“ -

9
> “).Misalnya anda ingin menulis nim seorang mahasiswa ke layar maka
penulisan yang benar adalah sebagai berikut :
1) Mahasiswa->nim = 2218070
2) cout << mahasiswa->nim;

5.1 Tugas Praktikum ke-1:


1. Source Code : pointer penjualan mobil
#include <iostream>
using namespace std;

int main(){
int kh=15;
int *alamatkh=&kh;

cout<<"Nilai Kh :"<< kh <<endl;


cout<<"Alamat Dari Kh :" << alamatkh <<endl;
}

Tampilan program :

Gambar 5.1 Tampilan Program pointer penjualan mobil


Analisa Program :
Dalam program ini terdapat variabel kh dengan nilai 15 dan 1 pointer
untuk menyimpan alamat dari variabel tersebut, lalu variabel disimpan
dalam pointer menggunakan simbol &(Deference), setelah itu akan
ditampilkan menggunakan perintah cout.
5.2Tugas Praktikum ke-2:
2. Source Code : struct pointer penjualan mobil
#include <iostream>

using namespace std;

struct mobil {
string brand;
string model;
int harga;

10
};

int main() {
int x;
cout << "Masukkan Jumlah Mobil: ";
cin >> x;

mobil car[x];
mobil *alamatcar;
alamatcar=&car[x];

for (int i = 0; i < x; i++) {


cout<<"Ponsel Ke-" << i+1<<endl;
cout << "Masukkan brand : ";
cin >> car[i].brand;
cout << "Masukkan model: ";
cin >> car[i].model;
cout << "Masukkan harga: ";
cin >> car[i].harga;
cout << endl;
}

cout << " No\t Nama\t Model\t Harga\t Alamat\t" <<


endl;
cout <<
"--------------------------------------------------------"
<< endl;
for (int i = 0; i < x; i++) {
cout<<" " << i+1 << "\t " <<car[i].brand <<"\t\t " <<
car[i].model <<"\t\t " << car[i].harga <<"\t "<<
&alamatcar[i] <<"\t\t "<<endl;
}

return 0;
}

Tampilan program :

Gambar 5.1 Tampilan Program struct pointer penjualan mobil


Analisa Program :
Dalam program ini memiliki struct bernama mobil untuk menyimpan
variabel yang diinginkan, seperti brand, model, dan harga. lalu

11
dideklarasikan diluar dinamai dengan car, lalu setelah itu mendeklarasikan
variabel x untuk di buat index array dari struct car, setelah itu
menggunakan input untuk memasukkan berapa data mobil yang
diinginkan, lalu menggunakan for untuk perulangan, dan mendeklarasikan
pointer untuk menyimpan alamat dari struct yang sudah di buat, dan yang
terakhir di tampilkan menggunakan cout dalam bentuk tabel.

12
5.3 Tugas Praktikum ke-3:
3. Source Code :struct non pointer penjualan mobil
#include <iostream>
using namespace std;
struct mobil {
string brand;
string model;
int harga;
};
int main() {
int x;
cout << "Masukkan Jumlah Mobil: ";
cin >> x;
mobil car[x];
for (int i = 0; i < x; i++) {
cout<<"Ponsel Ke-" << i+1<<endl;
cout << "Masukkan brand : ";
cin >> car[i].brand;
cout << "Masukkan model: ";
cin >> car[i].model;
cout << "Masukkan harga: ";
cin >> car[i].harga;
cout << endl;
}
cout << " No\t Nama\t Model\t\t Harga\t" << endl;
cout <<
"--------------------------------------------------------"
<< endl;
for (int i = 0; i < x; i++) {
cout<<" " << i+1 << "\t " <<car[i].brand <<"\t\t " <<
car[i].model <<"\t\t " << car[i].harga <<"\t "<<endl;
}
return 0;
}

Tampilan program :

Gambar 5.1 Tampilan Program struct non pointer penjualan mobil


Analisa Program :

Dalam program ini terdapat struct dengan nama mobil, yang


berisikan variabel-variabel yang disimpan dalam struct, lalu
dideklarasikan di luar dengan nama car, lalu struct car diberi array dengan

13
index variabel x, setelah itu menggunakan for untuk perulangan dari nilai x
yang di inputkan. Setelah itu menggunakan cin untuk memasukkan nilai
dalam variabel yang berada di dalam struct. Dan akhirnya di tampilkan
menggunakan cout dengan format tabel.

5.4Kesimpulan
1. Buatlah minimal 3 buah kesimpulan

Disetujui Aslab Ttd / Paraf

Tgl:

14
BAB 6
REKURSIF & QUEUE
6.1 Jumlah Pertemuan
2 x 50 menit.
6.2 Tujuan
1. Praktikan dapat memahami pengertian dari Rekursif dan Queue
2. Agar praktikan mengetahui dan memahami Operasi - Operasi yang
digunakan dalam metode Rekursif dan Queue
3. Praktikan dapat mengoprasikan atau menerapkan metode Rekursif dan
Queue kedalam sebuah program
6.3 Alat dan Bahan
1. Perangkat komputer
2. Perangkat lunak: Dev C++
3. Modul Struktur Data 2023
6.4 Landasan Teori
A. Judul Sub Bab
1. Pengertian Sesuatu
Silahkan salin dan tempel dari modul secara keseluruhan &
hapus contoh programnya saja, consectetur adipiscing elit. Nulla vitae
posuere lorem, ac mattis erat. Curabitur eu lorem in lectus convallis
faucibus at ac diam. Mauris id rhoncus massa. Sed dignissim
vestibulum eros, maximus rhoncus dolor auctor id. Donec vestibulum
rutrum massa, ut efficitur magna rhoncus at. Proin nec libero efficitur,
fringilla justo non, ornare erat. Praesent nec gravida sapien, ut
maximus risus. Aenean pulvinar lorem risus, venenatis feugiat ipsum
varius eget. Cras ullamcorper justo id turpis convallis pharetra. Mauris
vehicula mi eu mi facilisis, eu lacinia nulla pulvinar. Vestibulum
suscipit quam et quam iaculis efficitur. Ut quis fermentum sem.
Pellentesque cursus elit at tempus rutrum.

15
Gambar 6.1 Ingat Gambar Pakai Heading 3
Proin nec libero efficitur, fringilla justo non, ornare erat. Praesent
nec gravida sapien, ut maximus risus. Aenean pulvinar lorem risus,
venenatis feugiat ipsum varius eget.
a. Pembahasan sesuatu
1. Pembahasan sesuatu
a) Pembahasan sesuatu
b. Sesuatu
2. Sesuatu
Mauris id rhoncus massa. Sed dignissim vestibulum eros,
maximus rhoncus dolor auctor id. Donec vestibulum rutrum massa, ut
efficitur magna rhoncus at.
Tabel 6.2 Ingat Tabel Pakai Heading 4
Contoh tabel

Mauris id rhoncus massa. Sed dignissim vestibulum eros,


maximus rhoncus dolor auctor id. Donec vestibulum rutrum massa, ut
efficitur magna rhoncus at.
6.5 Tugas Praktikum ke-1:
Format sama seperti pada Format Tugas
Source Code :
Font : Courier New
Ukuran : 10
Spasi : Single / 1.0

Tampilan program :
Gambar 6.1 Tampilan Program ….

16
Analisa Program :
Minimal 3 kalimat. Rata kanan kiri. Spasi 1.5
6.6 Tugas Praktikum ke-2:
Format sama seperti pada Format Tugas
Source Code :
Font : Courier New
Ukuran : 10
Spasi : Single / 1.0

Tampilan program :
Gambar 6.1 Tampilan Program ….

Analisa Program :
Minimal 3 kalimat. Rata kanan kiri. Spasi 1.5
6.7 Tugas Praktikum ke-3:
Format sama seperti pada Format Tugas
Source Code :
Font : Courier New
Ukuran : 10
Spasi : Single / 1.0

Tampilan program :
Gambar 6.1 Tampilan Program ….
Analisa Program :
Minimal 3 kalimat. Rata kanan kiri. Spasi 1.5
6.8 Kesimpulan
1. Buatlah minimal 3 buah kesimpulan

Disetujui Aslab Ttd / Paraf

Tgl:

17
BAB 7
STACK
7.1 Jumlah Pertemuan
2 x 50 menit.
7.2 Tujuan
1. Praktikan dapat memahami pengertian dari Stack
2. Agar praktikan mengetahui dan memahami Operasi - Operasi yang
digunakan dalam metode Stack
3. Praktikan dapat mengoprasikan atau menerapkan metode Stack kedalam
sebuah program
7.3 Alat dan Bahan
1. Perangkat komputer
2. Perangkat lunak: Dev C++
3. Modul Struktur Data 2023
7.4 Landasan Teori
A. Judul Sub Bab
1. Pengertian Sesuatu
Silahkan salin dan tempel dari modul secara keseluruhan,
consectetur adipiscing elit. Nulla vitae posuere lorem, ac mattis erat.
Curabitur eu lorem in lectus convallis faucibus at ac diam. Mauris id
rhoncus massa. Sed dignissim vestibulum eros, maximus rhoncus dolor
auctor id. Donec vestibulum rutrum massa, ut efficitur magna rhoncus
at. Proin nec libero efficitur, fringilla justo non, ornare erat. Praesent
nec gravida sapien, ut maximus risus. Aenean pulvinar lorem risus,
venenatis feugiat ipsum varius eget. Cras ullamcorper justo id turpis
convallis pharetra. Mauris vehicula mi eu mi facilisis, eu lacinia nulla
pulvinar. Vestibulum suscipit quam et quam iaculis efficitur. Ut quis
fermentum sem. Pellentesque cursus elit at tempus rutrum.

18
Gambar 7.1 Ingat Gambar Pakai Heading 3
Proin nec libero efficitur, fringilla justo non, ornare erat. Praesent
nec gravida sapien, ut maximus risus. Aenean pulvinar lorem risus,
venenatis feugiat ipsum varius eget.
a. Pembahasan sesuatu
1. Pembahasan sesuatu
a) Pembahasan sesuatu
b. Sesuatu
2. Sesuatu
Mauris id rhoncus massa. Sed dignissim vestibulum eros,
maximus rhoncus dolor auctor id. Donec vestibulum rutrum massa, ut
efficitur magna rhoncus at.
Tabel 7.2 Ingat Tabel Pakai Heading 4
Contoh tabel

Mauris id rhoncus massa. Sed dignissim vestibulum eros,


maximus rhoncus dolor auctor id. Donec vestibulum rutrum massa, ut
efficitur magna rhoncus at.
7.5 Tugas Praktikum ke-1:
Format sama seperti pada Format Tugas
Source Code :
Font : Courier New
Ukuran : 10
Spasi : Single / 1.0

Tampilan program :
Gambar 7.1 Tampilan Program ….

19
Analisa Program :
Minimal 3 kalimat. Rata kanan kiri. Spasi 1.5
7.6 Tugas Praktikum ke-2:
Format sama seperti pada Format Tugas
Source Code :
Font : Courier New
Ukuran : 10
Spasi : Single / 1.0

Tampilan program :
Gambar 7.1 Tampilan Program ….

Analisa Program :
Minimal 3 kalimat. Rata kanan kiri. Spasi 1.5
7.7 Tugas Praktikum ke-3:
Format sama seperti pada Format Tugas
Source Code :
Font : Courier New
Ukuran : 10
Spasi : Single / 1.0

Tampilan program :
Gambar 7.1 Tampilan Program ….

Analisa Program :
Minimal 3 kalimat. Rata kanan kiri. Spasi 1.5
7.8 Kesimpulan
1. Buatlah minimal 3 buah kesimpulan

Disetujui Aslab Ttd / Paraf

Tgl:

20
BAB 8
SORTING
8.1 Jumlah Pertemuan
2 x 50 menit.
8.2 Tujuan
1. Praktikan dapat memahami pengertian dari Sorting
2. Agar praktikan mengetahui dan memahami cara kerja dari sistem Sorting
3. Praktikan dapat mengoprasikan atau menerapkan metode Sorting
8.3 Alat dan Bahan
1. Perangkat komputer
2. Perangkat lunak: Dev C++
3. Modul Struktur Data 2023
8.4 Landasan Teori
A. Judul Sub Bab
1. Pengertian Sesuatu
Silahkan salin dan tempel dari modul secara keseluruhan,
consectetur adipiscing elit. Nulla vitae posuere lorem, ac mattis erat.
Curabitur eu lorem in lectus convallis faucibus at ac diam. Mauris id
rhoncus massa. Sed dignissim vestibulum eros, maximus rhoncus dolor
auctor id. Donec vestibulum rutrum massa, ut efficitur magna rhoncus
at. Proin nec libero efficitur, fringilla justo non, ornare erat. Praesent
nec gravida sapien, ut maximus risus. Aenean pulvinar lorem risus,
venenatis feugiat ipsum varius eget. Cras ullamcorper justo id turpis
convallis pharetra. Mauris vehicula mi eu mi facilisis, eu lacinia nulla
pulvinar. Vestibulum suscipit quam et quam iaculis efficitur. Ut quis
fermentum sem. Pellentesque cursus elit at tempus rutrum. austufirus
komvuerno punino pandueno.

21
Gambar 8.1 Ingat Gambar Pakai Heading 3
Proin nec libero efficitur, fringilla justo non, ornare erat. Praesent
nec gravida sapien, ut maximus risus. Aenean pulvinar lorem risus,
venenatis feugiat ipsum varius eget.
a. Pembahasan sesuatu
1. Pembahasan sesuatu
a) Pembahasan sesuatu
b. Sesuatu
2. Sesuatu
Mauris id rhoncus massa. Sed dignissim vestibulum eros,
maximus rhoncus dolor auctor id. Donec vestibulum rutrum massa, ut
efficitur magna rhoncus at.
Tabel 8.2 Ingat Tabel Pakai Heading 4
Contoh tabel

Mauris id rhoncus massa. Sed dignissim vestibulum eros,


maximus rhoncus dolor auctor id. Donec vestibulum rutrum massa, ut
efficitur magna rhoncus at.
8.5 Tugas Praktikum ke-1:
Format sama seperti pada Format Tugas
Source Code :
Font : Courier New
Ukuran : 10
Spasi : Single / 1.0

Tampilan program :
Gambar 8.1 Tampilan Program ….

22
Analisa Program :
Minimal 3 kalimat. Rata kanan kiri. Spasi 1.5
8.6 Tugas Praktikum ke-2:
Format sama seperti pada Format Tugas
Source Code :
Font : Courier New
Ukuran : 10
Spasi : Single / 1.0

Tampilan program :
Gambar 8.1 Tampilan Program ….

Analisa Program :
Minimal 3 kalimat. Rata kanan kiri. Spasi 1.5
8.7 Tugas Praktikum ke-3:
Format sama seperti pada Format Tugas
Source Code :
Font : Courier New
Ukuran : 10
Spasi : Single / 1.0

Tampilan program :
Gambar 8.1 Tampilan Program ….

Analisa Program :
Minimal 3 kalimat. Rata kanan kiri. Spasi 1.5
8.8 Kesimpulan
1. Buatlah minimal 3 buah kesimpulan

Disetujui Aslab Ttd / Paraf

Tgl:

23
BAB 9
SEARCHING
9.1 Jumlah Pertemuan
2 x 50 menit.
9.2 Tujuan
1. Praktikan dapat memahami pengertian dari Searching
2. Agar praktikan mengetahui dan memahami cara kerja dari sistem
Searching
3. Praktikan dapat mengoprasikan atau menerapkan metode Searching
9.3 Alat dan Bahan
1. Perangkat komputer
2. Perangkat lunak: Dev C++
3. Modul Struktur Data 2023
9.4 Landasan Teori
A. Judul Sub Bab
1. Pengertian Sesuatu
Silahkan salin dan tempel dari modul secara keseluruhan,
consectetur adipiscing elit. Nulla vitae posuere lorem, ac mattis erat.
Curabitur eu lorem in lectus convallis faucibus at ac diam. Mauris id
rhoncus massa. Sed dignissim vestibulum eros, maximus rhoncus dolor
auctor id. Donec vestibulum rutrum massa, ut efficitur magna rhoncus
at. Proin nec libero efficitur, fringilla justo non, ornare erat. Praesent
nec gravida sapien, ut maximus risus. Aenean pulvinar lorem risus,
venenatis feugiat ipsum varius eget. Cras ullamcorper justo id turpis
convallis pharetra. Mauris vehicula mi eu mi facilisis, eu lacinia nulla
pulvinar. Vestibulum suscipit quam et quam iaculis efficitur. Ut quis
fermentum sem. Pellentesque cursus elit at tempus rutrum. Paurno
beduerno pumnero uno.

24
Gambar 9.1 Ingat Gambar Pakai Heading 3
Proin nec libero efficitur, fringilla justo non, ornare erat. Praesent
nec gravida sapien, ut maximus risus. Aenean pulvinar lorem risus,
venenatis feugiat ipsum varius eget.
a. Pembahasan sesuatu
1. Pembahasan sesuatu
a) Pembahasan sesuatu
b. Sesuatu
2. Sesuatu
Mauris id rhoncus massa. Sed dignissim vestibulum eros,
maximus rhoncus dolor auctor id. Donec vestibulum rutrum massa, ut
efficitur magna rhoncus at.
Tabel 9.2 Ingat Tabel Pakai Heading 4
Contoh tabel

Mauris id rhoncus massa. Sed dignissim vestibulum eros,


maximus rhoncus dolor auctor id. Donec vestibulum rutrum massa, ut
efficitur magna rhoncus at.
9.5 Tugas Praktikum ke-1:
Format sama seperti pada Format Tugas
Source Code :
Font : Courier New
Ukuran : 10
Spasi : Single / 1.0

Tampilan program :
Gambar 9.1 Tampilan Program ….

25
Analisa Program :
Minimal 3 kalimat. Rata kanan kiri. Spasi 1.5
9.6 Tugas Praktikum ke-2:
Format sama seperti pada Format Tugas
Source Code :
Font : Courier New
Ukuran : 10
Spasi : Single / 1.0

Tampilan program :
Gambar 9.1 Tampilan Program ….

Analisa Program :
Minimal 3 kalimat. Rata kanan kiri. Spasi 1.5
9.7 Tugas Praktikum ke-3:
Format sama seperti pada Format Tugas
Source Code :
Font : Courier New
Ukuran : 10
Spasi : Single / 1.0

Tampilan program :
Gambar 9.1 Tampilan Program ….

Analisa Program :
Minimal 3 kalimat. Rata kanan kiri. Spasi 1.5
9.8 Kesimpulan
1. Buatlah minimal 3 buah kesimpulan

Disetujui Aslab Ttd / Paraf

Tgl:

26
BAB 10
LINKED LIST
10.1 Jumlah Pertemuan
2 x 50 menit.
10.2 Tujuan
1. Praktikan dapat memahami pengertian dari Linked List
2. Agar praktikan mengetahui dan memahami cara kerja dari Linked list dan
Double linked list
3. Praktikan dapat mengoprasikan atau menerapkan metode Linked list
10.3 Alat dan Bahan
1. Perangkat komputer
2. Perangkat lunak: Dev C++
3. Modul Struktur Data 2023
10.4 Landasan Teori
A. Judul Sub Bab
1. Pengertian Sesuatu
Silahkan salin dan tempel dari modul secara keseluruhan,
consectetur adipiscing elit. Nulla vitae posuere lorem, ac mattis erat.
Curabitur eu lorem in lectus convallis faucibus at ac diam. Mauris id
rhoncus massa. Sed dignissim vestibulum eros, maximus rhoncus dolor
auctor id. Donec vestibulum rutrum massa, ut efficitur magna rhoncus
at. Proin nec libero efficitur, fringilla justo non, ornare erat. Praesent
nec gravida sapien, ut maximus risus. Aenean pulvinar lorem risus,
venenatis feugiat ipsum varius eget. Cras ullamcorper justo id turpis
convallis pharetra. Mauris vehicula mi eu mi facilisis, eu lacinia nulla
pulvinar. Vestibulum suscipit quam et quam iaculis efficitur. Ut quis
fermentum sem. Pellentesque cursus elit at tempus rutrum.

27
Gambar 10.1 Ingat Gambar Pakai Heading 3
Proin nec libero efficitur, fringilla justo non, ornare erat. Praesent
nec gravida sapien, ut maximus risus. Aenean pulvinar lorem risus,
venenatis feugiat ipsum varius eget.
a. Pembahasan sesuatu
1. Pembahasan sesuatu
a) Pembahasan sesuatu
b. Sesuatu
2. Sesuatu
Mauris id rhoncus massa. Sed dignissim vestibulum eros,
maximus rhoncus dolor auctor id. Donec vestibulum rutrum massa, ut
efficitur magna rhoncus at.
Tabel 10.2 Ingat Tabel Pakai Heading 4
Contoh tabel

Mauris id rhoncus massa. Sed dignissim vestibulum eros,


maximus rhoncus dolor auctor id. Donec vestibulum rutrum massa, ut
efficitur magna rhoncus at.
10.5 Tugas Praktikum ke-1:
Format sama seperti pada Format Tugas
Source Code :
Font : Courier New
Ukuran : 10
Spasi : Single / 1.0

Tampilan program :
Gambar 10.1 Tampilan Program ….

28
Analisa Program :
Minimal 3 kalimat. Rata kanan kiri. Spasi 1.5
10.6 Tugas Praktikum ke-2:
Format sama seperti pada Format Tugas
Source Code :
Font : Courier New
Ukuran : 10
Spasi : Single / 1.0

Tampilan program :
Gambar 10.1 Tampilan Program ….

Analisa Program :
Minimal 3 kalimat. Rata kanan kiri. Spasi 1.5
10.7 Tugas Praktikum ke-3:
Format sama seperti pada Format Tugas
Source Code :
Font : Courier New
Ukuran : 10
Spasi : Single / 1.0

Tampilan program :
Gambar 10.1 Tampilan Program ….

Analisa Program :
Minimal 3 kalimat. Rata kanan kiri. Spasi 1.5
10.8 Kesimpulan
1. Buatlah minimal 3 buah kesimpulan

Disetujui Aslab Ttd / Paraf

Tgl:

29
BAB 11
TREE
11.1 Jumlah Pertemuan
2 x 50 menit.
11.2 Tujuan
1. Praktikan dapat memahami pengertian dari Tree
2. Agar praktikan mengetahui dan memahami cara kerja dari Tree
3. Praktikan dapat mengoprasikan atau menerapkan metode Tree
11.3 Alat dan Bahan
1. Perangkat komputer
2. Perangkat lunak: Dev C++
3. Modul Struktur Data 2023
11.4 Landasan Teori
A. Judul Sub Bab
1. Pengertian Sesuatu
Silahkan salin dan tempel dari modul secara keseluruhan,
consectetur adipiscing elit. Nulla vitae posuere lorem, ac mattis erat.
Curabitur eu lorem in lectus convallis faucibus at ac diam. Mauris id
rhoncus massa. Sed dignissim vestibulum eros, maximus rhoncus dolor
auctor id. Donec vestibulum rutrum massa, ut efficitur magna rhoncus
at. Proin nec libero efficitur, fringilla justo non, ornare erat. Praesent
nec gravida sapien, ut maximus risus. Aenean pulvinar lorem risus,
venenatis feugiat ipsum varius eget. Cras ullamcorper justo id turpis
convallis pharetra. Mauris vehicula mi eu mi facilisis, eu lacinia nulla
pulvinar. Vestibulum suscipit quam et quam iaculis efficitur. Ut quis
fermentum sem. Pellentesque cursus elit at tempus rutrum.

30
Gambar 11.1 Ingat Gambar Pakai Heading 3
Proin nec libero efficitur, fringilla justo non, ornare erat. Praesent
nec gravida sapien, ut maximus risus. Aenean pulvinar lorem risus,
venenatis feugiat ipsum varius eget.
a. Pembahasan sesuatu
1. Pembahasan sesuatu
a) Pembahasan sesuatu
b. Sesuatu
2. Sesuatu
Mauris id rhoncus massa. Sed dignissim vestibulum eros,
maximus rhoncus dolor auctor id. Donec vestibulum rutrum massa, ut
efficitur magna rhoncus at.
Tabel 11.2 Ingat Tabel Pakai Heading 4
Contoh Tabel

Mauris id rhoncus massa. Sed dignissim vestibulum eros,


maximus rhoncus dolor auctor id. Donec vestibulum rutrum massa, ut
efficitur magna rhoncus at.
11.5 Tugas Praktikum Ke-1:
Format sama seperti pada Format Tugas
Source Code :
Font : Courier New
Ukuran : 10
Spasi : Single / 1.0

Tampilan program :
Gambar 11.1 Tampilan Program ……

31
Analisa Program :
Minimal 3 kalimat. Rata kanan kiri. Spasi 1.5
11.6 Tugas Praktikum Ke-2:
Format sama seperti pada Format Tugas
Source Code :
Font : Courier New
Ukuran : 10
Spasi : Single / 1.0

Tampilan program :
Gambar 11.1 Tampilan Program ……
Analisa Program :
Minimal 3 kalimat. Rata kanan kiri. Spasi 1.5
11.7 Tugas Praktikum Ke-3:
Format sama seperti pada Format Tugas
Source Code :
Font : Courier New
Ukuran : 10
Spasi : Single / 1.0

Tampilan program :
Gambar 11.1 Tampilan Program ……
Analisa Program :
Minimal 3 kalimat. Rata kanan kiri. Spasi 1.5
11.8 Kesimpulan
1. Buatlah minimal 3 buah Kesimpulan

Disetujui Aslab Ttd / Paraf

Tgl:

32
KESIMPULAN
Masukkan kesimpulan dari masing masing bab minimal 2 maximal 3 per bab.
1. Kesimpulan 1
2. Kesimpulan 2
3. Dst….

33
DAFTAR PUSTAKA
Jaringan komputer, Laboratorum. 2022. Modul Struktur Data. Malang: Netlab
ITN Malang.
Daftar Pustaka Ditambahkan Minimal 5

34
LABORATORIUM JARINGAN KOMPUTER
INSTITUT TEKNOLOGI NASIONAL
Kampus II : Jl. Raya Karanglo Km. 2 Malang
FOTO
LEMBAR ASISTENSI PRAKTIKUM STRUKTUR DATA
3X4
SEMESTER GENAP TAHUN AKADEMIK 2023/2024
BG MERAH
Nama : Fahmi Rifki Haikal Asistensi
No.
NIM Tanggal
: 2218078 Paraf
Konsep Program Hasil Akhir
Pointer dan Struct
Rekursif dan Queue

Instruktur
Stack
1 Sorting
Searching
Linked List
Tree
Dosen

Batas Akhir:

Anda mungkin juga menyukai