13.2.1 Creating algorithms

    Cards (135)

    • Why is defining the problem clearly crucial in problem-solving?
      Ensures focused and accurate solutions
    • An ambiguous problem statement can lead to incorrect solutions.
    • A clarified problem statement specifies the data type, sorting order, and algorithm
    • What are the six aspects involved in clear problem definition?
      What, who, where, when, why, how
    • A well-defined problem statement prevents misunderstandings.
    • In problem-solving, inputs are the data or information provided to a program, and outputs are the results
    • Match the input type with its description:
      User Input ↔️ Data provided directly by the user
      Data Files ↔️ Data read from external files
      Sensors ↔️ Data collected from physical sensors
      API ↔️ Data retrieved from external services
    • Arrange the steps in understanding inputs and outputs:
      1️⃣ Identify input types
      2️⃣ Determine output types
      3️⃣ Analyze data flow
    • In the example program to calculate the area of a rectangle, the inputs are the length and width
    • Why is understanding inputs and outputs essential for algorithm design?
      Ensures accurate program behavior
    • Breaking a problem into subproblems improves coding organization.
    • Breaking a problem into subproblems makes the overall complexity lower
    • What are the four subproblems in designing a library management application?
      Book, member, borrowing, reporting
    • Combining subproblems simplifies the design process.
    • What is displayed on the screen when using the "Display" output type?
      Results
    • Actuators send signals to control devices
    • APIs are used to send data to external services.
    • What is the formula to calculate the area of a rectangle?
      area = length * width</latex>
    • In the example program, the inputs are the length and width
    • Steps to break a complex problem into subproblems:
      1️⃣ Identify the main problem
      2️⃣ Divide the problem into smaller tasks
      3️⃣ Prioritize subproblems
      4️⃣ Solve each subproblem individually
      5️⃣ Combine solutions to solve the original problem
    • Breaking a complex problem into subproblems increases its complexity.
      False
    • Breaking a complex problem into subproblems streamlines collaboration
    • Match the subproblems with their descriptions in the library management application:
      Book Management ↔️ Adding, deleting, updating books
      Member Management ↔️ Registering, deleting, updating members
      Borrowing ↔️ Lending and returning books
      Reporting ↔️ Generating reports on book usage
    • Steps to follow a logical approach to solve a subproblem:
      1️⃣ Understand the goals and requirements
      2️⃣ Develop a step-by-step plan
      3️⃣ Translate the plan into code
      4️⃣ Ensure the code works correctly through testing
      5️⃣ Review the process and identify improvements
    • The area of a rectangle is calculated by multiplying its length and width
    • What is the primary factor for choosing the appropriate data structure?
      Efficiency
    • Match the data structure with its property:
      Arrays ↔️ Fixed size, fast access
      Linked Lists ↔️ Dynamic size, slow access
      Stacks ↔️ LIFO, limited access
      Queues ↔️ FIFO, limited access
    • Stacks use a FIFO principle for data storage.
      False
    • Hash tables provide fast lookups using key-value pairs
    • What is the purpose of defining a problem statement clearly?
      Addresses goals and constraints
    • Understanding inputs and outputs is essential for designing effective algorithms
    • Why is a well-defined problem statement important in problem-solving?
      Ensures solution addresses goals
    • One key element of a problem statement is understanding the objectives
    • What are inputs and outputs in problem-solving?
      Inputs are data, outputs are results
    • Constraints in a problem statement define limitations on possible solutions
    • A clear objective in a problem statement should be specific and measurable
    • What does it mean for inputs and outputs to be precisely defined in a problem statement?
      They are unambiguous
    • Missing constraints in a problem statement can lead to unclear solutions
    • What is an example of an unclear problem statement for sorting an array?
      "Sort the list"
    • A clear problem statement for sorting an array of integers would specify the data type, sorting order, and algorithm