structure palopo komputer: organisasi berkas relatif...

Post on 31-Oct-2015

8 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Palopo Komputer: Organisasi Berkas Relatifpintarjhe.blogspot.com/2011/12/organisasi-berkas-relatif_20.html20 Des 2011 – Jika pada organisasi file sequential digambarkan sebagai sebuah kaset, maka organisasi file relatif digambarkan sebagai sebuah compac disk ...Organisasi Berkas Relatif | thebutterflyboythebutterflyboy.wordpress.com/2012/06/03/organisasi-berkas-relatif/3 Jun 2012 – Organisasi berkas relative ini tidak menguntungkan bila penyimpanan sekundernya berupa media SASD, seperti magnetic tape. Berkas relatif ...

TRANSCRIPT

StructUswatun Khasanah, S.Kom

Pengantar Struct Struct adalah tipe data bentukan yang berisi

kumpulan variabel-variabel yang bernaung dalam satu nama yang sama.

Berbeda dengan array yang berisi kumpulan variabel yang bertipe data sama, struct dapat memiliki variabel-variabel yang bertipe data sama atau berbeda, bahkan bisa menyimpan variabel yang bertipe data array atau struct

Variabel-variabel yang menjadi anggota struct disebut dengan elemen struct

ADT (Abstract Data Type) atau Tipe Data BentukanBahasa C/C++ memiliki tipe data numerik dan

karakter (seperti integer, float, char dan lainlain). Bagaimana jika kita ingin membuat tipe data baru?

ADT adalah tipe data yang dibuat oleh programmer sendiri yang memiliki suatu nama tertentu.

ADT dapat berupa tipe data dasar namun diberi nama baru atau berupa kumpulan tipe data berbeda yang diberi nama baru.

Untuk pembuatan ADT digunakan keyword typedef

Contoh ADT#include <stdio.h>#include <conio.h>typedef int angka;typedef float pecahan;typedef char huruf;void main(){clrscr();angka umur;pecahan pecah;huruf h;huruf nama[10];printf("masukkan umur anda : ");scanf("%d",&umur);printf("Umur anda adalah %d",umur);printf("\nmasukkan bilangan pecahan : ");scanf("%f",&pecah);printf("Bilangan pecahan %f",pecah);printf("\nmasukkan huruf : ");h=getche();printf("\nHuruf anda %c",h);printf("\nmasukkan nama : ");scanf("%s",nama);printf("Nama anda %s",nama);getch();}

Ilustrasi StructStruct bisa diumpamakan sebagai

sebuah record, misalnya: MahasiswaStruct Mahasiswa memiliki property

atau atribut atau variabel atau field yang melekat padanya:◦- NIM yaitu karakter sejumlah 8◦- Nama yaitu karakter◦- IPK yaitu bilangan pecahan

Bentuk umum pendeklarasian struct

typedef struct nama_struct{tipe_data <nama_var>;tipe_data <nama_var>;....

};atau

struct {tipe_data <nama_var>;tipe_data <nama_var>;....

} nama_struct;

Pendeklarasian dan penggunaan Struct (1)

typedef struct Mahasiswa {char NIM[8];char nama[50];float ipk;

};

Atau

Pendeklarasian dan penggunaan Struct (2)

struct {char NIM[8];char nama[50];float ipk;

} mhs;

Cara penggunaan struct dan pengaksesan elemen-elemennyaPenggunaan struct dilakukan dengan

membuat suatu variabel yang bertipe struct tersebut

Pengaksesan elemen struct dilakukan secara individual dengan menyebutkan nama variabel struct diikuti dengan operator titik (.)

Contoh mhs.cpp#include<stdio.h> #include<conio.h> #include<iostream.h>

main() { struct { char nim[8]; char nama[50]; float ipk; } mahasiswa;

clrscr(); cout<<"masukan NIM = "; cin>>mahasiswa.nim; cout<<"masukan Nama = "; cin>>mahasiswa.nama; cout<<"masukan ipk Akhir = "; cin>>mahasiswa.ipk; cout<<"\n\nData Yang di Inputkan adalah : \n\n"; cout<<"NIM = "<<mahasiswa.nim<<endl; cout<<"Nama = "<<mahasiswa.nama<<endl; cout<<"ipk Akhir = "<<mahasiswa.ipk<<endl; getch(); }

