User Tools

Site Tools


haas:fall2020:discrete:projects:pnc0

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
haas:fall2020:discrete:projects:pnc0 [2020/09/01 14:32] – [Program Specifications] wedgehaas:fall2020:discrete:projects:pnc0 [2020/09/15 14:13] (current) – [Program Specifications] wedge
Line 269: Line 269:
     * as primes are being displayed, they are space-separated (first prime hugs the left margin), and when all said and done, a newline is issued.     * as primes are being displayed, they are space-separated (first prime hugs the left margin), and when all said and done, a newline is issued.
     * the timing information will be displayed in accordance to code I will provide below (see the **Timing** section).     * the timing information will be displayed in accordance to code I will provide below (see the **Timing** section).
 +
 +=====Implementation Restrictions=====
 +
 +As our goal is not only to explore the more subtle concepts of computing but to promote different methods of thinking (and arriving at solutions seemingly in different ways), one of the themes I have been harping on is the stricter adherence to the structured programming philosophy. It isn't just good enough to be able to crank out a solution if you remain blind to the many nuances of the tools we are using, so we will at times be going out of our way to emphasize focus on certain areas that may see less exposure (or avoidance due to it being less familiar).
 +
 +As such, the following implementation restrictions are also in place:
 +
 +  * use any **break** or **continue**, or other flow redirection statements sparingly. I am not forbidding their use, but I also don't want this to turn into a lazy solution free-for-all. I am letting you use them, but with **justification**.
 +    * **justification** implies some thoughtful why/how style comments explaining how a particular use of one of these statements is effective and efficient (not: "I couldn't think of any other way to do it").
 +  * absolutely **NO** infinite loops (**while(1)** or the like).
 +  * no forced redirection of the flow of the process (no seeking to the end of the file to grab a max size only to zip back somewhere else: deal with the data in as you are naturally encountering it; no telling; no "ungetting" data back into the file).
 +  * All "arrays" must be declared and referenced using ONLY pointer notation, NO square brackets.
 +  * **NO** logic shunts (ie having an if statement nested inside a loop to bypass an undesirable iteration)- this should be handled by the loop condition!
 +  * at most, only **one** return() statement per function. Error terminations should use **exit()**
 +
 +Write clean, well-indented, well-commented, effective code... show me that you have learned something from your programming experience.
  
 =====Grabit Integration===== =====Grabit Integration=====
haas/fall2020/discrete/projects/pnc0.1598970776.txt.gz · Last modified: 2020/09/01 14:32 by wedge