Bab 12 Tatasusunan

22
PENGATURCARAAN KOMPUTER BBT 30802 BAB 12 TATASUSUNAN 1

description

Berkaitan dengan susunan di dalam perkebunan

Transcript of Bab 12 Tatasusunan

Page 1: Bab 12 Tatasusunan

PENGATURCARAAN KOMPUTER BBT 30802

BAB 12TATASUSUNAN

1

Page 2: Bab 12 Tatasusunan

PEN

GEN

ALAN

TA

TASU

SUN

AN

2

• Satu struktur data mudah yg digunakan utk Menyimpan sekumpulan data yang terdiri dpd jenis yang sama.

• Menggunakan satu pembolehubah sahaja utk dirujuk.

• Struktur yg terhasil :

• Kumpulan data dirujuk dengan menggunakan nama pembolehubah dan setiap item/elemen dalam kumpulan tersebut dirujuk melalui subskrip indek.

markah[0]markah[1]markah[2]markah[3]

Cth : printf(“markah = %d”, mark[2]);

[0][1][2] [3] markah

50 40 25 30

subskrip

Rujuk item pertamaRujuk item keduaRujuk item ketigaRujuk item keempat

Page 3: Bab 12 Tatasusunan

TATASUSUNAN SATU DIMENSI

3

Page 4: Bab 12 Tatasusunan

MEN

GISY

TIHA

R TA

TASU

SUNA

N• Setiap tatasusunan dan bilangan sel yang

bergabung dengannya perlu disytiharkan.• Bentuk pengisytiharan:

Jenis_data_tatasusunan_nama [ungkapan]• Ungkapan: bilangan tatasusunan• Nama Tatasusunan: nama

tatasusunan yang merupakan pengenalpasti

• Item dalam tatasusunan bermula dengan indeks 0

4

Page 5: Bab 12 Tatasusunan

5

Sintaks:<jenis><Namatatasusunan>[<dimension>]

MEN

GISY

TIHA

R TA

TASU

SUNA

N

Page 6: Bab 12 Tatasusunan

6

MEN

GISY

TIHA

R TA

TASU

SUNA

N• Format :

– Jenis_datanama_tts[saiz elemen];– int mark[4];– Contoh:

• Boleh melakukan umpukan nilai semasa pengisytiharan– Jenis_datanama_tts[saizelemen]= {senarai data};

– Contoh– int mark[4] = {50, 40, 25, 30};– int mark[ ] = {50, 40, 25, 30};

[0] [1] [2] [3]

Page 7: Bab 12 Tatasusunan

• Contoh:– A[3] = 1;– int x = A[3];

7

1

-- -- --

--

--

-- -- 1--A -- -- ---- -- -- 4 5 6 3 0 2 8 9 7 1

A[4] A[5] A[6]A[3]A[0] A[2] A[8]A[9]A[7]A[1]

MEN

GISY

TIHA

R TA

TASU

SUNA

N

Page 8: Bab 12 Tatasusunan

8

MEN

GISY

TIHA

R TA

TASU

SUNA

N

Page 9: Bab 12 Tatasusunan

Gelung untuk akses Jujukan• Penyataan gelung (loop) boleh digunakan dalam

tatasusunan proses jujukan.• Menggunakan kaunter gelung sebagai indeks

tatasusunan, memberikan akses kepada setiap elemen tatasusunan seterusnya.

• Contoh:– int square[SIZE], I;

– Gelung forint square[SIZE], i;for (i=0;i<SIZE; ++i)square [i] = i * i;

0 1 4 9 16 25 36 49 64 81 1009

Array Square

