STRUKTUR Struktur merupakan kumpulan elemen data yang digabungkan menjadi satu kesatuan data. Masing-masing elemen data tersebut dinamakan field atau elemen.

Slides:



Advertisements
Presentasi serupa
STRUKTUR Konsep Pemrograman.
Advertisements

Tipe Data Bentukan Pertemuan ke-5.
Abstract data type (Structure, Union, Enumeration)
Struct By : Hendri Sopryadi
Struktur Sugeng Supriyadi, M.Kom.
PERTEMUAN VIII STRUKTUR LANJUT JURUSAN TELEKOMUNIKASI POLITEKNIK ELEKTRONIKA NEGERI SURABAYA Oleh : Muh. Zen S. Hadi, ST.
Struktur.
PERTEMUAN VI STRUKTUR Definisi struktur
ARRAY OF STRUCT Apabila hendak menggunakan 1 struct untuk beberapa kali, ada 2 cara : Deklarasi manual #include typedef struct Mahasiswa { char.
PRAKTIKUM ALGORITMA DAN STRUKTUR DATA
POINTER (VAR.PENUNJUK)
STRUKTUR DATA (1).
Algoritma & Struktur Data Abstract Data Type Evangs Mailoa.
STRUKTUR DATA Structure.
SEMESTER GANJIL 2009/2010.
STRUCT OF ARRAY Apabila hendak menggunakan 1 struct untuk beberapa kali, ada 2 cara : Deklarasi manual #include typedef struct Mahasiswa { char.
STRUKTUR Struktur merupakan kumpulan elemen data yang digabungkan menjadi satu kesatuan data. Masing-masing elemen data tersebut dinamakan field atau elemen.
STRUKTUR Struktur merupakan kumpulan elemen data yang digabungkan menjadi satu kesatuan data. Masing-masing elemen data tersebut dinamakan field atau elemen.
Umi Sa’adah Konsep Pemrograman PENS-ITS Bab 14. Struktur 1 Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006.
Pertemuan 12 Array (Larik) & struct Erna Sri Hartatik
STRUKTUR.
STRUKTUR DATA (1).
PEMROGRAMAN DASAR.
Struktur Oleh: Sri Supatmi,S.Kom.
Materi-8 STRUCTURE (RECORD).
Komentar, identifier Dan Tipe Data
Pengantar C++.
Tipe Data By Serdiwansyah N. A..
PEMROGRAMAN DASAR Varian dan Invarian.
Pemograman Terstruktur
STRUCT (Dalam Bahasa C)
Matakuliah : T0616 / Algoritma dan Pemrograman
Elemen dasar Pertemuan 3.
Pengenalan C++ Oleh : Dewi Sartika.
ARRAY (Array Dua Dimensi) Pertemuan 16 Dasar Pemrograman
S T R U K T U R.
2. Pengenalan Program C++
TYPE DATA ,VARIABEL &KONSTANTA Dalam C++
STRUKTUR Struktur merupakan kumpulan elemen data yang digabungkan menjadi satu kesatuan data. Masing-masing elemen data tersebut dinamakan field atau elemen.
STRUKTUR DATA (1) Sri Nurhayati, MT.
Struktur Manfaat tipe data struct secara umum adalah untuk menyimpan paket (sekumpulan) data ke dalam satu buah nama variabel saja. Kumpulan data di dalam.
Struktur Data Yuniansyah.
FUNGSI, ARRAY, STRING, POINTER, DAN STRUCTURE
STRUCT OF ARRAY.
LAB PEMOGRAMAN DASAR (BAHASA C)
ARRAY (LARIK).
Program komputer Sebuah program komputer yang ditulis dengan bahasa apapun dapat dipandang sebagai sebuah himpunan operasi yang dikerjakan pada data-data.
PEMROGRAMAN DASAR (BAHASA C)
PERTEMUAN 9 Algoritma Presented by : Sity Aisyah, M.Kom
Struktur Oleh: Sri Supatmi,S.Kom.
ARRAY 1d MERISKA DEFRIANI, S.KOMP ALGORITMA DAN PEMROGRAMAN II
ALGORITMA & STRUKTUR DATA I
Algoritma dan Struktur Data
~ PERTEMUAN 4 KONSEP TIPE DATA ~
STRUKTUR DATA PERTEMUAN 3
STRUKTUR Struktur merupakan kumpulan elemen data yang digabungkan menjadi satu kesatuan data. Masing-masing elemen data tersebut dinamakan field atau elemen.
Algoritma dan struktur data
STRUCTURE Struktur (Structure = struct) merupakan suatu struktur data yang terdiri dari satu atau lebih variabel yang bertipe data.
Prepared by Yohana Nugraheni
Aktivitas Struktur Data
STRUKTUR Struktur merupakan kumpulan elemen data yang digabungkan menjadi satu kesatuan data. Masing-masing elemen data tersebut dinamakan field atau elemen.
Algoritma dan Struktur Data
array Array merupakan tipe data yang menampung
Tipe Data Bentukan Pertemuan ke-5.
PEMROGRAMAN DASAR Varian dan Invarian.
Algoritma dan Struktur Data
STRUKTUR DATA – TEKNIK INFORMATIKA S1
Algoritma dan Pemrograman C++ (Data Structures)
Tipe Data Struktur Ridwan, S.T., M.Eng. Pokok Pembahasan Bahan Kajian. Tipe Data Terstruktur Materi Tipe Data: 1.Definisi data, tipe data dan struktur.
Memori dan Scope Variabel
Transcript presentasi:

