Pada
kesempatan kali ini saya akan sedikit menjelaksan aray of struct dan contoh
kodingan nya ,
Untuk
siswa atau mahasiswa yang menggunakan bahasa c pasti tidak asing dan pasti
mempelajari aray of sturct ini .
Array merupakan tipe data yang paling sederhana yang paling banyak dipergunakan oleh para programmer. Hampir semua bahasa pemrograman menyediakan native data tipe array ini. Pada umumnya letak elemen array secara logika dan fisikal (letak dimemori) adalah sama. Array selalu terdiri atas 2 bagian: index dan komponen. Setiap index hanya selalu bersisi 1 komponen (hubungan antara index dan komponen adalah one-to-one). Maka dari itu hubungan antar elemen pada array bersifat homogenous.
Array
bisa diakses secara positional access – pengambilan elemen berdasarkan posisi
index, atau dengan associative access – pengambilan elemen berdasarkan isi dari
elemen yang bersangkutan.
Karena
pencapaian elemen pada positional access dilakukan secara acak, maka dapat
disebut juga sebagai
random access.
·
contoh
untuk positional akses
for (i=1; i<=jumax; i++)
{
printf(“%d”, a[i]);
}
·
contoh
untuk associative akses
ketemu = false;
nilaiassociative = 45;
for (i=1; i<=jumax; i++) {
if (a[i] = nilaiassociative) ketemu =
true;
}
Jenis
jenis operasi yang dapat dilakukan terhadap array adalah:
·
Retrieve, yaitu membaca atau mengambil
nilai di elemen tertentu didalam array tersebut.
·
Update, yaitu mengubah nilai di lemen tertentu
yang terdapat pada array tersebut.
Dan
di bawah ini contoh kodingan aray of struct
#include <iostream>
#include <conio.h>
#include <windows.h>
#include<stdio.h>
using namespace std;
struct data
{
int
nomor;
char judul[50];
char halaman[20];
char harga[20];
};
main()
{//start fungsi utama
int menu;
int kode=-1;
int
i;
int
j;
int pilih;
int namedit;
data Buku[20]; //data Buku[20];
char get[1];
bool ketemu;
menuutama:
system("cls");
cout<<"================================\n";
cout<<" TOKO BUKU LIMA5ATU\n";
cout<<"================================\n";
cout <<" \nMENU UTAMA
:\n\n";
cout<<" 1. Input Data Buku\n\n";
cout<<" 2. Tampilkan Data Buku\n\n";
cout<<" 3. Hapus Data Buku\n\n";
cout<<" 4. Keluar\n\n";
cout<<"____________\n\n";
cout<<" Masukan Pilihan Anda :
"; cin>>menu;
if(menu==1)
{//Input Data Buku (start)
system("cls");
kode++;
cout<<"--------------------------------\n";
cout<<" Input Data Buku\n";
cout<<"--------------------------------\n";
cout<<" Input Buku
ke-"<<kode; cin.getline(get,1);cout<<endl<<endl;
cout<<" Judul Buku\t: ";
cin.getline(Buku[kode].judul,50);cout<<endl;
cout<<" Jumlah Halaman\t: ";
cin.getline(Buku[kode].halaman,20);cout<< endl;
cout<<" Harga\t\t: ";
cin.getline(Buku[kode].harga,20);cout<< endl;
cout<<"____________\n\n";
cout<<" 1.back to first
menu\n\n";
cout<<" 2.out of
program\n";
cout<<"____________\n\n";
cout<<" Masukan Pilihan Anda :
"; cin>>pilih;
if(pilih==1)
goto menuutama;
else if(pilih==2)
goto keluar;
}//Input Data Buku (end)
else if(menu==2)
{//Menampilkan Data Buku (start)
system
("cls");
cout<<"--------------------------------\n";
cout<<" Menampilkan Data Buku\n";
cout<<"--------------------------------\n";
for(i=0;i<=kode;i++)
{
cout<<"
Data Buku ke-"<<i<<endl<<endl;
cout<<"
Judul Buku\t: "<<Buku[i].judul<<endl<<endl;
cout<<"
Jumlah Halaman\t: "<<Buku[i].halaman<<endl<<endl;
cout<<"
Harga\t\t: "<<Buku[i].harga<<endl<<endl;
cout<<"--------------------------------\n";
}
cout<<" 1.back
to first menu\n\n";
cout<<"
2.out of program\n";
cout<<"____________\n\n";
cout<<" Masukan Pilihan Anda :
"; cin>>pilih;
if(pilih==1)
goto menuutama;
else if(pilih==2)
goto keluar;
}//Menampilkan Data Buku (end)
else if(menu==3)
{//Hapus Data Buku (start)
system ("cls");
cout<<"--------------------------------\n";
cout<<" Menghapus Data Buku\n";
cout<<"--------------------------------\n";
cout<<" Hapus
Buku ke- "; cin>>namedit;cout<<endl;
for(i=0;i<=kode;i++)
{
if(namedit==i)
{
ketemu=true;
if(ketemu)
{
for(j=i;j<=kode+1;j++)
{
Buku[j]=Buku[j+1];
}
cout<<" DATA BERHASIL DI HAPUS'
\n\n";
cout<<"--------------------------------\n";
kode--;
goto menu;
}
}
}
cout<<" BUKU TIDAK DITEMUKAN !!!\n";
cout<<"____________\n\n";
menu:
cout<<" 1.back to first menu\n\n";
cout<<" 2.out of program\n";
cout<<"____________\n\n";
cout<<" Masukan Pilihan Anda : "; cin>>pilih;
if(pilih==1)
{
goto menuutama;
}
else if(pilih==2)
{
goto keluar;
}
}//Hapus Data Buku (end)
else if(menu==4)
{//Keluar (start)
keluar:
system("cls");
cout<<"\n -----Thank you for visiting our shop-----\n";
getch();
return 0;
}//Keluar (end)
}//end fungsi utama
dan output nya seperti ini
sekian dan semoga bermanfaaat