Removing the vowels from a sentence.

Disemvowelling is removing all the vowels from a piece of alphabetic text. It was once a common feature of the SMS language where the number of characters in a message was limited, and users were charged per message. It requires little cognitive effort to read so it was a good way of typing message quickly and keeping the cost down. Disemvowelling has more recently been used as a forum moderation tool.


Write a program that allows the user to enter a sentence before outputting that sentence with all the vowels removed.

Use this boilerplate code as a starting point:

Success Criteria

Remember to add a comment before a subprogram, selection or iteration statement to explain its purpose.

Complete the subprogram called `dvowel` that:

  1. Takes one parameter, `message` that is the string to process.
  2. Returns the message with all the vowels (AaEeIiOoUu) removed.

Complete the `main program` so that:

  1. The user can input the message to disemvowel.
  2. The `dvowel` function is called.
  3. The disemvowelled message is displayed.

Typical inputs and outputs from the program would be:

Enter the message: Hello world

The disemvoweled version of the message is:

Hll wrld

Enter the message: The quick brown fox jumps over the lazy dog

The disemvoweled version of the message is:

Th qck brwn fx jmps vr th lzy dg

Knowledge Organiser

Use these resources as a reference to help you meet the success criteria.

Programming guide:


Run the unit tests below to check that your program has met the success criteria.

Enter the message: Computers are incredibly fast, accurate, and stupid. Human beings are incredibly slow, inaccurate, and brilliant. Together they are powerful beyond imagination.

The disemvoweled version of the message is:

Cmptrs r ncrdbly fst, ccrt, nd stpd. Hmn bngs r ncrdbly slw, nccrt, nd brllnt. Tgthr thy r pwrfl bynd mgntn.

Enter the message: The real danger is not that computers will begin to think like men, but that men will begin to think like computers.

The disemvoweled version of the message is:

Th rl dngr s nt tht cmptrs wll bgn t thnk lk mn, bt tht mn wll bgn t thnk lk cmptrs.

Check that you have:

  • Used comments within the code to describe the purpose of subprograms, conditions and iterations.
  • Used meaningful identifier names. That means the names of subprograms and variables indicate what they are for.