Lesson Plan: Computer Programming (NET Technology) NC II
Lesson Plan: Computer Programming (NET Technology) NC II
Department of Education
REGION VI - WESTERN VISAYAS
SCHOOLS DIVISION OF BACOLOD CITY
● https://www.scribd.com/document/522312245/Lesson-Exemplar-Java-Programming-ENRIQUEZ-4
C. Developing and An algorithm is a systematic procedure for solving problems or performing computations,
Deepening consisting of a precise list of instructions executed step by step in hardware or software.
Understanding Commonly used in IT fields such as mathematics, computer programming, and computer
(Tasks and Thoughts) science, algorithms address recurring problems and specify data processing tasks. They can
sort numbers or handle complex functions, like content recommendations on social media.
Algorithms begin with initial input and defined instructions, ultimately producing an output
after execution.
How do algorithms work?
Algorithms work by following a set of instructions or rules to complete a task or solve a
problem. They can be expressed as natural languages, programming languages, pseudocode,
flowcharts and control tables. Natural language expressions are rare, as they are more
ambiguous. Programming languages are normally used for expressing algorithms executed
by a computer.
There are several types of algorithms, all designed to accomplish different tasks:
● Search engine algorithm: This algorithm takes search strings of keywords and
operators as input, searches its associated database for relevant web pages and
returns results.
● Encryption algorithm: This computing algorithm transforms data according to
specified actions to protect it. A symmetric key algorithm, such as the Data
Encryption Standard, for example, uses the same key to encrypt and decrypt data. If
the algorithm is sufficiently sophisticated, no one lacking the key can decrypt the
data.
● Greedy algorithm: This algorithm solves optimization problems by finding the
locally optimal solution, hoping it is the optimal solution at the global level.
However, it does not guarantee the most optimal solution.
● Recursive algorithm: This algorithm calls itself repeatedly until it solves a problem.
Recursive algorithms call themselves with a smaller value every time a recursive
function is invoked.
● Backtracking algorithm: This algorithm finds a solution to a given problem in
incremental approaches and solves it one piece at a time.
● Divide-and-conquer algorithm: This common algorithm is divided into two parts.
One part divides a problem into smaller subproblems. The second part solves these
problems and then combines them to produce a solution.
● Dynamic programming algorithm: This algorithm solves problems by dividing them
into subproblems. The results are then stored to be applied to future corresponding
problems.
● Brute-force algorithm: This algorithm iterates all possible solutions to a problem
blindly, searching for one or more solutions to a function.
● Sorting algorithm: Sorting algorithms are used to rearrange data structures based
on a comparison operator, which is used to decide a new order for data.
● Hashing algorithm: This algorithm takes data and converts it into a uniform
message with a hashing.
● Randomized algorithm: This algorithm reduces running times and time-based
complexities. It uses random elements as part of its logic.
● Each group will brainstorm ideas related to their assigned scenario. Encourage
them to think about potential challenges or variances they might encounter, such as
performance issues, user experience problems, or technical limitations.
● Have each group write down all their ideas on a large sheet of paper or a digital
document. Ensure they include both the problems identified and any initial
thoughts on potential solutions.
● Each group will discuss their ideas, evaluating the feasibility and impact of each
one. They should aim to select one idea that they believe is the most practical and
has the potential for significant positive effects.
● Present Findings: Each group will prepare a brief presentation (5-7 minutes) to
share their chosen idea with the class. They should explain:
-The specific problem their idea addresses.
-How their solution works and why it is effective.
-Any anticipated challenges in implementing their solution and how they might
overcome them.
Abstraction:
The text emphasizes the integral role of mathematical concepts and algorithms in
programming, highlighting how structured problem-solving techniques can enhance the
effectiveness of software development and address various challenges in the workplace.
4.In the brainstorming activity, what is the first step each group must take?
A) Discuss their ideas.
B) Present their findings to the class.
C) Write down their ideas.
D) Select the most feasible idea.
Strategies Explored
Materials Used
Learner Engagement/
Interaction
Others