Topic outline

  • General

    In this course you will learn about algorithms, programs and interfaces.
  • Topic 1

    Algorithms

    An algorithm is a set of clear instructions to complete a task or solve a problem. We are going to compare 2 algorithms that are used for sorting - selection sort and quick sort

    Activity #1

    Look at the 2 algorithms shown on the video at cs unplugged http://csunplugged.org/sorting-algorithms The selection sort algorithm using cards is demonstrated below
    as is the quicksort algorithm


    • Using a deck of cards, practice the selection sort.
    • Write out a set of instructions for sorting cards using the selection sort - include the results from a set of cards that you sorted.
    • Find out how many steps/cards you need to sort for 6, 7, 8, 9, 10, 11, 12 & 13 cards. Put your results in a table. Do this for the selection sort and the quicksort - which is best?
    • Have a look at the scratch selection sort and quicksort programs (link below) -try running the programs.
    • How are the Scratch programs similar to your alogrithms?
    • What are the simple and straight-forward differences between the scratch programs and the algorithms you have just described? What can your algorithm do that Scratch can't and vice-versa?
    • Now write out a generalised set of instructions for the selection sort. With these instructions you should be able to sort anything - not just cards!
    • In your instructions, highlight the sequential, conditional and iterative parts to demonstrate you understand these concepts.
      1. sequential operations - instructions are executed in order
      2. conditional ("question asking") operations - a control structure that asks a true/false question and then selects the next instruction based on the answer
      3. iterative operations (loops) - a control structure that repeats the execution of a block of instructions
  • Topic 2

    Programs

    A Program is a piece of computer code that can be run in order for the computer to do (execute) a particular task. In this section we will look at programs in more detail.

    We will look at selection sort programs -as we are familiar with them.

    http://en.wikibooks.org/wiki/Algorithm_Implementation/Sorting/Selection_sort
    has the outline of a selection sort program in the language C.

    An example of the full program is given in the hyperlink below.

    Your teacher will show you how to compile and run the program. Once you are capable of compiling and running the program yourself, read the following description of how programs work. http://www.webopedia.com/TERM/H/high_level_language.html


  • Topic 3

    Interfaces

    An interface is how a computer program is accessed by users.
    • Topic 4

      • Topic 5

        • Topic 6

          • Topic 7

            • Topic 8

              • Topic 9

                • Topic 10