DLCS18.HS.3
Differentiate between a generalized expression of an algorithm in pseudocode and its concrete implementation in a programming language.
Differentiate between a generalized expression of an algorithm in pseudocode and its concrete implementation in a programming language.
Unpacked Content
UP:DLCS18.HS.3
Vocabulary
- pseudocode
- programming language
- approximated
- iteration
- conditional statements
- control structures
- iterative loop
- selection constructs
- recursion
Knowledge
Students know:
- that differences exist in pseudocode and a programming language.
- that programming languages have certain requirements for language and syntax.
- that some programs cannot return a result in a reasonable time frame, therefore approximations must be allowed in those cases.
- how to identify sequential statements, conditional statements, and/or iterations in code.
- the differences between sequential statements, conditional statements, and/or iterations.
- trade-offs exist with using one control structure over another.
- some decisions in a program will require the use of iterative loops, selection constructs, or recursion.
- programs can be written to satisfy a number of needs such as performance, reusability, and ease of implementation.
- that most times, algorithms will differ based on the need of the program; performance, reusability, or ease of implementation.
- that programs can be written with specific priorities in mind.
- that there are multiple correct ways to write a program.
- that solutions are often chosen to meet the priority need of the program.
Skills
Students are able to:
- distinguish between a generalized expression of an algorithm in pseudocode and its concrete implementation in a programming language.
- point out similarities in vocabulary and syntax between pseudocode and an algorithm.
- point out differences in vocabulary and syntax between pseudocode and an algorithm.
- explain that some algorithms do not lead to exact solutions in a reasonable amount of time and thus approximations are acceptable.
- identify sequential statements, conditional statements, and/or iterations in code.
- identify tradeoffs associated with using one control structure over another.
- distinguish when a problem solution requires decisions to be made among alternatives or when a solution needs to be iteratively processed to arrive at a result.
- evaluate and select algorithms based on performance, reusability, and ease of implementation.
- explain how more than one algorithm may solve the same problem and yet be characterized with different priorities.
Understanding
Students understand that:
- similarities and differences exist in pseudocode and programming code.
- some programming languages more closely resemble pseudocode than do other programming languages.
- due to time or financial constraints, some programs may return an approximation of a solution.
- both benefits and drawbacks exist when selecting one control structure over another in a code.
- programs can use multiple methods to arrive at a solution.
- there are times when a program needs to be selected for a specific purpose, such as performance, reusability, and/or ease of implementation.
- multiple algorithms can solve the same problem.
- algorithms can operate with a specific priority in mind, such as speed, simplicity, and/or safety.