User Tools

Site Tools


haas:fall2020:c4eng:projects:gfo0

Differences

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

Link to this comparison view

haas:fall2020:c4eng:projects:gfo0 [2018/10/22 14:52] – external edit 127.0.0.1haas:fall2020:c4eng:projects:gfo0 [2020/09/18 08:32] (current) wedge
Line 1: Line 1:
 <WRAP centeralign round box> <WRAP centeralign round box>
 <WRAP><color red><fs 200%>Corning Community College</fs></color></WRAP> <WRAP><color red><fs 200%>Corning Community College</fs></color></WRAP>
-<WRAP><fs 150%>CSCS1320 C/C++ Programming</fs></WRAP>+<WRAP><fs 150%>ENGR1050 for Engineers</fs></WRAP>
 </WRAP> </WRAP>
  
-======Project: PROCESS IMPLEMENTATION - GRADE FIGURE-OUTERER (gfo0)====== +{{page>haas:fall2020:common:projects:gfo0#PROJECT}}
- +
-=====Errata===== +
-  * any updates/fixes will appear here +
- +
-=====Objective===== +
-To implement a programmatic solution (ie simulation) of a real life process- the obtaining, processing, and display of your status in the course. +
- +
-=====Prerequisites/Corequisites===== +
-In addition to the new skills required on previous projects, to successfully accomplish/perform this project, the listed resources/experiences need to be consulted/achieved: +
- +
-  * you can calculate percentages +
-  * ability to open and access data from files +
-  * using loops to automate a process +
- +
-=====Background===== +
-Throughout the semester, you've been accumulating points for your class participation, journal, and projects. +
- +
-This information has been accessible via the **status** tool. +
- +
-=====Program===== +
- +
-Throughout the semester, your class-related activities have been numerically captured and made available to you via the **status** tool. +
- +
-Now that we are nearing the end, and your programming skillset is significantly expanded, I would like you to write a program to take this data and calculate your grade (reflective of currently recorded data). +
- +
-The **status** tool has an option that will take all your **status** data and 'flatten' it... converting all the necessary data into one stream of values. To obtain this data, simply run the **status** tool, providing your course desig, as well as the **flatten** argument and the file **DESIG.status.flat** will be created in your current working directory. +
- +
-For example: +
- +
-<cli> +
-lab46:~/src/cprog/gfo0$ status cprog flatten +
-lab46:~/src/cprog/gfo0$ ls +
-cprog.status.flat +
-lab46:~/src/cprog/gfo0$ cat cprog.status.flat +
--1 7 8 7 8 6 8 2 8 0 8 0 8 8 8 1 0 -2 4 4 8 8 11 12 13 16 19 20 24 24 100 0 0 26 24 28 -3 32 39 42 52 32 52 51 52 46 52 52 52 73 78 24 0 -4 +
-lab46:~/src/cprog/gfo0$  +
-</cli> +
- +
-Your program needs to do the following: +
- +
-  * check for and open the **cprog.status.flat** file +
-    * if error occurs, display message and exit +
-  * reading one integer at a time, load the values into an array according to their category +
-  * there will be three categories (arrays), each one identified by a header/sentinel value: +
-    * -1 indicates the start of journal data (13% of grade) +
-    * -2 indicates end of journal data / start of participation data (13% of grade) +
-    * -3 indicates end of participation data / start of project data (52% of grade) +
-    * -4 indicates end of project data (and end of data stream) +
-  * once loaded into their arrays, calculate their totals, and totals out of grade component +
-  * tally up all three, and print out the results +
-  * calculate the current overall score, with a precision of 3 decimal places +
-  * display the letter grade +
- +
-Letter grades are on the following scale: +
- +
-  * A  (100.00+) +
-  * A- (94.00-99.99) +
-  * B+ (88.00-93.99) +
-  * B  (82.00-87.99) +
-  * B- (76.00-81.99) +
-  * C+ (70.00-75.99) +
-  * C  (64.00-69.99) +
-  * D  (58.00-63.99) +
-  * F  ( 0.00-57.99) +
- +
-Final program output should resemble the following (note the formatting/spacing): +
- +
-<cli> +
-lab46:~/src/cprog/gfo0$ ./gfo0 +
-Participation:      / 12 =>  6 / 13 +
-      Journal:  38+1  / 56 =>  9 / 13 +
-     Projects: 328+24 /377 => 48 / 52 +
-------------------------------------- +
-Total:                        63 / 78 +
-===================================== +
-Score:                         80.769 +
-Grade:                             B- +
-lab46:~/src/cprog/gfo0$  +
-</cli> +
- +
-=====Submission===== +
-To successfully complete this project, the following criteria must be met: +
- +
-  * Code must compile cleanly (no warnings or errors) +
-    * Use the **-Wall** and **-std=gnu99** flags when compiling. +
-  * Output must be correct, and resemble the form given in the sample output above. +
-  * Code must be nicely and consistently indented (you may use the **indent** tool) +
-  * Code must utilize the algorithm/equations presented above +
-  * Code must be commented +
-  * Track/version the source code in a repository +
-  * Submit a copy of your source code to me using the **submit** tool. +
- +
-To submit this program to me using the **submit** tool, run the following command at your lab46 prompt: +
- +
-<cli> +
-$ submit cprog gfo0 gfo0.c +
-Submitting cprog project "gfo0": +
-    -> gfo0.c(OK) +
- +
-SUCCESSFULLY SUBMITTED +
-</cli> +
- +
-You should get some sort of confirmation indicating successful submission if all went according to plan. If not, check for typos and or locational mismatches. +
- +
-What I will be looking for: +
- +
-<code> +
-78:gfo0:final tally of results (78/78) +
-*:gfo0:gfo0.c submit via submit tool [4/4] +
-*:gfo0:gfo0.c no negative compiler messages [4/4] +
-*:gfo0:gfo0.c is pushed to lab46 repository [5/5] +
-*:gfo0:gfo0.c implements specified algorithms [13/13] +
-*:gfo0:gfo0.c uses loops, arrays, and file operations [13/13] +
-*:gfo0:gfo0.c adequate indentation and comments [13/13] +
-*:gfo0:gfo0.c output conforms to specifications [13/13] +
-*:gfo0:gfo0.c values displayed in output are correct [13/13] +
-</code>+
haas/fall2020/c4eng/projects/gfo0.txt · Last modified: 2020/09/18 08:32 by wedge