STRUKTUR Struktur merupakan kumpulan elemen data yang digabungkan menjadi satu kesatuan data. Masing-masing elemen data tersebut dinamakan field atau elemen struktur. Field tersebut bisa memiliki tipe data yang ataupun berbeda, meskipun field tersebut dalam satu kesatuan tetapi tetap bisa siakses secara individu.

STRUCT Struct adalah termasuk tipe data komposit. Berbeda dengan array, tipe data struct mampu menampung banyak data dengan tipe data berbeda-beda (heterogen). Sebagai ilustrasi array mampu menampung banyak data namun dengan satu tipe data yang sama, misalnya integer saja. Sedangkan dalam struct, kita bisa menggunakan untuk menampung banyak data dengan tipe data yang berbeda, satu bagian integer, satu bagian lagi character, dan bagian lainnya Boolean

Stuct Struct adalah tipe data bentukan yang berisi kumpulan variabel-variabel yang bernaung dalam satu nama yang sama dan memiliki kaitan satu sama lain. Berbeda dengan array hanya berupa kumpulan variabel yang bertipe data sama, struct bisa memiliki variabel-variabel yang bertipe data sama atau berbeda, bahkan bisa menyimpan variabel yang bertipe data array atau struct itu sendiri. Variabel-variabel yang menjadi anggota struct disebut dengan elemen struct.

Struktur (struct) adalah Sekumpulan data Tipe datanya BOLEH berbeda Menggunakan nama yang sama Dibedakan melalui nama field-nya Struktur biasa dipakai untuk mengelompokkan beberapa informasi yang berkaitan menjadi sebuah kesatuan (dalam bahasa PASCAL, struktur disebut dengan record) Variabel-variabel yang membentuk suatu struktur, selanjutnya disebut sebagai elemen dari struktur atau field. Dengan demikian dimungkinkan suatu struktur berisi elemen-elemen data berbeda tipe seperti char, int, float, double, dan lain-lain. Contoh sebuah struktur adalah informasi data tanggal (date) yang berisi : month day year

Mendefinisikan Struktur Suatu struktur didefinisikan dengan menggunakan kata kunci struct. Dua Contoh pendefinisian sebuah tipe data struktur : struct date { struct date { int month; int month, day, year; int day; }; int year; }; yang mendefinisikan sebuah tipe data struktur bernama struct date yang memiliki tiga buah elemen (field) berupa : - month - day - year

Mendeklarasikan Struktur Untuk mendeklarasikan sebuah variabel today yang bertipe struct date pernyataannya sbb: Pernyataan di atas menyatakan bahwa variabel today bertipe struct date.

