0% menganggap dokumen ini bermanfaat (0 suara)
94 tayangan10 halaman

Modul 3 - Struktur Data

Modul ini membahas tentang struktur data struct dalam bahasa C yang digunakan untuk menyimpan beberapa variabel dengan tipe data yang sama atau berbeda dalam satu nama. Struktur ini memungkinkan pendeklarasian dan akses variabel secara sekuensial berdasarkan field ID. Contoh penerapannya adalah penggunaan struct untuk menyimpan data mahasiswa dan buku.

Diunggah oleh

wahyu
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
94 tayangan10 halaman

Modul 3 - Struktur Data

Modul ini membahas tentang struktur data struct dalam bahasa C yang digunakan untuk menyimpan beberapa variabel dengan tipe data yang sama atau berbeda dalam satu nama. Struktur ini memungkinkan pendeklarasian dan akses variabel secara sekuensial berdasarkan field ID. Contoh penerapannya adalah penggunaan struct untuk menyimpan data mahasiswa dan buku.

Diunggah oleh

wahyu
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 10

MODUL STRUKTUR DATA

(CCC120)

MODUL SESI 3
STRUCT

DISUSUN OLEH
M.BAHRUL ULUM, S.KOM, M.KOM

UNIVERSITAS ESA UNGGUL


2020

Universitas Esa Unggul


http://esaunggul.ac.id
0 / 10
STRUCT

Bentuk struktur data yang dapat menyimpan variabel-variabel dalam 1


nama, namun memiliki tipe data yang berbeda ataupun sama. Variable-
variabel tersebut memiliki kaitan satu sama yang lain.

Bentuk umum :
typedef struct nama_struct{
tipe_data <nama_var>;
tipe_data <nama_var>;
....
};

DEKLARASI
Ada 2 cara pendeklarasian struct, yaitu :
Deklarasi 1:
typedef struct Mahasiswa {
char NIM[8];
char nama[50];
float ipk;
};

Deklarasi 2 :
struct {
char NIM[8];
char nama[50];
float ipk;
} mhs;

Contoh struct 1:
#include <stdio.h>
#include <iostream.h>

void main()

Universitas Esa Unggul


http://esaunggul.ac.id
1 / 10
{
struct orang
{
char nama[40];
short umur;
}saya;
printf("nama : ");
cin.getline(saya.nama,40);
printf("umur :" );
scanf("%i",&saya.umur);
printf("%s berumur %i",saya.nama,saya.umur);
}

Contoh struct 2:

Universitas Esa Unggul


http://esaunggul.ac.id
2 / 10
Array vs Struct
Array Struct
1. Hubungan antar elemen: linear a. Hubungan antar elemen: linear
2. Homogen b. Heterogen
3. Random akses c. Sekuensial akses
4. Akses elemen dengan index d. Akses elemen dengan field id.
5. Elemen di memori: contiguous e. Elemen di memori: non-
contiguous

ARRAY OF STRUCT
Apabila hendak menggunakan 1 struct untuk beberapa kali, ada 2 cara :
1. Deklarasi manual
Contoh :
#include <stdio.h>
typedef struct Mahasiswa {
char NIM[8];
char nama[50];
float ipk;
};
void main()
{
Mahasiswa a,b,c;
……
……
……
}
artinya struct mahasiswa digunakan untuk 3 variabel, yaitu a,b,c

2. Array of struct
Contoh :
#include <stdio.h>
typedef struct Mahasiswa {
char NIM[8];

Universitas Esa Unggul


http://esaunggul.ac.id
3 / 10
char nama[50];
float ipk;
};
void main()
{
Mahasiswa mhs[3];
……
……
……
}
artinya struct mahasiswa dapat digunakan untuk tiga variabel mhs, yaitu
mhs[0], mhs[1], dan mhs[2].

Contoh lainnya :
#include <stdio.h>
#include <iostream.h>
#include <conio.h>
typedef struct orang
{
char nama[30];
short umur;
};
void main()

