0% found this document useful (0 votes)
22 views

18 Array

Arrays allow storing multiple values of the same type together. An array is declared with a type and size, and individual elements are accessed via indexes. Common array operations include initialization, accessing/modifying elements, sorting, summing elements, and finding the largest/smallest values. Loops are used to iterate through arrays to perform these operations.

Uploaded by

Sikander Ghumman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
22 views

18 Array

Arrays allow storing multiple values of the same type together. An array is declared with a type and size, and individual elements are accessed via indexes. Common array operations include initialization, accessing/modifying elements, sorting, summing elements, and finding the largest/smallest values. Loops are used to iterate through arrays to perform these operations.

Uploaded by

Sikander Ghumman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

Programming

Attique Ur Rehman

Arrays
Arrays
An array is a collection of data elements that are of
the same type (e.g., a collection of integers, collection
of characters, collection of doubles).
Arrays
1-dimensional array.

3-dimensional array (3rd dimension is the day).


Oct 14
Oct 15
Oct 16
Array Applications

Given a list of test scores, determine the


maximum and minimum scores.
Read in a list of student names and rearrange
them in alphabetical order (sorting).
Given the height measurements of students in
a class, output the names of those students
who are taller than average.
Array Declaration
Syntax:
<type> <arrayName>[<array_size>]
Ex. int Ar[10];
The array elements are all values of the type <type>.
The size of the array is indicated by <array_size>, the
number of elements in the array.
<array_size> must be an int constant or a constant
expression. Note that an array can have multiple
dimensions.
Array Declaration
// array of 10 uninitialized ints
int Ar[10];

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

0 1 2 3 4 5
Subscripting
Declare an array of 10 integers:
int Ar[10]; // array of 10 ints
To access an individual element we must apply a
subscript to array named Ar.
A subscript is a bracketed expression.
– The expression in the brackets is known as the index.
First element of array has index 0.
Ar[0]
Second element of array has index 1, and so on.
Ar[1], Ar[2], Ar[3],…
Last element has an index one less than the size of the array.
Ar[9]
Incorrect indexing is a common error.
Subscripting
// array of 10 uninitialized ints
int Ar[10];
--
Ar[3] = 1;
int x = Ar[3]; 1 --

-- -- --

0 1 2 3 4 5 6 7 8 9
Ar -- -- -- 1 -- -- -- -- -- --
Ar[0] Ar[1] Ar[2] Ar[3] Ar[4] Ar[5] Ar[6] Ar[7] Ar[8]Ar[9]
Subscripting Example 1
//For loop to fill & print a 10-int array
#include <iostream>
using namespace std;
int main ( ) {
int index, ar[10]; // array for 10 integers
// Read in 10 elements.
cout << "Enter 10 integers: ";
for(index = 0; index < 10; index ++)
cin >> ar[index];
cout << endl;
cout << "The integers are ";
for(index = 0; index < 10; index ++)
cout << ar[index] << " ";
cout << endl;
return 0;
}
Sorting with Arrays: Ex. 2
// Compare and sort three integers
void swap (int&, int&);
int main ( ) {
int ar[3]; // input integers
// Read in three elements.
cout << "Enter three integers: ";
cin >> ar[0] >> ar[1] >> ar[2];
if (ar[0] > ar[1]) swap (ar[0], ar[1]);
if (ar[1] > ar[2]) swap (ar[1], ar[2]);
if (ar[0] > ar[1]) swap (ar[0], ar[1]);
cout << "The sorted integers are " << ar[0]
<<", " << ar[1] << ", " << ar[2]
<< endl;
return 0;
}
Swapping Function: Ex. 2
// Function for swapping two integers
void swap (int& first, int& second) {
int temp;
temp = first;
first = second;
second = temp;
}
Array Element Manipulation Ex. 3

Consider
int Ar[10], i = 7, j = 2, k = 4;
Ar[0] = 1;
Ar[i] = 5;
Ar[j] = Ar[i] + 3;
Ar[j+1] = Ar[i] + Ar[0];
Ar[Ar[j]] = 12;
cin >> Ar[k]; // where the next input value is 3

0 1 2 3 4 5 6 7 8 9
Ar 1 -- 8 6 3 -- -- 5 12 --
Ar[0] Ar[1] Ar[2] Ar[3] Ar[4] Ar[5] Ar[6] Ar[7] Ar[8]Ar[9]
Array Initialization Ex. 4
int Ar[10] = {9, 8, 7, 6, 5, 4, 3, 2, 1, 0};
0 1 2 3 4 5 6 7 8 9
Ar 9 8 7 6 5 4 3 2 1 0

Ar[3] = -1;

6 -1

0 1 2 3 4 5 6 7 8 9
Ar 9 8 7 -1 5 4 3 2 1 0
Initializing arrays with random
values
The following loop initializes the array myList with random
values between 0 and 99:

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


{
myList[i] = rand() % 100;
}
Program with Arrays
int main()
{
int values[5]= {11,1,3,6,10};
for (int i = 1; i < 5; i++) 0 11
{ 1 1
values[i] = values[i] + values[i-1]; 3
2
}
3 6
values[0] = values[1] + values[4];
10
} 4
Printing arrays
To print an array, you have to print each element in the array
using a loop like the following:

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


{
cout << myList[i] << " ";
}
Copying Arrays
Can you copy array using a syntax like this?
list = myList;

This is not allowed in C++. You have to copy individual


elements from one array to the other as follows:

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


{
list[i] = myList[i];
}
Summing All Elements
Use a variable named total to store the sum. Initially total is
0. Add each element in the array to total using a loop like
this:

double total = 0;
for (int i = 0; i < ARRAY_SIZE; i++)
{
total += myList[i];
}
Finding the Largest Element

Use a variable named max to store the largest element.


Initially max is myList[0]. To find the largest element in the
array myList, compare each element in myList with max,
update max if the element is greater than max.

double max = myList[0];


for (int i = 1; i < ARRAY_SIZE; i++)
{
if (myList[i] > max) max = myList[i];
}
Finding the smallest index of the
largest element
double max = myList[0];
int indexOfMax = 0;
for (int i = 1; i < ARRAY_SIZE; i++)
{
if (myList[i] > max)
{
max = myList[i];
indexOfMax = i;
}
}

You might also like