laporan resmi(02)

15
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

Upload: yoshua-tita-pratama

Post on 29-Dec-2015

49 views

Category:

Documents


1 download

DESCRIPTION

Nama:Yosua Tita PratamaNIM:201301010Laporan_Resmi(praktikum modul 02)

TRANSCRIPT

Page 1: LAPORAN RESMI(02)

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

Page 2: LAPORAN RESMI(02)

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;

Page 3: LAPORAN RESMI(02)

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

Page 4: LAPORAN RESMI(02)

4

Pendefinisian struct :

structdata_tanggal

{

int tanggal;

int bulan;

int tahun;

}

struct data_teman

{

Char nama[21];

structdata_tanggal tgl_lahir

} info_teman;

Page 5: LAPORAN RESMI(02)

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;

}

Page 6: LAPORAN RESMI(02)

6

Output Program 2.1

Hasil output dari Program 2.1 adalah sebagai berikut :

Page 7: LAPORAN RESMI(02)

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.

Page 8: LAPORAN RESMI(02)

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 ).

Page 9: LAPORAN RESMI(02)

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()

Page 10: LAPORAN RESMI(02)

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;

}

Page 11: LAPORAN RESMI(02)

11

Output Program Segitiga(struct)

Page 12: LAPORAN RESMI(02)

12

Hasil output dari Program Segitiga(struct) adalah sebagai berikut :

Page 13: LAPORAN RESMI(02)

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.

Page 14: LAPORAN RESMI(02)

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 ).

Page 15: LAPORAN RESMI(02)

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.