Corning Community College
CSCS1320 C/C++ Programming
Assignments, Documents, Information, and Projects
======Projects======
| [[/haas/fall2017/cprog/projects/cci0|cci0]] (due 20170826) |
| [[/haas/fall2017/common/projects/wcp|wcp1]] (due 20170826) |
| [[/haas/fall2017/cprog/projects/dtr0|dtr0]] (due 20170830) |
| [[/haas/fall2017/common/projects/wcp|wcp2]] (due 20170902) |
| [[/haas/fall2017/cprog/projects/sof0|sof0]] (due 20170906) |
| [[/haas/fall2017/common/projects/wcp|wcp3]] (due 20170909) |
| [[/haas/fall2017/cprog/projects/dow0|dow0]] (due 20170913) |
| [[/haas/fall2017/common/projects/wcp|wcp4]] (due 20170916) |
| [[/haas/fall2017/cprog/projects/mbe0|mbe0]] (due 20170920) |
| [[/haas/fall2017/common/projects/wcp|wcp5]] (due 20170923) |
| [[/haas/fall2017/cprog/projects/cbf0|cbf0]] (due 20170927) |
| [[/haas/fall2017/common/projects/wcp|wcp6]] (due 20170930) |
| [[/haas/fall2017/cprog/projects/cos0|cos0]] (due 20171004) |
| [[/haas/fall2017/common/projects/wcp|wcp7]] (due 20171007) |
| [[/haas/fall2017/cprog/projects/pnc0|pnc0]] [[[/haas/fall2017/cprog/projects/pnc0/metrics|metrics]]] (due 20171018) |
| [[/haas/fall2017/cprog/projects/mbe1|mbe1]] (BONUS -- due 20171018) |
| [[/haas/fall2017/common/projects/wcp|wcp8]] (due 20171021) |
| [[/haas/fall2017/cprog/projects/pnc1|pnc1]] [[[/haas/fall2017/cprog/projects/pnc1/metrics|metrics]]] (due 20171025) |
| [[/haas/fall2017/common/projects/wcp|wcp9]] (due 20171028) |
| [[/haas/fall2017/cprog/projects/gfo0|gfo0]] (due 20171101) |
| [[/haas/fall2017/common/projects/wcp|wcpA]] (due 20171104) |
| gfo1 (due 20171108) |
| [[/haas/fall2017/common/projects/wcp|wcpB]] (due 20171111) |
| @lightgreen:gfo2 (due 20171115) |
| @lightgreen:[[/haas/fall2017/common/projects/wcp|wcpC]] (due 20171118) |
======Class Stats======
* [[/haas/fall2017/cprog/projects/status|status]] (coming at some point)
======Week 12======
* Polymorphism, perhaps templates
* applying your object-oriented skills to gfo1, yielding gfo2
======Week 11======
* Next (likely last weekly) project is gfo1 + classes/objects (gfo2)
* minimum of 3 classes centrally important to the process
* for example:
* projects class
* participation class
* journal class
* if you organize it right, it could be a good candidate for inheritance
======Week 10======
* Next project is gfo0 + functions (gfo1)
* minimum of 3 functions doing centrally important activities to the process
* for example:
* function to read data from files into array(s)
* function to calculate totals/results of grade component
* function to display information
* main() is basically playing the role of an operator- it is merely calling functions, and passing information back and forth as need be, but not otherwise doing any of the core processing
======Week 9======
* We are looking to start Object-Oriented Programming this week.
======Week 8======
* We continue gaining experience putting together all the various things explored so far this semester. This will continue with our next project, **pnc1**, which has us exploring some algorithmic optimizations to improve performance and runtime.
* Looking to continue our explorations by covering **functions**, which will enable us to make our code more organized and modular.
======Break 1======
* The week 7 journal entry will be your bonus break week entry. You'll have until Thursday of break week to modify it, at which point I'll roll it to week 8 (which will be a normal weekly entry- our journal entries will now sync up with the week!). If you don't touch week 7 it won't harm you, it will only help you if you contribute any content.
======Week 7======
* I got very few questions on **cbf0**, and of all the people that submitted it, nobody got the ASCII rendering section correct.
* Knowledge assessment in class on Wednesday.
* I've not gotten any questions on **cos0**... hopefully that has been coming along without issues.
======Week 6======
* I'd like to have a knowledge assessment next week, probably Wednesday. A chance to further demonstrate your keen understanding of all the stuff we've been playing with so far (variables, mathematical/logical expressions, selection statements, loops).
* We'll be spending a few weeks working with everything we've learned so far, getting used to applying the concepts and using things in combination in order to implement results to various problems.
* The projects are largely a reflection of that, different themes to implement solutions against.
* We explored the GD library last week. We'll continue a bit on that, looking at structures and making polygons.
======Week 5======
* Loops, loops, and some more loops were covered last week.
* We explored implementing a multiplication table (starting with just a row, then moving onto the whole table, which is just a collection of rows (logically).
* Looking to explore arrays and loops this week, as the two are have a rather synergistic relationship.
* Our next project, **cbf0**, will make central use of both loops and arrays.
======Week 4======
* Lots of neat and interesting topics covered; hopefully many are seeing programming is far more than just rearranging various building blocks to light things up- we are encapsulating ideas for the purposes of expression.
* We will probably get into loops this week, a great optimizer and conceptual enhancer of algorithms.
======Week 3======
* We continue our explorations, having touched on selection statements last week.
* Possibly double back on variables and types, give pointers some love.
* Or start looking ahead to our next topic of loops.
* cci0 has been evaluated, dtr0 is on my list of things to do. At this point '**status cprog**' should be fully populated.
======Week 2======
* We seem to have made it through the first week okay. I've not had too many questions, but I've also not had none. As the first week projects were predominantly "getting started" activities and not outright programming, I would hope to see an uptick as the **dtr0** project starts nearing its deadline.
* I'll be introducing our next project, **sof0**, but should anyone already be that far ahead, the project after that- **dow0** is also available.
* We started talking about variables (types, storage) and numeric representations at the end of our time in week 1, so we'll be looking to continue that conversation this week.
======Week 1======
* Welcome! I've wrapped some initial activities into the **cci0** and **dtr0** projects, that I'd like you to perform by the given deadlines (by 11:59:59pm / 23:59:59 on posted day).
* If you've never used a UNIX system before, I'd recommend reading **{{:haas:ufbm.pdf|UNIX for the Beginning Mage}}**; it is short, and likely one of the best reads you'll ever have.
* Get familiar with how to log onto Lab46, and once on:
* change to your **src/** subdirectory
* create/edit .c files (such as **hello.c**), and learn how to save/exit
* compile the C program (.c file(s)) into an executable with **gcc**
* execute the compiled C program (the executable) by specifying a path: **./program_name**
* I've also early released next week's project this week (a pattern I hope to maintain), should people really like to get a leg up on things (**sof0**).