Course material 2010–11
Programming in Java
![]() | ![]() |
| Alastair Beresford | Andrew Rice |
Principal lecturers: Dr Alastair Beresford, Dr Andrew Rice
Taken by: Part IA CST, Part IA NST, Part I PPS
Syllabus
Past exam questions
Put your Java skills to use over the summer working with us on research (related) projects developing mobile phone applications for Google Android.
more information
Practical classes
Students are expected to attend one practical session per week. The dates and times of the practical sessions associated with this course are as follows:
| Date | Time | Ticker |
|---|---|---|
| Thursday 20th January | 2pm — 4pm | A & B |
| 4pm — 6pm | C & D | |
| Thursday 27th January | 2pm — 4pm | A & B |
| 4pm — 6pm | C & D | |
| Thursday 3rd February | 2pm — 4pm | A & B |
| 4pm — 6pm | C & D | |
| Thursday 10th February | 2pm — 4pm | A & B |
| 4pm — 6pm | C & D | |
| Thursday 17th February | 2pm — 4pm | A & B |
| 4pm — 6pm | C & D | |
| Thursday 24th February | 2pm — 4pm | A & B |
| 4pm — 6pm | C & D | |
| Thursday 3rd March | 2pm — 4pm | A & B |
| 4pm — 6pm | C & D | |
| Thursday 10th March | 2pm — 4pm | A & B |
| 4pm — 6pm | C & D |
Game of Life Animations (Tick3*)
![]()
![]()
![]()
![]()
![]()
![]()
![]()
The submissions for Tick3* can be viewed here
Audio representations of the Game of Life (Tick 5*)
Workbooks
- Introduction (PDF)
- Workbook 1 (PDF)
- Workbook 2 (PDF)
- Workbook 3 (PDF)
- Workbook 4 (PDF)
- Workbook 5 (PDF)
- Workbook 6 (PDF)
- Workbook 7 (PDF)
You may find the restart guide helpful if you need to reboot your PWF workstation from Windows into Linux.
Workbook Errata
The printed workbooks contain (at the very least!) the following errors. Errors are indexed by workbook (W), page (P) and line (L), which may be negative, indicating that the reader should count upwards from the bottom of the page. These errors have been corrected in the on-line versions of the workbooks shown above. If you find any further errors, please email ticks1a-admin[at]cl.cam.ac.uk.
| W | P | L | Errata | Corrige | From |
|---|---|---|---|---|---|
| 1 | 14 | 13 | b >= a+2 | a >= b+2 | dm547 |
| 2 | 2 | 9 | PackedtLong | PackedLong | lab61 |
| 2 | 3 | 7 | your third Java Tick | your second Java Tick | mb809 |
| 2 | 9 | -9 | uk.ac.cam.your-crsid.TinyLife | uk.ac.cam.your-crsid.tick2.TinyLife | ar578 |
| 6 | 9 | 7 | stepSlider = createNewSlider(1,10,0,Strings.CONTROL_STEP); | stepSlider = createNewSlider(0,10,0,Strings.CONTROL_STEP); | fh291 |
Bit visualisation programs
You can download three bit visualisation programs from this website:
- b2d.jar (exploring binary to decimal conversion)
- d2b.jar (exploring decimal to binary conversion)
- bitwise.jar (exploring bitwise operators)
To use the programs, download them to your home directory, start a new shell, and run the jar file as described in the workbook. For example, to run bitwise.jar you would type the following:
java -jar bitwise.jar
Each program will print out a helpful usage message which you can use to work out what additional options to give the program. Ask a demonstrator for help if you get stuck.
Seating assignments
Students have been assigned the following seats for the practical classes. Please email the Principal Lecturers without delay if your name is not on this list and you are a Part IA CST student or otherwise due to offer Paper 1 of Part IA CST.
| Student | CRSID | Ticker | Machine |
|---|---|---|---|
| Adeyefa, Paul | paa36 | A | PCCL001 |
| Andrade, Olly | oa235 | A | PCCL002 |
| Arran, Chris | cda25 | A | PCCL003 |
| Baker, Ian | icb26 | A | PCCL004 |
| Barker, David | djb218 | A | PCCL005 |
| Barley, Alex | ab914 | A | PCCL006 |
| Barry, Rob | rtb33 | A | PCCL007 |
| Benfold, William | wjb42 | A | PCCL008 |
| Bosman, Sarah | seib2 | A | PCCL011 |
| Brazdeikis, Matas | mb809 | A | PCCL012 |
| Honzakova, Kate | kh486 | A | PCCL013 |
| Brigg, Robert | rcb52 | A | PCCL014 |
| Brown, Lewis | lab61 | A | PCCL015 |
| Burton, Jonathan | jpb73 | A | PCCL016 |
| Kirk, Matthew | mjk58 | A | PCCL017 |
| Manton, Ashley | ajdm2 | A | PCCL018 |
| Marnerides, Demetris D. | dm547 | A | PCCL019 |
| Millington, Tom | tam49 | A | PCCL021 |
| Morley, James | jwm40 | A | PCCL022 |
| Moss, Joel | jmm208 | A | PCCL023 |
| Moulang, Katie | klm65 | A | PCCL024 |
| Moussa, Tarik | tm428 | A | PCCL025 |
| Munoz, Eduardo | em487 | A | PCCL026 |
| Newson, George | gn243 | A | PCCL027 |
| Ngorok, Nicholas | nn256 | A | PCCL028 |
| Ni, hao | hn263 | A | PCCL029 |
| O'Sullivan, Amy | afo22 | A | PCCL030 |
| Oram, Will | wjto2 | A | PCCL031 |
| Selvi, Marco | ms959 | A | PCCL032 |
| Chambers, Nick | nrc39 | B | PCCL033 |
| Chan, Wing | wyc29 | B | PCCL034 |
| Cheetham, Matthew | mjc240 | B | PCCL035 |
| Chetwin, Thomas | tec38 | B | PCCL036 |
| Cochrane, Rachel | rkc29 | B | PCCL037 |
| Cole, Nathan | nlc31 | B | PCCL038 |
| Collins, Hugh | hc365 | B | PCCL039 |
| Cook, Edward | eec35 | B | PCCL041 |
| Crawford, Ophelia | oc251 | B | PCCL042 |
| d'Souza, Joaquim | jwd38 | B | PCCL043 |
| Dagys, Andrius | ad584 | B | PCCL044 |
| Eadie, Calum | cje46 | B | PCCL045 |
| Ede, Dylan | dje38 | B | PCCL046 |
| Gare, Marcus | mg585 | B | PCCL047 |
| Glotnis, Roland | rg428 | B | PCCL048 |
| Goh, Timothy | tg319 | B | PCCL049 |
| Grant, James | jg595 | B | PCCL051 |
| Ouldridge, William | wro20 | B | PCCL052 |
| Palyutina, Karina | kp368 | B | PCCL053 |
| Pattuzzi, Sam | sp598 | B | PCCL054 |
| Perera, Noel | nap35 | B | PCCL055 |
| Prankerd-Smith, James | tjap3 | B | PCCL056 |
| Ragan, Harry | hr309 | B | PCCL057 |
| Ramsay, Ben | br320 | B | PCCL058 |
| Rolph, Andrew | ar578 | B | PCCL059 |
| Rothwell, Colin | cr437 | B | PCCL061 |
| Saban, Edward | ejs81 | B | PCCL062 |
| Sanduleac, Dan | ods22 | B | PCCL063 |
| Scheps, Raphael | rs658 | B | PCCL064 |
| Shepherd, Charlie | cs648 | B | PCCL065 |
| Sidor, Simon | ss958 | B | PCCL066 |
| Smith, Tom | tcs40 | B | PCCL067 |
| Sparrow, Tom | tps30 | B | PCCL068 |
| Spencer, Max | ms955 | B | PCCL069 |
| Spooner, Nick | ns507 | B | PCCL070 |
| Blessenohl, Simon | sb814 | C | PCCL001 |
| Brashko, James | jb705 | C | PCCL002 |
| Diestel, Oliver | cod24 | C | PCCL003 |
| Emerson, Hugh | hfte2 | C | PCCL004 |
| Farkas, Marton | mbf23 | C | PCCL005 |
| Farrell, Gideon | gtf21 | C | PCCL006 |
| French, Jon | jf451 | C | PCCL007 |
| Gadd, Matthew | mg541 | C | PCCL008 |
| George, Ashley | ag645 | C | PCCL011 |
| Gibson, Louis | lg401 | C | PCCL012 |
| Green, Dan | dg374 | C | PCCL013 |
| Gwillim, Alex | ag647 | C | PCCL014 |
| Hadjimichael, Marios | mh620 | C | PCCL015 |
| Harpole, Alice | ah631 | C | PCCL016 |
| Heath-Renn, Frederick | fh291 | C | PCCL017 |
| Mrksic, Nikola | nm480 | C | PCCL018 |
| Osmjans, Oleg | oo238 | C | PCCL019 |
| Park, Sunoo | sp590 | C | PCCL021 |
| Phillips, Liz | erp39 | C | PCCL022 |
| Pritchard, David | dap45 | C | PCCL023 |
| Seth, Rishi | rs655 | C | PCCL024 |
| Solari, Catherine | cs641 | C | PCCL025 |
| Staples, Aidan | ass37 | C | PCCL026 |
| Sutcliffe, Thom | tls31 | C | PCCL027 |
| Szczypinski, Filip | fts21 | C | PCCL028 |
| Taebipour, Mona | mt519 | C | PCCL029 |
| Takacs, Peter | pt332 | C | PCCL030 |
| Tangpanitanon, Tiew | jt467 | C | PCCL031 |
| Thomas, Daniel | dt365 | C | PCCL032 |
| Thomson, Matt | mt521 | C | PCCL033 |
| Thorner, Ben | bjt38 | C | PCCL034 |
| Brazdil, David | db538 | D | PCCL035 |
| Horsman, Alex | ajh239 | D | PCCL036 |
| Howard, Heidi | hh360 | D | PCCL037 |
| Iremonger, Simon | smi29 | D | PCCL038 |
| Ivkovic, Ognjen | oi212 | D | PCCL039 |
| Jennings, William | wj240 | D | PCCL041 |
| Khan, Sami | sk644 | D | PCCL042 |
| King, James | jk509 | D | PCCL043 |
| Knox, John | jk510 | D | PCCL044 |
| Kovalev, Vlad | vk283 | D | PCCL045 |
| Li, Ran | rl419 | D | PCCL046 |
| Lindesay, Forbes | fpfl2 | D | PCCL047 |
| Liu, Yolanda | yl431 | D | PCCL048 |
| Makris, Christos | cm630 | D | PCCL049 |
| Sweeney, Chris | cs649 | D | PCCL050 |
| McCann, Rory | rsm54 | D | PCCL051 |
| Mitra, Shreedipta | sm859 | D | PCCL052 |
| Thornton, Michael | mt518 | D | PCCL053 |
| Turc, Raluca | irt24 | D | PCCL054 |
| Tykarski, Michael | mt515 | D | PCCL055 |
| Ursulis, Antanas | au231 | D | PCCL056 |
| Wang, Qian | dw394 | D | PCCL057 |
| Warrington, Chris | cw471 | D | PCCL058 |
| Whyte, Jack | jbw30 | D | PCCL059 |
| Winter, Clemens | cw470 | D | PCCL061 |
| Wood, S | sw557 | D | PCCL062 |
| Woods, Jenny | jlw70 | D | PCCL063 |
| Wright, Shaun | spw38 | D | PCCL064 |
| Wu, Yong | yw311 | D | PCCL065 |
| Yuan, Kevin | hky22 | D | PCCL066 |
| Zhang, Jason | jcz20 | D | PCCL067 |
| Zhao, Yifan | yz369 | D | PCCL068 |
| Nowack, Peter | pjn35 | D | PCCL069 |


