Computer Science, Paper-I: Roll Number
Computer Science, Paper-I: Roll Number
Computer Science, Paper-I: Roll Number
Roll Number
PART-I (MCQS)
PART-II
MAXIMUM MARKS = 20
MAXIMUM MARKS = 80
PART-II
SECTION-I
Q. 2. (a) Write a program to input choice from user for temperature conversion from Fahrenheit
to Celsius or Celsius to Fahre00000000nheit. After the choice, input temperature from
user and display the converted answer. Sample execution of the program is given below;
1. Fahrenheit to Celsius
2. Celsius to Fahrenheit
Enter your choice: 1
Enter Temperature in Fahrenheit: 98
Same Temperature in Celsius: 36.7
Press Any Key to Continue....
(b) Which type of computer (supercomputers, mainframe computers, minicomputers,
microcomputers) will suit an individual? Justify your answer.
(c) Suppose you are trying to build a Student Registration System using object oriented
approach. Objective of the system is to store information of course registration of
students and their course results. In C++ syntax define following classes with suitable
attributes each having getdata( ) and showdata( ) member functions along with
suitable constructor functions;
Person, Teacher, Student, Course, Section, Allocation (containing information about
allocation of a course to a teacher in a semester), Registration (containing information
about registration of a student in course, this class will also save course result
information of the student). You can add more classes which you think suitable for the
system.
(6)
Q. 3. (a) Define a function named monthly-profit which will calculate the monthly profit on the
given investment amount. Function will take two float arguments, percent profit rate and
investment amount and return the monthly profit (float). Write function prototype,
function definition and a main program to demonstrate the functionality. Sample
execution of the program is given below. Note that monthly profit 4000 has been
calculated by the function by doing (8/100) * 50000. User can enter any values therefore
write generalized function (user variables, not given values).
Enter percent profit rate: 8
Enter investment amount: 50000
Monthly profit: 4000
Press Any Key to Continue....
(b) Explain and differentiate between volatile and non-volatile memory, giving examples.
(c) Suppose you are trying to build a Library Information System using object oriented
approach. System should be able to keep track of books issued and returned. It should be
able to calculate fine if a book is late. Currently you are required to design classes i.e. not
to write C++ code but describe which class you will define, which data members you
will add, which member functions you will include in those classes. Define only suitable
classes and suitable attributes (data members) in C++ syntax. Names of some classes are
like, Student, Teacher, Book, Issue Book etc. You can (but not required to) extend this
list of four classes if you think of some other suitable classes.
Page 1 of 2
(6)
(6)
(8)
(6)
(8)
(6)
(6)
(8)
SECTION-II
Q. 5.
Q. 6.
Q. 7.
Q. 8.
(a) Describe the followings (no description with more than three lines);
i. Sibling Nodes
ii. Degree of a tree
iii. Leaf Node
iv. Height/ Depth of a tree
v. Binary Tree
vi. Full Binary Tree
vii. Complete Binary Tree
viii. Maximum number of nodes in a Binary Tree at level L.
(b) Find the time complexity of Binary search by resolving the recurrence (given below)
using iterative substitution method.
T(1)
=2
if n =< 1
T(n)
= 4 + T(n/2)
if n>1
(c) Draw the given array in the form of binary tree. Then apply Build-Heap Algorithm to
convert the given tree in the form of Max-Heap (i.e. draw final Max-heap in the form of
tree and array). Finally show execution of Heap-sort algorithm by rewriting the Heap
array after each iteration of the algorithm.
A = {8, 14, 2, 26, 10, 12, 16, 28, 20, 7}
(8)
(a) Write Abstract Data Types (ADT) of Stack and Queue. Include the specifications of Add,
Delete, IsEmpty, IsFull functions along with their respective functions.
(b) For step count expressions n2 + 10 and 2n / 4 find breakeven point i.e. for which value
of n (starting from 1,2) second expression will become greater than value of first
expression.
(c) In AVL tree balance factor of every node is -1 or 0 or +1. We can calculate the balance
factor as Height left-sub-tree Height right-sub-tree. Construct AVL tree from the given data;
A = {8, 14, 2, 26, 10, 12, 16, 28, 20, 7}
(8)
(a) Draw a diagram that illustrates the process of translating a C++ source file into an
executable file. Give example of each phase depicted in your diagram of compilation
process.
(b) Compare and contrast among compiler, interpreter and assembler.
(c) Describe Software Development Life Cycle (SDLC). Explain your answer with the help
of depicting and describing different phases of pure water fall software life cycle.
(d) What is the difference between SRS document and design document? What are the
contents we should contain in the SRS document and design document.
(5)
(a) What are the purposes of Data Flow diagrams, Entity-Relationship diagrams? Give an
example diagram of each.
(b) Explain five properties of language using the example of English. Explain why a
software language like MiniJava meets these properties as well.
(c) Lexical analysis: Consider the following regular expression
r1 = (A | . | Z) * (0 | . | 9)*
Describe the language defined by r1 in English. Turn r1 into an equivalent finite
automaton. Remove -moves from the finite automation.
(d) What do you mean by Context Free Grammar (CFG)? Illustrate your answer with
examples.
(5)
***************
(6)
(6)
(6)
(6)
(5)
(5)
(5)
(5)
(5)
(5)
Page 2 of 2