0% found this document useful (0 votes)
17 views24 pages

Algorithm Failure in Engineering MCQs

The document contains 35 multiple-choice questions focused on Computational Thinking, covering key concepts such as problem decomposition, algorithms, abstraction, pattern recognition, and logic in engineering contexts. Each question is accompanied by the correct answer, emphasizing the importance of structured problem-solving techniques in engineering challenges. The content is designed to enhance understanding of computational thinking principles and their real-world applications.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views24 pages

Algorithm Failure in Engineering MCQs

The document contains 35 multiple-choice questions focused on Computational Thinking, covering key concepts such as problem decomposition, algorithms, abstraction, pattern recognition, and logic in engineering contexts. Each question is accompanied by the correct answer, emphasizing the importance of structured problem-solving techniques in engineering challenges. The content is designed to enhance understanding of computational thinking principles and their real-world applications.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Here are 35 multiple-choice questions (MCQs) on Computational Thinking, covering problem decomposition, algorithms, abstraction, pattern

recognition, and logic for engineering challenges. Each question includes the correct answer.

Problem Decomposition Techniques

What is the first step in problem decomposition?

a) Writing code immediately

b) Breaking a complex problem into smaller subproblems

c) Ignoring edge cases

d) Asking a colleague for the answer

Answer: b) Breaking a complex problem into smaller subproblems

Decomposing a problem helps with:


a) Making the problem more complicated

b) Solving each part independently and efficiently

c) Avoiding documentation

d) Reducing the need for testing

Answer: b) Solving each part independently and efficiently

Which of these is an example of decomposition in automotive engineering?

a) Designing an entire car at once

b) Separately optimizing engine, transmission, and aerodynamics

c) Ignoring electrical systems while designing the chassis

d) Using the same material for all components


Answer: b) Separately optimizing engine, transmission, and aerodynamics

When decomposing a problem, what should you consider?

a) Only the easiest parts

b) Dependencies between subproblems

c) Skipping validation steps

d) Using only one solution approach

Answer: b) Dependencies between subproblems

Which tool is commonly used to visualize decomposed problems?

a) Flowcharts or mind maps


b) A hammer

c) A spreadsheet with no structure

d) Random sticky notes

Answer: a) Flowcharts or mind maps

Algorithm Development Fundamentals

An algorithm is:

a) A programming language

b) A step-by-step procedure to solve a problem

c) A type of computer hardware

d) A random guess
Answer: b) A step-by-step procedure to solve a problem

Which is a key characteristic of a good algorithm?

a) Ambiguity

b) Unordered steps

c) Correctness and efficiency

d) Only working on Tuesdays

Answer: c) Correctness and efficiency

Pseudocode is used to:

a) Write executable code in Python


b) Plan algorithms in human-readable form

c) Replace flowcharts entirely

d) Confuse other engineers

Answer: b) Plan algorithms in human-readable form

What is the purpose of a loop in an algorithm?

a) To execute a task once

b) To repeat a task until a condition is met

c) To delete data

d) To slow down the program

Answer: b) To repeat a task until a condition is met


Which algorithm design approach tries all possible solutions?

a) Divide and conquer

b) Brute force

c) Greedy algorithm

d) Dynamic programming

Answer: b) Brute force

Abstraction and Pattern Recognition

Abstraction in computational thinking means:

a) Adding unnecessary details


b) Focusing on high-level ideas while hiding complexity

c) Making problems harder

d) Avoiding generalizations

Answer: b) Focusing on high-level ideas while hiding complexity

In automotive systems, abstracting "engine control" could mean:

a) Ignoring the engine entirely

b) Treating it as a black box with inputs (fuel, air) and outputs (RPM, torque)

c) Memorizing every bolt in the engine

d) Only studying diesel engines

Answer: b) Treating it as a black box with inputs (fuel, air) and outputs (RPM, torque)
Pattern recognition helps engineers:

a) Invent new problems

b) Identify trends and reuse solutions

c) Randomize designs

d) Avoid documentation

Answer: b) Identify trends and reuse solutions

Which is an example of pattern recognition in vehicle diagnostics?

a) Ignoring error codes

b) Noticing that similar symptoms stem from a faulty sensor


c) Replacing all parts at once

d) Using trial and error indefinitely

Answer: b) Noticing that similar symptoms stem from a faulty sensor

A "model" in engineering abstraction is:

a) A physical prototype only

b) A simplified representation of a system

c) An exact copy of reality

d) A type of car paint

Answer: b) A simplified representation of a system


Logic and Reasoning for Engineering Challenges

Deductive reasoning involves:

a) Drawing broad conclusions from specific examples

b) Applying general principles to specific cases

c) Guessing randomly

