Document 9651286

Download Report

Transcript Document 9651286

Matakuliah
Tahun
: S0683/Algoritma dan Pemrograman
: 2007
Array pada FORTRAN
Pertemuan 7
Array
Suatu struktur data yang dapat menampung
sejumlah data. Untuk memanipulasi data per
elemen digunakan indeks
3
Bina Nusantara
Karakteristik Array
• Homogen -> tipe data sejenis
• Random akses -> elemen dapat diakses
secara langsung. Untuk mengakses elemen
keempat, tidak harus melalui elemen
pertama, kedua, dan ketiga
4
Bina Nusantara
Array Dimensi Satu
Array dimensi satu, menggunakan sebuah indeks
Deklarasi array dimensi satu:
• DIMENSION Pollut(1:10)
INTEGER Pollut
• DIMENSION Pollut(10)
INTEGER Pollut
• INTEGER Pollut(1:10)
• INTEGER Pollut(10)
Mengalokasikan 10 lokasi memori dengan tipe integer yang diberi nama
Pollut
5
Bina Nusantara
Array Dimensi Satu Lanj.
Memory
Pollut(1)
Memory
Pollut(4) = 100
Pollut(1)
Pollut(2)
Pollut(2)
Pollut(3)
Pollut(3)
Pollut(4)
Pollut(4)
Pollut(5)
Pollut(5)
Pollut(6)
Pollut(6)
Pollut(7)
Pollut(7)
Pollut(8)
Pollut(8)
Pollut(9)
Pollut(9)
Pollut(10)
Pollut(10)
100
6
Bina Nusantara
Inisialisasi Array
Real A(3)
DATA A /3.0,5.5,1.5/
Real A(3)
DO 10 I = 1,3
Read *,A(I)
Real A(3)
10 CONTINUE
DATA A(1),A(2),A(3) /3.0,3.3,1.5/
Real A(3)
Real A(3)
Read *,A
DATA A /3*2.5/
Real A(3)
Read *,(A(I),I=1,3)
7
Bina Nusantara
Array Multidimensi
Adakalanya kita membutuhkan array berdimensi lebih dari
satu.
Jika data yang ingin diproses berbentuk sebuah tabel yang
terdiri dari baris dan kolom, maka dapat digunakan array
berdimensi dua.
Atau data perlu disimpan dalam baris, kolom, dan peringkat,
maka dibutuhkan array berdimensi tiga.
8
Bina Nusantara
Contoh Array Multidimensi
Suhu air dicatat empat kali sehari di 3 lokasi, maka
pencatatan akan berbentuk sebuah tabel sbb.:
Lokasi
Waktu
1
2
3
1
65.5
68.7
62.0
2
68.8
68.9
64.5
3
70.4
69.4
66.3
4
68.5
69.1
65.8
9
Bina Nusantara
Contoh Array Multidimensi Lanj.
Dibutuhkan array berdimensi dua untuk menyimpan datadata tersebut dengan mengalokasikan memori sbb.:
REAL Suhu(4,3)
Untuk mengakses elemen yang ada dibutuhkan dua buah
indeks
Suhu(Waktu,Lokasi)
Elemen pada Suhu(2,3) adalah 64.5, yang berarti suhu air
pada pencatatan kedua di lokasi ketiga
Bagaimana cara memasukkan data ke array tersebut ?
10
Bina Nusantara
Contoh Array Multidimensi Lanj.
Jika Suhu air dicatat empat kali sehari di 3 lokasi dalam satu
minggu, maka pencatatan akan berbentuk tabel-tabel sbb.:
Hari 1
Hari 2
Lokasi
Waktu
Hari 7
Lokasi
1
2
3
1
65.5
68.7
62.0
2
68.8
68.9
3
70.4
4
68.5
Waktu
Lokasi
1
2
3
1
63.7
66.2
64.3
64.5
2
64.0
66.8
69.4
66.3
3
65.4
69.1
65.8
4
65.5
Waktu
1
2
3
1
66.5
69.4
68.4
64.9
2
68.4
71.2
69.3
67.4
66.3
3
70.1
71.9
70.2
67.1
65.8
4
69.5
70.0
69.4
.....
11
Bina Nusantara
Contoh Array Multidimensi Lanj.
Dibutuhkan array berdimensi tiga untuk menyimpan datadata tersebut dengan mengalokasikan memori sbb.:
REAL Suhu(4,3,7)
Untuk mengakses elemen yang ada dibutuhkan tiga buah
indeks yang menunjukkan waktu, lokasi, dan hari
Suhu(Waktu,Lokasi,Hari)
Elemen pada Suhu(2,3,7) adalah 69.3, yang berarti suhu air
pada pencatatan kedua di lokasi ketiga pada hari ketujuh
Bagaimana cara memasukkan data ke array tersebut ?
12
Bina Nusantara