Upload
rohassanie
View
846
Download
0
Embed Size (px)
DESCRIPTION
F2037 - PROGRAMMING FUNDAMENTAL WITH C++Unit 4.1 - Understand the use of array
INDEX
Objective Introduction to Array One dimensional array Two dimensional array
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
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.
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
Two types of arrays
One-dimensional array
Two-dimensional array
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];
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’};
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
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;
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
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.
EXAMPLE
Program Student_Marks.cpp will illustrate how to declare an array, initialize and access its elements.
#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
EXAMPLE
Program Onedim_Int_Array.cpp illustrates how to initialize integer array and display its contents.
#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";}
}
EXAMPLE
Program Onedim_Char_Array_Name.cpp illustrates how to initialize a character array and display its contents.
#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];}
}
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];
}
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]);
}
EXAMPLE
Program One_Int_Array.cpp illustrates how to accept five marks from the user and prints the values on the screen.
#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;
}
}
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.
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;
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]
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];
}
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
#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";
} }
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.
PRESENTATION OF TWO-DIMENSIONAL ARRAY
Assume that there are 5 students in a class and each of them study three different subjects, for example Mathematics, Physics and Chemistry.
Example
int marks_table [5][3];
Syntax
<Data type> <Variable name> [Row][Column];
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
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
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];
#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;}
}
OUTPUT
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];
}
#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
}
}
#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;
}
}
OUTPUT
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]?
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];
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];
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).