Mendefinisikan & Mendeklarasikan Struktur Dalam mendefinisikan sebuah struktur, elemen yang terkandung di dalamnya bisa juga berupa sebuah struktur Contoh : struct date { int month, day, year; }; struct student { char name[30]; struct date birthday; struct student mhs; //deklarasi var mhs Diagram struktur data dari variabel mhs dapat digambarkan sbb :

Mengakses Elemen Struktur Elemen dari suatu variabel struktur dapat diakses dengan menyebutkan nama variabel struktur diikuti dengan operator titik (‘.’) dan nama dari elemen strukturnya. Cara penulisannya sebagai berikut : Misalnya, memberikan data nama ke field name dari variabel student di atas, maka pernyataan yang diperlukan misalnya adalah : strcpy(mhs.name, “Budi"); Pada pernyataan di atas, mhs.name dapat dibaca sebagai "field name dari mhs". Contoh berikut merupakan instruksi untuk mengisikan data pada field birthday : mhs.birthday.day = 10; variabel_struktur.nama_field

Mengakses Elemen Struktur Sedangkan untuk mendapatkan isi suatu field dari variabel struktur, contohnya : tgl = mhs.birthday.day; merupakan instruksi untuk memberikan isi dari field day ke variabel tgl puts(mhs.name); merupakan instruksi untuk menampilkan di layar isi dari field name.

Menginisialisasi Struktur Sebuah struktur juga bisa diinisialisasi pada saat dideklarasikan. Hal ini serupa dengan inisialisasi array, yaitu elemen-elemennya dituliskan di dalam sepasang kurung kurawal (‘{ }‘) dengan masing-masing dipisahkan dengan koma. Contoh untuk variabel mhs di atas : struct student mhs = {“Muhammad”, 2, 28, 1970};

Array dan Struktur (array of struct) Elemen-elemen dari suatu array juga dapat berbentuk sebuah struktur (array of struct), misalnya array yang dipakai untuk menyimpan sejumlah data siswa (struct student). Array struktur berdimensi satu ini membentuk suatu tabel, dengan barisnya menunjukkan elemen dari array-nya dan kolomnya menunjukkan elemen/field dari struktur. #define MAKS 20 struct date { //definisi dari tipe struct date int month, day, year; }; struct student { //definisi dari tipe struct student char name[30]; struct date birthday; struct student data_mhs[MAKS]; //deklarasi variabel array mhs yang artinya, mendeklarasikan array data_mhs yang memiliki elemen yang bertipe struct student sebanyak MAKS.

Array dan Struktur (array of struct) Setelah array data_mhs dideklarasikan, maka ruang yang disediakan ditunjukkan dalam gambar di bawah ini.

Array dan Struktur #include <stdio.h> #define MAKS 20 struct date { //definisi global dr tipe date int month, day, year; }; struct student { //definisi global dr tipe student char name[30]; struct date birthday; main() { struct student data_mhs[MAKS]; int i=0, jml; char lagi; do //memasukkan data { printf("Name : "); gets(data_mhs[i].name); printf("Birthday (mm-dd-yyyy): "); scanf("%d-%d-%d", &data_mhs[i].birthday.month, &data_mhs[i].birthday.day, &data_mhs[i].birthday.year); i++;

Array dan Struktur fflush(stdin); //hapus sisa data dlm buffer keyboard printf(“\nMau memasukkan data lagi [Y/T] ? "); lagi = getchar( ); //baca tombol } while(lagi == 'Y' || lagi == 'y'); jml = i; printf("\nDATA MAHASISWA\n"); for (i=0; i<jml; i++) //menampilkan data { printf("%d. Name : %s", i+1, data_mhs[i].name); printf("\n Birthday : %d-%d-%d\n\n", data_mhs[i].birthday.month, data_mhs[i].birthday.day, data_mhs[i].birthday.year); }

Hasilnya….

Variasi Pendeklarasian Struktur Selain cara yang sudah dibahas sebelumnya, struktur juga dapat dideklarasikan dalam berbagai bentuk yang lain sbb: struct date { int month, day, year; } today, tomorrow; struct student { char name[30]; struct date birthday; } data_mhs[MAKS]; yaitu mendefinisikan struct date, sekaligus mendeklarasikan variabel today dan tomorrow dengan tipe struct date. Demikian juga mendefinisikan struct student, sekaligus mendeklarasikan variabel array data_mhs sebanyak MAKS elemen dengan tipe struct student. Cara lainnya : mendefinisikan, mendeklarasikan sekaligus menginisialisasi struktur sbb: } today = {12, 25, 2006};

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

Pendeklarasian dan penggunaan Struct (1) (menggunakan typedef) typedef struct Mahasiswa { char NIM[8]; char nama[50]; float ipk; }; untuk menggunakan struct Mahasiswa dengan membuat variabel mhs dan mhs2 Mahasiswa mhs,mhs2; untuk menggunakan struct Mahasiswa dengan membuat variabel array m; Mahasiswa m[100];

Pendeklarasian dan penggunaan Struct (2) (tanpa menggunakan typedef) char NIM[8]; char nama[50]; float ipk; } mhs; Berarti kita sudah mempunyai variabel mhs yang bertipe data struct seperti diatas.

