[ANU] [DCS] [COMP2100/2500] [Description] [Schedule] [Lectures] [Labs] [Homework] [Assignments] [COMP2500] [Assessment] [PSP] [Java] [Reading] [Help]
COMP2100/2500
HomeworkWeekly homework is an important part of COMP2100 and COMP2500. In previous years it has been marked and the marks counted towards your final mark for the course. This year we can no longer afford to do this, so the homework is not worth any marks. However before you decide that you will save time by not doing the homework, consider this:
I guarantee that one of the homework exercises will be repeated on the final exam. If you have not done it, you will be at a serious disadvantage, in a time-pressure situation. Clearly you are now free to collaborate on the homework exercises as much as you like. My recommendation, however, would be to make a serious effort to do the homework by yourself. A good idea would be to set aside a particular time each week for homework. Then when you have completed it, you could get extra value from it by comparing your solution with other students and discussing the differences.
Aims
To provide an opportunity for you to learn and practice the PSP.
To provide you with an opportunity and an incentive to do regular programming, thus improving your skills.
The initial aim was just #1 above. The idea was that there is little point in doing the PSP on challenging programming tasks that cover completely new ground for you. While you are learning new skills there is no point in recording your time and trying to learn something from the statistics. You have a much better chance of learning something from the PSP while carrying out routine programming tasks — ones that aren't a major challenge involving new concepts and techniques. The idea is that the homework programs should be relatively straightforward. Your challenge is to write them well, in a reasonable time, with as few defects as possible and to learn to predict your own process.
In 2002, 2003 and 2004 many students found that the homework helped them to improve their programming skills quite dramatically. What I had expected to be easy tasks turned out to be rather difficult at first for many students, but by mid-way through the semester their skills had improved to the point where they were much more confident and capable programmers. If you are weak in Java programming at the start of the semester, look at these weekly programming exercises as an opportunity to turn that weakness into a strength.
The exercises
Here are links to the homework exercises. For your convenience, there are also links on the Schedule Page.
Homework 1. Character table.
Homework 2. Factorisation of positive integers.
Homework 3. Average of numbers entered from the keyboard.
Homework 4. Roots of quadratic equations.
Homework 5. Counting logical lines of code.
Homework 6. Writing numbers out in words, part I (small numbers).
Homework 7. Writing numbers out in words, part II (big numbers).
Homework 8. Writing numbers out in words, part III (writing cheques).
Homework 9. Expressing each number in a list as a percentage of the total.
Homework 10. Making change. (How many of each type of coin do you need to make a particular amount?)
Homework 11. Sorting integers using a binary search tree.
Homework 12. Finding the five commonest words in a text file.
[ANU] [DCS] [COMP2100/2500] [Description] [Schedule] [Lectures] [Labs] [Homework] [Assignments] [COMP2500] [Assessment] [PSP] [Java] [Reading] [Help]
Copyright © 2005, Ian Barnes, The Australian National University
Version 2005.3, Monday, 14 February 2005, 10:30:20 +1100
Feedback & Queries to
comp2100@cs.anu.edu.au