[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [100]

MEN

GISY

TIHA

R TA

TASU

SUNA

N

Page 10: Bab 12 Tatasusunan

Contoh: Nilai Purata/*This program is to read 10 numbers and get an arrays*/

#include<conio.h>#include<stdio.h>

main(){

clrscr();int x[10],total=0,i;

for (i=1;i<=10;i++){printf("Insert number %d >>>",i);scanf("%d",&x[i]);total+=x[i];}printf("TOTAL=%d\n",total);printf("AVERAGE=%d",total/10);getch();return (0);

}

10

Page 11: Bab 12 Tatasusunan

TATASUSUNAN DUA DIMENSI

11

Page 12: Bab 12 Tatasusunan

Contoh Tatasusunan 2-D

int table[5][4];

12

1st Dimension2nd Dimension

AllocateRow:0-4

AllocateColumn:0-3

Page 13: Bab 12 Tatasusunan

• Indeks kanan tatasusunan akan ditingkatkan dahulu sebelum indeks kiri

• Contoh:int x[10][5] /*allocate 50 spaces (row:0-9,and column:0-4*/float a[3][20]/*allocate 60 spaces (row:0-2,and column:0-19*/

• Contoh: Int x[3][4]={1,2,3,4,5,6,7,8,9,10,11,12}

1234

567

89

1011

12

13

X[0][0]

X[0][1]

X[0][2]

X[0][3]

X[1][0]

X[1][1]

X[1][2]

X[1][3]

X[2][0]

X[2][1]

X[2][2]

X[2][3]

MEN

GISY

TIHA

R TA

TASU

SUNA

N

Page 14: Bab 12 Tatasusunan

CO

NTO

H#include<conio.h>#include<stdio.h>

main(){

clrscr();float b[3][4]={1.1,2.2,3.3,4.4,5.5,6.6,7.7,8.8,9.9,10.10,11.1,12.12};int i,j;for (i=0;i<3;i++)

for(j=0;j<4;j++)

printf("[%d][%d]=%.1f\n",i,j,b[i][j]);

getch();return (0);

}

14

Output[0][0]=1.1[0][1]=2.2[0][2]=3.3 and so on….

Page 15: Bab 12 Tatasusunan

REN

TETA

N D

ALA

M

TATA

SUSU

NA

N

15

• Rentetan merupakan kumpulan aksara char• Rentetan dalam C diwakili oleh tatasusunan

aksara• Contoh:

– Char college[11]=“KUITTHO BP”;• Mengistihar rentetan:

– Aksara: char College[8]={‘U’,’T’,’H’,’M’,’’,’B’,’P’,’\

0’};

- Rentetan dengan saiz tatasusunan:char college[11]=“KUITTHO BP”;

- Rentetan tanpa saiz tatasusunan:char college[]=“UTHM BP”;

U T H M B P \0

Page 16: Bab 12 Tatasusunan

#include<conio.h>#include<stdio.h>

void main(){

clrscr();int i=0;char time[7]="Work";while (time[i]!='\0'){

putchar(time[i]);i++;

}getch();

}

16

Output

Work

CO

NTO

H

Page 17: Bab 12 Tatasusunan

LATIHAN

17

Page 18: Bab 12 Tatasusunan

LATI

HAN

11. What is the difference in meaning

between x3 and x[3]?

2. For the declarationchar grades [5];

a) How many memory cells are allocated for data storage?

b) What type of data can be stored there? c) How does one refer to the first array

element?d) To the final array element?

18

Page 19: Bab 12 Tatasusunan

int A[10], i = 7, j = 2, k = 4;A[0] = 1;A[i] = 5;A[j] = A[i] + 3;A[j+1] = A[i] + A[0];A[A[j]] = 12;

• What is the content of array A[ ]?

19LATI

HAN

2

Page 20: Bab 12 Tatasusunan

• What’s wrong?

Q(1)int A[2][3] = {{2,8,1}, {4,3, 9}}; int B[4] = {3, 6, 4, 2, 10, 9};

Q(2)

int A[6]; for (int i=1; i<=5; i++){

printf("Enter number: “); scanf(“%d”,&A);

}

20LATI

HAN

3

Page 21: Bab 12 Tatasusunan

• What will the output after executing the following code?

int data[5] = {2, 8, 3, 1, 7}; int temp; for(int i=0; i<5; i++){

for(int j=0; j<5; j++){ if(data[j] > data[i]){ temp = data[j]; data[j] = data[i]; data[i] = temp;

printf(“%d\n”, data[i]);}

} }

21LATI

HAN

4

Page 22: Bab 12 Tatasusunan

What is the content of the array A[ ] upon completion of the for loop?

int A[9] = {5, 3, 21, 33, 21, 9, 10, 80, 12};

int count, temp; for (count = 1; count <= 8; count++)

{if (A[count-1] > A[count]) {temp = A[count-1]; A[count-1] = A[count]; A[count] = temp; } }

22LATI

HAN

5