BAB
IV
ARRAY
DAN STRUCTURE
1.
Array
Array
merupakan sekumpulan data yang yang mempunyai nama dan tipe yang sama, Array
disebut juga variabel berindeks. Nilai suatu data dalam Array ditentukan oleh
nama dan indeksnya. Array banyak digunakan pada oprasi yang melibatkan indeks
seperti pada statisik. Tipe data Array dapat berupa Array satu dimensi(1D), dua
dimensi (2D), tiga dimensi (3D) atau banyak dimensi. Cara pendeklarasiannya
dalam bahasa C++, yaitu:
a). Array satu dimensi :
Tipe_Array nama_Array[ukuran] Contoh: double Array_1[10]
b). Array dua dimensi :
Tipe_Array nama_Array[ukuran1] [ukuran2] Contoh:int
Array_2[10][10]
c). Array tiga dimensi :
Tipe_Arraynama_Array[ukuran1][ukuran2][ukuran3] Contoh: float
Array_3[10][10][10]
Array
dalam bahasa C++ tidak dimulai dari indeks satu, teteapi dimulai dari indeks
0(nol). Misalnya dideklarasikan suatu Array satu dimensi: int x[3] berarti
Array yang terjadi adalah: x[0], x[1], x[3].
Untuk member nilai pada Array dapat dilakukan dengan
mengakses indeksnya, missal:
Array_1[0] = 10.0;
Array_1[1] = 20.0;
Selain
itu, member nilai pada Array juga dapat dilakukan dengan menggunakan struktur
perulangan for yang mana jumlah perulangan yang terjadi disesuaikan dengan
ukuran Array. Misal:
for (int i=0;i<10;i++)
{
x[i]= I;
}
Membaca Nilai Dari Array
Nilai Array dapat langsung ditampilkan misalnya:
cout<<Array_1[0]<<endl;
cout<<Array_1[0]<<endl;
Atau dapat juga dengan bantuan struktur for,
misalnya:
for (int=0;i<10;i++)
{
cout<<x[1];
}
Selain
bertipe numeric, Array dapat juga bertipe char. Array char dapat dianggap
sebagai sebuah string. Contoh:
Char nama[17]= “INFORMATIKA UNSIL”;
Char alamat[]=”JL.SILIWANGI NO.24”;
Untuk member nilai pada suatu string, tidak
diperbolehkan menggunakan operator penguasaan(=). Untuk member nilai string
dapat menggunakan tiga cara yaitu dengan inisialisasi, diambil dari papan ketik
atau menggunakan fungsi stcrpy (). Contoh penerapan array sebagai berikut:
//program
guided 1
#include
"iostream.h"
#include
"conio.h"
void
main()
{
int
data[5];
//input
data ke array
for
(int k=0; k<5; k++)
{
cout<<"Masukkan
data]"<<k<<"] = ";
cin>>data[k];
}
//tampil
data array
for
(int j=0; j<5; j++)
{
cout<<"data["<<j<<"]
= "<<data[j]<<endl;
}
getch();
}
|
//program
guided 2
#include
"iostream.h"
#include
"conio.h"
void
main()
{
int
data[5];
int
rata, total = 0;
//input
data ke array
for
(int k=0; k<5; k++)
{
cout<<"Masukkan
data["<<k<<"] = ";
cin>>data[k];
}
//menghitung
total nilai pada array
for
(int j=0; j<5; j++)
{
total
= total+data[j];
}
//menghitung
rata-rata
rata
= total/5;
cout<<"rata-rata
data pada array = "<<rata<<endl;
getch();
}
|
//program
guided 3
#include
"iostream.h"
#include
"conio.h"
void
main()
{
int
data[3][3];
int
rata, total = 0;
//input
data ke array
for
(int k=0; k<3; k++)
{
for
(int j=0; j<3; j++)
{
cout<<"Masukkan
data["<<k<<"]["<<j<<"] = ";
cin>>data[k][j];
}
}
//menghitung
total nilai pada array
for
(int m=0; m<3; m++)
{
for
(int n=0; n<3; n++)
{
cout<<data[m][n]<<"
";
total
= total+data[m][n];
}
cout<<""<<endl;
}
//menghitung
rata-rata
rata
= total/3;
cout<<"rata-rata
data pada array = "<<rata<<endl;
getch();
}
|
//program
guided 4
#include
"iostream.h"
#include
"conio.h"
#include
"checks.h"
void
main()
{
char
nama[] = "UNIVERSITAS SILIWANGI";
int
nomor;
char
alamat[15], alamat_lain[15];
cout<<"Masukkan
data tentang : "<<endl;
cout<<"Masukkan
nomor : ";
cin>>nomor;
cout<<"Masukkan
alamat : ";
cin>>alamat;
//cara
memberi nilai pada string
strcpy(alamat_lain,
alamat);
cout<<"Data
yang dimasukkan :"<<endl;
cout<<"Nama
: "<<nama<<endl;
cout<<"nomor
: "<<nomor<<endl;
cout<<"alamat
: "<<alamat<<endl;
cout<<"alamat
lain : "<<alamat_lain<<endl;
getch();
}
|
Guided 1
Analisa : Program diatas adalah salah satu program
yang menggunakan Array. Array merupakan sekumpulan data yang mempunyai nama dan
tipe data yang sama tipe data array diatas ialah array satu dimensi. dengan
bantuan struktur for nilai dari array dapat dibaca. array diatas bertipe
numerik. Dapat dilihat programnya diatas.
Guided 2
Analisa : Program diatas adalah salah satu program
yang menggunakan Array. Array merupakan sekumpulan data yang mempunyai nama dan
tipe data yang sama tipe data array diatas ialah array satu dimensi. dengan
bantuan struktur for nilai dari array dapat dibaca setelah nilainya terbaca
lalu dicari rata rata pada nilai array yang diinputkan. array diatas bertipe
numerik. Dapat dilihat programnya diatas.
Guided 3
Analisa : Program diatas adalah salah satu program
yang menggunakan Array. Array merupakan sekumpulan data yang mempunyai nama dan
tipe data yang sama tipe data array diatas ialah array dua dimensi. dengan
bantuan struktur for nilai dari array dapat dibaca lalu mengurutkan array
tersebut dan dihitung nilai rata-ratanya. array diatas bertipe numerik. Dapat
dilihat programnya diatas.
Guided 4
Analisa : Program diatas adalah salah
satu program yang menggunakan Array. Array merupakan sekumpulan data yang
mempunyai nama dan tipe data yang sama tipe data array diatas ialah array satu
dimensi. array juga dapat bertipe char. Array char dapat dianggap sebuah
string. Dapat
dilihat programnya diatas.
2.
Structure
Dalam C++, tipe data struktur yang dideklarasikan
dengan kata kunci struct, dapat mempunyai komponen dengan sembarang tipe data,
baik tipe data dasar maupun tipe data turunan, termasuk fungsi. Dengan
kemampuan ini tipe data struktur menjadi sangat berdaya guna. Misalnya kita
ingin membentuk tipe data struktur yang namanya kotak. Maka dapat
dideklarasikan sebagai berikut:
Struct tkotak
{
Double panjang;
Double lebar;
};
Tkotak;
Untuk member nilai ukuran kotak tersebut, kita dapat
menggunakan perintah-perintah ini:
Kotak.panjang= 10;
Kotak.lebar= 7;
Untuk member nilai panjang dan lebar kotak, salah
satu caranya adalah seperti di atas. Cara lain untuk member nilai panjang dan
lebar adalah dengan membentuk suatu fungsi. Karena fungsi ini hanya digunakan
untuk member nilai data panjang dan lebar suatu kotak, tentunya fungsi ini
khusus milik objek kotak, sehingga harus dianggap sebagai anggota struktur
kotak. C++ sebagai bahasa pemrograman dapat mendefinisikan anggota tipe
struktur yang berupa fungsi. Dengan menambah fungsi tersebut, maka struktur
kotak menjadi lebih jelas bentuknya.
Struct tkotak
{
Double panjang;
Double lebar;
Void SetUkuran(double pj, double lb)
{
Panjang= pj;
Lebar= lb;
};
};
Tkotak kotak;
Dengan
tipe struktur kotak seperti itu, untuk member nilai panjang dan lebar hanya
dengan memanggil fungsi SetUkuran() kotak.SetUkuran(10,7);
Selain punya ukuran panjang dan lebar, kotak juga
mempunyai keliling dan luas. Dengan demikian, kita dapat memasukkan fungsi
untuk menghitung keliling dan luas kedalam struktur kotak. Sebagai catatan,
bahwa definisi fungsi yang menjadi anggota struktur dapat ditempatkan diluar
tubuh struktur. Contohpenerapan struktur kotak dapat dilihat dalam program
berikut:
#include<iostream.h>
#include<conio.h>
struct tkotak
{
double
panjang;
double
lebar;
void
SetUkuran(double pj, double lb);
double
Keliling();
double
Luas();
};
void main()
{
tkotak
kotak;
kotak.SetUkuran(10,7);
cout<<"Panjang
: "<<kotak.panjang<<endl;
cout<<"Lebar
: "<<kotak.lebar<<endl;
cout<<"Keliling
: "<<kotak.Keliling()<<endl;
cout<<"Luas
: "<<kotak.Luas()<<endl;
getch();
}
void tkotak::SetUkuran(double pj, double lb)
{
panjang
= pj;
lebar =
lb;
}
double tkotak::Keliling()
{
return
2*(panjang+lebar);
}
double
tkotak::Luas()
{
return
panjang*lebar;
}
|
Analisa : Diatas merupakan salah satu contoh program
yang menggunakan tipe data struktur yang dideklarasikan dengan kata kunci
struct, yang dapat mempunyai komponen sembarang tipe data. pendeklarasian tipe
data struktur dengan nama kotak (struct tkotak), void tkotak::SetUkuran(double
pj, double lb) adalah fungsi yang hanya digunkan untuk memberikan nialai data
panjang dan lebar suatu kotak, fungsi ini khusus hanya dimiliki objek kotak.
Dapat dilihat programnya diatas.
String
dan File
1. String
Dalam pemrograman C++, karena string merupakan
kumpulan dari karakter maka untuk inisialisasi string, dapat dilakukan dengan
cara sebagai berikut:
Char namaku[20];
Maka dari pernyataan di atas, dapa digunakan sebagai
deklarasi sebuah variabel string(array dari karakter) dengan panjang hingga 20
karakter, termasuk diakhiri dengan karakter null.
Inisialisasi String
Untuk inisialisasi string(pemberian nilai kepada
variabel string), dapat dilakukan dengan beberapa cara :
Char namaku[20] = {‘R’,’a’,’c’,’h’,’m’,’a’,’t’,’\0};
Atau
char namaku[20];
namaku[0] = ’R’;
namaku[1] = ‘a’;
namaku[2] = ‘c’;
namaku[3] = ‘h’;
namaku[4] = ‘m’;
namaku[5] = ‘a’;
namaku[6] = ‘t’;
namaku[7] = ‘\0’;
Atau
Char namaku[20] = “Rachmat”;
Perbedaan disini adalah pada tanda(‘) yang berarti
menginputkan nilai berupa karakter kedalam variabel string sedangkan tanda (“)
berarti menginputkan sebuah nilai string kedalam variabel string.
Fungsi-fungsi untuk manipulasi string.
·
Strcpy, yaitu fungsi untuk mengkopi isi
suatu nilai string ke dalam variabel string lainnya.
Contoh program
//penggunaan
strcpy
#include<iostream.h>
#include<conio.h>
#include<checks.h>
void
main()
{
char
namaku[20];
strcpy(namaku,"Erwan
Ramdani");
cout<<namaku;
getch();
}
|
Analisa : Diatas merupakan salah satu contoh program
yang menggunakan fungsi manipulasi string, tanda (“) berarti menginputkan
sebuah nilai ke string kedalam variable string. strcpy yaitu fungsi untuk
mengcopy isi suatu nilai string ke dalam variable string lainnya. sebelum
menggunakan fungssi strcpy kita harus mendeklarasiikan terlebih dahulu header
string.h. Dapat dilihat programnya diatas.
·
Untuk memberikan nilai kepada seluruh
variabel string, biasanya digunakan perintah input stream(cin) dan diikuti oleh
metode getline.
//penggunaan
cin untuk input string
#include<iostream.h>
#include<conio.h>
void
main()
{
char
namaku[20];
cout<<"Inputkan
data nama : ";
cin.getline(namaku,20);
cout<<"Nama
anda adalah : ";
cout<<namaku;
getch();
}
|
Analisa : Diatas merupakan salah satu contoh program
yang menggunakan fungsi manipulasi string, tanda (“) berarti menginputkan
sebuah nilai ke string kedalam variable string. untuk memberikan nilai kepada
sebuah variable string, digunakan perintah input stream (cin) dan diikuti oleh
metode getline. Dapat dilihat programnya diatas.
2.File
Operasi dasar pada file pada dasarnya terbagi
menjadi tiga tahap, yaitu : membuka atau mengaktifkan file, melaksanakan
perosesan file dan menutup file.
2.1 Membuka File
Sebelum suatu file dapat diproses, file harus dibuka
terlebih dahulu. Sebelum file dibuka, terlebih dahulu obyek file harus
didefinisikan. Sintaknya :
Ofstream nama_obyek;
Perintah ofstream dapat dijalankan dengan perintah
menyertakan file header fstream.h. setelah itu, suatu file dapat dibuka dengan
perinah nama_obyek.open(“nama file dan path”);
Dua pernyataan diatas dapat disederhanakan dengan
cara ofstream file_keluaran(“Siliwangi,txt”);
2.2 Menulis ke File
Salah satu jenis pemrosesan pada file adalah menulis
atau merekan data ke file. Sintaknya : nama_obyek<<”Praktikum Algoritma
Dan Struktur Data\n”;
2.3 Menutup File
Setelah pemrosesan file selesai, file dapat ditutup
menggunakan perintah nama_obyek.close();
Contoh program:
#include<iostream.h>
#include<conio.h>
#include<fstream.h>//ofstream
void
main()
{
ofstream file_keluaran;
file_keluaran.open("Siliwangi.txt");
cout<<"Proses merekam sedang
berlangsung...\n";
file_keluaran<<"Kelas
:C-2010\n";
file_keluaran<<"Nama : Erwan
Ramdani\n";
file_keluaran<<"NPM : 107006115\n";
file_keluaran.close();
getch();
}
|
Analisa : Program diatas merupakan salah satu contoh
program yang menggunakan operasi file, #include<fstream.h> ialah header
yang mempunyai fungsi untuk membuka, melakasanakan pemrosesan file dan menutup
file. ofstream file_keluaran; ialah
pendefinisian untuk membuka sebuah file. lalu data data filenya ditulis atau
direkam terlebih dahulu. file_keluaran.close(); digunakan untuk menutup file
setelah pemrosesan file selesai. Dapat dilihat programnya diatas.
2.4 Membac File
Apabila bermaksud membaca sebuah file, pertama-tama
yang harus dilakukan adalah menciptakan obyek berkelas ifstream. Contoh: ifstream
file_masukkan; setelah obyek file_masukkan diciptakan, file dapat
dibuka dengan cara memanggil fungsi anggota open(); file_masukkan.open(“Siliwangi.txt”)
Dua pernyataan di atas dapat disederhanakan denagn
cara file_masukkan(“Siliwangi.txt”)
Apabila data bertipe maka data dapat dibaca dengan
menggunakan getline();
file_masukkan.getline(isi,100);
contoh program:
#include<iostream.h>
#include<conio.h>
#include<fstream.h>
void
main()
{
char
isi[100];
ifstream
file_masukkan("Siliwangi.txt");
while(file_masukkan)
{
file_masukkan.getline(isi,100);
cout<<isi<<endl;
}
file_masukkan.close();
getch();
}
|
Analisa : Program diatas merupakan salah satu contoh
program yang menggunakan operasi file, #include<fstream.h> ialah header
yang mempunyai fungsi untuk membuka, melakasanakan pemrosesan file dan menutup
file. ifstream file_masukan; ialah objek
berkelas yang digunakan untuk membaca sebuah file. karena data bertipe maka
dapat dibaca dengan menggunakangetline();(file_masukkan.getline(isi,100)).
file_keluaran.close(); digunakan untuk menutup file setelah pemrosesan file
selesai. Dapat dilihat programnya diatas.
2.5 Menambah Data
Agar data yang ada pada file tidak terhapus, pada
bagian open() perlu ditambahkan argument kedua berupa : ios::app;
Misalnya: ofstream file_keluaran(“Siliwangi.txt”,ios::app);
Atau
file_keluaran.open(“Siliwangi.txt”,ios::app);
#include<iostream.h>
#include<conio.h>
#include<fstream.h>
void
main()
{
ofstream
file_keluaran("Siliwangi.txt",ios::app);
cout<<"Proses
tambah data ";
file_keluaran<<"jurusan
Teknik Informatika \n";
file_keluaran<<"Universitas
Siliwangi\n";
file_keluaran.close();
getch();
}
|
Analisa : Program diatas merupakan salah satu contoh
program yang menggunakan operasi file, #include<fstream.h> ialah header
yang mempunyai fungsi untuk membuka, melakasanakan pemrosesan file dan menutup
file. ios∷app; ialah argument yang ditambahkan
pada bagian open() agar data pada file tidak terhapus. lalu data data filenya
ditulis atau direkam terlebih dahulu. file_keluaran.close(); digunakan untuk
menutup file setelah pemrosesan file selesai. Dapat dilihat programnya diatas.
Tampilan setelah data ditambahkan:
ok min, makasih
BalasHapusAlat pemisah lcd