Separate speaker notes to accompany PowerPoint presentation on two dimensional arrays called twodimarray:
This will look at two dimensional arrays in theory. I have not implement the array in this example.
I have a table/array that gives me information on fares based on where I am flying from and where I am flying to. In this particular example, I am assuming that I am flying from either Boston, Providence or New York and that I am flying to Istanbul, Budapest, Frankfort, London or Prague.
We have seen that it is easy to reference tables/arrays with numbers in sequence like 1, 2, 3, 4, 5 so in this example I am going to assign numbers to the cities.
This shows a couple of more examples of flying from a FROMCITY to a TOCITY and determining the fare.
Note that I am using the format fare(row, column). This can be set up differently depending on the language. The format I am using puts the index/subscript/pointer inside parenthesis and separates the row index/subscript/pointer from the column index/subscript/pointer with a comma.
This shows two additional fares using the fare(row,column) methodology. Again remember that fare(row,column) means that I select the row first and then the column. I take the intersection as the fare.
Using fromCity and toCity as the index/subscript/pointer makes the code more versatile. I can now take in input and use the input numbers to move the correct fare or add the correct fare or manipulate the correct fare in anyway I need to in my code.
Another example of taking input and accessing the correct fare by using the input as subscript/index/pointer. The format is fare(fromCity,toCity) which means I go to the row which is represented by fromCity and then to the column which is represented by toCity.
Note that I am not checking for validity. If I do not trust my data, I need to do that. Out of range index/subscript/pointer will make the program crash. I am assuming here that fromCity is 1, 2 or 3 and that toCity is 1, 2, 3, 4 or 5. If the user is inputting the data or if the file I am reading can not be trusted, I need to validate the date. See the logic on the next flowchart.
This shows the logic for checking to make sure that the index/subscript/pointer is in the valid range. If it is not in the valid range, I put out an error message. If they are both valid (a classic AND structure), I get the fare.