CISC 3140 FINAL EXAM REVIEW QUESTIONS AND ANSWERS RATED A+.
What is the purpose of the .PHONY keyword in a makefile? - (answer)To name a recipe that will execute
once requested/Targets that do not refer to files but are just actions are called phony targets.
Source: https://www.gnu.org/software/make/manual/make.html#Simple-Makefile
a) Why is the Therac report of great importance to programmers (i.e. what is the fact demonstrated by
the report that should be of major importance to the approach that should be taken when software is
developed)?
b) The Therac programmers engaged in several practices that either failed to prevent errors from being
included in production code or failed to repair programming errors when incorrect program behavior
was detected. Briefly state what two of those detrimental practices were. - (answer)a) Bad software
kills. if software is not designed correctly and tested carefully and correctly you are putting people's lives
in danger.
b) Failed to properly test code; Failed to listen to user feedback.
Source: https://web.stanford.edu/class/cs240/old/sp2014/readings/therac-25.pdf
What is one reason why, despite its age and poor support for object oriented programming, does COBOL
survive as a language of choice (if not the language of choice) for programming business applications? -
(answer)COBOL supports decimal arithmetic.
Write a Scheme function `build astring n` that will contruct a list of `n` copies of an arbitrary string
`astring`, where `n` is a positive integer larger than 0. Assume that `astring` is a properly constructed list
and `n` is an integer greater than 0, so not editing the parameters is required. Hint: The function `cons
item alist` adds the element item to the left end of the list `alist`. - (answer)(define build(lambda (astring
n) ;constructs a list with arguments/parameters
(if(= n 0) (list) ;if n is equal to 0, return a list
(cons astring (build (- n 1) ) ;cons constructs a list (cons X l) → (listof X)
)
)
)
, CISC 3140 FINAL EXAM REVIEW QUESTIONS AND ANSWERS RATED A+.
)
What is the purpose of the `lambda` function of the Scheme language? - (answer)To create/construct a
function
What is the primary block of storage managed by Subversion (i.e. what unit of storage do you get when
you check out something from a Subversion repository)? - (answer)A directory/A Subversion directory
Consider the coed snippet:
```
int c (float a, float b) {
if (a == b) return (1); else return (0);
}
```
What is the serious error in the above code? - (answer)Using `==` symbol to compare equality for
floating point numbers.
What is one purpose of the Subversion system (and similar systems), i.e., what are they used for? -
(answer)For file version control;
What is the effect of the Subversion command `svn add myfile.c`? - (answer)Puts files under Subversion
control
What is one advantage of using recursion for iteration rather than more familiar language features such
as for loops and while loops? - (answer)Readability; May be faster in certain instances;
What is one example of a use of the make program that does not involve preparing programs for
execution? - (answer)Searching files/Garbage collection
What is the purpose of the .PHONY keyword in a makefile? - (answer)To name a recipe that will execute
once requested/Targets that do not refer to files but are just actions are called phony targets.
Source: https://www.gnu.org/software/make/manual/make.html#Simple-Makefile
a) Why is the Therac report of great importance to programmers (i.e. what is the fact demonstrated by
the report that should be of major importance to the approach that should be taken when software is
developed)?
b) The Therac programmers engaged in several practices that either failed to prevent errors from being
included in production code or failed to repair programming errors when incorrect program behavior
was detected. Briefly state what two of those detrimental practices were. - (answer)a) Bad software
kills. if software is not designed correctly and tested carefully and correctly you are putting people's lives
in danger.
b) Failed to properly test code; Failed to listen to user feedback.
Source: https://web.stanford.edu/class/cs240/old/sp2014/readings/therac-25.pdf
What is one reason why, despite its age and poor support for object oriented programming, does COBOL
survive as a language of choice (if not the language of choice) for programming business applications? -
(answer)COBOL supports decimal arithmetic.
Write a Scheme function `build astring n` that will contruct a list of `n` copies of an arbitrary string
`astring`, where `n` is a positive integer larger than 0. Assume that `astring` is a properly constructed list
and `n` is an integer greater than 0, so not editing the parameters is required. Hint: The function `cons
item alist` adds the element item to the left end of the list `alist`. - (answer)(define build(lambda (astring
n) ;constructs a list with arguments/parameters
(if(= n 0) (list) ;if n is equal to 0, return a list
(cons astring (build (- n 1) ) ;cons constructs a list (cons X l) → (listof X)
)
)
)
, CISC 3140 FINAL EXAM REVIEW QUESTIONS AND ANSWERS RATED A+.
)
What is the purpose of the `lambda` function of the Scheme language? - (answer)To create/construct a
function
What is the primary block of storage managed by Subversion (i.e. what unit of storage do you get when
you check out something from a Subversion repository)? - (answer)A directory/A Subversion directory
Consider the coed snippet:
```
int c (float a, float b) {
if (a == b) return (1); else return (0);
}
```
What is the serious error in the above code? - (answer)Using `==` symbol to compare equality for
floating point numbers.
What is one purpose of the Subversion system (and similar systems), i.e., what are they used for? -
(answer)For file version control;
What is the effect of the Subversion command `svn add myfile.c`? - (answer)Puts files under Subversion
control
What is one advantage of using recursion for iteration rather than more familiar language features such
as for loops and while loops? - (answer)Readability; May be faster in certain instances;
What is one example of a use of the make program that does not involve preparing programs for
execution? - (answer)Searching files/Garbage collection