Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

asdasdfasdvzcvdfasmdbfbasdb,asndfnk, Study Guides, Projects, Research of Programming Paradigms

asdfasdfbaksjdbfjablewbflabsk;dnfa sdkfbasndbajdsbfklabd

Typology: Study Guides, Projects, Research

2016/2017

Uploaded on 04/27/2017

alfa-kurniawan
alfa-kurniawan 🇮🇩

1 document

1 / 17

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
1
Pertemuan 1
Data komposit Array
Matakuliah : T0026/Struktur Data
Tahun : 2005
Versi : 1/1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff

Partial preview of the text

Download asdasdfasdvzcvdfasmdbfbasdb,asndfnk and more Study Guides, Projects, Research Programming Paradigms in PDF only on Docsity!

Pertemuan 1

Data komposit Array Matakuliah : T0026/Struktur Data Tahun : 2005 Versi : 1/

Learning Outcomes

Pada akhir pertemuan ini, diharapkan mahasiswa

akan mampu :

  • (^) Mahasiswa dapat menghasilkan program

modular yang menggunakan data

komposit array dua dimensi

Definisi Array

  • (^) Elemen array : homogen
  • (^) Tiap elemen : pasangan indeks dan nilai
  • (^) Hubungan antar elemen : linear
  • (^) Akses elemen array : random melalui indeks elemen
  • (^) Penempatan elemen dalam memory : berurutan, secara

logikal dan fisikal

  • (^) Jumlah indeks menentukan dimensi array

Suhu [ i ] → 1 dimensi

Suhu [ i ] [ j ] → 2 dimensi

Contoh Array 1 Dimensi

int suhu [4];

Jika base address, maka

Address suhu [i] =  + i * sizeof (int)

Array 2 dimensi

Representasi array multidimensi :

1. RMO : Row Major Order

2. CMO : Column Major Order

Selanjutnya akan dibahas RMO

Array 2-d (seperti tabel, terdiri dari baris dan

kolom) dianggap sebagai array 1-d, dimana

satu elemen array 1-d terdiri dari sejumlah nilai

(kolom)

Contoh array 2-dimensi

Jika i, j,  adalah indeks row, column, dan base

address, maka

Address a[ i ][0] =  + i * { 30 sizeof (int) }

Address a[ i ][ j ] = address a[ i ][0] + j * sizeof (int)

=  + { i * 30 + j } * sizeof (int)

Jumlah Elemen Array

Array n-dimensi

a [u 0 ] [u 1 ] ... [un-1]

suhu [10] → u 0 =10 → Jumlah elemen = 10

suhu [30][10] → u 0 =30 u 1 =10 → Jumlah elemen = 300

suhu [365][30][10] → u 0 =365 u 1 =30 u 2 =10 → Jumlah

elemen = 109500

n i

Jumlahelemen u

Operasi Array

1. Create int a[10]

2. Retrieve x = a [i]

3. Store a[i] = y

Akses Elemen Array (1)

void isi_array (int b[ ], int n) { int i; for (i=0; i<n; i++) b [i] = i10; } void main( ) { int bil [7], i; isi_array (bil, 7 ); ubah_array (bil, 7); }*

void ubah_array (int *b, int n)

int i;

for (i=0; i<n; i++)

*(b+i) *= 2;

Akses Elemen Array (2)

Akses Array 2-D

**void cetak_array (int b[ ][N]) void display (int **data) { …data[i][j]… } void main() { int *data; data = new int [m]; // SET UP THE ROWS for (j = 0; j < m; j++) data[j] = new int [n]; // SET UP THE COLUMN …data[i][j] …

Array sebagai parameter fungsi

 (^) Contoh potongan program array:  (^)  (^) char LeftMost(char S[])  (^) { return(S[0]); };  (^) char RightMost(char S[])  (^) { return(S[Len(S)-1]); };  (^) void main()  (^) { char MyString[MaxLen);  (^)  (^) printf(“Leftmost elemen :%c”,LeftMost(MyString));  (^) printf(“Rightmost elemen :%c”,RightMost(MyString));  (^)  (^) };