fp201 unit4

47
F2037 - PROGRAMMING FUNDAMENTAL WITH C++ Unit 4.1 - Understand the use of array

Upload: rohassanie

Post on 07-Nov-2014

854 views

Category:

Documents


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Fp201 unit4

F2037 - PROGRAMMING FUNDAMENTAL WITH C++Unit 4.1 - Understand the use of array

Page 2: Fp201 unit4

INDEX

Objective Introduction to Array One dimensional array Two dimensional array

Page 3: Fp201 unit4

OBJECTIVES

At the end of this module, students should be able to: Declare and use an array Use the array statement in C++ program Accessing element in an array

Page 4: Fp201 unit4

ARRAY DEFINITION

Array is a collection of data elements of the same type that are referenced by a common name.

Used to process a collection of data all of which is of the same type, such as list of name, list of temperature.

Page 5: Fp201 unit4

ARRAY DEFINITION

Array’s element consist of memory allocation and identified by index.

Array size : 9

0 1 2 3 4 5 6 7 8

1st Index Indexs

Page 6: Fp201 unit4

Two types of arrays

One-dimensional array

Two-dimensional array

Page 7: Fp201 unit4

DECLARING ONE DIMENSIONAL ARRAY

Will have a single row and can have any number of columns.

Will have only one subscript. Subscript refers to the dimension of the array.

Array declaration of 10 alphabet type array_name[size] Eg : char huruf[10];

Page 8: Fp201 unit4

INITIALIZING ONE DIMENSIONAL ARRAY

Initialization is the process of assigning values to the array you have created.

To assign initial values to each one of array’s elements we must enclose the values in curly braces ({ }) and separate them with comma (,).  Eg : char huruf[5] = {‘a’, ‘b’, ‘c’, ‘d’, ‘e’};

Page 9: Fp201 unit4

INITIALIZING ONE DIMENSIONAL ARRAY

Eg: int nombor[3] = {3, 24, 31};

nombor[0];//3nombor[1];//24nombor[2];//31nombor[0+1];//nombor[1];//24nombor[3];

3 24 31nombor

0 1 2first index

Page 10: Fp201 unit4

ACCESSING ELEMENT OF ONE DIMENSIONAL ARRAY Element is accessed by its index Array index refers to the location of the values in

an array. The first element will always have the array

index as 0.

Syntax :

<Variable name>[Array index] = Value;

For example:

marks[0]=95;

marks[1]=85;

marks[2]=75;

Page 11: Fp201 unit4

ACCESSING ELEMENT OF ONE DIMENSIONAL ARRAY Eg:

int my_array[5] = {11, 22, 33, 44, 55};

to store the value 75 in the third element of my_array, we could write the following statement:my_array[2] = 75;

to pass the value in 4th element of my_array and store the value into temporary variable, temp_value:

int temp_value = my_array[3]; // also equals to 44

Page 12: Fp201 unit4

ACCESSING ELEMENT OF ONE DIMENSIONAL ARRAY if the name of an array is name, then name[0]

is the name of the element that is in position 0, name[1] is the name of the element that is in position 1, etc.

in general, the nth element is in position n-1. So if the array has n elements, their names are name[0], name[1], name[2], …, name[n-1].

it is important to be able to clearly distinguish between the two uses that brackets [ ] have related to arrays:

int name[5]; // declaration of a new array name[2] = 75; // access to an element of the array.

Page 13: Fp201 unit4

EXAMPLE

Program Student_Marks.cpp will illustrate how to declare an array, initialize and access its elements.

Page 14: Fp201 unit4

#include<iostream>using namespace std;void main(){

int marks[]={95,85,75,80,65};cout<<"marks[0] : "<<marks[0];cout<<"\nmarks[1] : "<<marks[1];cout<<"\nmarks[2] : "<<marks[2];cout<<"\nmarks[3] : "<<marks[3];cout<<"\nmarks[4] : "<<marks[4];

}

marks[0] : 95 marks[1] : 85 marks[2] : 75 marks[3] : 80 marks[4] : 65

