QuestiON 1

Completely forgot — don’t just know


Forgot completely — don’t just know


Completely forgot — just don’t know


Forgot completely — just don’t know

Explanation:
We Completely forgot our friend’s birthday and we just don’t know how to make it up to him.
Question 2

The industrialist had a personnel jet


I write my experience in my personnel diary


C 
All personnel are being given the day off

Being religious is a personnel aspect

Explanation:
personnel mean a body of persons employed in an organization or place of work.
Question 3

Based on the given statements, select the most appropriate option to solve the given question. What will be the total weight of 10 poles each of same weight?
Statements: (I) One fourth of the weight of a pole is 5 kg (II) The total weight of these poles is 160 kg more than the total weight of two poles.
Statement II alone is not sufficient


B 
Statement II alone is not sufficient

C 
Either I or II alone is sufficient

Both statements I and II together are not sufficient.

Explanation:
(I) is sufficient. We can determine total weight of 1o poles as 10 * 4 * 5 = 200 Kg (II) is also sufficient, we can determine the weight. Let x be the weight of 1 pole. 10*x  2*x = 160 Kg x = 20 Kg 10x = 200 Kg
Question 4

A 
0, –1

–1, 0


C 
0, 1

–1, 2

Explanation:
f(x) = 1 – x f(0) = 1 f(1) = f(1) = 0 f(0.5) = f(0.5) = 0.5
The maximum is attained at x = 0, and the maximum value is 1.
Question 5

fabric


textile


C 
fibre

D 
apparel

Explanation:
apparel means clothing.
Question 6

If the list of letters, P, R, S, T, U is an arithmetic sequence, which of the following are also in arithmetic sequence?
1. 2P, 2R, 2S, 2T, 2U 2. P–3, R–3, S–3, T–3, U–3 3. P^{2}, R2, S2, T2, U2
1 only


B 
1 and 2

2 and 3


1 and 3

Explanation:
1 is AP with common difference as double of that of original series. 2 is AP with common difference as same as original series.
Question 7

A 
5.34

6.74


28.5


45.49

Explanation:
Question 8

a


B 
b

C 
c

d

Explanation:
Area of a Δ = 1/2 * ac sinB = 1/2 * bc sinA = 1/2 ab sinC Here area (ΔPQR) = area (ΔPQS) + area (ΔPRS) 1/2 rq sin120 = 1/2 PS * r sin60 + 1/2 PS * q sin60 => PS = rq/(r+q)
Question 9

If p, q, r, s are distinct integers such that: f(p, q, r, s) = max (p, q, r, s) g(p, q, r, s) = min (p, q, r, s) h(p, q, r, s) = remainder of (p × q) / (r × s) if (p × q) > (r × s) OR remainder of (r × s) / (p × q) if (r × s) > (p × q) Also a function fgh (p, q, r, s) = f(p, q, r, s) × g(p, q, r, s) × h(p, q, r, s). Also the same operation are valid with two variable functions of the form f(p, q). What is the value of fg(h(2, 5, 7, 3), 4, 6, 8)?
6


B 
7

C 
8

9

Explanation:
The question asks value of fg (h(2, 5, 7, 3), 4, 6, 8) We need to first find value of h(2, 5, 7, 3) h is defined as h(p, q, r, s) = remainder of (p × q) / (r × s) if (p × q) > (r × s) remainder of (r × s) / (r × q) if (r × s) > (p × q) h(2, 5, 7, 3) = remainder of (7 * 3) / (2 * 5) since 7*3 > 2*5 = 1 fg(1, 4, 6, 8) = f(1, 4, 6, 8) * g(1, 4, 6, 8) = max(1, 4, 6, 8) * min(1, 4, 6, 8) = 8 * 1 = 8
Question 10

A 
Since the report lacked needed information, it was of no use to them

The report was useless to them because there were no needed information in it


C 
Since the report did not contain the needed information, it was not real useful to them

Since the report lacked needed information, it would not had been useful to them

ANSWER IS A
Question 11

Consider the following transaction involving two bank accounts x and y.
read(x); x := x – 50; write(x); read(y); y := y + 50; write(y)
The constraint that the sum of the accounts x and y should remain constant is that of
Atomicity


B 
Consistency

C 
Isolation

Durability

Explanation:
Consistency in database systems refers to the requirement that any given database transaction must only change affected data in allowed ways, that is sum of x and y must not change.
Question 12

A 
Q1 is in NP, Q2 is NP hard

B 
Q2 is in NP, Q1 is NP hard

Both Q1 and Q2 are in NP


Both Q1 and Q2 are in NP hard

Explanation:
Q1 reduces in polynomial time to 3SAT ==> Q1 is in NP 3SAT reduces in polynomial time to Q2 ==> Q2 is NP Hard. If Q2 can be solved in P, then 3SAT can be solved in P, but 3SAT is NPComplete, that makes Q2 NP Hard
Question 13

