For IndividualsFor Educators
ExpertMinds LogoExpertMinds
ExpertMinds

Ace your certifications with Practice Exams and AI assistance.

  • Browse Exams
  • For Educators
  • Blog
  • Privacy Policy
  • Terms of Service
  • Cookie Policy
  • Support
  • AWS SAA Exam Prep
  • PMI PMP Exam Prep
  • CPA Exam Prep
  • GCP PCA Exam Prep

© 2026 TinyHive Labs. Company number 16262776.

    PracticeAQA GCSEAQA GCSE Computer Science Paper 1 PythonQuestion 07
    Medium6 marksExtended Response
    ProgrammingGeneralpythoncodingselection

    AQA GCSE · Question 07 · Programming

    A theme park charges £15 per person for a daily ticket. If there are six or more people in a group, the group is given a £5 discount.

    Write a Python program to calculate the total charge for a group of people visiting the theme park.

    The program must:

    • get the user to enter the number of people in a group
    • calculate the total charge by:
      • charging £15 per person
      • reducing the total charge by £5 if there are six or more people
    • output the total charge.

    You should use indentation as appropriate, meaningful variable name(s) and Python syntax in your answer.

    How to approach this question

    1. **Get Input:** Use the `input()` function to ask the user for the number of people. Remember to convert this input to an integer using `int()`. Store it in a variable with a meaningful name, like `num_people`. 2. **Calculate Base Cost:** Create a variable for the price per person (£15). Calculate the initial total cost by multiplying the number of people by the price per person. Store this in a variable like `total_charge`. 3. **Apply Discount:** Use an `if` statement to check if the group size (`num_people`) is greater than or equal to 6. 4. **Inside the `if` block:** If the condition is true, subtract the £5 discount from the `total_charge`. 5. **Output Result:** Use the `print()` function to display the final `total_charge` to the user. Use an f-string for clear formatting.

    Full Answer

    This is a standard problem that combines input, calculation, and conditional logic (selection). 1. **Input:** The program first needs to get information from the user. `num_people = int(input(...))` accomplishes this. The `input()` function gets a string, and `int()` converts it to a number for calculations. 2. **Calculation:** The base cost is calculated by simple multiplication: `total_charge = num_people * 15`. Using a variable for the price (`price_per_person = 15`) is good practice. 3. **Conditional Logic:** The core logic is the discount. An `if` statement is used to check the condition: `if num_people >= 6:`. If this is true, the code inside the indented block is executed, which subtracts 5 from the total. If it's false, the block is skipped. 4. **Output:** Finally, the result is displayed. An f-string (`f"..."`) is a modern and readable way to format strings in Python, embedding the value of the `total_charge` variable directly into the output message.

    Common mistakes

    ✗ Forgetting to convert the user input from a string to an integer.\n✗ Using the wrong comparison operator, e.g., `>` instead of `>=`.\n✗ Applying the discount per person instead of once for the whole group.\n✗ Incorrect indentation for the `if` block.
    Question 06All questionsQuestion 08

    Practice the full AQA GCSE Computer Science Paper 1 Python

    31 questions · hints · full answers · grading

    Sign up freeTake the exam

    More questions from this exam

    Q01.1Figure 1 shows an algorithm, represented using pseudo-code, which assigns a different value to fo...EasyQ01.2The variable `x` is assigned a value using the statement: `x ← LEN(state)` Using Figure 1, what ...EasyQ01.3What is the result of concatenating the contents of the variables `city` and `landmark` in Figure 1?EasyQ01.5The subroutine `POSITION` finds the first position of a character in a string. For example, `POSI...EasyQ02.1Figure 2 shows an algorithm that uses integer division which has been represented using pseudo-co...Easy
    View all 31 questions →