Struktur
Struktur
JURUSAN TEKNIK INFORMATIKA FAKULTAS KOMUNIKASI DAN INFORMATIKA UNIVERSITAS MUHAMMADIYAH SURAKARTA 2010 Struktur
Pengertian Struktur Struktur adalah koleksi variabel dibawah sebuah nama, Variabel-variabel ini dapat berbentuk berbagai type, misalnya: int, float, char dan lain-lain. Perbedaan utama antara struktur dan array adalah bahwa dalam array memiliki tipe data yang sma, sedangkan struktueadalah sebuah koleksi dari variabel-variabel dibawah nama yang sma, dimana setiap elemen dapat saja memiliki tipe yang berbeda. Mendeklarasikan Struktur Struktur dalam C++ dideklarasikan menggunakan keyword struct diikuti dengan nama struktur, atau sering disebut dengan tag. Variabel-variabel strukur dideklarasikan dalam kurung kurawal { }, setiap elemennya dipisahkan dengan tanda titik koma atau semi colon. Bentuk umum/sintaks deklarasi struktur :
struct nama_struct { anggota_struktur ; } ;
Contoh pendeklarasian struktur untuk data tanggal yang terdiri dari 3 variabel, yaitu: tahun, bulan, dan tanggal yang kebetulan memiliki tipe sama.
struct data_tanggal { int tahun; int bulan; int tanggal; };
struct
array
char alamat [30]; } 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.
struct
struct
struct
struct
struct
Indeks : Contoh :
#include "stdio.h" #include "string.h" #include "conio.h" typedef struct mhs { char npm [10]; char nama [20]; char alamat [30]; unsigned angkatan; float ipk; }; main() { mhs student[100]; // deklarasi var, menyiapkan 100 data mhs char lagi = 'y'; int i; for( i = 0; lagi == 'y'; i++) { printf("\nNPM = "); gets(student[i].npm); printf("Nama = "); gets(student[i].nama); printf("Alamat = "); gets(student[i].alamat); printf("Angkatan = "); scanf("%i", &student[i].angkatan); printf("IPK = "); scanf("%f", &student[i].ipk); printf("\nMasukkan Lagi (y/t) ? "); lagi = getche(); flushall(); } printf("\n\nData yang sudah dimasukkan adalah:\n"); for( int j = 0; j < i; j++) { printf("\nNPM : %s", student[j].npm); printf("\nNama : %s", student[j].nama); printf("\nAlamat : %s", student[j].alamat); printf("\nAngkatan : %i", student[j].angkatan);
printf("\nIPK } }
: %f \n", student[j].ipk);
Pointer Sebagai Anggota Struktur Anda dapat mempunyai karakter, integer, float bahkan pointer untuk dapat dijadikan sebagai tipe data anggota struktur. Contoh : #include <iostream.h> void main() { struct kuliah { char kuliah1[30]; char kuliah2[30];
struct kuliah *ptr; }; kuliah semester[3] = {{"Komputer 207","Matematika 217",&semester[1]}, {"Electronic 210","Sistem Kendali 303",&semester[2]}, {"Analisis Numerik 301","Telekomunikasi 367",&semester[0]}}; int n; for(n=0; n<3;n++) { cout<<"Isi sedang menujuk ke : "; cout<<semester[n].ptr->kuliah1<<endl; } } Keluarannya : Isi sedang menunjuk ke : Electronic 210 Isi sedang menunjuk ke : Analisis Numerik 301 Isi sedang menunjuk ke : Komputer 207 Function Fungsi/function adalah bagian dari program yang memiliki nama tertentu yang unik, digunakan untuk mengerjakan suatu pekerjaan tertentu, serta letaknya dipisahkan dari bagian program yang menggunakan/memanggil fungsi tersebut. Function yang Void Fungsi yang void sering disebut juga prosedur . Disebut void karena fungsi tersebut tidak mengembalikan suatu nilai keluaran yang didapat dari hasil proses fungsi tersebut. Ciri: tidak adanya keyword return, tidak adanya tipe data di dalam deklarasi fungsi, menggunakan keyword void, Tidak dapat langsung ditampilkan hasilnya, Tidak memiliki nilai kembalian fungsi. Contoh: clrscr(), printf() Fungsi yang Non-Void Fungsi non-void disebut juga function. Disebut non-void karena mengembalikan nilai kembalian yang berasal dari keluaran hasil proses function tersebut
Ciri: ada keyword return, ada tipe data yang mengawali deklarasi fungsi, tidak ada keyword void, Memiliki nilai kembalian. Dapat dianalogikan sebagai suatu variabel yang memiliki tipe data tertentu sehingga dapat langsung ditampilkan hasilnya. Contoh: sin(), getch() Passing Structure ke Fungsi void Cetak(struct Matakuliah X){ printf(Nama Matakuliah =%s\n,X.NamaMTK); printf(Sistem Kredit Semester =%d\n,X.SKS); } void main(){ Matakuliah X; Cetak(X); }