{
orang saya[5];
int i,x;
for(i=0;i<=4;i++)
{
printf("nama ke-%i : ",i+1);
cin.getline(saya[i].nama,30);
printf("umur ke-%i : ",i+1);

Universitas Esa Unggul


http://esaunggul.ac.id
4 / 10
scanf("%i",saya[i].umur);
printf("%s berumur %i",saya[i].nama,saya[i].umur);
}
for(x=0;x<=4;x++)
{
printf("nama %s berumur
%d",saya[x].nama,saya[x].umur);
}
}

Universitas Esa Unggul


http://esaunggul.ac.id
5 / 10
LATIHAN STRUCT
Buatlah struct untuk buku dengan deklarasi manual.
Ketentuan :
Yang harus disimpan adalah judul buku, tahun terbit dan harga buku.

Source code :
#include <stdio.h>
#include <conio.h>

typedef struct buku{


char judul[15];
int tahun_terbit;
int harga;
};

void main(){

buku book;
printf("Judul buku : ");scanf("%s",&book.judul);
printf("Tahun terbit :
");scanf("%i",&book.tahun_terbit);
printf("Harga : ");scanf("%i",&book.harga);

printf("\nJudul buku : %s\n",book.judul);


printf("Tahun terbit : %i\n",book.tahun_terbit);
printf("Harga : %i",book.harga);
}

Universitas Esa Unggul


http://esaunggul.ac.id
6 / 10
LATIHAN - LATIHAN MANDIRI

1. Program penghapusan data dengan inputan berupa angka yang ingin


dihapus oleh user.
Ketentuan :
 Semua data yang sesuai dengan inputan user akan terhapus.
 Bonus jika terdapat counter untuk menghitung berapa data yang
terhapus.
 Capture :

2. Program untuk melakukan update data.


Ketentuan :
 Terdapat dua inputan, yaitu inputan data yang akan diubah dan
data baru (data pengganti)
 Semua data yang sesuai dengan inputan user akan diupdate
nilainya.

3. Program untuk melakukan penambahan data.


Ketentuan :
 Penambahan data dapat dilakukan di mana saja.
 Inputan dari user berupa :
o Nilai yang akan ditambahkan
o Indeks ke berapa yang dituju
 Setelah penambahan, maka jumlah data akan bertambah dan
posisi data akan bergeser sesuai dengan penambahan yang telah
dilakukan.

Universitas Esa Unggul


http://esaunggul.ac.id
7 / 10
4. Buatlah struct untuk data lagu yang berisi tentang judul lagu, penyanyi,
tahun produksi, nomor track dan kode album.
Ketentuan :
 Program ini akan memiliki dua buah struct, yaitu struct lagu dan
struct kodeRBT.
 Jumlah data yang diinputkan dinamis (maks. 20 lagu)

LATIHAN – LATIHAN MANDIRI DI RUMAH


1. Buatlah menu add, edit, view dan delete data menggunakan array.
Note : operasi-operasi tersebut dapat dilakukan pada data dan indeks
mana saja. (Inputan data dan indeks dinamis).
2. Buatlah dengan menggunakan struct dan array 1 dimensi : record
peminjaman buku di perpustakaan. Data yang akan ditampilkan sebagai
output adalah :
 Nama
 NIM
 Tanggal peminjaman (dd/mm/yyyy)
 Kode buku, dengan format nomor rak-kategori buku :
o Nomor rak (inputan terserah)
o Kategori : R (Referensi) atau U (Umum)
o Contoh : 1234-R
Gunakan tiga struct untuk kasus ini!

Gabungkan soal 1 dan 2 di atas sehingga menghasilkan program berisi


struct yang dapat melakukan fungsi add, edit, view dan delete

Universitas Esa Unggul


http://esaunggul.ac.id
8 / 10
Contoh tampilan program :

Daftar Pustaka
a. Data Structures Using C++, Second Edition, D.S. Malik
b. Sukajani, “Struktur data dengan C++”, Mitra Wacana Media.
c. Idra Yatini B, Erliansyah Nasution, “Algoritma & Struktur Data”, Graha
Ilmu
d. Internet

Universitas Esa Unggul


http://esaunggul.ac.id
9 / 10

Anda mungkin juga menyukai