laporan resmi(02)
DESCRIPTION
Nama:Yosua Tita PratamaNIM:201301010Laporan_Resmi(praktikum modul 02)TRANSCRIPT
LAPORAN PRAKTIKUM RESMI
BAB II TIPE DATA ABSTRAK(STRUCT)
Disusun oleh :
Yosua Tita Pratama
201301010
Dosen pengampu :
Yosef Murya Kusuma Ardhana.S.T., M.Kom
JURUSAN SISTEM INFORMASI
SEKOLAH TINGGI ILMU KOMPUTER YOS SUDARSO
PURWOKERTO
2014
2
BAB I
TEORI DASAR
1. PENGANTAR
Tipe Data Abstrak atau Abstract Data Type(ADT) adalah data dan operasional yang dapat
digunakan untuk memanipulasikan data tersebut.Dalam C++, ADT dapat dibuat dalam
sebuah class. Class dalam C++ merupakan pengembangan dari struct dalam bahasa
pemrograman C. Class memiliki data dan fungsi.Data dan fungsi yang dideklarasi Private
tidak dapat diakses secara langsung oleh client,sementara data dan fungsi yang dideklarasi
public akan bersifat public dan dapat diakses oleh client secara langsung.
2. CLASS ATAU STRUCT
Class atau Struct memiliki member. Setiap member memiliki nama dan tipe. Class atau
Struct boleh memiliki member dengan tipe yang beragam. Oleh karna itu, Class atau Struct
dapat digunakan untuk membuat tipe data agregate yang rumit.
struct point {
double x, y;
};
Dalam C++ , nama struct (tag) adalah tipe oleh karena itu, point merupakan tipe.
Pendeklarasian diatas dapat diibaratkan sebagai template dan tipe data point itu sendiri belum
dialokasikan dalam memori.
Pendeklarasian :
point pt;
mengalokasikan memori untuk variabel pt bertipe point.
Untuk mengakses member dari struct pt , operator dot harus digunakan.
Contoh :
pt.x = -1;
pt.y = 0.5;
3
Nama member harus unik dalam skop struct. Karena saat mengakses member, nama struct
harus ditulis , maka pemanggilan nama member yang sama dari struct yang berbeda tidak
menjadi masalah.
struct fruit {
char name [15];
int calories;
};
struct vegetable {
char name [15];
int calories;
};
Fruit a;
Vegetable b;
Dalam bahasa C :
Struct fruit a;
Struct vegetable b;
Pemanggilan a.calories dan b.calories tidak akan menimbulkan masalah.
Bentuk umum struct :
Struct nama_tipe_truktur
{
tipe field 1
tipe field 1
tipe field 1
…
tipe field n
} variable_struktur1, … , variabel_struktur_n
4
Pendefinisian struct :
structdata_tanggal
{
int tanggal;
int bulan;
int tahun;
}
struct data_teman
{
Char nama[21];
structdata_tanggal tgl_lahir
} info_teman;
5
BAB II
PENJELASAN PROGRAM
Pada penjelasan program bab ini akan dijelaskan mengenai bagaimana melakukan pemrograman
C++ secara sederhana sesuai dengan modul praktukum pada Program 2.1 – C++ sederhana dan
segitiga(struct).
Listing Program 2.1
#include<iostream>
Using namespace std;
Int main ()
{
struct data_tunggal /* Definisi type data_tanggal */
{
int tanggal;
int bulan;
int tahun;
};
struct data_teman /* Definisi type data_teman */
{
struct data_tunggal tgl_lahir;
};
struct data_teman info_teman; /* Deklarasi variable */
/* pemasukan data ke eleman variabel struct */
inf0_teman.tgl_lahir.tanggal = 12;
inf0_teman.tgl_lahir.bulan = 3;
inf0_teman.tgl_lahir.tahun = 1981;
cout<<”========= Data Teman =========”<<endl;
cout<<”Nama :Yosef Murya Kusuma Ardhana”<<endl;
cout<<”Tanggal lahir : “<<info_teman.tgl_lahir.tanggal<<”
“<<info_teman.tgl_lahir.bulan<<” “<<info_teman.tgl_lahir.tahun;
return 0;
}
6
Output Program 2.1
Hasil output dari Program 2.1 adalah sebagai berikut :
7
Penjelasan Program 2.1.cpp
Berukut penjelasan dari Listing Program 2.1.cpp:
1. Tanda yang diawali dengan /* dan diakhiri tanda */ merupakan script untuk membuat sebuah
komentar pada pemrograman C++ yang jika didalamnya terdapat sebuah perintah atau teks maka
ketika program dirunning atau dijalankan tidak akan dibaca oleh compiler.
2. #include atau disebut sebagai pengarah preprocessor #include berfungsi untuk menginstruksikan
compiler untuk menyertakan berkas C++ sumber yang lain sebelum kompilasi dimulai.
3. using namespace std adalah sebuah statement yang membuat semua elemen di dalam namespace
std yaitu cout dan endl dapat langsung diproses.
4. <iostream> berfungsi sebagai library atau file header untuk melakukan perintah masukan ( input ),
perintah keluaran ( output ) serta fungsi-fungsi lain dalam program.
5. int main() adalah awal penulisan badan program.
6. Tanda {} digunakan untuk membuka dan menutup/mengakhiri sebuah program.
7. Int adalah tipe data integer ( bilangan bulat ).
8. Struct adalah tipe data abstrak yang digunakan untuk mengelompokkan sejumlah data dengan tipe
yang berlainan.
9. Struct data_tunggal merupakan deklarasi variable data tunggal dengan tipe struct (Nama struktur).
10. Info_teman.tgl_lahir.tanggal=12;
Info_teman.tgl_lahir.tanggal=3;
Info_teman.tgl_lahir.tanggal=1981;
Adalah merupakan langkah memasukkan elemen kedalam variable struct.
8
11. Int tanggal, bulan, dan tahun merupakan deklarasi variable pada program (Sejumlah data struktur dengan tipe data sama yaitu integer).
12. cout adalah perintah keluaran pada program yang akan ditampilan pada console setelah di run.
13. cin adalah perintah masukan pada program yang digunakan untuk memanggil variable.
14. cout<<endl; adalah perintah untuk mengganti baris ( enter ).
15. cout<<”=====DATA TEMAN ========”<<endl; adalah keluaran yang berfungsi sebagai judul program.
16. cout<<”Nama : Yosua Tita Pratama“<<endl; adalah keluaran yang menampilkan nama.
17. cout<<”Tanggal lahir : “<<info_teman.tgl_lahir.tanggal<<” “<<info_teman.tgl_lahir.bulan<<”
“<<info_teman.tgl_lahir.tahun;
Adalah merupakan keluaran untuk menampilkan tanggal lahir setelah dilakukan pemanggilan
terhadap variable tanggal lahir, bulan, tahun lahir.
18. return 0; adalah sebuah fungsi yang digunakan untuk mengakhiri sebuah program agar tidak
terjadi error ( untuk menghentikan program ).
9
Listing Program Segitiga(struct)
#include <iostream>
#define phi 3.14
using namespace std;
struct{
float alas;
float tinggi;
float luas;
} segitiga;
struct{
float jari2;
float keliling;
} lingkaran;
void luassegitiga(){
segitiga.luas=0.5*segitiga.alas*segitiga.tinggi;
cout<<"Luas Segitiga = "<<segitiga.luas<<endl;
}
void kellingkaran(){
lingkaran.keliling=2*phi*lingkaran.jari2;
cout<<"Keliling Lingkaran = "<<lingkaran.keliling;
}
int main()
10
{
cout<<"====Menghitung Luas Segitiga====";
cout<<endl;
cout<<"Masukkan alas : ";
cin>>segitiga.alas;
cout<<"Masukkan Tinggi : ";
cin>>segitiga.tinggi;
luassegitiga();
cout<<"======Menghitung Keliling Lingkaran======";
cout<<endl;
cout<<"Masukkan jari-jari : ";
cin>>lingkaran.jari2;
kellingkaran();
return 0;
}
11
Output Program Segitiga(struct)
12
Hasil output dari Program Segitiga(struct) adalah sebagai berikut :
13
Penjelasan Program Segitiga(struct).cpp
Berukut penjelasan dari Listing Program Segitiga(struct).cpp:
Tanda yang diawali dengan /* dan diakhiri tanda */ merupakan script untuk membuat sebuah
komentar pada pemrograman C++ yang jika didalamnya terdapat sebuah perintah atau teks maka
ketika program dirunning atau dijalankan tidak akan dibaca oleh compiler.
2. #include atau disebut sebagai pengarah preprocessor #include berfungsi untuk menginstruksikan
compiler untuk menyertakan berkas C++ sumber yang lain sebelum kompilasi dimulai.
3. using namespace std adalah sebuah statement yang membuat semua elemen di dalam namespace
std yaitu cout dan endl dapat langsung diproses.
4. <iostream> berfungsi sebagai library atau file header untuk melakukan perintah masukan ( input ),
perintah keluaran ( output ) serta fungsi-fungsi lain dalam program.
5. #define phi 3.14 merupakan konstanta berupa nilai phi 3.14 yang bisa berubah.
6. Struct adalah tipe data abstrak yang digunakan untuk mengelompokkan sejumlah data dengan tipe
yang berlainan.
7. float alas;
float tinggi; Sejumlah data struktur dengan tipe data sama yaitu float float luas;
8. Segitiga adalah nama struktur digunakan sebagai tipe data suatu variable.
9. int main() adalah awal penulisan badan program.
10. Tanda {} digunakan untuk membuka dan menutup/mengakhiri sebuah program.
11. float jari2;
Sejumlah data struktur dengan tipe data sama yaitu float float keliling; 12. lingkaran; adalah nama struktur digunakan sebagai tipe data suatu variabel
13. void luassegitiga() adalah pendeklarasian sebuah fungsi untuk menampung rumus dari variable
luas segitiga.
14. segitiga.luas=0.5*segitiga.alas*segitiga.tinggi; rumus luas segitiga.
15. cout adalah perintah keluaran pada program yang akan ditampilan pada console setelah di run.
16. cin adalah perintah masukan pada program yang digunakan untuk memanggil variable.
17. cout<<"Luas Segitiga = "<<segitiga.luas<<endl; adalah perintah untuk menampilkan inputan user di console dengan memanggil variable segitiga.luas setelah proses input data.
14
18. void kellingkaran() adalah pendeklarasian sebuah fungsi untuk menampung rumus dari variable
keliling lingkaran.
19. lingkaran.keliling=2*phi*lingkaran.jari2; rumus mencari keliling lingkaran.
20. cout<<"Keliling Lingkaran = "<<lingkaran.keliling; adalah perintah untuk menampilkan inputan
user di console dengan memanggil variable lingkaran.keliling setelah proses input data.
21. cout<<"====Menghitung Luas Segitiga===="; adalah perintah keluaran sebagai judul program.
22. cout<<endl; adalah perintah untuk mengganti baris ( enter ).
23. cout<<"Masukkan alas : "; adalah perintah keluaran untuk menginputkan nilai alas.
24. cin>>segitiga.alas; adalah perintah untuk memanggil variable alas untuk input data.
25. cout<<"Masukkan Tinggi : "; adalah perintah keluaran untuk menginputkan nilai tinggi.
26. cin>>segitiga.tinggi; adalah perintah untuk memanggil variable tinggi untuk input data.
27. luassegitiga(); adalah pemanggilan fungsi variable luassegitiga yang telah dideklarasikan sebelum
main().
28. cout<<"======Menghitung Keliling Lingkaran======"; adalah perintah keluaran sebagai judul
program.
29. cout<<"Masukkan jari-jari : "; adalah perintah keluaran untuk menginputkan nilai jari-jari.
30. cin>>lingkaran.jari2; adalah perintah untuk memanggil variable lingkaran.jari2 untuk input data.
31. kellingkaran();adalah pemanggilan fungsi variable kellingkaran yang telah dideklarasikan
sebelum main().
32. return 0; adalah sebuah fungsi yang digunakan untuk mengakhiri sebuah program agar tidak
terjadi error ( untuk menghentikan program ).
15
BAB III
KESIMPULAN
Tipe Data Abstrak atau Abstract Data Type(ADT) adalah data dan operasional yang dapat
digunakan untuk memanipulasikan data tersebut.Dalam C++, ADT dapat dibuat dalam
sebuah class. Class dalam C++ merupakan pengembangan dari struct dalam bahasa
pemrograman C. Class memiliki data dan fungsi.Data dan fungsi yang dideklarasi Private
tidak dapat diakses secara langsung oleh client,sementara data dan fungsi yang dideklarasi
public akan bersifat public dan dapat diakses oleh client secara langsung.
DAFTAR PUSTAKA
Ardhana.YM Kusuma.2013.Struktur Data dalam ilustrasi Eclipse Indigo C++.Yogyakarta:CAPS.