Contoh mhs.c

#include <stdio.h>#include <conio.h>//Pendeklarasian tipe data baru struct Mahasiswatypedef struct Mahasiswa{char NIM[9];char nama[30];float ipk;};void main(){//Buat variabel mhs bertipe data MahasiswaMahasiswa mhs;clrscr();printf("NIM = ");scanf("%s",mhs.NIM);printf("Nama = ");scanf("%s",mhs.nama);printf("IPK = ");scanf("%f",&mhs.ipk);printf("Data Anda : \n");printf("NIM : %s\n",mhs.NIM);printf("Nama : %s\n",mhs.nama);printf("IPK : %f\n",mhs.ipk);getch();}

Nested Structure Nested Structure merupakan suatu

Structure yang dapat digunakan didalam structure yang lainnya.

Contoh neststruct.cpp#include<stdio.h> #include<conio.h> #include<iostream.h> main() { struct dtmhs { char nim[9]; char nama[15]; }; struct dtnil { float nil1; float nil2; }; struct { struct dtmhs mhs; struct dtnil nil; } nilai; clrscr(); //-> masukan data cout<<"masukan NIM = "; cin>>nilai.mhs.nim; cout<<"masukan Nama = "; cin>>nilai.mhs.nama; cout<<"masukan Nilai UTS = "; cin>>nilai.nil.nil1; cout<<"masukan Nilai UAS = "; cin>>nilai.nil.nil2; cout<<endl; //-> menampilkan hasil masukan cout<<"masukan NIM = "<<nilai.mhs.nim<<endl; cout<<"masukan Nama = "<<nilai.mhs.nama<<endl; cout<<"masukan Nilai UTS = "<<nilai.nil.nil1<<endl; cout<<"masukan Nilai UAS = "<<nilai.nil.nil2<<endl; cout<<endl; getch(); return(0); }

Contoh neststruct.c #include <stdio.h>#include <conio.h>typedef struct Date{int dd;int mm;int yyyy;};typedef struct Time{int h;int m;int s;};typedef struct Login{int ID;Date tglLogin;Time waktuLogin;};int main(){Login user1;printf("USER 1\n");printf("ID : ");scanf("%d",&user1.ID);printf("Tanggal Login\n");printf("Hari : ");scanf("%d",&user1.tglLogin.dd);printf("Bulan : ");scanf("%d",&user1.tglLogin.mm);printf("Tahun : ");scanf("%d",&user1.tglLogin.yyyy);printf("Waktu Login\n");printf("Jam : ");scanf("%d",&user1.waktuLogin.h);printf("Menit : ");scanf("%d",&user1.waktuLogin.m);printf("Detik : ");scanf("%d",&user1.waktuLogin.s);printf("Terimakasih\n");printf("Data Anda :\n");printf("ID : %d\n",user1.ID);printf("Date : %d - %d -%d\n",user1.tglLogin.dd,user1.tglLogin.mm,user1.tglLogin.yyyy);printf("ID :%d:%d:%d\n",user1.waktuLogin.h,user1.waktuLogin.m,user1.waktuLogin.s);getch();}

Structure dengan ArrayPenggunaan Array sering dikaitkan

dengan Structure, sehingga membentuk Array dari Structure.

deklarasi array structure

struct { elemen_struktur; ..... .....

} nama_tipe_struktur[jml_index];

Contoh Program#include<stdio.h> #include<conio.h> #include<iostream.h> main() { int i, j=1; struct { char nim[5]; char nama[15]; float nilai; } mhs[5]; clrscr(); for(i=0; i<2; i++) { cout<<"masukan NIM = "; cin>>mhs[i].nim; cout<<"masukan Nama = "; cin>>mhs[i].nama; cout<<"masukan Nilai Akhir = "; cin>>mhs[i].nilai; }for(i=0; i<2; i++) { cout<<"Data Ke - "<<j++<<endl; cout<<"NIM = "<<mhs[i].nim<<endl; cout<<"Nama = "<<mhs[i].nama<<endl; cout<<"Nilai Akhir = "<<mhs[i].nilai<<endl; cout<<endl; } getch(); }

Contoh Program

#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); 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); } }

LATIHANBuat struct untuk data buku yang berisi

tentang : kode buku, nama buku, tahun terbit, pengarang, dan harga. Gunakan array of struct.

top related