Anda di halaman 1dari 5

PERTEMUAN 2

Tipe data dan String


2.1. TUJUAN :
 Mahasiswa mampu memahami tipe data bentukan dan mampu menerapkannya
pada program
2.2. MATERI :
A. Tipe data bentukan (Abstract Data Type) yang terdiri dari typedef dan struct
B. Array struct
2.3. LANDASAN TEORI
Pada C++ terdapat 2 tipe data, yaitu; Tipe Data Dasar dan Tipe Data bentukan. Tipe
data bentukan merupakan tipe data yang dibuat sendiri sesuai dengan kebutuhan
program yang akan kita buat.

2.3.1. Struct
Struct merupakan perintah yang dapat digunakan untuk membuat struktur dari suatu
record. sebuah record dapat memiliki domain yang heterogen Sebagai contoh, sebuah
record yang merepresentasikan tentang seseorang memiliki atribut berupa nama yang
bertipe string, umur yang bertipe integer, dan tinggi yang bertipe double.Biasanya
penggunaan typedef dikombinasikan dalam pendeklarasian sebuah struct.
Format penulisan (dalam tipe struct)

//Cara satu
struct nama_struktur
{
type1 element1;
type2 element2;
type3 element3;
} nama_object;

//Cara dua
struct nama_struktur
{
type1 element1;
type2 element2;
type3 element3;
} ;
nama_struktur nama_object;

Di dalam sebuah struct dapat dimungkinkan terdapat sebuah struct lagi. Hal ini
dapat diartikan struct di dalam struct. Hampir sama dengan nested loop, yaitu for
di dalam for.

2.3.2. Typedef
Typedef adalah keyword yang digunakan untuk membuat nama alias untuk tipe data
lain. Typedef sering digunakan untuk menyederhanakan sintaks yang menyatakan
struktur data yang kompleks yang terdiri dari tipe struct dan union.

typedef struct
{
type1 element1;
type2 element2;
type3 element3;
}nama_object;
2.3.3. Struct of Array & Array of Struct
Structure of array atau disebut juga structure dari array, artinya kita mendeklarasikan
sebuah structure yang elemen-elemennya berupa array. Sedangkan array of structure
atau array dari structure berarti kita mendeklarasikan sebuah array yang elemennya
berupa structure.

Contoh struct of Array:


struct mahasiswa{
char nama[30];
char nim[10];
float nilai[3];
};
mahasiswa mhs;

Contoh Array of struct::


struct mahasiswa{
char nama[30];
char nim[10];
float nilai[3];
};
mahasiswa mhs[100];

2.4. PRAKTIKUM
a. Praktikum 1

#include <iostream>
using namespace std;

struct data_mhs {
string nama;
string alamat;
} a,b;

int main() {
a.nama="baskar";
a.alamat="Mangga dua (pao-pao)";
cout<<"Nama :"<<a.nama << "\n";
cout<<"Alamat :"<<a.alamat << "\n";
}

b. Praktikum 2

#include <stdio.h>
#include <string.h>

struct data_pegawai{
int nip;
char nama[25];
long int gaji;
};

int main(){
struct data_pegawai peg;
peg.nip = 15029301;
strcpy(peg.nama, "Baskar");
peg.gaji = 1200000L;

printf("NIP : %d\n", peg.nip);


printf("Nama : %-s\n", peg.nama);
printf("Gaji : %ld\n", peg.gaji);

return 0;
}

c. Praktikum 3
#include <iostream>
using namespace std;

struct data_mhs
{
string nama;
string alamat;
} a,b;

int main()
{
cout<<"Masukan nama: ";
cin>>a.nama;
cout<<"Nama "<<a.nama;
}

2.4.3 Praktikum 3

#include <iostream>
using namespace std;

int main()
{
struct mahasiswa
{
int nim;
char nama[20];
char gender[10];
};
mahasiswa mhs[2];

for(int i=0; i<2; i++)


{
cout << "NIM : ";
cin >> mhs[i].nim;
cout << "Nama : ";
cin >> mhs[i].nama;
cout << "Jenis Kelamin : ";
cin >> mhs[i].gender;
}

for(int i=0; i<2; i++)


{
cout << "NIM : " << mhs[i].nim << endl;
cout << "Nama : " << mhs[i].nama << endl;
cout << "Jenis Kelamin : " << mhs[i].gender << endl;
}

return 0;
}

2.4.4 Praktikum 4

#include <cstdlib>
#include <iostream>

typedef struct { char nama [100];


char jur [100];
char nim [100];
int nilai;
} data;

data b;
using namespace std;

int main(int argc, char *argv[])


{
cout<<" ======================================== "<<endl;
cout<<" PROGRAM UNTUK MENCATAT DATA "<<endl;
cout<<" MAHASISWA"<<endl;
cout<<" ======================================== "<<endl<<endl;
cout<<" \n MASUKKAN NAMA ANDA ";cin>>b.nama;
cout<<" \n MASUKKAN NIM ANDA ";cin>>b.nim;
cout<<" \n MASUKKAN NILAI ANDA ";cin>>b.nilai;
cout<<" \n MASUKKAN JURUSAN ANDA ";cin>>b.jur;
cout<<" ======================================== "<<endl<<endl;
cout<<" TERIMAKASIH "<<endl;
cout<<" ======================================== "<<endl<<endl;

b.nama;
b.nilai;
b.jur;
b.nim;

cout<<" \n NAMA ANDA "<<b.nama<<endl;


cout<<" \n NIM ANDA "<<b.nim<<endl;
cout<<" \n JURUSAN ANDA "<<b.jur<<endl;
cout<<" \n NILAI ANDA "<<b.nilai<<endl;
system("PAUSE");
return EXIT_SUCCESS;
}

2.5. LATIHAN

a. Buatlah program sederhana menggunakan sturct dengan output seperti berikut ini:

Nama :baskar
NIM :15029301
Matakuliah :Struktur data
Nilai :9.7

b. Buatlah program untuk menginputkan dan menampilkan 3 record (nama, nim,


matakuliah, nilai) menggunakan struct

Anda mungkin juga menyukai