{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}

# CS201-13 - Introduction to Programming Introduction to...

This preview shows page 1. Sign up to view the full content.

This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: Introduction to Programming Introduction to Programming Lecture 13 Today’s Lecture Today’s Lecture Manipulation of Two dimensional arrays Analyzing and solving a real world problem Array Array Manipulation Example 1 Example 1 Input Row 1 Row 2 Row 3 1 4 7 2 5 8 3 6 9 Memory Row 3 Row 2 Row 1 7 4 1 8 5 2 9 6 3 Output Addressing Array Elements Addressing Array Elements a [rowIndex ] [ columnIndex ] Example 1 Example 1 int row ; int col ; const maxRows = 3 ; const maxCols = 3 ; int a [ maxRows ] [ maxCols ] ; Example 1 Example 1 for ( row = 0 ; row < maxRows ; row ++ ) { for ( col = 0 ; col < maxCols ; col ++ ) { cout << “Please enter value of element number ”<<row<< “,” << col ; cin >> a [ row ] [ col ] ; } } Example 2 Example 2 maxRows = 3 ; maxCols = 3 ; Index of Start [0] [1] Index of Last Row = maxRows - 1 [2] 1 2 3 Example 2 Example 2 for ( row = maxRows ­ 1 ; row >= 0 ; row ­­ ) { Decrement Operator for ( col = 0 ; col < maxCols ; col ++ ) … } Row 1 Row 2 Row 3 1 4 7 2 5 8 3 6 9 Row 3 Row 2 Row 1 7 4 1 8 5 2 9 6 3 Example 2: Formatted Example 2: Formatted Output cout << “The original matrix is” ; for ( row = 0 ; row < maxRows ; row ++ ) { for ( col = 0 ; col < maxCols ; col ++ ) { cout << a [ row ] [ col ] ; << ‘\t‘ ; } 15 42 } Example 2: Formatted Example 2: Formatted Output for ( row = 0 ; row < maxRows ; row ++ ) { for ( col = 0 ; col < maxCols ; col ++ ) { cout << a [ row ] [ col ] << ‘\t’ ; } cout << ‘ \n ’ ; } 15 42 26 7 Enter the values in a matrix and print it in reverse Column order [0] [1] [2] [2] [1] [0] Exercise Exercise 3 6 9 3 6 9 2 5 8 1 4 7 1 4 7 2 5 8 Transpose of a Matrix Transpose of a Matrix 1 4 7 2 5 8 3 6 9 Square Matrix Square Matrix Number of rows are equal to number of columns arraySize = rows cols Square Matrix Square Matrix a ij = a ji i = rows j = columns Square Matrix Square Matrix int a [ row ] [ col ] ; int arraySize ; for ( row = 0 ; row < arraySize ; row ++ ) { for ( col = 0 ; col < arraySize ; col ++ ) { //Swap values } } Swap Mechanisms Swap Mechanisms temp = a [ row ] [ col ] ; a [ row ] [ col ] = a [ col ] [ row ] ; a [ col ] [ row ] = temp ; Practical Problem Practical Problem Problem statement Given tax brackets and given employee gross salaries , determine those employees who actually get less take home salary than others with lower initial income Rule for tax deduction Rule for tax deduction 0 –> 5,000 5001 – >10,000 10,001 – >20,000 20,001 and more No tax 5% Income Tax 10% Income Tax 15% Income tax Example Example Net salary = Rs 10,000 Tax = 5% Amount Deducted = 5% of 10,000 = 500 Net amount after deduction = 10,000 ­ 500 = 9,500 Net salary = Rs 10,001 Tax = 10% Amount Deducted = 10% of 10,001 = 1,000.1 Net amount after deduction = 10,001 ­ 1,000.1 = 9,000.9 Storage Requirement Storage Requirement One­ dim arrays of integer lucky = 0 lucky = 1 0 0 0 0 0 0 0 Storage of salary Storage of salary No of Emp. Grow Salary Net Salary After Deduction 1 2 3 4 5 6 7 8 9 5,000 10,000 5,000 9,500 Interface Requirements Interface Requirements Distribution of the Distribution of the Program Input Salary calculation Identification of the unlucky individuals Output Detail Design Detail Design Functions in the program getInput calculateSalary locateUnluckyIndividual displayOutput #include<iostream.h> Code Code void getinput ( int [ ] [ 2 ] , int ) ; main ( ) { const int arraySize = 100 ; int sal [ arraySize ] [ 2 ] ; int lucky [ arraySize ] = { 0 } ; int numEmps ; cout << “Enter the number of employess “ ; cin >> numEmps ; getInput ( sal , numEmps ) ; } Code Code getInput ( int sal [ ] [2] , int numEmps ) { for ( i = 0 ; i < numEmps ; i ++ ) cin >> sal [ i ] [ 0 ] ; } [email protected] [email protected] Exercise Exercise Suppose you are given a square matrix of size n x n , write a program to determine if this is an identity matrix ...
View Full Document

{[ snackBarMessage ]}