-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathindex.jade
executable file
·210 lines (159 loc) · 8.12 KB
/
index.jade
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
- var revealLocation = 'bower_components/reveal.js/'
doctype html
html(lang="en")
include bower_components/RevealJade/shared/slide_mixins
include head
link(rel='external' type='text/html' src="bower_components/RevealJade/shared/head.jade")
body
.reveal
.slides
+titleSlide({title: "The Software Development Cycle",subtitle: ""})
+olSlide("Two Truths & a Lie",
[
"A program with syntax errors can execute but might produce incorrect results.",
"Although the syntax of programming languages differs, the same program logic can be expressed in different languages",
"Most simple computer programs include steps that perform input, processing, and output"
]
)
+slideGroup
+bigTitleSlide("")
img(src="assets/software_development_cycle.png" width= "80%")
+littleTitleSlide('Understand the problem')
:markdown
The checking account problem
+littleTitleSlide('Plan the logic')
+bigTitleSlide("")
img(src="assets/software_development_cycle.png" width= "80%")
+slideGroup
+littleTitleSlide("Planning Logic")
img(src="assets/flow_chart_vs_pseudocode.png")
+littleTitleSlide("The Symbols")
img(src="assets/flow_chart_symbols.png" width= "80%")
+speakerNotes
:markdown
Write this down
+littleTitleSlide("Inputs and Outputs")
include code/vars1
+bigTitleSlide("")
include code/vars2
+bigTitleSlide("")
include code/vars3
+bigTitleSlide("Processing")
:markdown
Time to take some action
+littleTitleSlide("(Sequence) My cup of coffee")
img(src="assets/flow1.png")
+speakerNotes
:markdown
Processing from start to finish this data flows in one directions
+littleTitleSlide("")
include code/pseudocode1
+speakerNotes
:markdown
- While this code does not run we can consider each statement representative of a procedure that could perform some useful actions
- The best thing to take away here is when we consider our verbiage of our pseudocode or flow chart we want to be as descriptive as possible
+bigTitleSlide("(Selection) Decisions")
include code/conditional
+speakerNotes
<p>I call it a huh? ¯\_(ツ)_/¯</p>
<p>We through our arms up and decide which direction to take</p>
:markdown
- When comparing the pseudocode to the JavaScript the primary difference is we wrap the nested block in { } (**curly braces** or just **braces**)
- not to be confused with [ ] (**brackets**)
+littleTitleSlide("How do you like your Coffee")
img(src="assets/flow2.png")
+littleTitleSlide("")
include code/pseudocode2
+bigTitleSlide("(Loop) Repetition")
:markdown
Repeating yourself
+speakerNotes
:markdown
- Loops contain a condition that we will repeat as long as it is true
- It is represented only by a flow line from a decision to a state prior to that decision on the yes or true path
+littleTitleSlide("")
include code/pseudocode3
+littleTitleSlide("One lump or two")
img(src="assets/flow3.png")
+olSlide("Two Truths & a Lie",
[
"Understanding the problem that must be solved can be one of the most difficult aspects of programming.",
"The two most commonly used logic-planning tools are flowcharts and pseudocode.",
"Flowcharting a program is a very different process if you use an older programming language instead of a newer one."
]
)
+speakerNotes
:markdown
- the false one is #3
- As I mentioned programming languages are derivative from each other in a genealogical way.
- This is at least true for any language with the same ancestor
+bigTitleSlide("Let's Try it")
:markdown
Draw a flowchart and its pseudocode to represent a program that allows the user to enter values for the width and length of a room's floor in feet
The program outputs the area of the floor
+littleTitleSlide("One Possible Solution")
img(src="assets/area_flow_chart.png")
+littleTitleSlide("")
include code/try_it_1_pseudo
+speakerNotes
:markdown
Like **alert** **prompt** is something we can execute from the console that will allow us to provide text to our variables
+bigTitleSlide("Review")
img(src="assets/the_three_structures_review.png")
+slideGroup
+littleTitleSlide("Putting them together")
img(src="assets/combining_structures.png" width="80%")
+littleTitleSlide("Identify the parts")
img(src="assets/loop_in_sequence_in_selection.png")
+speakerNotes
:markdown
Identify what is the loop what is the sequence and what is the selection
+littleTitleSlide("Identify the parts")
img(src="assets/selection_in_loop_in_sequence.png" width="70%")
+speakerNotes
:markdown
Identify what is the loop what is the sequence and what is the selection
+littleTitleSlide("Lets build our own")
include code/buying_a_plant
+speakerNotes
:markdown
Identify what is the loop what is the sequence and what is the selection
+olSlide("Two Truths & a Lie",
[
"Each structure in structured programming is a sequence, selection, or loop.",
"All logic problems can be solved using only three structures-sequence, selection, and loop.",
"The three structures cannot be combined into a single program."
]
)
+bigTitleSlide("Try it on your own")
:markdown
Draw a flowchart and its pseudocode to represent a program that will take 5 coffee orders
You will ask each person if they want decaf
You will ask each person if they want milk
We will review it on Monday
+slideGroup
+littleTitleSlide("What is Structured Code")
+littleTitleSlide("The Rules")
:markdown
- A structured program includes only combinations of the three basic structures.
- Each of the structures has a single entry point and a single exit point.
- Any structures can be stacked or connected to one another at their entry and exit points.
- Any structure can be nested within another structure.
+littleTitleSlide("The Reason for Structure")
:markdown
- _Clarity_ - As programs get bigger, they get more confusing if they are not structured.
- _Maintenance_ - You and other programmers will find it easier to modify and maintain structured programs as they change in the future
- _Modularity_ - Structured programs can easily be broken down into modules that can be assigned to other programmers. Modules can be reused.
+littleTitleSlide("Example of unstructured code")
img(src="assets/an_unstructured_program.png" width="60%")
+olSlide("Two Truths & a Lie",
[
"Some processes cannot be expressed in a structured format.",
"An unstructured flowchart can achieve correct outcome.",
"Any unstructured can be 'detangled' to become structured."
]
)
+bigTitleSlide("Let's Try It")
:markdown
You are concerned that your car has a flat tire. Standing outside the car how do we identify and/or replace a leaky tire?
include footer