Page 15: Fp201 unit4

EXAMPLE

Program Onedim_Int_Array.cpp illustrates how to initialize integer array and display its contents.

Page 16: Fp201 unit4

#include<iostream>using namespace std;void main(){

int y[4]={8,7,6,4};for(int i=0;i<4;i++){

cout<<y[i]<<"\n";}

}

Page 17: Fp201 unit4

EXAMPLE

Program Onedim_Char_Array_Name.cpp illustrates how to initialize a character array and display its contents.

Page 18: Fp201 unit4

#include<iostream>using namespace std;void main(){

char stud_name[]={‘M',‘A',‘F','I','A'};for(int i=0;i<=4;i++){

cout<<stud_name[i];}

}

Page 19: Fp201 unit4

ENTERING DATA INTO AN ARRAY When more number of values are to be

stored in an array, a for loop can be used.

The sample code shows how to use a for loop in an array.

for(int i=0;i<5;i++)

{

cout<<“Enter the marks: ";

cin>>marks[i];

}

Page 20: Fp201 unit4

READING DATA FROM AN ARRAY You can use a for loop with a single cout

statement to print the values from an array.

for (int i=0;i<5;i++)

{

cout<<"Marks : "+marks[i]);

}

Page 21: Fp201 unit4

EXAMPLE

Program One_Int_Array.cpp illustrates how to accept five marks from the user and prints the values on the screen.

Page 22: Fp201 unit4

#include <iostream>

using namespace std;

void main()

{

int marks[5];

//Accepting the marks

for(int i=0;i<5;i++){

cout<<"Enter mark :";

cin>>marks[i];

}

cout<<"\nThe marks you have enter is"<<endl;

//Displaying the array

for(int i=0;i<5;i++){

cout<<"Marks:"<<marks[i]<<endl;

}

}

Page 23: Fp201 unit4
Page 24: Fp201 unit4

IN CLASS EXERCISE 4.1

Declare an array alpha of 15 elements of type int.

Access the value of tenth element of array alpha.

Set the value of fifth element of array alpha to 35.

Set the value of ninth element of array alpha to the sum of fifth and sixth element of array alpha.

Page 25: Fp201 unit4

Declare an array alpha of 15 elements of type int.int alpha [15];

Access the value of tenth element of array alpha.alpha [9];

Set the value of fifth element of array alpha to 35.alpha [4] = 35;

Page 26: Fp201 unit4

Set the value of ninth element of array alpha to the sum of fifth and sixth element of array alpha.alpha [8] = alpha [4] + alpha [5]

Page 27: Fp201 unit4

What is the output

#include<iostream>using namespace std;void main(){

double num []= {2.0, 4.0, 6.5, 8.7};cout<<num[1+2];

}

Page 28: Fp201 unit4

How to fill in value into array

#include <iostream>using namespace std; void main() { for(int i = 0; i < 10; ++i) { cout << i+1 << “\n"; } }

Output://program

output 1 2 3 4 5 6 7 8 9 10

Page 29: Fp201 unit4

#include <iostream>using namespace std;void main() {

int num[]={1,2,3,4,5,6,7,8,9,10};for(int i = 0; i < 10; ++i)

{ cout << num[i]<< "\n";

} }

Page 30: Fp201 unit4

TWO-DIMENSIONAL ARRAY

Two-dimensional arrays can be described as "arrays of arrays".

For example, a two-dimensional array can be imagined as a two-dimensional table made of elements of a same uniform data type.

Page 31: Fp201 unit4

PRESENTATION OF TWO-DIMENSIONAL ARRAY

Page 32: Fp201 unit4

Assume that there are 5 students in a class and each of them study three different subjects, for example Mathematics, Physics and Chemistry.

Page 33: Fp201 unit4

Example

int marks_table [5][3];

 

Syntax

<Data type> <Variable name> [Row][Column];

Page 34: Fp201 unit4

TWO-DIMENSIONAL ARRAY