Consider the following two statements.
S1: If a candidate is known to be corrupt, then he will not be elected. S2: If a candidate is kind, he will be elected.
Which one of the following statements follows from S1 and S2 as per sound inference rules of logic?
If a person is known to be corrupt, he is kind


If a person is not known to be corrupt, he is not kind


C 
If a person is kind, he is not known to be corrupt

If a person is not kind, he is not known to be corrupt

Explanation:
S1: If a candidate is known to be corrupt, then he will not be elected. S2: If a candidate is kind, he will be elected. If p → q, then ¬q → ¬p So from S1, elected → not corrupt and S2 is, kind → elected Therefore, kind → not corrupt
Question 14

User interface issues


Nonfunctional requirements


C 
Design specification

Interfaces with third party software

Explanation:
A software requirements specification (SRS) is a description of a software system to be developed, laying out functional and nonfunctional requirements, and may include a set of use cases that describe interactions the users will have with the software. (Source Wiki) Design Specification should not be part of SRS.
Question 15

The larger of the two eigenvalues of the matrix
⎡ 4 5 ⎤ ⎣ 2 1 ⎦
is ____
5


B 
6

C 
7

8

Explanation:
The character equation for given matrix is  4λ 5  = 0  2 1λ (4λ)*(1λ)  10 = 0 λ^{2}  5λ  6 = 0 (λ+1)*(λ6) = 0 λ = 1, 6 Greater of two Eigenvalues is 6.
Question 16

4


B 
5

C 
6

7

Explanation:
We can get all values in range from 7 to 59 by accessing 5 nodes. 1) First search 7 in a leaf node. 2) Once 7 is found, linearly traverse till 15 is found. See following diagram
Question 17

A 
0

1


2


D 
3

Explanation:
Ans = 3, mod 8 up counter using 3 JK flip flops. Ignore the output of LSB
Question 18

4


8


C 
12

D 
16

Explanation:
In stop and wait, protocol next packet is sent only when acknowledgement of previous packet is received. This causes poor link utilization. Tansmission speed = 10^{6} Time to send a packet = (1000 * 8) bits / 10^{6} = 8 miliseconds Since link utilization or efficiency is 25%, total time taken for 1 packet is 8 * 100/25 = 32 miliseconds. Total time is twice the one way propagation delay plus transmission delay. Propagation delay has to be considered for packet and ack both. Transmission delay is considered only for packet as the question says that trans. time for ack is negligible. Let propagation delay be x. 2x + 8 = 32. x = 12.
Question 19

42


B 
36

C 
78

72

Explanation:
2100 = 2^{2} * 3^{1} * 5^{2} * 7^{1} There are 3 choices for powers of 2, the choices are 0, 1, 2 Similarly, there are 2 choices for powers of 3, 3 choices for power of 5 and 2 choices for power of 7. So total number of divisors is 3 * 2 * 3 * 2 = 36
Question 20

18


B 
19

C 
17

Any number between 10 and 20

Explanation:
The number of nodes with two children is always one less than the number of leaves. See Handshaking Lemma and Interesting Tree Properties for proof.
Question 21

Consider the following C function.
int fun ( int n) { int x=1, k; if (n==1) return x; for (k=1; k<n; ++k) x = x + fun(k) * fun(n – k); return x; } 
The return value of fun(5) is __________.
0


B 
26

C 
51

71

Explanation:
fun(5) = 1 + fun(1) * fun(4) + fun(2) * fun(3) + fun(3) * fun(2) + fun(4) * fun(1) = 1 + 2*[fun(1)*fun(4) + fun(2)*fun(3)] Substituting fun(1) = 1 = 1 + 2*[fun(4) + fun(2)*fun(3)] Calculating fun(2), fun(3) and fun(4) fun(2) = 1 + fun(1)*fun(1) = 1 + 1*1 = 2 fun(3) = 1 + 2*fun(1)*fun(2) = 1 + 2*1*2 = 5 fun(4) = 1 + 2*fun(1)*fun(3) + fun(2)*fun(2) = 1 + 2*1*5 + 2*2 = 15 Substituting values of fun(2), fun(3) and fun(4) fun(5) = 1 + 2*[15 + 2*5] = 51
Question 22

A 
E = a_{b}(KLOC) exp(b_{b}), D = c_{b}(E) exp(d_{b})

D = a_{b}(KLOC) exp(b_{b}), E = c_{b}(D) exp(d_{b})


E = a_{b} exp(b_{b}), D = c_{b}(KLOC) exp(d_{b})


D 
E = a_{b} exp(d_{b}), D = c_{b}(KLOC) exp(b_{b})

Explanation:
In Basic COCOMO, following are true.
 Effort Applied (E) = a_{b}(KLOC)^{bb} [ personmonths ]
 Development Time (D) = c_{b}(Effort Applied)^{db} [months]
 People required (P) = Effort Applied / Development Time [count]
