Pertemuan 2 Array

advertisement
Algoritma dan Struktur data
P e r t e m u a n
2
Array (larik)
Tenia Wahyuningrum
L/O/G/O
ST3 Telkom Purwokerto
www.themegallery.com
Contoh kasus
Bagaimana cara menyimpan ?
A, apple, 10
Contoh kasus
Bagaimana cara menyimpan ?
A1, apple, 10
A2, apple, 10
A3, apple, 10
Cara penyimpanan tersebut dinilai
tidak efektif.
Mengapa?
“ Karena sulit untuk dilakukan
manipulasi”
Coba perhatikan code
program berikut !
int number1;
int number2;
int number3;
number1 = 1;
number2 = 2;
number3 = 3;
contoh
yang baik untuk
Code di atas bukanlah
memperlihatkan proses penginisialisasian dan
penggunaan variabel, terutama jika variabel
tujuan
yang sama.
tersebut digunakan untuk
definisi
• Sebuah array akan menyimpan
beberapa item data dengan tipe
data yang sama di dalam sebuah blok
memori yang berdekatan yang
kemudian dibagai menjadi beberapa
slot.
– Cara penyimpanan [struktur data] inilah yang disebut
sebagai array.
A
A[0]
B
C
A[1]
B[0]
B[1]
C[0]
A[2]
C[1]
B[2]
A[3]
Array
array
Tipe data yang sama, disimpan
dalam satu tempat yang sama
dan diberi nomor indeks.
Umumnya, indeks dimulai dari “0”
NIM
NO
NIM
NAMA
NILAI
1
D3001
ALI
80,78
NIM[0] NAMA
NIM[1] NAMA[0]
2
3
D3002
D3003
DIANA
RINA
NILAI
90
70,65
NIM[2]
NAMA[1]
NILAI[0]
NILAI[1]
4
D3004
BUDI
54,345
5
D3005
DODI
76
NAMA[2]
NIM[3]
Pendeklarasian array
Untuk mendeklarasikan array :
– tulis tipe datanya,
– diikuti dengan tanda kurung [],
Contoh:
int ages[ 3 ];
Inisiasi array
Diubah menjadi
int number1;
int number2;
int number3;
number1 = 1;
number2 = 2;
number3 = 3;
int number [2];
number[0]=1;
number[1]=2;
number[2]=3;
Cara mengakses array
Contoh, pada array yang telah kita
deklarasikan tadi, kita mempunyai
//memberikan nilai d3010 kepada elemen
pertama array
nim[0] = d3010;
//mencetak elemen array yang terakhir
cout<<nim[3];
Pengaksesan Array
int number1;
int number2;
int number3;
cout<<number1 ;
cout<<number2 ;
cout<<number3 ;
int number [2];
for (int i=0; i<=2;i++)
{
cout<<number[i];
}
Latihan di kelas
Buatlah sebuah inisialisasi array untuk menyimpan 5
buah nama mahasiswa dan 5 buah nilai mahasiswa
seperti berikut !
NO
1
2
3
4
5
Nama
luna
diana
dodit
rudi
indah
Nilai
89,88
65,33
90,00
100
75,62
-Cetaklah nilai dari array ke 3 !
- Cetaklah nama dari array ke 1 !
-Jumlahkan semua nilai dari semua
array !
- Carilah rata-ratanya !
Array 2 dimensi
nama
[1]
[1]
lina
[2]
[3]
rudi
irdho
ikhsan
[2]
tuti
dani
[3]
dodi
ratu
ita
diana
[4]
[4]
asep
matriks
Mat A
3
Mat B
2
3
1
+
1
3
Mat C
?
?
?
?
=
-1
0
Matrix A
[1]
[2]
[1]
3
2
[2]
1
3
int matrikA[2][2];
matrikA[1][1] = 3;
matrikA[1][2] = 2;
matrikA[2][1] = 1;
matrikA[2][2] = 3;
Matrix B
[1]
[2]
[1]
2
1
[2]
-1
0
int matrikB[2][2];
matrikB[1][1] = 3;
matrikB[1][2] = 2;
matrikB[2][1] = 1;
matrikB[2][2] = 3;
Matrix C
[1]
[2]
[1]
?
?
[2]
?
?
Bagaimana mengisi
hasil penjumlahan
pada matriks C?
for (i=1;i<=2;i++)
{
for(j=1;j<=3;j++)
{
matrikC[i][j]= matrikA[i][j] + matrikB[i][j];
}
}
PR (TUGAS KECIL 1)
Buatlah algoritma dengan struktur data array untuk
mengalikan 2 buah matriks !
Syarat perkalian matriks :
Jika matriks Am x n dan matriks Bp x q dikalikan, maka :
Banyaknya kolom matriks A harus sama dengan
banyaknya baris matriks B, sehingga n = p
Matriks hasil perkalian antara A dan B adalah matriks
dengan ordo m x q
Perkalian dilakukan dengan menjumlahkan hasil kali
setiap elemen baris matriks A dengan setiap elemen
kolom matriks B yang sesuai
Smart, trus tw o rth y, te amw o rk
Thank You!
L/O/G/O
www.themegallery.com
Download