This page will list by date the homework that you must complete to avoid putting in extra time at school during lunch or after school. I will try to keep non-assessment homework up to about 30 mins max each night. Failure to complete homework will result in you having to complete the work at school outside of class time.
12 IPT homework rules are as follows:
- Failure to complete homework will result in you completing it at school, outside of class time (ie lunch, after school).
- If emailing, you must email before midnight before the next lesson. If you have a problem with your internet connection, let me know the day before homework is due and I will supply you with a printout of the homework questions. I will not accept computer problems as an excuse.
- If you are doing your homework on paper, don't complete it in your book, do it on loose paper so I can take it with me for marking.
- If non-completion of homework is a constant problem for you, school policies will be followed (arvo detentions, phoning parents etc)
Wednesday, 16 July 2008 (due Friday, 18 July)
- Complete your group's project proposal for your Programming Project.
Wednesday, 4 June 2008 (due Wednesday, 11 June)
- A take-home revision test. Try not to look up your notes until after you've finished. That way, you get a better idea of which areas need attention. Besides, you'll find that some questions may give you hints or guidance for other questions.
- Solutions are found here.
Wednesday, 21 May 2008 (due Wednesday, 28 May)
- Complete the requirement on this page.
A solution is found here.
Wednesday, 14 May 2008 (due Friday, 16 May)
- This one's really easy guys (and ladies) so there really is NO excuse for not having done homework this time. Go to this page in the discussion forum and complete the instructions.
Friday, 9 May 2008 (due Monday, 12 May - no exceptions!)
1. Prepare pseudocode for an algorithm to input a set of test marks. The algorithm must report the average mark (ie total of all marks divided by number of marks) of the students and also the highest and lowest marks (hint: if mark>highest then highest=mark). Get the user to enter a negative number to finish the loop (ie it's an unknown number of entries). Be sure that the negative number is not included as part of the average.
2. This time, prepare a flowchart for an algorithm to input a set of test marks. The algorithm must report the average mark of the students and also the highest and lowest marks (hint: if mark>highest then highest=mark). Get the user to enter the number of entries before the loop starts (ie it's a known number of entries).
Flowcharts are a pictorial representation of an algorithm with boxes and lines and arrows and stuff. Look up basic flowcharts on google if need be. You could even download a trial version of flowchart software (eg WizFlow) to make it easier to create your flowchart - believe me, it's better than using Word, Paint or handwriting!
Don't forget, if homework is not completed by the due date, you risk an automatic Wednesday arvo detention.
Solutions to both questions are found here.
Monday, 21 April 2008 (due Monday, 28 April)
You will have already written pseudocode for an algorithm that chooses a random number (1-100), and allows the user as many chances as required to guess the number, telling them if their guess is too high or too low. If the user guesses correctly, it then congratulates the user and end the program. The following algorithm does just that:
Number_Guess_Algorithm
_ secret_number = RANDOM 100
_ REPEAT
_ _ READ guess
_ _ IF guess > secret_number THEN message = 'too high'
_ _ IF guess < secret_number THEN message = 'too low'
_ UNTIL guess = secret_number
_ WRITE 'congratulations'
END
Using the above algorithm as your starting point, rewrite your algorithm with the following changes:
- Keep track of the number of guesses your user has, and output this to the user with each turn.
- Modify your congratulatory message to tell the user how many turns it took them.
- Add an 'outer loop' that repeats the whole process again (with a new secret number) if the user chooses to do so after correctly guessing a number.
- Add a ‘hint’ message that advises the user if they are ‘freezing’ ‘cold’ ‘warm’ or ‘hot’, depending on their distance to the secret number. Do this using CASE… OF.
Remember, use correct indentation, name your algorithm and end it. Use indentation and comments in your program.
Solution is found here in this text file.
Monday, 10 March 2008 (due Friday, 14 March)
- Don't forget your second writing task article must be ready by Friday 14 March plus a replacement for article one if I have advised you that you need to find another one. I will give you until after Easter to find article three, but your first two must be finalised by Friday 14 March.
- Remembering that the three requirements of an algorithm is that it is unambiguous (clear), finite (will end), and general (can be used in a variety of situations), identify what is wrong with the following algorithms, and rewrite them so they will suit the required task:
Algorithm 1: List all odd numbers from 1 to 10
NUMBER = 1
write NUMBER
increment NUMBER by 2
go back to step 2
Solution:
The problem here is that the algorithm is infinite - it does not actually stop when it gets to 10 (actually 11 in this case, as 10 is skipped over).
Algorithm 2: Start and maintain a telephone conversation
read NUMBER
dial NUMBER
lift handset
listen
speak
hang up
Solution:
Problem 1 - if you dial the number before lifting the handset the number won't actually dial as there will not have been a dial tone. Problem 2 - it is not a two-way conversation - first you listen, then speak, then hang up. You should have a loop so that listen and speak is repeated, and a condition to determine when to hang up, eg if 'goodbye' is said.
- What would be the output of each of the following pseudocode examples?
3. The user enters 5 for HOURS and the RATE is $25.50.
read HOURS
PAY = HOURS * RATE
write PAY
Solution:
127.5
4. The user enters 3 hours for TIME.
read TIME
QUARTERS = TIME * 4
COST = QUARTERS * 15 + 35
write COST
(hint: remember your order of operations - powers, parentheses, multiplication/division, subtraction/addition)
Solution:
215
- Write pseudocode for the following examples.
5. If a matchbox contains 45 matches, write the pseudocode for an algorithm to calculate how many total matches there will be for whatever number of boxes the user enters. For example, if the user enters 10 matchboxes, there are 450 matches total.
Solution:
matchbox = 45
READ number_of_boxes
total_matches = matchbox * number_of_boxes
WRITE total_matches
6. Australia now uses the metric system. In the past, length was measured in feet and inches. An inch is approx 2.54 cm, and there are 12 inches in one foot.
Prepare the pseudocode for an algorithm to have the user enter feet and inches.
This must be converted to inches only (eg if the user enters 2 feet and 5 inches this is converted to 2 * 12 + 5 = 29 inches).
This is then converted to centimetres (eg 29 * 2.54 = 73.66 cm).
Finally, output the length in centimetres.
Solution:
READ feet
READ inches
total_inches = (feet * 12) + inches
centimetres = 2.54 * total_inches
WRITE centimetres
Friday, 7 March 2008
No homework set.
Wednesday, 5 March 2008
No homework set. Don't forget your first writing task article must be ready by Friday 7 March. If not, you will spend your lunchtime searching for one. I am referring to the four students who have not yet emailed me.
Monday, 3 March 2008
No homework set.
Friday, 29 February 2008
In class we completed the following exercise in Visual Basic, as Delphi was unavailable.
Design a form that allows a user to specify the features of a card game, using Delphi’s standard components. Identify any components that you use with their correct name (eg radio button, Memo).
The user can choose from the following options, use an appropriate component for each one:
- Number of players (choose between 2, 3, 4)
- Player 1 name (player enters name)
- Player 2 name (player enters name, choose between computer/user)
- Player 3 name (player enters name, choose between computer/user)
- Player 4 name (player enters name ,choose between computer/user)
- Number of decks (choose 1-2)
- Deck theme (choose from Classic, Simpsons, World Series, Flags of the world)
- Include Jokers (choose Y/N)
- Difficulty level (choose from scale of 1-10)
- Game style (choose from tricks or continuous)
- GO! Button
- Exit button
- The form should have toolbar menu items ‘File’ and ‘Help’
Wednesday, 27 February 2008
No homework set.
Monday, 25 February 2008
No homework set.
Friday, 22 February 2008 (due Monday, 25 February)
1. Finish off your work from class if outstanding.
2. Write an algorithm (in plain English) to enable somebody to sort the students in our class into height order. You will need to make use of loops and conditions. This is a real opportunity to be creative in finding an efficient way to sort data; if you are stuck for a method, try reading the description and 'idea' behind these sort methods.
Bubble Sort
Insertion Sort
Merge Sort
Quick Sort
Wednesday, 20 February 2008 (due Friday, 22 February)
No homework set.
Monday, 18 February 2008 (due Wednesday, 20 February)
1. CPU revision
a) Draw a simple diagram demonstrating the relationship between the CPU and memory (both types), input devices and output devices. Label the parts and ensure you include the arrows to represent the flow of information.
b) On your diagram, break down main memory into its two types and label each. Include appropriate arrows to indicate the flow of information between the two types of main memory and the CPU.
c) Remember that we decided a modem or router was both an input and output device. Update your diagram to demonstrate this, again ensuring you include arrows.
Here is the best way to draw the diagram. Note that the CPU cannot write information to ROM, but information goes both ways between RAM and the CPU. Also, the Modem and Router are identified as both Input and Output devices. If they were in their own box not connected to input or output then it's not really clear what type of component they are.
2. More logic revision
a) Here is a truth table. Your task is to create a logic circuit that produces these outputs. Use whatever combination of AND, OR and NOT gates you need (you may not need one type, or you may need more than one of a type).
| A | B | C | D | output |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 1 |
| 0 | 0 | 0 | 1 | 1 |
| 0 | 0 | 1 | 0 | 1 |
| 0 | 0 | 1 | 1 | 1 |
| 0 | 1 | 0 | 0 | 1 |
| 0 | 1 | 0 | 1 | 1 |
| 0 | 1 | 1 | 0 | 1 |
| 0 | 1 | 1 | 1 | 1 |
| 1 | 0 | 0 | 0 | 1 |
| 1 | 0 | 0 | 1 | 1 |
| 1 | 0 | 1 | 0 | 1 |
| 1 | 0 | 1 | 1 | 1 |
| 1 | 1 | 0 | 0 | 0 |
| 1 | 1 | 0 | 1 | 0 |
| 1 | 1 | 1 | 0 | 1 |
| 1 | 1 | 1 | 1 | 0 |
Here are two possible circuits that produce the correct outputs:

