ISC Computer Science Question Paper 2016 Solved For Class 12 - A Plus Topper 3
ISC Computer Science Question Paper 2016 Solved For Class 12 - A Plus Topper 3
ISC Computer
Science Question
Paper 2016 Solved for
Class 12
August 28, 2019 by Prasanna
Question 1.
(a) State Involution law and prove it with the help of a
truth table. [1]
(b) Show that X ∨ ~ (Y ∧ X) is a tautology. [1]
(c) Find the dual of [1]
YX + X’ + 1 = 1
(d) Write the maxterm and minterm, when the inputs
are A = 0, B = 1, C = 1 and D = 0. [1]
(e) Draw the logic circuit of a NAND gate using NOR
gates only. [1]
Answer:
OPEN
Question 2.
(a) Deane the term fall through the condition with
reference to switch () case. [2]
(b) Convert the following inax expression into postax
form: [2]
A + B / C * (D/E * F)
(c) A matrix A[m] [n] is stored with each element
requiring 4 bytes of storage. If the base address at
A[1] [1] is 1500 and the address at A [4] [5] is 1608,
determine the number of rows of the matrix when the
matrix is stored in Column Major Wise. [2]
(d) From the class declaration given below, state the
nature of the identiaers A, B, C and D: [2]
class A extends B implements C, D
(e) State one advantage and one disadvantage of
using recursion over iteration. [2]
Answer:
(a) Fall through is prevented with a break keyword at
the end of the matching body, which exits execution
of the switch block, but this can cause bugs due to
unintentional fall through if the programmer forgets
to insert break statement.
OPEN
Question 3.
The following function Check() is a part of some
class. What will the function Check() return when the
values of both ‘m’ and ‘n’ is equal to 5? Show the dry
run/working. [5]
Answer:
The value of m and n are 5 which is not equal to 1. It
is, for this reason, the arst if block is not executed as
a result it will jump to the else part where the value of
m will be 6 and n will be 4. As m is having Pre
Increment operator so the value of m is changed to 6
and the value of n to 4 as it is the Pre Decrement
operator.
Section – A
Answer any two questions
Question 4.
(a) Given the Boolean function F (A, B, C, D) = Σ (1, 3,
5, 7, 8, 9, 10, 11, 14, 15).
(i) Reduce the above expression by using 4-variable
Karnaugh map, showing the various groups (i.e.
octal, quads and pairs). [4]
(ii) Draw the logic gate diagram for the reduced
expression. Assume that the variables and their
complements are available as inputs. [1]
(b) Given the Boolean function:
F (A, B, C, D) = π (4, 6, 7, 10, 11, 12, 14, 15)
(i) Reduce the above expression by using the 4-
variable Karnaugh map, showing the various groups
(i.e., octal, quads and pairs). [4]
(ii) Draw the logic gate diagram for the reduced
expression. Assume that the variables and their
complements are available as inputs. [1]
Answer:
(a) (i) F (A, B, C, D) = Σ (1, 3, 5, 7, 8, 9, 10, 11, 14, 15)
Question 5.
(a) What is a decoder? Draw the logic diagram for a
binary to octal (3 to 8) decoder. [3]
(b) How is a half adder different from a full adder?
Draw the truth table and derive the SUM and CARRY
expression for a full adder. Also, draw the logic
diagram for a full adder. [4]
(c) State whether the following expression is a
Tautology, Contradiction or a Contingency, with the
help of a truth table:
(X=>Z)∨~[(X=>Y)∧(Y=>Z)] [3]
Answer:
(a) A decoder is a circuit which converts the binary
number into equivalent decimal form. In a decoder, if
there are 3 input lines it will be capable of producing
8 distinct output one for each of the states.
Question 6.
(a) A passenger is allotted a window seat in an
aircraft if he/she satisaes the criteria given below: [5]
The passenger is below 15 years and is
accompanied by an adult.
or
The passenger is a lady and is not accompanied by
an adult.
or
The passenger is not below 15 years but is travelling
for the arst time.
The inputs are:
Inputs
Section – B
Answer any two questions
Question 7.
A disarium number is a number in which the sum of
the digits to the power of their respective position is
equal to the number itself. [10]
Example: 135 = 11 + 32 + 53
Hence, 135 is a disarium number.
Design a class Disarium to check if a given number is
a disarium number or not. Some of the members of
the class are given below:
Class name: Disarium
Data members/instance variables:
int num: stores the number
int size: stores the size of the number
Methods/Member functions:
Disarium (int nn): parameterized constructor to
initialize the data members n = nn and size = 0
void countDigit(): counts the total number of digits
and assigns it to size
int sumofDigits (int n, int p): returns the sum of the
digits of the number(n) to the power of their
respective positions (p) using recursive technique
void check(): checks whether the number is a
disarium number and displays the result with an
appropriate message
Specify the class Disarium giving the details of the
constructor! ), void countDigit(), int sumofDigits(int,
int) and void check(). Deane the mainO function to
create an object and call the functions accordingly to
enable the task.
Answer:
class Disarium
{
public static void main (String [ ] args) throws IOException
{
BufferedReader br = new BufferedReader (new InputStreamReader) System.in));
System.out.println ("Enter a number");
int n = Integer.parselnt (br.readLine());
int copy = n, d = 0, sum = 0;
String s = Integer.toString (n);
int len = s.length();
while (copy >0)
{
d = copy % 10;
sum = sum + (int) Math.pow (d, len);
len--;
copy = copy/10;
}
if (sum == n)
System, outprintln (“Is a disarium no”);
else
System.out.prinln (“Is not a disarium no”);
}
}
Question 8.
A class Shift contains a two-dimensional integer
array of order (m×n) where the maximum values of
both m and n are 5. Design the class Shift to shuve
the matrix (i.e. the arst row becomes the last, the
second row becomes the arst and so on). The details
of the members of the class are given below: [10]
Class name: Shift
Data member/instance variable:
mat[][]: stores the array element
m: integer to store the number of rows
n: integer to store the number of columns
Member functions/methods:
Shift(int mm, int nn): parameterized constructor to
initialize the data members m=mm and n=nn
void input(): enters the elements of the array
void cyclic(Shift p): enables the matrix of the object
(P) to shift each row upwards in a cyclic manner and
store the resultant matrix in the current object
void display(): displays the matrix elements
Specify the class Shift giving details of the
constructor(), void input(), void cyclic(Shift) and void
display(). Deane the main() function to create an
object and call the methods accordingly to enable the
task of shifting the array elements.
Answer:
import java.io.*;
class Shift
{
intmat[][];
int m;
int n;
public Shift(int mm, int nn){
m = mm;
n = nn;
m = 5;
n = 5;
mat = new int[m][n];
}
public void input()throws IOException {
InputStreamReader input = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(input);
for(int i = 0; i < m; i++)
for(int j = 0; j < n; j++){
System.out.print("Elements of the matrix: "+i+", "+j+":");
mat[i] [j] = Integer.parseInt(br.readLine());
}
}
public void cyclic(Shift p){
for(int i = 0; i < m; i++)
for(int j = 0; j < n; j++){
if(i == 0)
this.mat[m-1][j] = p.mat[i][j];
else
this.mat[i-1][j] = p.mat[i][j];