Question 23

A 
A cookies is a piece of code that has the potential to compromise the security of an Internet user

B 
A cookie gains entry to the user’s work area through an HTTP header

A cookie has an expiry date and time


Cookies can be used to track the browsing pattern of a user at a particular site

Explanation:
Cookies are not piece of code, they are just strings typically in the form of key value pairs.
Question 24

In both AST and CFG, let node N2 be the successor of node N1. In the input program, the code corresponding to N2 is present after the code corresponding to N1


B 
For any input program, neither AST nor CFG will contain a cycle

C 
The maximum number of successors of a node in an AST and a CFG depends on the input program

Each node in AST and CFG corresponds to at most one statement in the input program

Explanation:
(A) is false, In CFG (Control Flow Graph), code of N2 may be present before N1 when there is a loop or goto. (B) is false, CFG (Control Flow Graph) contains cycle when input program has loop. (C) is true, successors in AST and CFG depedend on input program (D) is false, a single statement may belong to a block of statements.
Question 25

Consider the following function written in the C programming language. The output of the above function on input “ABCD EFGH” is
void foo ( char *a) { if (*a && *a != ` `) { foo(a+1); putchar (*a); } } 
ABCD EFGH


ABCD


C 
HGFE DCBA

D 
DCBA

Explanation:
The program prints all characters before ‘ ‘ or ‘\0’ (whichever comes first) in reverse order.
Question 26

R is symmetric and reflexive but not transitive


R is reflexive but not symmetric and not transitive


R is transitive but not reflexive and not symmetric


D 
R is symmetric but not reflexive and not transitive

Explanation:
R cannot be reflexive as ‘a’ and ‘b’ have to be distinct in aRb. R is symmetric if a and b have a common divisor, then b and a also have. R is not transitive as aRb and bRc doesn’t mean aRc. For example 3 and 15 have common divisor, 15 and 5 have common divisor, but 3 and 5 don’t have.
Question 27

A 
Ω(logn)

B 
Ω(n)

Ω(nlogn)


Ω(n^{2})

Explanation:
The answer to this question is simply maxheapify function. Time complexity of maxheapify is O(Log n) as it recurses at most through height of heap.
// A recursive method to heapify a subtree with root at given index // This method assumes that the subtrees are already heapified void MinHeap::MaxHeapify(int i) { int l = left(i); int r = right(i); int largest = i; if (l < heap_size && harr[l] < harr[i]) largest = l; if (r < heap_size && harr[r] < harr[smallest]) largest = r; if (largest != i) { swap(&harr[i], &harr[largest]); MinHeapify(largest); } }
Question 28

1024


B 
1023

C 
2048

2043

Explanation:
The power set has 2^{n} elements. For n = 11, size of power set is 2048.
Question 29

Match the following:
ListI ListII A. Lexical analysis 1. Graph coloring B. Parsing 2. DFA minimization C. Register allocation 3. Postorder traversal D. Expression evaluation 4. Production tree
Codes: A B C D (a) 2 3 1 4 (b) 2 1 4 3 (c) 2 4 1 3 (d) 2 3 4 1
a


b


C 
c

D 
d

Explanation:
Register allocation is a variation of Graph Coloring problem. Lexical Analysis uses DFA. Parsing makes production tree Expression evaluation is done using tree traversal
Question 30

listen, accept, bind recv


B 
bind, listen, accept, recv

C 
bind, accept, listen, recv

accept, listen, bind, recv

Explanation:
bind, listen, accept and recv are server side socket API functions.
bind() associates a socket with a socket address structure, i.e. a specified local port number and IP address. listen() causes a bound TCP socket to enter listening state. accept() accepts a received incoming attempt to create a new TCP connection from the remote client, recv() is used to receive data from a remote socket.
A server must first do bind() to tell operating system the port number on which it would be listing, then it must listen to receive incoming connection requests on the bound port number. Once a connection comes, the server accepts using accept(), then starts receiving data using recv().
Question 31

Consider the following statements:
1. The complement of every Turning decidable language is Turning decidable 2. There exists some language which is in NP but is not Turing decidable 3. If L is a language in NP, L is Turing decidable
Which of the above statements is/are True?
A 
Only 2

Only 3


Only 1 and 2


D 
Only 1 and 3

