Anda di halaman 1dari 9

LAPORAN PRAKTIKUM RESMI TIPE DATA ABSTRAK (STRUCT)

Disusun oleh : Steven Nyotoharjo 201301001

Dosen pengampu : Yosef Murya Kusuma Ardhana.S.T., M.Kom

JURUSAN SISTEM INFORMASI SEKOLAH TINGGI ILMU KOMPUTER YOS SUDARSO PURWOKERTO 2014

BAB I TEORI DASAR Tipe Data Abstrak adalah data dan operasi yang dapat digunakan untuk manipulasi data tersebut. Dalam C++, tipe data asbtrak 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 dideklarasikan private tidak dapat diakses secara langsung oleh client, sementara data dan fungsi yang dideklarasikan public akan bersifat public dan dapat diakses oleh client secara langsung. A. Class atau Struct Class atau Struct memiliki member. Setiap member memiliki nama dan tipe. Struct atau class boleh memiliki member dengan tipe yang beragam. Oleh karena itu, class atau struct dapat di gunakan untuk membuat tipe data aggregate 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 variable pt bertipe point. Untuk mengakses member dari struct pt, operator dot harus digunakan. pt.x=-1; pt.y=0.5; 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];
2

int calories; }; struct fruit a; struct vegetable b; Pemanggilan a.calories dan b.calories tidak akan menimbulkan masalah.

B. C.

Typedef Typedef dan Struct

BAB II PENJELASAN PROGRAM Pada penjelasan program bab ini akan dijelaskan mengenai bagaimana melakukan pemrograman C++ secara sederhana sesuai dengan modul praktikum pada Program 2.1 dan Program menghitung Segitiga dengan Struct. Listing Program 2.1
/* * Praktikum-2.1.cpp * * Created on: Mar 24, 2014 * Author: steven */ #include <iostream> using namespace std; int main() { struct data_tanggal { int tanggal, bulan, tahun; }; struct data_teman { struct data_tanggal tanggal_lahir; }; struct data_teman info_teman; info_teman.tanggal_lahir.tanggal = 12; info_teman.tanggal_lahir.bulan = 3; info_teman.tanggal_lahir.tahun = 1981; cout <<"====Data Teman===="<<endl; cout <<"Nama : Yosef Murya KA"<<endl; cout <<"Tanggal Lahir : "<<info_teman.tanggal_lahir.tanggal<< " "<<info_teman.tanggal_lahir.bulan<<" "<<info_teman.tanggal_lahir.tahun; return 0; }

Output Program 2.1 Hasil output dari Program 2.1 adalah sebagai berikut :

Penjelasan Program 2.1 Berikut penjelasan dari Listing Program 2.1 : 1. Tanda yang diawali dengan /* dan diakhiri tanda */ merupakan untuk membuat sebuah komentar pada pemrograman C++ yang didalamnya terdapat sebuah perintah atau teks maka ketika program dijalankan tidak akan dibaca oleh compiler. #include atau disebut sebagai pengarah preprocessor #include berfungsi untuk menginstruksikan compiler untuk menyertakan berkas C++ sumber yang lain sebelum kompilasi dimulai
<iostream> berfungsi untuk sebagai pengarah praprosesor yang inputnya menggunakan cout

2.

3.

dan penyimpanan data menggunakan cin. 4. 5.


int main (){} adalah awal dana akhir dari sebuah program. struct data_tanggal { int tanggal, bulan, tahun; }; struct data_teman { struct data_tanggal tanggal_lahir; };

Pemberian nama tipe terstruktur dan member dari struktur.


5

6.

cout <<"====Data Teman===="; cout << "Nama : Yosef Murya KA"; untuk menampilkan

keluaran ke layar monitor. 7. 9. 10.


<<endl; untuk memindahkan kursor ke posisi awal berikutnya. info_teman.tanggal_lahir.tanggal untuk mengakses member dari struct. return 0; untuk mengembalikan nilai ke posisi awal.

Listing Program Program Luas Segitiga dengan Struct


/* * Luas-Segitiga-Struct.cpp * * Created on: Mar 24, 2014 * Author: steven */ #include <iostream> using namespace std; struct { int alas, tinggi, luas; }segi3; void luassegi3(){ segi3.luas=0.5*segi3.alas*segi3.tinggi; cout <<"Luas Segitiga : "<<segi3.luas; }

int main(){ cout <<".. :: LUAS SEGITIGA :: .." <<endl; cout <<"Alas : "; cin >>segi3.alas; cout <<"Tinggi : "; cin >>segi3.tinggi; luassegi3(); return 0; }

Output Program Luas Segitiga dengan Struct Hasil output dari Program Luas Segitiga dengan Struct adalah sebagai berikut :

Penjelasan Program Luas Segitiga dengan Struct Berikut penjelasan dari Listing Program Luas Segitiga dengan Struct: 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. #include atau disebut sebagai pengarah preprocessor #include berfungsi untuk menginstruksikan compiler untuk menyertakan berkas C++ sumber yang lain sebelum kompilasi dimulai
<iostream> berfungsi untuk sebagai pengarah praprosesor yang inputnya menggunakan cout

2.

3.

dan penyimpanan data menggunakan cin. 4. 5.


int main (){} adalah awal dana akhir dari sebuah program. struct { int alas, tinggi, luas; }segi3; pemberian nama pada struct dan member-membernya.

6. 7.

int alas, tinggi, luas; tipe data integer untuk member struct. cout <<".. :: LUAS SEGITIGA DENGAN STRUCT :: .." <<endl; cout <<"Alas : "; cout

untuk menampilkan keluaran ke layar monitor dan <<endl; untuk memindahkan kursor ke posisi awal berikutnya.
<<"Tinggi : ";

8. 9. 10.

cin >> segi3.alas; cin >>segi3.tinggi; untuk mengambil masukkan dari keyboard. Luassegi3(); untuk memanggil fungsi. return 0; untuk mengembalikan nilai ke posisi awal.

BAB III KESIMPULAN 1. Tipe Data Abstrak (Abstract Data Type) adalah data dan operasi yang dapat digunakan untuk manipulasi data tersebut. ADT (Abstract Data Type) dapat dibuat dalam sebuah class. 2. Ada 3 tipe data data yang termasuk ADT, yaitu Class atau Struct, Typedef dan Typedef Sruct. 3. Struct memiliki member yang memiliki nama dan tipe.

BAB IV DAFTAR PUSTAKA Murya Kusuma Ardhana, Yosef dan Gregorius Airlangga. 2011. Algoritma Pemrograman C++ Dalam Ilustrasi. Jasakom : Yogyakarta. Murya Kusuma Ardhana, Yosef. 2013. Struktur Data Dalam Ilustrasi Eclipse Indigo C++. CAPS : Yogyakarta.

Anda mungkin juga menyukai