Family Name: ________________________________ Given Names: ________________________________ Student Number: _____________________________
Transcription
Family Name: ________________________________ Given Names: ________________________________ Student Number: _____________________________
Family Name: ________________________________ Given Names: ________________________________ Student Number: _____________________________ Signature: ___________________________________ The University of New South Wales SAMPLE Final Examination November 2008 ENGG1811 Computing for Engineers Time allowed: 2 hours Total number of questions: 44, in 3 Sections Total number of marks: 100 No examination materials permitted Calculators may not be used Questions are not worth equal marks Answer all questions except where noted in Section C A table of VBA functions is included inside the front cover This paper may not be retained by the candidate Answers must be written in ink. Except where they are expressly required, pencils may be used only for drawing, sketching or graphical work. ENGG1811 Sample Final Exam TABLE OF VBA FUNCTIONS Function call Returns… Int(num) Largest integer ≤ num num with fraction removed (truncates towards zero) Absolute value of num (same type) Numeric data in str converted to Double val rounded to dp decimal places (Double) num as a string arg (number or string) as an integer, fraction truncated Square root of num e raised to the power of num Natural logarithm of num Sine or cosine of a in radians Tangent of a in radians, arctangent of r Next pseudo-random number between 0 and 1 Fix(num) Abs(num) Val(str) Round(val, dp) CStr(num) CInt(arg) Sqr(num) Exp(num) Log(num) Sin(a), Cos(a) Tan(a), Atn(r) Rnd() String functions Len(str) Number of characters in str Mid(str,start,len) Substring of str, beginning at start, length len Mid(str,start) Substring of str, beginning at start to end of string Left(str,len) First len characters of str, all of str if len > Len(str) Right(str,len) Last len characters of str, all of str if len > Len(str) Asc(str) Character code for first character in str Chr(code) Unit string containing character with specified code LCase(str) str with all upper-case chars converted to lower case UCase(str) str with all lower-case chars converted to upper case Trim(str) str with spaces removed from both ends InStr(str,match) First position in str where match occurs as a substring Replace(str,match,rep) str with all occurrences of match replaced by rep (other arguments are possible) String(str,n) n copies of first character of str Page 2 of 19 ENGG1811 Sample Final Exam Section A: Multiple Choice Questions Answer the questions in this section on the answer sheet provided, NOT on this paper. Each question has four alternatives. Once you have chosen an alternative, fill in the selected letter (e.g., “B)”) against the question number on the multiple-choice sheet. Be careful that you fill each answer in on the correct row of the multiple-choice sheet, and erase any stray marks. Each question in this section is worth 1 (one) mark. There is no additional penalty for answering a question incorrectly. It is recommended that you spend no more than 30 minutes on this section. A1. What kind of communication does the Internet use? A) B) C) D) A2. Which one of the following statements about cookies is true? A) B) C) D) A3. Cookies are stored on a server for use by a client Cookies are stored on a client and retrieved by a server Cookies are placed on a server by a client Cookies cannot be removed from a client’s computer Suppose that in a MS Excel spreadsheet cells A1, B1 and C1 contain the values 2, 3, and 4 respectively. What value will be displayed in a cell containing the formula =(A1+C$1)/$A$1+B1 A) B) C) D) A4. Broadcast Synchronous Point-to-point Radio 2 4 6 the formula is invalid Suppose you want to design a query in a MS Access database that requests input from the user when the query is run, and then displays records selected on the basis of the user’s input. What kind of query would you use? A) B) C) D) Action query Append query Parameter query Question query Page 3 of 19 ENGG1811 Sample Final Exam A5. Consider the following portion of a MS Excel worksheet. Suppose that cell E4 contains the formula =$B2+C$3 and that this cell is now copied to cell D5. What value will be shown in cell D5? A) B) C) D) A6. Which of the following is not a valid formula when typed into the cell L5 in a MS Excel worksheet? A) B) C) D) A7. =AVERAGE(D6:D11) =AVERAGE(A$1:B4, D2:$E$5) =AVERAGE(A2:10D) =AVERAGE(A2) Which one of the following statements is false? A) B) C) D) A8. 9 10 14 16 Firewalls are used to protect computers from fire. Cluster computing uses homogenous hardware. Internet Protocol Version 6 (IPv6) is uses 16 byte IP-addresses. IP packets (of the same message) may take different routes across the Internet. In MS Excel, the Histogram tool can be used to… A) B) C) D) display historical commands. display historical calculations. calculate and display correlations between two or more variables. None of the above. Page 4 of 19 ENGG1811 Sample Final Exam A9. Consider the following portion of a MS Excel worksheet. Suppose that cell C1 contains the formula =IF($B$1>35,"Hot","Cool") and that this cell is now copied to cell C2. What value will be shown in cell C2? A) B) C) D) A10. In MS Access, which one of the following statements is true for the wildcard character * (asterisk)? A) B) C) D) A11. Embedded Systems are general purpose systems. Embedded Systems use embedded input from a user. Embedded systems are commonly used for controlling devices. Embedded systems can be easily reprogrammed for a new task. Which one of the following statements is true? A) B) C) D) A13. It matches 1 or more characters. It matches 0 or more spaces. It matches 0 or more strings. It matches 0 or more characters. Which one of the following statements is true? A) B) C) D) A12. Hot Cool Error None of the above RFID tags require laser scanning. A passive RFID tag does not use an antenna. An active RFID tag does not require a power source. Normally passive RFID tags store ID numbers. The original version of ASCII used, A) B) C) D) 4-bit code 7-bit code 8-bit code 16-bit code Page 5 of 19 ENGG1811 Sample Final Exam A14. Another term for database redundancy is, A) B) C) D) A15. DHCP (Dynamic Host Computer Protocol): A) B) C) D) A16. duplication omission implementation assessment makes sure a computer gets the same IP every time it connects to the network lets the computer select its own IP address when it connects to the network assigns an IP address to the computer from a list maintains a LAN’s connection to the Internet Which one of the following statements is true? A) forward chaining starts with outcomes and tries to find possible causes for the outcomes. B) expert systems tend to cover a wide area of expertise in many domains C) machine learning algorithms try to build models from observations D) its easy to acquire tacit knowledge A17. Enforcing data types while designing a database helps us to: A) avoid possible data entry errors B) reduce redundancy in a database C) save data types for future use D) none of the above A18. In SQL, the WHERE clause specifies: A) a list of fields to be used B) a list of tables to be used C) constraints on rows D) constraints on columns Page 6 of 19 ENGG1811 Sample Final Exam A19. The following table lists the arithmetic operators used in Visual Basic for Applications (VBA), in decreasing order of precedence. () ^ + - (unary: sign) * / \ Mod + - (binary: add, subtract) What is the value of this constant expression? 4 * 9 ^ 1 / 2 A) B) C) D) A20. Which of the following statements about ByRef and ByVal is false? A) B) C) D) A21. 6 12 18 36 If neither keyword is specified, ByVal is assumed ByRef and ByVal are only used in procedure parameter lists Variables passed by reference can be changed by the procedure A parameter prefixed by ByVal is initialised from the value of the argument We want to count the number of sheets in the active workbook whose names begin with Temp, using a For statement of the form: Dim wks As Worksheet Dim numTemps As Integer numTemps = 0 For ___________________________________ If wks.Name Like "Temp*" Then numTemps = numTemps + 1 End If Next wks What is the correct first line of the For statement for the algorithm to work? A) For wks = 1 To ActiveWorkbook.Sheets B) For Each wks In ActiveWorkbook.Sheets C) For wks = 1 To ActiveWorkbook.Sheets(Count) D) For Each wks = 1 To ActiveWorkbook.Sheets.Count Page 7 of 19 ENGG1811 Sample Final Exam A22. What are the values of x and y after this While loop terminates? x and y are variables of type Integer. x = 0: y = 0 While x < 5 x = x + 1 y = x + y Wend A) B) C) D) A23. x x x x = = = = 4, 5, 5, 6, y y y y = = = = 10 10 15 21 If blnA and blnB are Boolean variables, which expression is equivalent to Not (blnA Or Not blnB) A) B) C) D) A24. Not Not Not Not blnA blnA blnA blnA Or Not blnB Or blnB And Not blnB And blnB Which of these statements about tail recursion is true? A) B) C) D) Tail recursion only applies to functions, not subprograms. Tail recursion occurs when there are multiple recursive calls in a function. Tail recursion can be replaced by iteration to produce equivalent results. The recursive definition of the Fibonacci sequence can be directly expressed using tail recursion. Page 8 of 19 ENGG1811 Sample Final Exam Section B: Short Answer Questions Answer the 16 questions (totalling 40 marks) in this section using the space provided on this question paper. In this section, questions are not worth equal marks. The marks for each question are indicated after the question number. You should aim to spend about 45 minutes on this section (about 1 minute per mark). B1. (2 marks) Describe the two most important advantages of using Distributed/Grid Computing. ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ __________________________________________________________ B2. (2 marks) What is the main function of DNS? ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ __________________________________________________________ B3. (3 marks) Briefly outline two applications of Public Key systems. ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ Page 9 of 19 ENGG1811 Sample Final Exam B4. (2 marks) Provide one major difference between synchronous and asynchronous communication. ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ __________________________________________________________ B5. (3 marks) What is the purpose of conditional formatting in a MS Excel spreadsheet? Give an example in your answer. ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ __________________________________________________________ B6. (2 marks) Provide one major difference between ASCII and Unicode encodings. ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ Page 10 of 19 ENGG1811 Sample Final Exam B7. (2 marks) Provide two major differences between sequential computing and parallel computing. ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ B8. (2 marks) Briefly outline two different approaches we can use to solve singlevariable equations in MS Excel. ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ B9. (2 marks) In MS Excel, what does the tool named “Descriptive Statistics” offer? ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ Page 11 of 19 ENGG1811 Sample Final Exam B10. (5 marks) You have been asked to develop a spreadsheet to store and analyse marks for students in a given course. You need to store the following marks for each student in a course: Assignment_1, Assignment_2 and Exam. Assignment_1 and Assignment_2 marks are out of 25 each, and Exam marks are out of 50. Assume that there are 30 students in the course. You need to do the following analysis: • • • Calculate Total marks using the following formula: Total = Assignment_1 + Assignment_2 + Exam Find the top 10 students, based on Total marks Find students whose Exam marks are greater than the average Exam marks for the entire class. Draw a diagram illustrating the design of your spreadsheet application. Indicate any formulas or features of MS Excel that you would use. Page 12 of 19 ENGG1811 Sample Final Exam B11. (2 marks) Explain the difference between the concepts of “Expert Systems” and “Machine Learning Systems”, in Artificial Intelligence. ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ B12. (2 marks) Briefly explain the role of a “digital certificate” in Public Key Infrastructure (PKI). ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ Page 13 of 19 ENGG1811 Sample Final Exam B13. (4 marks) Assume the active worksheet contains a square matrix of numbers in the upper left corner similar to that shown below. Write statements that find the largest value in any cell on the major diagonal (these cells are shown shaded: A1, B2, C3 etc), and assigns it to the variable diagmax. The first empty cell on the diagonal (in this case F6) terminates the process. Declare any other variables you need. Answer: Page 14 of 19 ENGG1811 Sample Final Exam B14. (2 marks) Explain how to place a spin button on a sheet and allow it to control a cell on the sheet (say D5). What restrictions are there on the value displayed? ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ B15. (3 marks) Consider the following function, which is intended to determine whether a string is palindromic (exactly the same when written backward as forward). It has one syntax error (that Debug/Compile would find), one semantic error that prevents the function from returning anything and one logical error. Identify each error and describe it in a few words only. ' returns True if str is palindromic, else False Function IsPal(str As String) As Boolean Dim pos As Integer ' next position in str Dim c1 As String ' single characters Dim slen As Integer ' length of str ' Alg: match character with the one at opposite end slen = Len(str) For pos = 1 To slen \ 2 c1 = Mid(str, pos, 1) ' character at pos c2 = Mid(str, slen-pos, 1) ' character at corresponding position from end If c1 <> c2 Then IsPal = False Exit Function End If Next pos End Function Error 1 (syntax): ________________________________________________________ ________________________________________________________________ Error 2 (semantic): ______________________________________________________ ________________________________________________________________ Error 3 (logical): ________________________________________________________ ________________________________________________________________ Page 15 of 19 ENGG1811 Sample Final Exam B16. (2 marks) In the space below write statements that extract the character exactly in the middle of a string str, provided the string has an odd number of characters, and assigns it to strMiddle. If str has an even number of characters assign the empty string instead. Examples: str = "car" strMiddle = "a" str = "cart" strMiddle = "" Answer: Page 16 of 19 ENGG1811 Sample Final Exam Section C: Programming Questions Answer the questions in this section in the answer book provided. This section is worth 36 marks. Answer 3 questions only. Each question is worth 12 marks, so it doesn’t matter which three you attempt. C1. The Harvard Step Fitness Test estimates the fitness of an athlete by the following procedure: the athlete steps up and down from a standard gym bench once every two seconds for 5 minutes. After this the athlete’s pulse (in integral beats per minutes) is taken after 1 minute, 2 minutes and 3 minutes. Call these values p1, p2, and p3. The fitness score s is calculated using this formula s= 30000 p1 + p 2 + p 3 A 16-year old female athlete is considered to have an Excellent fitness if s is 86 or more, and Poor fitness if s is less than 50. Write a VBA Function that accepts the three pulse rates and returns one of the strings "Poor", "OK", or "Excellent", according to the calculated score. You may use the header as shown below, and you may (just this once!) use literal constants in the function. Function Harvard16Female(p1 As Integer, _ p2 As Integer, p3 As Integer) As String C2. Write a VBA subprogram that writes a table of squares and cubes in rows 2 to 21 of the active sheet, the first few rows of which are show below: 1 2 3 4 5 6 7 C A B n n 1 2 3 4 5 6 2 n3 1 4 9 16 25 36 1 8 27 64 125 216 Define and use constants where appropriate. Page 17 of 19 ENGG1811 Sample Final Exam C3. Many functions can be approximated by their Taylor Series expansion. The expansion of sin x is given by the formula sin x = x − x3 x5 x7 + − + ... 3! 5! 7! For example, this is the approximation using the first four terms of the formula: http://en.wikipedia.org/wiki/Image:Taylorsine.svg Write a VBA function that approximates sin x using a set number of initial terms of the series as specified by a parameter. Hint: consider how each term is derived from the previous one. Page 18 of 19 ENGG1811 Sample Final Exam C4. Write a VBA subprogram that draws a thin red cross using the two diagonal borders in all empty cells in row 1 of the active sheet. Your subprogram should consider all 256 columns. To help you to complete this task, this is what the Macro Recorder saves when the user puts a applies a thin red border to the left of cell E15: Range("E15").Select Selection.Borders(xlDiagonalDown).LineStyle = xlNone Selection.Borders(xlDiagonalUp).LineStyle = xlNone With Selection.Borders(xlEdgeLeft) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = 3 End With Selection.Borders(xlEdgeTop).LineStyle = xlNone Selection.Borders(xlEdgeBottom).LineStyle = xlNone Selection.Borders(xlEdgeRight).LineStyle = xlNone Your subprogram should manipulate the cells directly rather than use the Selection object. END OF EXAMINATION Page 19 of 19