Explanation:
1 is true: Complement of Turing decidable is Turing Decidable. 3 is true. All NP problems are Turing decidable (See http://www.geeksforgeeks.org/npcompletenessset1/) 2 is false: The definition of NP itself says solvable in polynomial time using nondeterministic Turing machine.
Question 32

Θ(nlogn)


Θ(n)


Θ(logn)


Θ(1)

Explanation:
We only need to consider any 3 elements and compare them. So the number of comparisons is constants, that makes time complexity as Θ(1) The catch here is, we need to return any element that is neither maximum not minimum. Let us take an array {10, 20, 15, 7, 90}. Output can be 10 or 15 or 20 Pick any three elements from given liar. Let the three elements be 10, 20 and 7. Using 3 comparisons, we can find that the middle element is 10.
Question 33

1


2


3


D 
4

Explanation:
It seems to be wrong question in GATE exam. Below seems to be the worst case situation. In below situation P1 and P2 can continue as they have 2 resources each
P1 > 2 P2 > 2 P3 > 1 P4 > 1
Question 34

10


12


13


D 
14

Explanation:
The average read access time in nanoseconds = 0.8 * 5 + 0.2*50 = 14
Question 35

20


10


11


D 
22

Explanation:
Total virtual address size = 40 Since there are 32 sets, set offset = 5 Since page size is 8kilobytes, word offset = 13 Minimum tag size = 40  5 13 = 22
Question 36

Let f(x) = x ^{–(1/3)} and A denote the area of the region bounded by f(x) and the Xaxis, when x varies from –1 to 1. Which of the following statements is/are True?
1. f is continuous in [–1, 1] 2. f is not bounded in [–1, 1] 3. A is nonzero and finite
2 only


B 
3 only

C 
2 and 3 only

1, 2 and 3

Explanation:
1 is false: function is not a Continuous function. As a change of 1 in x leads to ∞ change in f(x). For example when x is changed from 1 to 0. At x = 0, f(x) is ∞ and at x = 1, f(x) is finite. 2 is True: f(x) is not a bounded function as it becomes ∞ at x = 0. 3 is true: A denote the area of the region bounded by f(x) and the Xaxis. This area is bounded, we can calculate it by doing integrating the function
Question 37

Perform the following operations on the matrix
⎡ 3 4 45⎤ ⎢ 7 8 105⎥ ⎣13 2 195⎦ 1. Add the third row to the second row. 2. Subtract the third column from the first column.
The determinant of the resultant matrix is _____________.
A 
0

1


50


100

Explanation:
The given matrix is singular matrix as its last column is a multiple of first column. If we multiply 15 with first column, we get the third column.
Question 38

A 
A multiple of 4

Even


Odd


D 
Congruent to 0 mod 4, or 1 mod 4

Explanation:
An nvertex selfcomplementary graph has exactly half number of edges of the complete graph, i.e., n(n − 1)/4 edges, and (if there is more than one vertex) it must have diameter either 2 or 3. Since n(n −1) must be divisible by 4, n must be congruent to 0 or 1 mod 4; for instance, a 6vertex graph cannot be selfcomplementary. Source:http://en.wikipedia.org/wiki/Selfcomplementary_graph
Question 39

Consider the intermediate code given below:
1. i = 1 2. j = 1 3. t1 = 5 * i 4. t2 = t1 + j 5. t3 = 4 * t2 6. t4 = t3 7. a[t4] = –1 8. j = j + 1 9. if j <= 5 goto(3) 10. i = i + 1 11. if i < 5 goto(2)
The number of nodes and edges in the controlflowgraph constructed for the above code, respectively, are
5 and 7


B 
6 and 7

5 and 5


7 and 8

Explanation:
.
Question 40

A 
200 KB and 300 KB

200 KB and 250 KB


250 KB and 300 KB


300 KB and 400 KB

Explanation:
Best fit allocates the smallest block among those that are large enough for the new process. So the memory blocks are allocated in below order.
357 > 400 210 > 250 468 > 500 491 > 600
Sot the remaining blocks are of 200 KB and 300 KB
Question 41

A Young tableau is a 2D array of integers increasing from left to right and from top to bottom. Any unfilled entries are marked with ∞, and hence there cannot be any entry to the right of, or below a ∞. The following Young tableau consists of unique entries.
1 2 5 14 3 4 6 23 10 12 18 25 31 ∞ ∞ ∞
When an element is removed from a Young tableau, other elements should be moved into its place so that the resulting table is still a Young tableau (unfilled entries may be filled in with a ∞). The minimum number of entries (other than 1) to be shifted, to remove 1 from the given Young tableau is ____________
A 
2

B 
5

6


18

Explanation:
Initially
1 2 5 14 3 4 6 23 10 12 18 25 31 ∞ ∞ ∞
When 1 is removed, it is replaced by the smallest adjacent which is 2.
2 2 5 14 3 4 6 23 10 12 18 25 31 ∞ ∞ ∞
When 2 is moved in place of 1, it is replaced by smallest adjacent which is 4
2 4 5 14 3 4 6 23 10 12 18 25 31 ∞ ∞ ∞
When 4 is moved in place of 2, it is replaced by smallest adjacent which is 6
2 4 5 14 3 6 6 23 10 12 18 25 31 ∞ ∞ ∞
When 6 is moved in place of 4, it is replaced by smallest adjacent which is 18.
2 4 5 14 3 6 18 23 10 12 18 25 31 ∞ ∞ ∞
When 18 is moved in place of 6, it is replaced by smallest adjacent which is 25.
2 4 5 14 3 6 18 23 10 12 25 25 31 ∞ ∞ ∞
When 25 is moved in place of 18, it is replaced by smallest adjacent which is ∞.
2 4 5 14 3 6 18 23 10 12 25 ∞ 31 ∞ ∞ ∞
Shifted numbers are 2, 4, 6, 18, 25
Question 42

Consider two relations R1(A, B) with the tuples (1, 5), (3, 7) and R1(A, C) = (1, 7), (4, 9). Assume that R(A,B,C) is the full natural outer join of R1 and R2. Consider the following tuples of the form (A,B,C)
a = (1, 5, null), b = (1, null, 7), c = (3, null, 9), d = (4, 7, null), e = (1, 5, 7), f = (3, 7, null), g = (4, null, 9).
Which one of the following statements is correct?
R contains a, b, e, f, g but not c, d


R contains a, b, c, d, e, f, g


C 
R contains e, f, g but not a, b

R contains e but not f, g

Explanation:
Below is R1 A  B  1  5 3  7 Below is R2 A  C  1  7 4  9 Full outer join of above two is A  B  C  1  5  7 3  7  NULL 4  NULL  9
So the full outer join contains e = (1, 5, 7), f = (3, 7, null), g = (4, null, 9).
Question 43

h(i) =i^{2} mod 10


B 
h(i) =i^{3} mod 10

C 
h(i) = (11 ∗ i^{2}) mod 10

h(i) = (12 ∗ i) mod 10

Explanation:
Since mod 10 is used, the last digit matters. If you do cube all numbers from 0 to 9, you get following
Number Cube Last Digit in Cube 0 0 0 1 1 1 2 8 8 3 27 7 4 64 4 5 125 5 6 216 6 7 343 3 8 512 2 9 729 9
Therefore all numbers from 0 to 2020 are equally divided in 10 buckets. If we make a table for square, we don’t get equal distribution. In the following table. 1, 4, 6 and 9 are repeated, so these buckets would have more entries and buckets 2, 3, 7 and 8 would be empty.
Number Square Last Digit in Cube 0 0 0 1 1 1 2 4 4 3 9 9 4 16 6 5 25 5 6 36 6 7 49 9 8 64 4 9 81 1
Question 44

63 milliseconds 65535 × 2^{14}


63 milliseconds 65535 × 2^{16}


C 
500 milliseconds 65535 × 2^{14}

D 
500 milliseconds 65535 × 2^{16}

Explanation:
Since sequence number in TCP header is limited to 16 bits, the maximum window size is limited. When bandwidth delay product of a link is high, scaling is required to efficiently use link. TCP allows scaling of windows when bandwidth delay product is greater than 65,535 (Refer this). The bandwidth delay product for given link is 1048560 * α. Window scaling is needed when this value is more than 65535 bytes, i.e., when α is greater than 65535 * 8 / 1048560 or 0.5 seconds. Scaling is done by specifying a one byte shift count in the header options field. The true receive window size is left shifted by the value in shift count. A maximum value of 14 may be used for the shift count value. Therefore maximum window size with scaling option is 65535 × 2^{14}.
Question 45

Consider alphabet ∑ = {0, 1}, the null/empty string λ and the sets of strings X_{0}, X_{1} and X_{2} generated by the corresponding nonterminals of a regular grammar. X_{0}, X_{1} and X_{2} are related as follows:
X_{0} = 1 X_{1} X_{1} = 0 X_{1} + 1 X_{2} X_{2} = 0 X_{1} + {λ}
Which one of the following choices precisely represents the strings in X_{0}?
10 (0* + (10)*)1


B 
10 (0* + (10)*)*1

C 
1(0* + 10)*1

10 (0 + 10)*1 + 110 (0 + 10)*1

Explanation:
The smallest possible string by given grammar is "11". X0 = 1X1 = 11X2 [Replacing X1 with 1X2] = 11 [Replacing X2 with λ] The string "11" is only possible with option (C).
Question 46

Given below are some algorithms, and some algorithm design paradigms.
ListI A. Dijkstra’s Shortest Path B. FloydWarshall algorithm to compute all pairs shortest path C. Binary search on a sorted array D. Backtracking search on a graph ListII 1. Divide and Conquer 2. Dynamic Programming 3. Greedy design 4. Depthfirst search 5. Breadthfirst search
Match the above algorithms on the left to the corresponding design paradigm they follow Codes:
A B C D (a) 1 3 1 5 (b) 3 3 1 5 (c) 3 2 1 4 (d) 3 2 1 5
A 
a

b


C 
c

d

Explanation:
Dijkstra’s Shortest Path is a Greedy Algorithm. FloydWarshall algorithm is Dynamic Programming. Binary search is a Divide and Conquer. Backtracking is Depthfirst search
Question 47

The number of minterms after minimizing the following Boolean expression is _________.
[D′ + AB′ + A′C + AC′D + A′C′D]′
A 
1

2


C 
3

4

Explanation:
Given Boolean expression is: [D′ + AB′ + A′C + AC′D + A′C′D]′ Step 1 : [D′ + AB′ + A′C + C′D ( A + A')]′ ( taking C'D as common ) Step 2 : [D′ + AB′ + A′C + C′D]′ ( as, A + A' = 1 ) : [D' + DC' + AB' + A'C]' (Rearrange) Step 3 : [D' + C' + AB' + A'C]' ( Rule of Duality, A + A'B = A + B ) : [D' + C' + CA' + AB']' (Rearrange) Step 4 : [D' + C' + A' + AB']' (Rule of Duality) : [D' + C' + A' + AB']' (Rearrange) Step 5 : [D' + C' + A' + B']' (Rule of Duality) :[( D' + C' )'.( A' + B')'] (Demorgan's law, (A + B)'=(A'. B')) :[(D''.C'').( A''.B'')] (Demorgan's law) :[(D.C).(A.B)] (Idempotent law, A'' = A) : ABCD Hence only 1 minterm after minimization.
Question 48

Consider the C program below.
#include <stdio.h> int *A, stkTop; int stkFunc ( int opcode, int val) { static int size=0, stkTop=0; switch (opcode) { case 1: size = val; break ; case 0: if (stkTop < size ) A[stkTop++]=val; break ; default : if (stkTop) return A[stkTop]; } return 1; } int main() { int B[20]; A=B; stkTop = 1; stkFunc (1, 10); stkFunc (0, 5); stkFunc (0, 10); printf ( "%d\n" , stkFunc(1, 0)+ stkFunc(1, 0)); } 
The value printed by the above program is ___________
9


10


C 
15

D 
17

Explanation:
The code in main, basically initializes a stack of size 10, then pushes 5, then pushes 10. Finally the printf statement prints sum of two pop operations which is 10 + 5 = 15.
stkFunc (1, 10); // Initialize size as 10 stkFunc (0, 5); // push 5 stkFunc (0, 10); // push 10 // print sum of two pop printf ("%d\n", stkFunc(1, 0) + stkFunc(1, 0));
Question 49

The secant method is used to find the root of an equation f(x) = 0. It is started from two distinct estimates x_{a} and x_{b} for the root. It is an iterative procedure involving linear interpolation to a root. The iteration stops if f(x_{b}) is very small and then x_{b} is the solution. The procedure is given below. Observe that there is an expression which is missing and is marked by? Which is the suitable expression that is to be put in place of? So that it follows all steps of the secant method? Secant
Initialize: x_{a}, x_{b}, ε, N // ε = convergence indicator f_{b} = f(x_{b}) i = 0 while (i < N and f_{b} > ε) do i = i + 1 // update counter x_{t} = ? // missing expression for // intermediate value x_{a} = x_{b} // reset x_{a} x_{b} = x_{t} // reset x_{b} f_{b} = f(x_{b}) // function value at new x_{b} end while if f_{b} > ε then // loop is terminated with i = N write “Nonconvergence” else write “return x_{b}” end if
x_{b} – (f_{b}– f(x_{a})) f_{b}/ (x_{b} – x_{a})


B 
x_{a}– (f_{a}– f(x_{a})) f_{a}/ (x_{b} – x_{a})

x_{b} – (f_{b} – x_{a}) f_{b}/ (x_{b} – f_{b}(x_{a})


D 
x_{a} – (x_{b} – x_{a}) f_{a}/ (f_{b} – f(x_{a}))

ANSWER IS D
Question 50

A 
36

64


C 
81

72

Explanation:
A function f from X to Y is called onto if for all ‘y’ in Y there is an ‘x’ in X such that f(x) = y. In onto functions, all elements in Y are used. Every Surjective or Onto function sends two elements of {1, 2, 3, 4} to the same element of {a, b, c}. There are ^{4}C_{2} = 6 such pairs of elements. The pairs are {1, 2}, {1, 3}, {1, 4}, {2, 3}, {2, 4}, {3, 4}. For a given pair {i, j} ⊂ {1, 2, 3, 4}, there are 3! sujective functions such that f(i) = f(j). Hence there are total 6 * 6 = 36 surjective functions.
Question 51

Consider the following routing table at an IP router
For each IP address in GroupI identify the correct choice of the next hop from GroupII using the entries from the routing table above.
ListI ListII A. 128.96.171.92 1. Interface 0 B. 128.96.167.151 2. Interface 1 C. 128.96.163.121 3. R2 D. 128.96.165.121 4. R3 5. R4 Codes: A B C D (a) 1 3 5 4 (b) 1 4 2 5 (c) 2 3 4 5 (d) 2 3 5 4
A 
a

b


C 
c

d

Explanation:
The next hop is decide according to the longest prefix matching. Refer following link for details. https://www.youtube.com/watch?v=PSC5omE3pX8&list=PLkHsKoi6eZnzJl1qTzmvBwTxrSJW4D2Jj&index=32.
Question 52

Consider a processor with byteaddressable memory. Assume that all registers, including Program Counter (PC) and Program Status Word (PSW), are of size 2 bytes. A stack in the main memory is implemented from memory location (0100)_{16} and it grows upward. The stack pointer (SP) points to the top element of the stack. The current value of SP is (016E)_{16}. The CALL instruction is of two words, the first word is the opcode and the second word is the starting address of the subroutine (one word = 2 bytes). The CALL instruction is implemented as follows:
• Store the current value of PC in the stack. • Store the value of PSW register in the stack. • Load the starting address of the subroutine in PC.
The content of PC just before the fetch of a CALL instruction is (5FA0)_{16}. After execution of the CALL instruction, the value of the stack pointer is
(016A)_{16}


B 
(016C)_{16}

(0170)_{16}


D 
(0172)_{16}

Explanation:
The current value of SP is (016E)_{16} The value of SP after following operations is asked in question • Store the current value of PC in the stack. This operation increments SP by 2 bytes as size of PC is given 2 bytes in question. So becomes (016E)_{16} + 2 = (0170)_{16} • Store the value of PSW register in the stack. This operation also increments SP by 2 bytes as size of PSW is also given 2 bytes. So becomes (0170)_{16} + 2 = (0172)_{16} • Load the starting address of the subroutine in PC. The Load operation doesn't change SP. So new value of SP is (016E)_{16}
Question 53

A 
Code inspection is carried out once the code has been unit tested

Code inspection and code walkthrough are synonyms


C 
Adherence to coding standards is checked during code inspection

Code walkthrough is usually carried out by an independent test team

Explanation:
A is False: It is not necessary that code inspection is carried out once the code has been unit tested. B and D are false: Code walkthrough or walkthrough is a form of software peer review in which a designer or programmer leads members of the development team and other interested parties through a software product, and the participants ask questions and make comments about possible errors, violation of development standards, and other problems” Inspection in software engineering, refers to peer review of any work product by trained individuals who look for defects using a well defined process.
Question 54

Consider the sequence of machine instructions given below:
MUL R5, R0, R1 DIV R6, R2, R3 ADD R7, R5, R6 SUB R8, R7, R4
In the above sequence, R0 to R8 are general purpose registers. In the instructions shown, the first register stores the result of the operation performed on the second and the third registers. This sequence of instructions is to be executed in a pipelined instruction processor with the following 4 stages: (1) Instruction Fetch and Decode (IF), (2) Operand Fetch (OF), (3) Perform Operation (PO) and (4) Write back the Result (WB). The IF, OF and WB stages take 1 clock cycle each for any instruction. The PO stage takes 1 clock cycle for ADD or SUB instruction, 3 clock cycles for MUL instruction and 5 clock cycles for DIV instruction. The pipelined processor uses operand forwarding from the PO stage to the OF stage. The number of clock cycles taken for the execution of the above sequence of instructions is ___________
11


12


C 
13

14

Explanation:
1 2 3 4 5 6 7 8 9 10 11 12 13 IF OF PO PO PO WB IF OF PO PO PO PO PO WB IF OF PO WB IF OF PO WB
Question 55

Suppose you are provided with the following function declaration in the C programming language.
int partition (int a[], int n);
The function treats the first element of a[] as a pivot, and rearranges the array so that all elements less than or equal to the pivot is in the left part of the array, and all elements greater than the pivot is in the right part. In addition, it moves the pivot so that the pivot is the last element of the left part. The return value is the number of elements in the left part. The following partially given function in the C programming language is used to find the kth smallest element in an array a[ ] of size n using the partition function. We assume k ≤ n
int kth_smallest ( int a[], int n, int k) { int left_end = partition (a, n); if (left_end+1==k) { return a [left_end]; } if (left_end+1 > k) { return kth_smallest (____________________); } else { return kth_smallest (____________________); } } 
The missing argument lists are respectively
A 
(a, left_end, k) and (a+left_end+1, n–left_end–1, k–left_end–1)

B 
(a, left_end, k) and (a, n–left_end–1, k–left_end–1)

(a, left_end+1, N–left_end–1, K–left_end–1) and(a, left_end, k)


(a, n–left_end–1, k–left_end–1) and (a, left_end, k)

ANSWER IS A
Question 56

Consider a simple checkpointing protocol and the following set of operations in the log.
(start, T4); (write, T4, y, 2, 3); (start, T1); (commit, T4); (write, T1, z, 5, 7); (checkpoint); (start, T2); (write, T2, x, 1, 9); (commit, T2); (start, T3); (write, T3, z, 7, 2);
If a crash happens now and the system tries to recover using both undo and redo operations, what are the contents of the undo list and the redo list
A 
Undo: T3, T1; Redo: T2

Undo: T3, T1; Redo: T2, T4


Undo: none; Redo: T2, T4, T3; T1


Undo: T3, T1, T4; Redo: T2

Explanation:
Since T1 and T3 are not committed yet, they must be undone. The transaction T2 must be redone because it is after the latest checkpoint.
Question 57

A 
36

B 
32

28


40

Explanation:
Max size of virtual address can be calculated by calculating maximum number of page table entries. Maximum Number of page table entries can be calculated using given maximum page table size and size of a page table entry. Given maximum page table size = 24 MB Let us calculate size of a page table entry. A page table entry has following number of bits. 1 (valid bit) + 1 (dirty bit) + 3 (permission bits) + x bits to store physical address space of a page. Value of x = (Total bits in physical address)  (Total bits for addressing within a page) Since size of a page is 8 kilobytes, total bits needed within a page is 13. So value of x = 32  13 = 19 Putting value of x, we get size of a page table entry = 1 + 1 + 3 + 19 = 24bits. Number of page table entries = (Page Table Size) / (An entry size) = (24 megabytes / 24 bits) = 2^{23} Vrtual address Size = (Number of page table entries) * (Page Size) = 2^{23} * 8 kilobits = 2^{36} Therefore, length of virtual address space = 36
Question 58

ANSWER IS 19.2 microseconds

Explanation:
A Ripple Carry Adder allows to add two nbit numbers. It uses half and full adders. Following diagram shows a ripple adder using full adders.
Let us first calculate propagation delay of a single 1 bit full adder. Propagation Delay by n bit full adder is (2n + 2) gate delays. [See this for formula]. Here n = 1, so total delay of a 1 bit full adder is (2 + 2)*1.2 = 4.8 ms Delay of 4 full adders is = 4 * 4.8 = 19.2 ms
Question 59

ANSWER IS 6.1

Explanation:
Disk latency = Seek Time + Rotation Time + Transfer Time + Controller Overhead Seek Time? Depends no. tracks the arm moves and seek speed of disk Rotation Time? depends on rotational speed and how far the sector is from the head Transfer Time? depends on data rate (bandwidth) of disk (bit density) and the size of request Disk latency = Seek Time + Rotation Time + Transfer Time + Controller Overhead Average Rotational Time = (0.5)/(15000 / 60) = 2 miliseconds [On average half rotation is made] It is given that the average seek time is twice the average rotational delay So Avg. Seek Time = 2 * 2 = 4 miliseconds. Transfer Time = 512 / (50 × 10^{6} bytes/sec) = 10.24 microseconds Given that controller time is 10 times the average transfer time Controller Overhead = 10 * 10.24 microseconds = 0.1 miliseconds Disk latency = Seek Time + Rotation Time + Transfer Time + Controller Overhead = 4 + 2 + 10.24 * 10^{3} + 0.1 miliseconds = 6.1 miliseconds
Question 60

A 
A tree has no bridge

B 
A bridge cannot be part of a simple cycle

Every edge of a clique with size ≥ 3 is a bridge (A clique is any complete subgraph of a graph)


A graph with bridges cannot have a cycle

Explanation:
A bridge in a graph cannot be a part of cycle as removing it will not create a disconnected graph if there is a cycle.
Question 61

Which of the following languages is/are regular?
L1: {wxw^{R} ⎪ w, x ∈ {a, b}* and ⎪w⎪, ⎪x⎪ >0} w^{R} is the reverse of string w L2: {a^{n}b^{m} ⎪m ≠ n and m, n≥0 L3: {a^{p}b^{q}c^{r} ⎪ p, q, r ≥ 0}
A 
L1 and L3 only

L2 only


C 
L2 and L3 only

L3 only

Explanation:
L3 is simple to guess, it is regular. Below is DFA for L1. L1 is interesting. The important thing to note about L1 is length of x is greater than 0, i.e., x > 0. So any string than starts and ends with same character is acceptable by language and remaining string becomes w. Below is DFA for L1.
Question 62

6 and 925


B 
6 and 7400

C 
7 and 1110

7 and 8880

Explanation:
UDP data = 8880 bytes UDP header = 8 bytes IP Header = 20 bytes Total Size excluding IP Header = 8888 bytes. Number of fragments = ⌈ 8888 / 1480 ⌉ = 7 Refer the Kurose book slides on IP (Offset is always scaled by 8) Offset of last segment = (1480 * 6) / 8 = 1110
Question 63

2


B 
3

4


D 
5

Explanation:
Question 64

A 
0.95

0.80


C 
0.75

0.70

Explanation:
X has 2 elements Y has 20 elements Number of functions from X to Y is 20*20 [Every element can take any of the 20 values] Number of one to one functions from X to Y is 20*19 [Every element takes a different value] So probability of a function being one to one = (20*19) / (20*20) = 380 / 400 = 0.95
Question 65

A 
A

B


C 
C

D

ANSWER IS C