Friday, 15 February 2008
No homework set. Completed in class a revision quiz on Programming languages, by reading the textbook pages 36-38, then completing this revision quiz by memory (cooperation was allowed, but no textbook), then re-reading the section of the textbook and updating/correcting responses to the questions.
Wednesday, 13 February 2008
Complete the answers to the 'Backup' questions you wrote in class.
- What is leapfrogging?
- What are incremental backups?
- What are some reasons you may wish to restore a backup?
- What does it mean if a file is fragmented?
- What would cause a file to be fragmented?
- What does defragmentation do to your disc?
- What are the benefits of defragmentation?
- What backup media/devices can you use?
More Questions
1. Memory Measurement
Using the following table for memory measurement, answer the questions below.
| Unit name | Abbreviation | Size | example of use |
|---|---|---|---|
| binary digit | bit | 1 bit | an integrated circuit |
| byte | B | 8 bits | a memory register |
| kilobyte | KB | 1024 bytes | 5.25 inch floppy disc 360 KB |
| megabyte | MB | 1024 KB | CD 800 MB |
| gigabyte | GB | 1024 MB | DVD 4-9 GB or blue-ray disc 50 GB |
| terabyte | TB | 1024 GB | newer Hard Disc Drives 1 TB and greater |
Also, similar to calling half a byte a nibble, there are some people out there who call 2 bits a crumb. But lets not go there…
a) How many bits in 4 bytes? 32 bits (8 bits per byte x 4 bytes)
b) How many bytes in 1 MB? 1,048,576 bytes (1024 bytes per kilobyte x 1024 kilobytes per megabyte)
c) How many KB in 10 GB? 10,485,760 kilobytes (1024 kilobytes per megabyte x 1024 megabytes per gigabyte x 10)
d) How many MB in 500 TB? 524,288,000 megabytes (1024 megabytes per gigabyte x 1024 gigabytes per terabyte x 500)
e) How many bits in 4 KB? 32,768 bits (8 bits per byte x 1024 bytes per kilobyte x 4)
f) Why are we dealing with 1024 times the previous measurement, instead of 1000 times the previous measurement? Because computers work in binary which means it counts in powers of 2 (1024 is 210) not powers of 10 (1000 is 103)
2. Logic Gate revision
a) Draw an integrated circuit with 4 inputs (A,B,C,D) and at least one OR gate, one AND gate and one NOT gate. If you're doing this by email, either draw and scan or draw your circuit using Paint or some other program, then copy and paste it into your word doc or attach to your email. OR, you might find it easier to design your circuit using this program, and copy and paste your screenshot into your word doc.
b) Complete your truth table for your integrated circuit, as follows:
| A | B | C | D | output |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | |
| 0 | 0 | 0 | 1 | |
| 0 | 0 | 1 | 0 | |
| 0 | 0 | 1 | 1 | |
| 0 | 1 | 0 | 0 | |
| 0 | 1 | 0 | 1 | |
| 0 | 1 | 1 | 0 | |
| 0 | 1 | 1 | 1 | |
| 1 | 0 | 0 | 0 | |
| 1 | 0 | 0 | 1 | |
| 1 | 0 | 1 | 0 | |
| 1 | 0 | 1 | 1 | |
| 1 | 1 | 0 | 0 | |
| 1 | 1 | 0 | 1 | |
| 1 | 1 | 1 | 0 | |
| 1 | 1 | 1 | 1 |
That'll do for now…
Monday, 11 February 2008
Those people who did not complete homework from last lesson, do it and either email me (preferred) or write it and bring it in by next lesson (13/2/08). If not received, you will be staying in after the lesson to catch up - even if you have to handwrite the memory summary again. You know who you are!
Complete the following exercises in your workbook, and bring it to class on Wednesday for checking and discussion:
1. Convert the following binary numbers to decimal:
a) 110110112 = 1 + 2 + 0 + 8 + 16 + 0 + 64 + 128 = 219
b) 111111112 = 1 + 2 + 4 + 8 + 16 + 32 + 64 + 128 = 255
c) 100000012 = 1 + 0 + 0 + 0 + 0 + 0 + 0 + 128 = 129
d) 11101110111011102 = 0 + 2 + 4 + 8 + 0 + 32 + 64 + 128 + 0 + 512 + 1024 + 2048 + 0 + 8192 + 16384 + 32768 = 61166
2. Convert the following decimal numbers to binary:
a) 19910 = 11000111
b) 25610 = 100000000
c) 51110 = 111111111
d) 105510 = 10000011111
3. Add the following binary numbers:
a) 1100 + 10 = 1110
b) 1100 + 1100 = 11000
c) 10101 + 10010 = 100111
d) 100000 + 100001 = 1000001
e) 1011111 + 111111 = 10011110
Use this table as a reference when adding the numbers:
| addition | carry-on | sum |
|---|---|---|
| 0 + 0 | 0 | 0 |
| 0 + 1 | 0 | 1 |
| 1 + 1 | 1 (1 + 1 = 2, which is 10 in binary) | 0 |
| 1 + 1 + 1 | 1 (1 + 1 + 1 = 3, which is 11 in binary) | 1 |
4. Read 'Operating Systems' on pages 30-31 of 'Talking Computers' (that's a link to the two pages - 890Kb file).
Answer the following questions about operating systems:
a) Why won't a Macintosh program normally run on a Windows computer? What could you do to make it possible?
b) State whether your computer at home is a standalone or networked computer and explain why.
c) In your own words, describe the function of an operating system.
Friday, 8 February 2008
Complete the blanks in this summary of the memory text in the textbook (pp21-22). here is the complete solution