Laporan praktikum modul vii
-
Upload
devi-apriansyah -
Category
Engineering
-
view
61 -
download
2
Transcript of Laporan praktikum modul vii
LAPORAN PRAKTIKUMALGORITMA PEMROGRAMAN & STRUKTUR DATA
MODUL VII
DISUSUN OLEHNAMA : DEVINIM : 2012081043KELAS : TI2012A
LABORATORIUM KOMPUTERFAKULTAS ILMU KOMPUTERUNIVERSITAS KUNINGAN
2012
I. PEMBAHASAN
A. Dasar Teori
Definisi Struct / struktur
Struktur (struct) adalah suatu tipe variabel yang berisi kumpulan data dengan
setiap elemen datanya mempunyai tipe berbeda
Bentuk struktur data yang mempunyai satu nama, namun memiliki tipe data
yang berbeda ataupun sama. Variabel-variabel tersebut memiliki kaitan satu
sama yang lain.
Definisi Struktur (struct) sendiri adalah kumpulan dari variabel yang
dinyatakan dengan sebuah nama , dengan sifat setiap variabel dapat memiliki
tipe yang berlainan.
Dalam pemrograman C++, jika kita membuat suatu program yang
memerlukan berbagai tipe data yang akan digunakan. Tentunya dengan nama
variable yang banyak pula. Dalam program yang sederhana, jika kita
manggunakan sedikit variable tentu tidak jadi masalah. Akan tetapi jika kita akan
membuat sebuah program yang lebih kompleks, dengan berbagai macam nama
dan tipe variable dalam pendeklarasianya. Dengan struct, kita bisa
mengelompokkan berbagai nama dan tipe variable tersebut sesuai dengan
kelompoknya.
Hal ini tentunya bisa berguna untuk memudahkan dalam mengelompokkan
sebuah variable. Sebagai contoh umum, ada terdapat berbagai nama variable :
nama, npm, alamat, dll. Variabel – variable tersebut dapat kita kelompokkan
menjadi satu dengan nama data_mahasiswa. Kemudian jika terdapat variable
mata_kuliah, nilai, sks, kelas, dll dapat kita kelompokkan menjadi satu dengan
nama krs. Itulah sebagian gambaran umum tentang struct.
Deklarasi struct
Ada dua cara mendeklarasikan struktur, yaitu :
- Deklarasi 1 : - Deklarasi 2 :
Contoh:
- Deklarasi 1 : - Deklarasi 2 :
Cara Pengaksesan
Untuk mengakses setiap elemen di dalam sebuah struct digunakan operator
titik (.)
Sintaks :
Nested Struct
Di dalam sebuah struct dapat dimungkinkan terdapat sebuah struct lagi. Jadi
hal ini dapat diartikan struct di dalam struct. Hampir mirip nested loop, yaitu
for di dalam for.
Bentuk :
struct nama_struktur{ tipe_data nama_var; tipe_data nama_var; .....};
struct { tipe_data nama_var; tipe_data nama_var; .....} nama_struktur;
struct mahasiswa{
char NIM[8];char nama[50];float ipk;
};
struct{
char NIM[8];char nama[50];float ipk;
} mhs;
nama_struktur . Nama_var;
struct nama_Struktur2{
tipe_data nama_var;tipe_data nama_var;struct nama_struktur1
nama_var;. . .
}
Struct of Array
Struct of array berarti kita mendeklarasikan sebuah struktur dimana
anggota dari struktur tersebut bertipe Array
Array Of Struct
Sebuah array yang setiap data elemennya bertipe struct. Umumnya dipakai
untuk menyimpan object data yang terstruktur, misal: data mahasiswa, karyawan,
buku, barang, dsb.
Apabila hendak menggunakan 1 struct untuk beberapa kali, ada dua cara :
Deklarasi Manual
Array of struct
B. Praktikum
Praktikum 1
Di bawah ini merupakan sintaks:
Menulis source kode Program C++
#include<stdio.h>struct lingkaran //definisi struct dibuat global{
int jari_jari;float keliling;float luas;
};void main(){
struct lingkaran L; //deklarasi variabel structprintf("\n Masukan jari-jari lingkaran =");scanf("%i",&L.jari_jari); //inputL.keliling = 2*3.14*L.jari_jari; //prosesL.luas=3.14*L.jari_jari*L.jari_jari; //prosesprintf("\nKelilingnya=%f",L.keliling); //outputprintf("\nLuasnya=%f",L.luas); //output
}
Melakukan Kompilasi
Pilih menu project, lalu pilih submenu compile atau denngan menekan
ALTF9. Maka akan muncul seperti gambar di bawah ini.
Menjalankan Program
Menjalankan program dengan cara pilih menu Debug, lalu submenu Run
atau dengan cara menekan CTRL+F9. Maka akan muncul gambar seperti di
bawah ini.
Pembahasan :
Sintaks diatas adalah program untuk mencari luas dan keliling lingkaran.
Didalam program diatas dideklarasikan struct dengan L (lingkaran). Didalam
struct tersebut terdapat 3 variabel yaitu jari-jari yang bertipe integer dan variabel
luas dan keliling yang bertipe float.
Setelah mendeklarasikan struct masuk ke fungsi untuk mencari luas dan
keliling lingkaran yang didalamnya menggunakan sistem input output printf dan
scanf karena I/O tersebut berada di file header stdio. Untuk menginput jari-jari
digunakan scanf yang menggunakan kode format %i karena pada pendeklarasian
variabel bertipe integer dan untuk menampilkan jari-jari tersebut digunakan printf.
Sedangkan untuk menampilkan luas dan keliling digunakan kode format %f.
Namun untuk menampilkan output dari luas dan keliling lingkaran harus ada
proses untuk menampilkan luas dan keliling tersebut, yaitu rumus dari luas dan
keliling lingkaran, untuk proses tersebut dapat dilihat dari sintaks diatas.
Praktikum 2 : Pengaksesan dan Pengisian Langsung
Dibawah ini merupakan sintaks:
Menulis source kode Program C++
#include<iostream.h>#include<string.h>struct Mahasiswa{
char Nama[40];char NIM[15];char Alamat[50];float IPK;
};void main(){
Mahasiswa Mhs;cout<<"Nama :";cin.getline(Mhs.Nama,40);cout<<"NIM :";cin.getline(Mhs.NIM,15);cout<<"Alamat :";cin.getline(Mhs.Alamat,50);cout<<"IPK :";cin>>Mhs.IPK;cout<<endl;cout<<"Nama Anda :"<<Mhs.Nama<<endl;cout<<"NIM Anda :"<<Mhs.NIM<<endl;cout<<"Alamat Anda :"<<Mhs.Alamat<<endl;cout<<"IPK Anda :"<<Mhs.IPK<<endl;
}
Sintaks diatas adalah program untuk menampilkan data mahasiswa. Struct
diatas dideklarasikan dengan mhs. Didalam struct tersebut terdapat 4 variabel,
yaitu Nama, NIM dan Alamat yang bertipe char dan IPK yang bertipe float.
Didalam pendeklarasian variabel tersebut kita deklarasikan array seperti char
Nama[40] artinya kita dapat menginput nama dengan panjang hurufnya 40.
Setelah struct masuk ke fungsi. Didalam fungsi tersebut menggunakan
sistem input output cout dan cin karena I/O tersebut berada didalam file header
iostream. Setelah mengisikan data lalu tekan enter maka akan muncul data yang
tadi telah diinput. Struktur yang digunakan diatas adalah struct of array, artinya
sebuah struct yang di dalamnya tedapat variable dengan tipe data array.
II. TUGAS
1. Buat program untuk mencatat data siswa yang terdiri dari field: Nama,
Alamat, Tempat tanggal lahir, Jenis kelamin.
Menulis source kode Program C++
Melakukan Kompilasi
Menjalankan Program
Pembahasan:
Program diatas adalah untuk mencatat data mahasiswa. Struct diatas
dideklarasikan dengan Mahasiswa struct tersebut untuk menampung variabel-
variabel yang ada didalamnya seperti Nama, Alamat, TTL dan Jenis Kelamin
(JK). Struktur diatas menggunakan struct of array artinya struct yang didalmnya
terdapat variabel yang bertipe array.
Setelah mendeklarasikan struct lalu fungsi yang didalmnya menggunakan
sistem input output cout dan cin karena I/O tersebut berada dalam file header
iostream. Dan setelah kita menginputkan data maka data tersebut akan
ditampilkan kembali.
2. Buatlah struct untuk data buku yang berisi tentang: kode buku, nama buku,
tahun penerbit, pengarang dan harga.
Gunakan Array of struct.
Menulis source kode Program C++
Melakukan Kompilasi
Menjalankan Program
Pembahasan:
Sintaks diatas adalah program untuk Data buku yang berisi field : kode
buku, tahun terbit, pengarang dan harga. Dalam program diatas menggunkan array
of struktur atau array dalam struktur yang artinya adalah kita mendeklarasikan
array dimana nilai nilai dari setiap elemennya bertipe struktur. Sintaks diatas
menggunakan kata kunci typedef yang merupakan mekanisme untuk membuat
sinonim atau alias dari tipe data yang telah didefinisikan sebelumnya.
Struktur diatas dideklarasikan Data. Struktur tersebut mempunyai 5
variabel yaitu kode, nama_buku, tahun_penerbit, pengarang dan harga. Tahun
_penerbit bertipe integer dan yang lainnya bertipe char. Seperti yang kita lihat
bahwa setiap elemen array A bertipe struktur yang mempunyai 5 anggota yaitu
Kode buku, nama buku, tahun terbit, pengarang dan harga. Perulangan yang
digunakan adalah for, perulangan yang dilakukan sebanyak 2 kali maka data yang
akan diinput sebanyak 2 kali.
Didalam program tersebut menggunakan header stdio, maka sistem input
output yang digunakan berada dalam file header stdio, seperti scanf. Scanf
digunakan untuk memasukan data dari piranti masukan. Fungsi scanf ini untuk
membaca data bertipe string, maka data tersebut hanya akan dibaca sampai
ditemukan spasi. Jika kita akan menginput data lebih dari satu kata atau
menggunkan spasi maka bisa digunakan input gets(). Kode format yang
digunakan disesuaikan dengan variable yang telah dideklarasikan sebelumnya.
Setelah kita inputkan data sebanyak 2 kali maka data yang akan
ditampilkan pun sebanyak 2 kali sesuai dengan struktur perulangan yang telah
dideklarasikan.
III. KESIMPULAN
Dari Praktikum dan tugas praktikum diatas dapat disimpulkan bahwa struct
adalah sekumpulan variabel yang masing-masing tipe datanya bisa berbeda,
namun dikelompokan ke dalam satu nama yang disebut Struct. Struktur ini
mampu menyelesaikan dan mengatur data-data yang rumit khususnya program
yang berskala besar, karena struktur membiarkan sekelompok variabel
diperlakukan sebagai satu unit.
Struct juga harus dideklarasikan terlebih dahulu. Ada dua cara untuk
mendeklarasikan struktur tersebut:
1. struct nama_struktur
{
tipe_data nama_var;
tipe_data nama_var;
.....
};
2. struct
{
tipe_data nama_var;
tipe_data nama_var;
.....
} nama_struktur;
Dari praktikum diatas dapat disimpulkan pula perbedaan antara struct of
array dan array of struct. Struct of array adalah sebuah struktur dimana anggota
dari struktur tersebut bertipe array sedangkan array of struktur adalah sebuah array
dimana nilai dari setiap elemennya bertipe struktur.
Untuk mengakses setiap elemen yang terdapat didalam sebuah struct
digunakan operator titik (.).