d) Avoiding logic

Answer: b) Applying general principles to specific cases

"If a car’s battery voltage is below 12V, it won’t start. This car won’t start. Therefore, its battery voltage is below 12V." This is an example of:

a) Inductive reasoning

b) Deductive reasoning
c) Abductive reasoning

d) Wishful thinking

Answer: b) Deductive reasoning

Inductive reasoning is used to:

a) Prove absolute truths

b) Develop hypotheses based on observations

c) Write pseudocode

d) Debug software

Answer: b) Develop hypotheses based on observations


A truth table is used to analyze:

a) Mechanical stress in materials

b) Logical expressions (AND, OR, NOT)

c) Fuel efficiency

d) Tire pressure

Answer: b) Logical expressions (AND, OR, NOT)

In a vehicle’s ECU, Boolean logic might decide:

a) When to activate the ABS (e.g., "IF wheel slipping AND brake pressed THEN pulse brakes")

b) The color of the dashboard lights

c) The price of the car


d) The driver’s favorite music

Answer: a) "IF wheel slipping AND brake pressed THEN pulse brakes"

Applied Computational Thinking

Which step comes after problem decomposition in computational thinking?

a) Giving up

b) Pattern recognition and abstraction

c) Buying new tools

d) Writing final documentation

Answer: b) Pattern recognition and abstraction


Optimizing a vehicle’s fuel efficiency can be approached by:

a) Randomly changing parts

b) Decomposing into aerodynamics, engine tuning, and weight reduction

c) Ignoring data

d) Only testing at night

Answer: b) Decomposing into aerodynamics, engine tuning, and weight reduction

An algorithm to sort engine parts by size would likely use:

a) A sorting method like quicksort

b) A random number generator

c) Paint colors
d) The sound of the parts

Answer: a) A sorting method like quicksort

Debugging a faulty sensor involves:

a) Replacing all sensors immediately

b) Isolating the problem using systematic checks (abstraction)

c) Shaking the car

d) Ignoring error codes

Answer: b) Isolating the problem using systematic checks

Automated manufacturing robots rely on:


a) Guesswork

b) Predefined algorithms for precision tasks

c) Human whispers

d) Astrology

Answer: b) Predefined algorithms for precision tasks

Advanced Questions

A finite state machine (FSM) in a car’s transmission could represent:

a) Gear shifts (e.g., Park Drive Reverse)

b) The price of gasoline

c) The driver’s mood


d) Tire brand preferences

Answer: a) Gear shifts (e.g., Park Drive Reverse)

Recursion is a technique where:

a) A function calls itself

b) Problems are solved only iteratively

c) Engineers take breaks

d) Cars drive in circles

Answer: a) A function calls itself

Dynamic programming is useful for:


a) Solving problems by breaking them into overlapping subproblems

b) Designing car exteriors

c) Randomizing test drives

d) Cleaning the workshop

Answer: a) Solving problems by breaking them into overlapping subproblems

The "greedy algorithm" approach:

a) Always chooses the best immediate option

b) Guarantees global optimality

c) Is used for tire rotation

d) Requires infinite time


Answer: a) Always chooses the best immediate option

Heuristics are:

a) Exact mathematical solutions

b) Rule-of-thumb shortcuts for faster problem-solving

c) Only used in finance

d) Irrelevant in engineering

Answer: b) Rule-of-thumb shortcuts for faster problem-solving

Real-World Applications

Computational thinking helps design EVs by:


a) Ignoring battery chemistry

b) Optimizing energy use, thermal management, and charging algorithms

c) Making all cars look the same

d) Removing all software

Answer: b) Optimizing energy use, thermal management, and charging algorithms

Autonomous vehicles use pattern recognition to:

a) Ignore pedestrians

b) Classify objects (e.g., traffic signs, other cars)

c) Play music randomly

d) Change color
Answer: b) Classify objects (e.g., traffic signs, other cars)

In a diagnostic trouble code (DTC) system, abstraction allows mechanics to:

a) Focus on raw binary data

b) Interpret codes without knowing ECU firmware details

c) Guess repairs

d) Disable all sensors

Answer: b) Interpret codes without knowing ECU firmware details

Simulating crash tests computationally relies on:

a) Physical prototypes only


b) Mathematical models and decomposition of impact forces

c) Artist renderings

d) Fortune tellers

Answer: b) Mathematical models and decomposition of impact forces

The Poka-Yoke (mistake-proofing) method in manufacturing aligns with computational thinking by:

a) Adding unnecessary complexity

b) Designing systems to prevent errors algorithmically

c) Encouraging random assembly

d) Ignoring qualit

y control
Answer: b) Designing systems to prevent errors algorithmically

You might also like