Section outline
-
Lesson 3. Forms and Means of Algorithm Representation
Objective: involves a hierarchical acquisition of skills, ranging from simple recognition of notation forms to the ability to choose and justify the most effective way to represent an algorithm. At the lowest level, Knowledge/Remembering, the student must define the concept of algorithmization, list all known ways of representing algorithms (verbal, analytical, graphical, statement diagrams, pseudocode, decision tables, program notation), and name the main programming languages (e.g., C++, Python, Visual Basic) and their purpose. The next level, Understanding, requires the student to explain the essence of verbal and analytical descriptions of algorithms, interpret the dependence of the way an algorithm is written on its executor (human or computer), and formulate the difference between the structural diagram of an algorithm and the statement diagram. The Applying level (3) requires the student to demonstrate practical application of knowledge, including using a graphical method (block diagram) to represent an algorithm for solving a simple problem, using pseudocode to record the control logic of a simple mechanism (e.g., an IoT sensor), or converting a verbal description into program code (e.g., in Visual Basic for Applications). The fourth level, Analyzing, requires the student to compare the effectiveness of decision tables with a graphical method for representing an algorithm that has many conditional transitions, distinguish the degree of algorithm detail for a plant manager and a crew worker, and analyze the advantages of programming the algorithm over analytical form in terms of execution speed. At the fifth level, Evaluating, the student must justify the choice of a programmatic representation of an algorithm as the most effective means of representation for complex engineering systems, criticize the shortcomings of verbal descriptions of algorithms (such as ambiguity) for working with computer systems, and also assess the importance of universal languages, such as Visual Basic for Applications, for extending the functionality of software products. At the highest level, Creating, the student must develop (plan) a complex algorithm for controlling a process in a specific subject area (for example, controlling an ITS traffic light), using a combination of graphical methods and pseudocode, and design (create) a unified structured description of the algorithm that minimizes the effort and cost of its implementation.