Cara penggunaan struct dan pengaksesan elemen-elemennya Penggunaan/pemakaian tipe data struct dilakukan dengan membuat suatu variabel yang bertipe data struct tersebut Pengaksesan elemen struct dilakukan secara individual dengan menyebutkan nama variabel struct diikuti dengan operator titik (.) Misalnya dengan struct mahasiswa seperti contoh di atas, kita akan akses elemen-elemennya seperti contoh berikut:

Program #include <stdio.h> #include <conio.h> Contoh 1 #include <stdio.h> #include <conio.h> //Pendeklarasian tipe data baru struct Mahasiswa typedef struct Mahasiswa{ char NIM[9]; char nama[30]; float ipk; }; void main(){ //Buat variabel mhs bertipe data Mahasiswa Mahasiswa 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(); }

Hasil

Program #include <stdio.h> #include <conio.h> #define phi 3.14 //langsung dianggap variabel 'lingkaran' struct { float jari2; float keliling; float luas; } lingkaran; //fungsi void untuk menghitung luas ingkaran void luasLingkaran(){ //langsung menggunakan luas lingkaran asli lingkaran.luas = lingkaran.jari2 * lingkaran.jari2 * phi; printf("\nLuas lingkaran = %f",lingkaran.luas); } //fungsi yang mengembalikan nilai float untuk menghitung keliling lingkaran float kelLingkaran(float j){ return 2*phi*lingkaran.jari2; int main(){ clrscr(); printf("Jari-jari = ");scanf("%f",&lingkaran.jari2); //panggil fungsi luasLingkaran luasLingkaran(); //panggil fungsi keliling, nilai kembaliannya dikirim ke keliling lingkaran asli lingkaran.keliling = kelLingkaran(lingkaran.jari2); //tampilkan keliling lingkaran asli printf("\nKeliling lingkaran = %f",lingkaran.keliling); getch();

Hasil

Struct yang berisi struct lain #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(); }

Hasil

Array of Struct #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 user[3]; //3 user for(int i=0;i<3;i++){ printf("\nUSER ke-%d\n",i+1); printf("ID : ");scanf("%d",&user[i].ID); printf("Tanggal Login\n"); printf("Hari : ");scanf("%d",&user[i].tglLogin.dd); printf("Bulan : ");scanf("%d",&user[i].tglLogin.mm); printf("Tahun : ");scanf("%d",&user[i].tglLogin.yyyy); printf("Waktu Login\n"); printf("Jam : ");scanf("%d",&user[i].waktuLogin.h); printf("Menit : ");scanf("%d",&user[i].waktuLogin.m); printf("Detik : ");scanf("%d",&user[i].waktuLogin.s); printf("Terimakasih Atas Pengisiannya\n"); printf("\nData User ke-%d:\n",i+1); printf("Login ID : %d\n",user[i].ID); printf("Login Date : %d - %d - %d\n",user[i].tglLogin.dd,user[i].tglLogin.mm,user[i].tglLogin.yyyy); printf("Login Time : %d:%d:%d\n",user[i].waktuLogin.h,user[i].waktuLogin.m,user[i].waktuLogin.s); } getch();

Hasil

IMAGE Image atau gambar atau citra merupakan tipe data grafik. Misalnya : grafik perkembangan jumlah siswa SMK, foto keluarga kita, video perjalanan dan lain-lain. Pada bahasa-bahasa pemrograman modern terutama yang berbasis visual tipe data ini telah didukung dengan sangat baik.

DATE TIME Nilai data untuk tanggal (Date) dan waktu (Time) secara internal disimpan dalam format yang spesifik. Variabel atau konstanta yang dideklarasikan dengan tipe data Date dapat digunakan untuk menyimpan baik tanggal maupun jam. Tipe data ini masuk dalam kelompok tipe data composite karena merupakan bentukan dari beberapa tipe data. Berikut ini contoh tipe data dalam Visual Basic. Dim WaktuLahir As Date WaktuLahir = “01/01/1997” WaktuLahir = “13:03:05 AM” WaktuLahir = “02/23/1998 13:13:40 AM” WaktuLahir = #02/23/1998 13:13:40 AM#

