Download presentation
Presentation is loading. Please wait.
Published byAmy Franklin Modified over 9 years ago
1
CSC 107 – Programming For Science
2
Today’s Goal
3
Variables Variable Variable name location to store data Only for humans; 0 x 7E8A2410 harder to remember Assignments update memory location with new value Memory location updated by assignment ONLY When variable is used in program… …uses current value at that memory location Variable can store only one value Often want multiple values, like adjusting for interest
4
Getting an “A”
5
Adjusting For Interest First call, computed result for every year Then all but last year computed in second call Third time we called function, computed all but last 3 … and so on… Only adjusted for 1 year last time we called function Interest rate, amount, and results were constant Unless save in variables, we have to recompute Using variables required knowing years when coding
6
Could Have Spent Time
7
Can Make Stronger, Bigger Arrays Arrays are variables that can hold many items Creates range of locations in which to store data Locations are numbered sequentially from 0 entries Array entries like variables in their own right To be able to use them, must declare array (& entries) Value unknown until assigned in the program But not a true variable, entries depend on array Access only via array using the entry's index
8
Declaring Array Variables Like all variables, must declare before use size Type, name, & size needed for array declaration Still variables, so names follow usual rules Variable is array of the type, so use any legal type Each of the array's entries hold value of that type Size must be integer since ½ a value hard to use
9
Declaring Array Variables Like all variables, must declare before use size Type, name, & size needed for array declaration Still variables, so names follow usual rules Variable is array of the type, so use any legal type Each of the array's entries hold value of that type Size must be integer since ½ a value hard to use
10
Declaring Array Size
11
Initializing an Array
12
Legal Array Entries Access array's entries indexed from 0 to size-1 0, 1, 2, 3, 4 legal if size of 5 used to declare array Array created with size of 8: 0, 1, 2, 3, 4, 5, 6, 7 legal 0 only legal index if size declared as 1
13
Legal Array Entries
14
Guns (& C++) Don't Kill C++ make arrays easy, but mistakes easy also Code can access any index within an array int No problems compiling, as long as index an int Includes ridiculous indices like -1 or 1029374729192 To find size, could try using sizeof( array variable ) Entry outside array bounds accessed by program Program may crash with “Segmentation Fault” Other variable's value used and updated Program may be able to complete normally
15
Using An Array Within an array, each entry behaves like variable But need array variable to access the entry To use or assign entry, specify index inside brackets Example code snippet computing powers of 2: long lA[10]; lA[0] = 1; for (long i=0; i < sizeof(lA)/sizeof(long);i++){ lA[i] = lA[i-1] * 2; cout << lA[i] << endl; }
16
Using An Array Within an array, each entry behaves like variable But need array variable to access the entry To use or assign entry, specify index inside brackets Example code snippet computing powers of 2: long lA[10]; lA[0] = 1; for (long i=0; i < sizeof(lA)/sizeof(long);i++){ lA[i] = lA[i-1] * 2; cout << lA[i] << endl; }
17
Using An Array Within an array, each entry behaves like variable But need array variable to access the entry To use or assign entry, specify index inside brackets Example code snippet computing powers of 2: long lA[10]; lA[0] = 1; for (int i=0; i < sizeof(lA)/sizeof(long);i++){ lA[i] = lA[i-1] * 2; cout << lA[i] << endl; }
18
Using An Array Within an array, each entry behaves like variable But need array variable to access the entry To use or assign entry, specify index inside brackets Example code snippet computing powers of 2: const int BORED_NOW = 10; long lA[BORED_NOW]; lA[0] = 1; for (int i=0; i < BORED_NOW;i++){ lA[i] = lA[i-1] * 2; cout << lA[i] << endl; }
19
Let's Trace This Code int main() { const int BORED_NOW = 4; long loserArray[BORED_NOW]; loserArray[0] = 1; for (int i=1; i < BORED_NOW; i++){ loserArray[i] = loserArray[i-1] * 2; cout << loserArray[i] << endl; } cout << "Sorry its stupid!" << endl; return 0; }
20
Your Turn Get into your groups and try this assignment
21
For Next Lecture Read more about arrays in Section 10.5 How can we pass arrays as parameters? Can values be changed in the array no matter what? Why couldn't they be consistent about params? Weekly Assignment #8 out & due Tuesday Avoid the rush by start working on it now Programming Assignment #2 now on Angel Could start working on this now – know all you need
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.