Reference no: EM133133203
ACS130 Introduction to Systems Engineering and Software C Programming - The University of Sheffield
Programming Project
Assignment briefing: This assignment will assess your ability to solve a problem using C as a tool. Your program must be well laid out and commented, including a meaningful header comment. Your program must provide meaningful interactions with the user. You must also use all of the following C programming elements:
• selection (if or switch case),
• repetition (for or/and while or/and do while)
• at least one function with an array of struct in the input parameter list; the array of struct is declared in main (or another function) and this function must set values in the array of struct, and the calling function (main or other) must make use of the array of struct on return (you choose whether to pass by value or pass by address)
• at least one function with a pointer to a variable of type char, int, float or double in the parameter list; the function must set the contents of the variable, and the calling function (main or other) must make use of the variable on return
• your program needs several instances where the user must input commands from the keyboard in order to interact with the program
• your program must loop to the start allowing the user to run through the program time after time (this is an independent requirement from the second point to use repetition)
Optional:
o you can create other functions and/or structures so as to modularise your code (but you must have the 2 functions mentioned above).
o you can use anything else we have covered in this module, eg, arrays/strings, an input and/or output file
Component
Does the program use any global variables? Does the program use while(1) loop/s? Does the program use break (other than in switch case), go to, jump,
continue etc
Program layout and commenting:
• Meaningful header comment (including a detailed description of code)
• sufficient comments interspersed within code
• Good indentation
• Meaningful variable names
Marks available for executing program only:
Is there sufficient interaction between user and program? Yes/No Interaction with the user
The user needs to be able to interact several times with the program.
• Is the user given prompts to enter any information that is needed from the keyboard?
• Is the information displayed to the user easy to understand, including any required ranges?
• Does the program loop to start?
Use of function(s), with array of struct in parameter list:
Does the program use at least one function with an array of struct included in the parameter list? Eg struct Books B[3] Yes/no
• Declaring the array of struct in main or other calling function (not in the called function).
• Setting some values within the array of struct from inside the function.
• Using (on return from the function) values in the array of struct in main or other calling function.
-> notation as an alternative to dereference and dot notation is allowed.
Use of function(s), with pointer variable in parameter list:
Does the program use at least one function with a pointer to a variable (not an array) of type char, int, float, double, struct (not the same as previous function) in the parameter list? Yes/no
• Declaring the variable in main/calling function (not in the called fn)
• Setting the contents of the variable from inside the function.
• Using (on return from the function) the variable in main or other calling function.
Does the program work with a variety of disparate inputs, without malfunctioning? (i.e. is code debugged and tested thoroughly)
Please test the following:
• Inputting out of range numbers (including boundary values, massively too small/large, zero, negative/positive, entering a char instead of an int) at every instance
• Inputting the wrong thing, eg, it asks for a char and you supply an int
• If using an input file: Program must inform user and exit if file not found.
In each case, the program should allow re-input, or a message should be given to alert the user to problems such as missing files.
Complexity of code*
Efficiency of code**
Explanation of code
Is IDE Codeblocks, DevC++ or Xcode? If not, -5 marks.
Do we need to use an alternate file (ie, not the .c file submitted) for marking?
Attachment:- Programming Project.rar
Does a relatively higher deductible increase
: Does a relatively higher deductible increase, decrease, or not affect a plan's actuarial value?
|
Interpret the price elasticity of demand for e-cigarettes
: 1. Interpret the price elasticity of demand for e-cigarettes by answering the following. If the price of e-cigarettes rises by 1%, by how much with the quantit
|
Ongoing learning opportunities to develop knowledge-skills
: Explain the importance of engaging in ongoing learning opportunities to develop knowledge and skills based on local and state standards.
|
Record the journal entries for the transactions
: RJD Corporations had the following authorized capital on December 31, 2020: 10,000 shares of $100 par value, Record the journal entries for the transactions
|
Does the program use any global variables
: Does the program use at least one function with a pointer to a variable (not an array) of type char, int, float, double, struct
|
Reproductive anatomy and physiology
: Teaching sex education can be challenging because of the breadth and range of possible topics, Reproductive anatomy and physiology
|
Determine what process is for conducting research
: Determine what the process is for conducting research in your district/organization and describe it here (not Nova Southeastern University's process,
|
Promote school-organization strategic plan
: The student will develop methods to utilize the media and promote a school/organization's strategic plan.
|
Method of interpreting scripture is now repudiated
: Define allegorization and show why this long-used method of interpreting Scripture is now repudiated.
|