Table jimmy represents a bidimensional array of 3 by 5 elements of type int.

The way to declare this array in C++ would be:int jimmy [3][5];

rowcolumn

Page 35: Fp201 unit4

INITIALIZING TWO-DIMENSIONAL ARRAY

Eg: int array1[ 2 ][ 3 ] = { { 1, 2, 3 }, { 4, 5, 6 } };

Output:1 2 34 5 6

int array2[ 2 ][ 3 ] = { 1, 2, 3, 4, 5 }; Output:

1 2 3 4 5 0

int array3[ 2 ][ 3 ] = { { 1, 2 }, { 4 } }; Output:

1 2 0 4 0 0

Page 36: Fp201 unit4

ACCESSING ELEMENT IN TWO-DIMENSIONAL ARRAY

Element is accessed by the index of its row and column.

Eg: To access the element in the 2nd row and at the

4th column of this two-dimentional array, we can used the following code:

jimmy[1][3];

Page 37: Fp201 unit4

#include<iostream>using namespace std;void main(){

int array2[ 2 ][ 3 ] = {{ 1, 2, 3} ,{4, 5,6 }};

for(int index1=0;index1<2;index1++){

for(int index2=0;index2<3;index2++)cout<<array2[index1][index2] << " ";

cout<<endl;}

}

Page 38: Fp201 unit4

OUTPUT

Page 39: Fp201 unit4

WHAT IS OUTPUT?

#include<iostream>using namespace std;void main(){

int marks_table[5][3] = {{83,99,74},{88,90,72},

{89,88,82},{98,93,75},

{78,60,65}};cout<<marks_table[1][2];

}

Page 40: Fp201 unit4
Page 41: Fp201 unit4

#include<iostream>

#include<string>

using namespace std;

void main()

{

string Data [2][3];

//For first fow

Data[0][0] = "Lisa"; //lastname

Data[0][1] = "Sulaiman"; //firstname

Data[0][2] = "Kedah"; //location

//Second row

Data[1][0] = "Ali"; //lastname

Data[1][1] = "Muhammad"; //firstname

Data[1][2] = "Johor"; //location

cout<<"Lastname\tFirstname\tLocation\n";

for(int i=0;i<2;i++){

for(int j=0;j<3;j++){

cout<<Data[i][j]<<"\t\t";

}

cout<<"\n";//move to new line

}

}

Page 42: Fp201 unit4

#include <iostream>

using namespace std;

void main()

{

int array2[ 23 ][ 4 ];

//Accepting the marks

for (int row=0; row<2; row++) {

for(int col=0; col<3; col++){

cout<<"Enter mark ["<<(row)<<"][" <<col <<"]: ";

cin>>array2[row][col];

}

cout<<endl;

}

//display

for(int row=0; row<2; row++){

for(int col=0; col<3; col++)

cout<<array2[row][col] << " ";

cout<<endl;

}

}

Page 43: Fp201 unit4

OUTPUT

Page 44: Fp201 unit4

IN CLASS EXERCISE 4.2

Declare an array beta of 10 rows and 20 columns of type int.

Examine the following:

double values[ ] [ ] = {

{1.2, 9.0, 3.2},

{9.2, 0.5, 1.5},

{7.3, 7.9, 4.8} } ;

What is the value of values[2][1]?

Page 45: Fp201 unit4

Which of the following statements constructs an array with 5 rows of 7 columns?

long stuff[5][7];

long[5][7];

long stuff[7][5];

long [7][5];

Page 46: Fp201 unit4

Declare an array beta of 10 rows and 20 columns of type int.int beta [10][20]

o Value of values[2][1]? 7.9

o long stuff[5][7];

Page 47: Fp201 unit4

SUMMARY

An array is a structured data type with a fixed number of elements.

Every element of an array is of the same type and can be accessed by their index.

Array index started with 0. Array can be initialized during declaration. A one-dimensional array has one subscript. In two-dimensional array, elements are

arranged in table form. To access element from two-dimensional

array, pair of indices is needed (index for row and index for column).