Bird
Raised Fist0
Intro to Computingfundamentals~10 mins

Pattern recognition in Intro to Computing - Draw & Build Visually

Choose your learning style10 modes available
Draw This - beginner

Look at the number sequence: 2, 4, 8, 16, 32. Draw a flowchart that shows how to find the next number in this pattern.

5 minutes
Hint 1
Hint 2
Hint 3
Hint 4
Grading Criteria
Start and End symbols present
Input step clearly shown
Process step multiplies input by 2
Output step shows the next number
Flow direction is clear and logical
Solution
  +-------+
  | Start |
  +-------+
      |
      v
+-----------------+
| Input last number|
+-----------------+
      |
      v
+---------------------+
| Multiply number by 2 |
+---------------------+
      |
      v
+-----------------+
| Output next num  |
+-----------------+
      |
      v
  +-----+
  | End |
  +-----+

This flowchart starts by taking the last number in the sequence as input. Then it multiplies that number by 2, because each number in the pattern is double the previous one. Finally, it outputs the next number and ends. This matches the pattern 2, 4, 8, 16, 32 where each number is twice the one before.

Variations - 2 Challenges
[beginner] Draw a flowchart to find the next number in the pattern: 3, 6, 12, 24, 48.
[intermediate] Draw a flowchart to find the next number in the pattern: 5, 10, 20, 40, 80, but include a decision step to check if the input number is positive before multiplying.

Practice

(1/5)
1. What is the main purpose of pattern recognition in computing?
easy
A. To find repeated or similar parts in data
B. To write long and complex code
C. To slow down program execution
D. To avoid using rules in programs

Solution

  1. Step 1: Understand pattern recognition meaning

    Pattern recognition means finding repeated or similar parts in data.
  2. Step 2: Identify its purpose in computing

    It helps programs handle many cases with simple rules, making problem solving faster.
  3. Final Answer:

    To find repeated or similar parts in data -> Option A
  4. Quick Check:

    Pattern recognition = find repeated parts [OK]
Hint: Pattern recognition means spotting repeats or similarities [OK]
Common Mistakes:
  • Thinking pattern recognition slows programs
  • Believing it makes code more complex
  • Confusing it with avoiding rules
2. Which of the following is the correct way to describe a pattern recognition rule in a program?
easy
A. Repeat the same action regardless of data
B. Ignore all data and do nothing
C. If data matches a pattern, then perform an action
D. Write random code without rules

Solution

  1. Step 1: Understand pattern recognition rules

    Rules check if data matches a pattern to decide what to do next.
  2. Step 2: Match options to this idea

    Only If data matches a pattern, then perform an action says to perform an action if data matches a pattern.
  3. Final Answer:

    If data matches a pattern, then perform an action -> Option C
  4. Quick Check:

    Rule = if pattern then action [OK]
Hint: Rules act only when data matches patterns [OK]
Common Mistakes:
  • Choosing options that ignore data
  • Thinking rules always repeat actions
  • Confusing randomness with rules
3. Consider this simple pattern recognition code snippet:
data = [2, 4, 6, 8, 10]
result = []
for num in data:
    if num % 4 == 0:
        result.append(num)
print(result)

What will be the output?
medium
A. [2, 4, 6, 8, 10]
B. [4, 8]
C. [2, 6, 10]
D. []

Solution

  1. Step 1: Identify the pattern condition

    The code checks if each number is divisible by 4 (num % 4 == 0).
  2. Step 2: Check each number in data list

    Numbers divisible by 4 are 4 and 8, so result will be [4, 8].
  3. Final Answer:

    [4, 8] -> Option B
  4. Quick Check:

    Divisible by 4 = [4, 8] [OK]
Hint: Check divisibility condition for each number [OK]
Common Mistakes:
  • Including numbers not divisible by 4
  • Ignoring the condition and printing all
  • Confusing modulo operator meaning
4. The following code is intended to find all even numbers in a list, but it has a bug:
numbers = [1, 2, 3, 4, 5]
even_nums = []
for n in numbers:
    if n / 2 == 0:
        even_nums.append(n)
print(even_nums)

What is the error and how to fix it?
medium
A. The print statement is missing parentheses
B. The list 'numbers' is empty, so no output
C. The append method is misspelled
D. The condition should use '==' with modulo: 'if n % 2 == 0:'

Solution

  1. Step 1: Identify the condition error

    The code uses 'n / 2 == 0' which checks division result equals zero, always false for positive n.
  2. Step 2: Correct the condition to check evenness

    Use modulo operator '%' to check remainder: 'if n % 2 == 0:' to find even numbers.
  3. Final Answer:

    The condition should use '==' with modulo: 'if n % 2 == 0:' -> Option D
  4. Quick Check:

    Even check = n % 2 == 0 [OK]
Hint: Use modulo (%) to check even numbers [OK]
Common Mistakes:
  • Using division instead of modulo
  • Assuming empty list causes error
  • Misspelling method names
5. You have a list of words: words = ['apple', 'banana', 'apricot', 'berry', 'avocado']. You want to create a new list containing only words that start with 'a' using pattern recognition. Which code snippet correctly does this?
hard
A. filtered = [w for w in words if w[0] == 'a']
B. filtered = [w for w in words if w.endswith('a')]
C. filtered = [w for w in words if 'a' in w]
D. filtered = [w for w in words if w[1] == 'a']

Solution

  1. Step 1: Understand the pattern to match

    We want words starting with 'a', so check first letter w[0] == 'a'.
  2. Step 2: Evaluate each option

    filtered = [w for w in words if w[0] == 'a'] correctly filters words where first letter is 'a'. Others check wrong positions or conditions.
  3. Final Answer:

    filtered = [w for w in words if w[0] == 'a'] -> Option A
  4. Quick Check:

    Start with 'a' = w[0] == 'a' [OK]
Hint: Check first character with w[0] == 'a' [OK]
Common Mistakes:
  • Using endswith instead of startswith
  • Checking wrong character index
  • Checking if 'a' is anywhere in word
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard