Class 10 Chapter 2: Long Question Answers (Computational Thinking & Algorithms)
1. What is computational thinking? Explain its key components with examples.
Answer: Computational thinking is a problem-solving process that includes understanding the problem, breaking it down, and creating algorithms.
- Decomposition: Breaking problems into smaller parts. E.g., breaking a recipe into steps.
- Pattern Recognition: Finding similarities or patterns. E.g., spotting repeated steps in algorithms.
- Abstraction: Focusing on important information only. E.g., ignoring details when planning a trip.
- Algorithm Design: Creating step-by-step instructions to solve problems.
2. Define algorithm and list its characteristics.
Answer: An algorithm is a finite sequence of well-defined instructions to solve a problem.
- Clear and unambiguous
- Well-ordered steps
- Finite length
- Input and output specified
- Effective and feasible
3. Explain the difference between algorithm and flowchart.
Answer: An algorithm is a textual step-by-step solution, while a flowchart is a graphical representation of that algorithm using symbols.
Flowcharts use shapes like ovals (start/end), parallelograms (input/output), rectangles (process), diamonds (decision) to illustrate flow.
4. Write pseudocode to find the largest of three numbers.
Answer:
START
INPUT num1, num2, num3
IF num1 > num2 AND num1 > num3 THEN
largest = num1
ELSE IF num2 > num3 THEN
largest = num2
ELSE
largest = num3
ENDIF
OUTPUT largest
END
5. What are the types of algorithms? Explain any two with examples.
Answer:
- Linear Search: Sequentially checking each element. Example: Searching a name in a list.
- Binary Search: Dividing the list into halves to find an element quickly. Example: Finding a word in a dictionary.
- Sorting Algorithms: Organizing data in order (e.g., Bubble sort, Merge sort).
6. Explain the concept of iteration and decision making in algorithms.
Answer: Iteration refers to repeating a set of instructions until a condition is met (loops). Decision making involves choosing between alternative paths based on conditions.
Examples:
- Iteration: Looping to print numbers 1 to 10.
- Decision Making: If-else statements to check age eligibility.
7. How do flowcharts help in problem solving?
Answer: Flowcharts visually represent the sequence of steps, making complex processes easier to understand, debug, and communicate.
8. Describe the difference between pseudocode and programming languages.
Answer: Pseudocode is a simplified, informal description of an algorithm using plain language. Programming languages have strict syntax and are used to write executable code.
9. What is the importance of algorithm efficiency?
Answer: Algorithm efficiency impacts how fast and resource-optimized a solution is. Efficient algorithms save time, memory, and computing power, especially for large inputs.