Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lecture 21 Using & Managing Data: Spreadsheets (S&G, §§11.1–11.2)

Similar presentations


Presentation on theme: "Lecture 21 Using & Managing Data: Spreadsheets (S&G, §§11.1–11.2)"— Presentation transcript:

1 Lecture 21 Using & Managing Data: Spreadsheets (S&G, §§11.1–11.2)
9/22/2018 6:47 AM Lecture 21 Using & Managing Data: Spreadsheets (S&G, §§11.1–11.2) 9/22/2018 CS Lecture 21 CS 100

2 Some Important Applications of Computers
Spreadsheets Databases Symbolic & numeric computation Networks Artificial Intelligence 9/22/2018 CS Lecture 21

3 Relation to Algorithms
Algorithmic problem solving is used in these applications Algorithmic problem solving uses these applications 9/22/2018 CS Lecture 21

4 Spreadsheet Visual system for representing and manipulating tabular data Often used for: budgets & other financial data grades Useful for keeping dependant data consistent Examples: Visicalc, Excel, Lotus 1-2-3 9/22/2018 CS Lecture 21

5 Example Spreadsheet Column Cells Row Cursor 9/22/2018
CS Lecture 21

6 Cells Each cell has a “name” Cells can contain character data
e.g. “D2” is the cell in column D and row 2 Cells can contain character data e.g., names, column headings Cells can contain numeric data in various formats e.g., integer, real, currency, date, time Cells can contain formulas e.g., “D2*E2” 9/22/2018 CS Lecture 21

7 Relative & Fixed Cell References
A name of the form “D2” is a relative reference to the cell in column D and row 2 A name of the form “$D$2” is a fixed reference to the cell in column D and row 2 When a formula is copied into another cell: the fixed references refer to the same cells as they originally did the relative references refer to cells in the same relative positions 9/22/2018 CS Lecture 21

8 Example Suppose in G2 we have the formula: D2 * (1 + $C$8 / 100) * E2
When we copy it to G3 it will be: D3 * (1 + $C$8 / 100) * E3 When we copy it to G4 it will be: D4 * (1 + $C$8 / 100) * E4 And so forth 9/22/2018 CS Lecture 21

9 Run Excel Spreadsheet Example
Lecture 21 9/22/2018 6:47 AM Run Excel Spreadsheet Example Demonstrate: Putting formula “=D2*E2” in F2 Copying into cells below (with copy/paste) Show how auto update Show Pie and Bar charts (using press and hold to preview) Select columns C & D and show scatter chart of age vs. pay rate Insert Totals for Pay column (note the variety of available functions) Show how auto updates Add “Base % Increase” in B8 and 2 in C8 In col. G put “New Pay” and formula “D2*(1+$C$8/100)*E2” (may be easier to see formula in Formula Toolbar) (note dif between relative and fixed cell references) Copy down to rest & fill in total Apply currency formatting (Format/Cell) Show how can change percent from 2 to 3 Insert new col. before G for Merit Change format to General; show adjusting col. widths Fill in new formula for NewPay col. Show changing Base % and Merit % Select the Pay to New Pay block and show a bar chart showing old and new Pay Show Goal Seek (under Tools) by asking it to set H9 to 12,000 by varying C8 9/22/2018 CS Lecture 21 CS 100

10 Beginning Spreadsheet
9/22/2018 CS Lecture 21

11 Formula Entered in F2 9/22/2018 CS Lecture 21

12 Result of Formula in F2 9/22/2018 CS Lecture 21

13 Formula Copied into Rest of Column
9/22/2018 CS Lecture 21

14 Result of Formulas in Column F
9/22/2018 CS Lecture 21

15 Example Pie Chart of Column F
9/22/2018 CS Lecture 21

16 Scatter Chart of Columns D vs. C
9/22/2018 CS Lecture 21

17 Compute Sum of Column F 9/22/2018 CS Lecture 21

18 Resulting Sum 9/22/2018 CS Lecture 21

19 Formula for Projected Base Pay Increase
9/22/2018 CS Lecture 21

20 Resulting New Pay 9/22/2018 CS Lecture 21

21 Formula Relativized to Row 3
9/22/2018 CS Lecture 21

22 Formula Relativized to Row 4
9/22/2018 CS Lecture 21

23 Change Format of Column G
9/22/2018 CS Lecture 21

24 Resulting Reformated Column G
9/22/2018 CS Lecture 21

25 Insert Column for Merit Raises
9/22/2018 CS Lecture 21

26 New Formula to Include Merit Raises
9/22/2018 CS Lecture 21

27 Resulting Projected New Total
9/22/2018 CS Lecture 21

28 Bar Chart of Old and New Pay
9/22/2018 CS Lecture 21

29 Goal Seeking: Adjust Base Rate so Total = $12,000
9/22/2018 CS Lecture 21

30 Calculated Base Rate to Meet Goal
9/22/2018 CS Lecture 21

31 Computer Science Issues
9/22/2018 CS Lecture 21

32 Update Strategies Reevaluate every cell
Reevaluate only those cells containing formulas works on small spreadsheets Reevaluate only those cells that depend on the changed cell problem: indirect dependencies (ripple effect) 9/22/2018 CS Lecture 21

33 Indirect Dependency 9/22/2018 CS Lecture 21

34 Result 9/22/2018 CS Lecture 21

35 Problem of Indirect Dependencies
Suppose change D2 Could look for all cells with a formula involving D2, and reevaluate those But suppose F9 depends on F2, and F2 depends on D2 Bad solution: check all cells & update those directly dependant on D2 keep a list of them check all cells & update those directly dependent on those in list keep a list of these, and return to (3) continue until there are no changes 9/22/2018 CS Lecture 21

36 Better Solution Keep with each cell a list of all other cells directly dependant on it Update this list whenever a formula is changed Whenever a cell’s value is changed: reevaluate all the cells that depend directly on it reevaluate all the cells that depend directly on those cells and so forth 9/22/2018 CS Lecture 21

37 Event-Driven Programming
Lecture 21 9/22/2018 6:47 AM Event-Driven Programming Each cell contains either: data or a formula, which is a little program these formulas are interpreted directly (not compiled into machine code) Whenever a cell is modified: it creates an event which may trigger other events must end (no circular dependencies) There is no iteration except that provided through the built-in functions & tools May show creating a circular reference, like C8=D8+1, D8=C8+1 9/22/2018 CS Lecture 21 CS 100


Download ppt "Lecture 21 Using & Managing Data: Spreadsheets (S&G, §§11.1–11.2)"

Similar presentations


Ads by Google