Deklarasi struktur struct nama_struktur { type1 element1; type2 element2; anggota / elemen dari struktur type3 element3; . } nama_object; //identifier yang digunakan untuk pemanggilan struktur ------------atau--------------- type2 element2; .} ; struct nama_struktur nama_object;

Contoh struktur dengan tipe data berbeda : struct mahasiswa { char nim[10]; char nama[25]; char jurusan[2]; float ipk; }mhs;

Contoh struktur dengan tipe data sama : struct tanggal { int tanggal; int bulan; int tahun; }tgl; ---atau bisa ditulis --- int tanggal, bulan, tahun;

Contoh program 1 : //program data stok #include <iostream.h> #include <conio.h> struct stok { char nama [50]; int jml; }stoks ; main () { cout<<"Masukkan nama barang = ";cin>>stoks.nama; cout<<"Masukkan jumlah barang = ";cin>>stoks.jml; cout<<""; cout<<"-------------------------\n"; cout<<"Output "<<stoks.nama<<" = "; cout<<stoks.jml; getch();}

Bisa juga di tulis : //program data stok #include <iostream.h> #include <conio.h> struct stok { char nama [50]; int jml; }; struct stok stoks; main () { cout<<"Masukkan nama barang = ";cin>>stoks.nama; cout<<"Masukkan jumlah barang = ";cin>>stoks.jml; cout<<""; cout<<"-------------------------\n"; cout<<"Output "<<stoks.nama<<" = "; cout<<stoks.jml; getch(); }

Contoh program 2 : //program mengakses elemen struktur #include <iostream.h> #include <conio.h> struct data_tgl { int tgl,bln,thn; }; struct teman { char nama[20]; char j_kel[1]; struct data_tgl tgl; }; struct teman info;

main () { //input data cout<<"Masukkan nama anda = ";cin>>info.nama; cout<<"Jenis kelamin anda = ";cin>>info.j_kel; cout<<"Tanggal lahir anda = ";cin>>info.tgl.tgl; cout<<"Bulan lahir anda = ";cin>>info.tgl.bln; cout<<"Tahun lahir anda = ";cin>>info.tgl.thn; cout<<""; cout<<"-------------------------\n"; //output data cout<<"Nama : "<<info.nama; cout<<"\nKelamin : "<<info.j_kel; cout<<"\nTanggal lahir : "<<info.tgl.tgl<<"-"<<info.tgl.bln <<"-"<<info.tgl.thn; getch();}

Enumerasi Enumerasi adalah tipe data yang mempunyai elemen-elemen bertipe konstanta dengan urutan yang sudah dtentukan. Nilai-nilai dari konstanta ini berupa nilai-nilai integer yang diwakili oleh pengenal yang ditulis di antara tanda kurung kurawal “{ “ dan “}”. Tipe ini dideklarasikan dengan kata kunci enum. Deklarasi Enumerasi : Enum nama_enumerasi{nilai1,nilai2,…}

Contoh program 3 : //program mengakses elemen struktur #include <iostream.h> #include <conio.h> enum j_kel{pria,wanita} ; int main() { struct siswa { int nis; char nama[20]; j_kel kelamin; }A; //input data A.nis=123; A.nama=="Yuli"; A.kelamin=wanita; //output data cout<<"\nNis : "<<A.nis<<endl; cout<<"Nama : "<<A.nama; cout<<"\nKelamin : "<<A.kelamin; getch();}

Struktur yang berisi struktur yang lain Suatu struktur dapat berisi dengan elemen berupa struktur yang lain. Contoh : #include <stdio.h> #include <conio.h> #include <iostream.h> main() { struct tanggal{ int hari; int bulan; int tahun; }; struct alamat { char jalan[30]; char kota[20]; };

struct { char nama[40]; struct tanggal masuk; struct alamat tinggal; float gaji; } karyawan={"Arief Kurniawan", 17,11,87,"Jalan Raya 5","Yogyakarta", 750000.00}; /*menampilkan data karyawan*/ cout<<"Nama Karyawan : "<< karyawan.nama; cout<<"\nTangggal Masuk : "<< karyawan.masuk.hari << karyawan.masuk.bulan <<karyawan.masuk.tahun ; cout<<"\nalamat : "<< karyawan.tinggal.jalan; cout<<"\n "<< karyawan.tinggal.kota; cout<<"\nGaji Karyawan Rp "<< karyawan.gaji; getch(); }

Output :