Quote of the day

Quote of the day

Sharing positivity.

A quote of the day utility picks a random quote from a 2D list of quotes and outputs it.

Make


Write a program that stores quotes in a 2D array. The first index stores the quote and the second index stores the author. The program should output a random quote and the author.

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 `random_quote` that:

  1. Returns a list of two elements. The first element is a random quote. The second element is the author of the quote.

You can use the following data:

Any fool can write code that a computer can understand. Good programmers write code that humans can understand.

Martin Fowler

Code is like humour. When you have to explain it, it’s bad.

Cory House


Simplicity is the soul of efficiency.

Austin Freeman

The data structure for the first quote would be initialised as:

quote[0][0] = "Any fool can write code that a computer can understand. Good programmers write code that humans can understand."

quote[0][1] = "Martin Fowler"

Complete the `main program` so that:

  1. A random seed is chosen.
  2. The `random_quote` subprogram is called and the returned quote is stored in a list called `quote`.
  3. The output is formatted so that the quote is enclosed in speech marks (character 34 in the ASCII table).
  4. The output is formatted so that the author is indented by two spaces followed by a hyphen.

Typical inputs and outputs from the program would be:

"Simplicity is the soul of efficiency."

- Austin Freeman


"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."

- Martin Fowler

Knowledge Organiser

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

Programming guide:

Evaluate


Run the program several times to check that your program has met the success criteria.

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.