Input Validation (OCR GCSE Computer Science)

Revision Note

Flashcards
James Woodhouse

Expertise

Computer Science

Input Validation

What is Input Validation?

  • Input validation is code which is used to check that an input from a user is acceptable and that it matches the requirements of the program
  • There are 5 main categories of validation which can be carried out on fields and data types, these are
    • Length check
    • Type check
    • Range check
    • Presence check
    • Format check
  • There can be occasions where more than one type of validation will be used on a field
  • An example of this could be a password field which could have a length, presence and type check on it

input-validation

Length check

  • Checks the length of a string
  • An example is ensuring that a password is 8 or more characters in length
  • Code example

password_length = len(password)

while password_length < 8:
   
password = input("Enter a password which is 8 or more characters")

Type check

  • Check the data type of a field
  • An example is checking a user's age has been entered as an integer, without creating an integer input
  • Code example

age = input("Enter your age")

while age.isdigit() == False:
   
print("enter a number")
    age = input("Enter your age as a number")

Range check

  • Ensures the data entered as a number falls within a particular range
  • An example is checking a user's age has been entered and falls between the digits of 0-100
  • Code example

age = int(input("Enter your age"))

while age < 0 or age > 100:
   
age = int(input("Enter your age, ensure it is between 0-100"))

Presence check

  • Looks to see if any data has been entered in a field
  • An example is checking that a user has entered a name when registering for a website
  • Code example

name = input("Enter your name")

while name == "":
     name = input("You must enter your name here")

Format check

  • Ensures that the data has been entered in the correct format
  • An example would be ensuring that an email includes the @ symbol and a full stop (.)
  • Code example
email = input("Enter your email address")

while "@" not in email or "." not in email:
   
email = input("Please enter a valid email address")

 

Worked example

A car dealership uses a computer system to record details of the cars that it has for sale. Each car has a make, model, age and number of miles driven.

The car dealership only sells cars that have fewer than 15,000 miles and are 10 years old or less.

Write an algorithm that will:

  • Ask the user to enter the number of miles and the age of a car
  • Validate the input to check that only sensible values that are in the given range are entered
  • Output True if valid data has been entered or False if invalid data has been entered [4]

How to answer this question

  • When answering any algorithm question, ask yourself:
    • What inputs and outputs do I need?
    • Do I need to do any calculations or comparisons?
    • Do I need to use selection or iteration?
    • Do I need to use a function or procedure?
  • Re-read the algorithm question working through the criteria given

Programming Skill

Algorithm

Inputs
  • Miles
  • Age
Outputs
  • True or False
Calculations / Comparisons
  • Check for valid mileage
  • Check for valid age

Selection or Iteration

  • Selection is needed (If age <10 and miles < 15000)
  • Iteration is not needed

Function or Procedure

  • Not needed

Answer: i)1 mark per bullet, max 4

  • Miles and age input separately
  • Checks for valid mileage
  • Checks for valid age
  • Checks both are greater than / greater than equal to zero
  • …correctly outputs both True and False

Example Answer:

miles = int(input("enter miles driven"))
age = int(input("enter age of car"))
valid = True
if miles > 15000 or miles < 0 then
    valid = False
elif age > 10 or age < 0 then
    valid = False
endif
print(valid)

You've read 0 of your 0 free revision notes

Get unlimited access

to absolutely everything:

  • Downloadable PDFs
  • Unlimited Revision Notes
  • Topic Questions
  • Past Papers
  • Model Answers
  • Videos (Maths and Science)

Join the 100,000+ Students that ❤️ Save My Exams

the (exam) results speak for themselves:

Did this page help you?

James Woodhouse

Author: James Woodhouse

James graduated from the University of Sunderland with a degree in ICT and Computing education. He has over 14 years of experience both teaching and leading in Computer Science, specialising in teaching GCSE and A-level. James has held various leadership roles, including Head of Computer Science and coordinator positions for Key Stage 3 and Key Stage 4. James has a keen interest in networking security and technologies aimed at preventing security breaches.