DoAssignment study guide
B1.1 · Choose problem-solving strategies for different tasks
Learn to choose problem-solving strategies for different tasks through clear examples and targeted practice.
Ontario Grade 11 Computer Science
Software Development
ICS3U B1.1: Match a problem-solving approach to what you need to do
A strategy is a plan for approaching a task. When a task changes, the most useful plan may change too. Organizing several event jobs is different from finding the highest score in a short list. B1.1 asks you to choose strategies for different tasks, not to use one favourite method for everything. A good choice starts with understanding the goal and available information. Then you can select a manageable approach, follow it, and check whether the result answers the original question.
What you will learn
- Explain what a problem-solving strategy is and why the task matters when choosing one.
- Compare a few practical strategies and choose one that fits a clearly stated goal.
- Describe inputs, steps, and expected results before using a strategy.
- Trace a short example and explain how the chosen approach supports checking the result.
1. Start by understanding the task
Before choosing a strategy, put the task into your own words. Ask: What result am I trying to get? What information do I already have? What limits or rules must I respect? A task such as “prepare for a club meeting” is too broad to solve all at once. It becomes easier when you clarify what preparation means: reserve a room, make an agenda, and let members know the time.
A useful planning frame is input, process, output. Input is the information or materials you start with. Process is the approach you use. Output is the result you want. This frame does not prescribe one solution; it helps you compare possible strategies. If you do not know what counts as a successful output, you cannot reliably decide whether your strategy worked.
For a small, well-defined task, a direct sequence of steps may be enough. For a task with several parts, breaking it into smaller tasks can make it easier to track. When information must be compared, a list or table can make the comparison clearer. When a task repeats the same kind of action for several items, a consistent check for each item may be appropriate. These are practical choices, not rules that every task must follow.
- State the goal in specific terms before selecting an approach.
- Identify input, process, and the output that would show success.
- Choose a strategy that fits the task rather than choosing by habit.
2. Match the approach to the work
Breaking a task into smaller parts is useful when the full task contains distinct jobs. For example, planning a class presentation might involve choosing a topic, gathering information, preparing slides, and practising. The list makes the work visible and helps you notice a missing part. It does not decide the content for you; it gives you a way to organize the work.
A table is useful when you need to compare several options using the same questions. Suppose a group is choosing between meeting times. Listing each time beside the number of available members makes the relevant information easier to inspect. A table is less helpful if the information is unrelated or if a single direct answer is all you need.
A step-by-step scan is suitable for a short collection when the task is to identify a value, such as the largest score. You inspect each value and keep track of the best one seen so far. This is different from organizing a large project: the scan addresses a specific question about a collection. In each case, the strategy should be simple enough to follow and should produce evidence you can check.
A good choice also considers what could go wrong. If a list of jobs is used, check that every required job appears. If values are compared, check that each value was considered and that the chosen answer meets the goal. Checking is part of problem solving: it helps distinguish a plausible-looking result from one supported by the task information.
- Use smaller tasks to organize work with distinct parts.
- Use a table when the same details must be compared across options.
- Use a consistent scan when checking each item in a collection answers the goal.
- Include a check that can reveal an omitted or misread item.
3. Explain and review your choice
When you choose a strategy, explain why it fits. “I used a table” is only a description. “I used a table because I need to compare each meeting time using the same availability information” connects the approach to the task. This explanation makes your reasoning reviewable by someone else.
For a programming task, state what data enters the program and what result should be displayed. A short trace can show how a value changes as the program processes the input. Python 3 is used in the example below; its list indexes start at zero. Other classrooms may use other programming languages, so the syntax may differ even when the problem-solving plan is similar.
Do not confuse a strategy with a guaranteed correct answer. The strategy gives you a way to work; the result still depends on using the input accurately and following the plan. Before finishing, compare the result with the original goal and check the steps that matter most.
- Give a reason that connects the strategy to the task's specific needs.
- For code, identify the input and expected output before tracing.
- Review the result against the original goal.
Trace: best score so far
| Python list index | Score considered | Best after comparison |
|---|---|---|
| 0 | 6 (starting value) | 6 |
| 1 | 9 | 9 |
| 2 | 4 | 9 |
| 3 | 8 | 9 |
Worked example
Organize a class event
A student team must prepare a lunchtime board-game event. They need to reserve a room, choose games, and tell students when and where to come. Which strategy makes the work easier to manage?
- Clarify the outputThe event is ready when the room is reserved, games are selected, and students have received accurate time and location details. Naming these outcomes makes the broad task more specific.
- Choose an organizing strategyBreak the preparation into three jobs and assign responsibility or a completion check to each. This suits a task with distinct parts and makes omissions easier to notice.
- Check the planReview each job before the event. A list of completed jobs can show whether the preparation is finished, but the announcement itself still needs to be checked for correct details.
Answer: Use a short task list because the event has several separate preparation jobs. The list supports tracking, while a final detail check confirms the announcement is accurate.
Check: The approach fits because the goal includes multiple distinct tasks, not a comparison of numerical values.
Worked example
Find the highest score
The input is a short list of quiz scores: 6, 9, 4, and 8. The task is to find the greatest score. Choose a strategy and trace the changing value.
Python 3
scores = [6, 9, 4, 8]
best = scores[0]
for score in scores[1:]:
if score > best:
best = score
print(best)- State the input and goalThe input is four scores. The output should be the greatest score in that list, so checking every score is a suitable strategy.
- Track the best seen so farStart with the first score as the best seen so far. Compare each later score with it. Replace the stored value only when a larger score appears.
- Derive the resultThe trace keeps 6 after the first item, changes to 9 when 9 is considered, and keeps 9 when 4 and then 8 are considered. The expected output is therefore 9.
Answer: The greatest score is 9. A scan fits because each score can be checked against the best value found so far.
Check: The final value is one of the input scores and is at least as large as every other listed score.
Worked example
Choose a meeting time
Three possible club meeting times have these availability counts: Monday, 7 members; Tuesday, 5; Wednesday, 8. The group wants the time when the most members are available. Which strategy suits this task?
- Identify what must be comparedThe options are meeting times, and the relevant detail for each is the number of available members. A table keeps those matching details together.
- Apply the comparisonCompare the counts: 7, 5, and 8. Wednesday has the largest count, so it best meets the stated goal.
- Check the conclusionThe conclusion uses the requested measure, availability count. If the group had another rule, such as a room being unavailable, that information would also need to be considered before deciding.
Answer: Choose Wednesday based on the supplied counts. A comparison table is appropriate because each option is judged using the same information.
Check: The choice follows the stated goal of maximizing the number of available members; it does not claim that other scheduling constraints have been checked.
Common mistakes and how to avoid them
Choosing a strategy before deciding what result the task requires.
Correction: State the goal and the information available first; then choose an approach that directly supports that goal.
Using a table for every task because tables seem organized.
Correction: Use a table when comparable details need to be inspected. A direct list or a scan may suit other tasks better.
Assuming a completed plan proves the result is correct.
Correction: Check the result against the original goal and verify important details, such as an announcement's time and location.
In Python, treating the first list item as index 1.
Correction: Python 3 lists use zero-based indexes: the first item is at index 0. Other classroom languages may use different conventions.
Lesson summary
- A problem-solving strategy is a plan for approaching a task.
- Clarify the goal, identify the input, and decide what output would count as success.
- Break multi-part work into smaller jobs, compare repeated details in a table, or scan a short collection when checking each item answers the question.
- Explain why the chosen strategy fits and check the result against the goal.
Check your understanding
Question 1
A group must compare four poster designs using the same three criteria. Which approach is most suitable?
- Make a table with one design per row and the criteria as comparison details.
- Choose the first design without checking the criteria.
- Write unrelated notes without linking them to each design.
- correctIndex
Show answer and explanation
Make a table with one design per row and the criteria as comparison details.
A table helps compare options using the same criteria, which matches the task.
Question 2
A short list contains the values 3, 11, and 7. The goal is to find the greatest value. What should a scan produce?
- 3, because it appears first.
- 11, because it is greater than the other listed values.
- 7, because it appears last.
- correctIndex
Show answer and explanation
11, because it is greater than the other listed values.
Checking each value shows that 11 is greater than both 3 and 7.
Question 3
Why should you define the desired output before selecting a strategy?
- So you can decide whether an approach can produce the result the task requires.
- So you can avoid checking the result afterward.
- So every task can use the same approach.
- correctIndex
Show answer and explanation
So you can decide whether an approach can produce the result the task requires.
Knowing the goal lets you choose a fitting approach and later check whether it succeeded.
Key terms
- Strategy
- A plan or approach for working toward a task's goal.
- Input
- The information or materials available at the start of a task.
- Process
- The steps or approach used to work with the input.
- Output
- The result produced by the process or required by the task.
- Trace
- A record of how values or decisions change while following a program or plan.
Continue through ICS3U
View the complete ICS3U Ontario Grade 11 Computer Science curriculum and lessons
About this lesson and its review
Published by DoAssignment. This reviewed lesson follows Ontario Grade 11 Computer Science (ICS3U), expectation B1.1. It is a study resource, not an official curriculum publication.
Before publication, content is checked for structure, mathematical or chemical notation, calculations, course boundaries, and readability. Errors can still occur, so corrections are welcomed.