CBSE Class 12 CS 083 Sample QP 2023-24 with Solution

Solved CBSE Class 12 Computer Science (083) Sample Question Paper for the session 2023–24 is a valuable resource for students preparing for their board exams. It reflects the latest CBSE exam pattern, question typology, and marking scheme, covering key topics such as Python programming, Data Structures, SQL, and Computer Networks. By practicing this sample paper, students can get a real exam-like experience, identify important concepts, and improve their overall preparation strategy.

CBSE-Class-12-CS-083-Sample-Question-Paper-2023-24-with-Solution

The detailed solutions provided with the sample paper help students understand the correct approach to solving each question, including proper coding techniques and accurate SQL queries. It also supports self-assessment, helps in avoiding common mistakes, and enhances time management skills. Overall, this sample paper with solutions is highly beneficial for boosting confidence and achieving better performance in the CBSE Class 12 Computer Science board examination.

CBSE Class 12 CS 083 Sample QP 2023-24 with Solution

You can download the free PDF of this sample pre-board question paper from our website and start practicing today. Download Link available in last.

The Year-Wise CBSE Class 12 Computer Science (083) Pre-Board and Sample Question Papers with Solutions are provided at the bottom of this post.

CBSE Class 12 CS 083 Sample Question Paper Session (2023-24)

CBSE | DEPARTMENT OF SKILL EDUCATION
COMPUTER SCIENCE (SUBJECT CODE - 083)
Sample Question Paper (SQP) Solution for Class XII (Session 2023-2024)

Max. Time: 3 Hours
Max. Marks: 70

General Instructions:
  1. Please check this question paper contains 35 questions.
  2. The paper is divided into 5 Sections- A, B, C, D and E.
  3. Section A, consists of 18 questions (1 to 18). Each question carries 1 Mark.
  4. Section B, consists of 7 questions (19 to 25). Each question carries 2 Marks.
  5. Section C, consists of 5 questions (26 to 30). Each question carries 3 Marks.
  6. Section D, consists of 2 questions (31 to 32). Each question carries 4 Marks.
  7. Section E, consists of 3 questions (33 to 35). Each question carries 5 Marks.
  8. All programming questions are to be answered using Python Language only.
SECTION A

1. State True or False:
“In a Python program, if a break statement is given in a nested loop, it terminates the execution of all loops in one go.”
Ans: False

2. In a table in MYSQL database, an attribute A of datatype varchar(20) has the value “Keshav”. The attribute B of datatype char(20) has value “Meenakshi”. How many characters are occupied by attribute A and attribute B?
a) 20,6
b) 6,20
c) 9,6
d) 6,9

3. What will be the output of the following statement:
print(3-2**2**3+99/11)
a) 244
b) 244.0
c) -244.0
d) Error

4. Select the correct output of the code:
s = "Python is fun"
l = s.split()
s_new = "-".join([l[0].upper(), l[1], l[2].capitalize()])
print(s_new)
a) PYTHON-IS-Fun
b) PYTHON-is-Fun
c) Python-is-fun
d) PYTHON-Is -Fun

5. In MYSQL database, if a table, Alpha has degree 5 and cardinality 3, and another table, Beta has degree 3 and cardinality 5, what will be the degree and cardinality of the Cartesian product of Alpha and Beta?
a) 5,3
b) 8,15
c) 3,5
d) 15,8

6. Riya wants to transfer pictures from her mobile phone to her laptop. She uses Bluetooth Technology to connect two devices. Which type of network will be formed in this case?
a) PAN
b) LAN
c) MAN
d) WAN

7. Which of the following will delete key-value pair for key = “Red” from a dictionary D1?
a) delete D1("Red")
b) del D1["Red"]
c) del.D1["Red"]
d) D1.del["Red"]

8. Consider the statements given below and then choose the correct output from the given options:
pride="#G20 Presidency"
print(pride[-2:2:-2])
a) ndsr
b) ceieP0
c) ceieP
d) yndsr

9. Which of the following statement(s) would give an error during execution of the following code?
tup = (20,30,40,50,80,79)
print(tup) #Statement 1
print(tup[3]+50) #Statement 2
print(max(tup)) #Statement 3
tup[4]=80 #Statement 4
a) Statement 1
b) Statement 2
c) Statement 3
d) Statement 4

10. What possible outputs(s) will be obtained when the following code is executed?
import random
myNumber=random.randint(0,3)
COLOR=["YELLOW","WHITE","BLACK","RED"]
for I in range(1,myNumber):
    print(COLOR[I],end="*")
    print()
a)
RED*
WHITE*
BLACK*
b)
WHITE*
BLACK*
c)
WHITE* WHITE*
BLACK* BLACK*
d)
YELLOW*
WHITE*WHITE*
BLACK* BLACK* BLACK*

11. Fill in the blank:
The modem at the sender’s computer end acts as a ________.
a) Model
b) Modulator
c) Demodulator
d) Convertor

12. Consider the code given below:
b=100
def test(a):
    ____________        # missing statement
    b=b+a
    print(a,b)
test(10)
print(b)
Which of the following statements should be given in the blank for #Missing Statement, if the output produced is 110?
a) global a
b) global b=100
c) global b
d) global a=100

13. State whether the following statement is True or False:
An exception may be raised even if the program is syntactically correct.
Ans: True

14. Which of the following statements is FALSE about keys in a relational database?
a) Any candidate key is eligible to become a primary key.
b) A primary key uniquely identifies the tuples in a relation.
c) A candidate key that is not a primary key is a foreign key.
d) A foreign key is an attribute whose value is derived from the primary key of another relation.

15. Fill in the blank:
In case of ________ switching, before a communication starts, a dedicated path is identified between the sender and the receiver.
Ans: Circuit

16. Which of the following functions changes the position of file pointer and returns its new position?
a) flush()
b) tell()
c) seek()
d) offset()

Q 17 and 18 are ASSERTION AND REASONING based questions. Mark the correct choice as
a) Both A and R are true but R is the correct explanation for A
b) Both A and R are true but R is not the correct explanation for A
c) A is True but R is False
d) A is false but R is True

17. Assertion (A): List is an immutable data type
Reason (R): When an attempt is made to update the value of an immutable variable, the old variable is destroyed and a new variable is created by the same name in memory.
Ans: d) A is false but R is True

18. Assertion (A): Python Standard Library consists of various modules.
Reason (R): A function in a module is used to simplify the code and avoids repetition.
Ans: b) Both A and R are true but R is not the correct explanation for A

SECTION B

19. (i) Expand the terms: POP3 , URL
Ans: POP3 - Post Office Protocol 3
URL - Uniform Resource Locator
(ii) Give one difference between XML and HTML.
Ans:
HTML (Hyper Text Markup Language) XML (Extensible Markup Language)
We use pre-defined tags We can define our own tags and use them
Static web development language – only focuses on how data looks Dynamic web development language – used for transporting and storing data
Used only for displaying data, cannot transport data Used for transporting and storing data
OR
(i) Define the term bandwidth with respect to networks.
Ans: Bandwidth is the maximum rate of data transfer over a given transmission medium. / The amount of information that can be transmitted over a network.
(ii) How is http different from https?
Ans: https (Hyper Text Transfer Protocol Secure) is the protocol that uses SSL (Secure Socket Layer) to encrypt data being transmitted over the Internet. Therefore, https helps in secure browsing while http does not.

20. The code given below accepts a number as an argument and returns the reverse number. Observe the following code carefully and rewrite it after removing all syntax and logical errors. Underline all the corrections made.
define revNumber(num):
    rev = 0
    rem = 0
    While num > 0:
        rem = = num % 10
        rev = rev * 10 + rem
        num = num // 10
        return rev
print(revNumber(1234))
Ans:
def revNumber(num):
    rev = 0
    rem = 0
    while num > 0:
        rem = num % 10
        rev = rev * 10 + rem
        num = num // 10
    return rev
print(revNumber(1234))

21. Write a function countNow(PLACES) in Python, that takes the dictionary, PLACES as an argument and displays the names (in uppercase)of the places whose names are longer than 5 characters.
For example, Consider the following dictionary
PLACES={1:"Delhi",2:"London",3:"Paris",4:"New York",5:"Doha"}
The output should be:
LONDON
NEW YORK
Ans:
PLACES = {1:"Delhi", 2:"London", 3:"Paris", 4:"New York", 5:"Dubai"}
def countNow(PLACES):
    for place in PLACES.values():
        if len(place) > 5:
            print(place.upper())
countNow(PLACES)

OR

Write a function, lenWords(STRING), that takes a string as an argument and returns a tuple containing length of each word of a string.
For example, if the string is "Come let us have some fun", the tuple will have (4, 3, 2, 4, 4, 3)
Ans:
def lenWords(STRING):
    T = ()
    L = STRING.split()
    for word in L:
        length = len(word)
        T = T + (length,)
    return T

22. Predict the output of the following code:
S = "LOST"
L = [10, 21, 33, 4]
D = {}
for I in range(len(S)):
    if I % 2 == 0:
        D[L.pop()] = S[I]
    else:
        D[L.pop()] = I + 3
for K, V in D.items():
    print(K, V, sep="*")
Ans:
4*L
33*4
21*S
10*6

23. Write the Python statement for each of the following tasks using BUILT-IN functions/methods only:
(i) To insert an element 200 at the third position, in the list L1.
Ans: L1.insert(2,200)
(ii) To check whether a string named, message ends with a full stop / period or not.
Ans: message.endswith('.')

OR

A list named studentAge stores age of students of a class. Write the Python command to import the required module and (using built-in function) to display the most common age value from the given list.
Ans:
import statistics
print(statistics.mode(studentAge))

24. Ms. Shalini has just created a table named “Employee” containing columns Ename, Department and Salary.
After creating the table, she realized that she has forgotten to add a primary key column in the table. Help her in writing an SQL command to add a primary key column EmpId of integer type to the table Employee.
Thereafter, write the command to insert the following record in the table:
EmpId: 999
Ename: Shweta
Department: Production
Salary: 26900
Ans: SQL Command to add primary key:
ALTER TABLE Employee ADD EmpId INTEGER PRIMARY KEY;
As the primary key is added as the last field, the command for inserting data will be:
INSERT INTO Employee VALUES("Shweta","Production",26900,999);
Alternative answer to insert data:
INSERT INTO Employee(EmpId,Ename,Department,Salary) VALUES (999,"Shweta","Production",26900);

OR

Zack is working in a database named SPORT, in which he has created a table named “Sports” containing columns SportId, SportName, no_of_players, and category.
After creating the table, he realized that the attribute, category has to be deleted from the table and a new attribute TypeSport of data type string has to be added. This attribute TypeSport cannot be left blank. Help Zack write the commands to complete both the tasks.
Ans: To delete the attribute, category:
ALTER TABLE Sports DROP category;
To add the attribute, TypeSport
ALTER TABLE Sports ADD TypeSport char(10) NOT NULL;

25. Predict the output of the following code:
def Changer(P, Q=10):
    P = P / Q
    Q = P % Q
    return P
A = 200
B = 20
A = Changer(A, B)
print(A, B, sep='$')
B = Changer(B)
print(A, B, sep='$', end='###')
Ans: 10.0$20
10.0$2.0###

SECTION C

26. Predict the output of the Python code given below:
Text1 = "IND-23"
Text2 = ""
I = 0
while I < len(Text1):
    if Text1[I] >= "0" and Text1[I] <= "9":
        Val = int(Text1[I])
        Val = Val + 1
        Text2 = Text2 + str(Val)
    elif Text1[I] >= "A" and Text1[I] <= "Z":
        Text2 = Text2 + (Text1[I+1])
    else:
        Text2 = Text2 + "*"
    I += 1
print(Text2)
Ans: ND-*34

27. Consider the table CLUB given below and write the output of the SQL queries that follow.
CID CNAME AGE GENDER SPORTS PAY DOAPP
5246 AMRITA 35 FEMALE CHESS 900 2006-03-27
4687 SHYAM 37 MALE CRICKET 1300 2004-04-15
1245 MEENA 23 FEMALE VOLLEYBALL 1000 2007-06-18
1622 AMRIT 28 MALE KARATE 1000 2007-09-05
1256 AMINA 36 FEMALE CHESS 1100 2003-08-15
1720 MANJU 33 FEMALE KARATE 1250 2004-04-10
2321 VIRAT 35 MALE CRICKET 1050 2005-04-30
(i) SELECT COUNT(DISTINCT SPORTS) FROM CLUB;
Ans:
COUNT(DISTINCT SPORT)
4
(ii) SELECT CNAME, SPORTS FROM CLUB WHERE DOAPP<"2006-04-30" AND CNAME LIKE "%NA";
Ans:
CNAMESPORTS
AMINACHESS
(iii) SELECT CNAME, AGE, PAY FROM CLUB WHERE GENDER = "MALE" AND PAY BETWEEN 1000 AND 1200;
Ans:
CNAMEAGEPAY
AMRIT281000
VIRAT351050

28. Write a function in Python to read a text file, Alpha.txt and displays those lines which begin with the word ‘You’.
Ans:
def test():
    fObj1 = open("Alpha.txt", "r")
    data = fObj1.readlines()
    for line in data:
        L = line.split()
        if L[0] == "You":
            print(line)
    fObj1.close()

OR

Write a function, vowelCount() in Python that counts and displays the number of vowels in the text file named Poem.txt.
Ans:
def vowelCount():
    fObj = open("Alpha.txt", "r")
    data = str(fObj.read())
    cnt = 0
    for ch in data:
        if ch in "aeiouAEIOU":
            cnt = cnt + 1
    print(cnt)
    fObj.close()

29. Consider the table Personal given below:
Table: Personal
P_ID Name Desig Salary Allowance
P01 Rohit Manager 89000 4800
P02 Kashish Clerk NULL 1600
P03 Mahesh Superviser 48000 NULL
P04 Salil Clerk 31000 1900
P05 Ravina Superviser NULL 2100
Based on the given table, write SQL queries for the following:
(i) Increase the salary by 5% of personals whose allowance is known.
Ans: UPDATE Personal SET Salary=Salary + Salary*0.5 WHERE Allowance IS NOT NULL;
(ii) Display Name and Total Salary (sum of Salary and Allowance) of all personals. The column heading ‘Total Salary’ should also be displayed.
Ans: SELECT Name, Salary + Allowance AS "Total Salary" FROM Personal;
(iii) Delete the record of personals who have salary greater than 25000.
Ans: DELETE FROM Personal WHERE Salary>25000;

30. A list, NList contains following record as list elements:
[City, Country, distance from Delhi]
Each of these records are nested together to form a nested list. Write the following user defined functions in Python to perform the specified operations on the stack named travel.
(i) Push_element(NList): It takes the nested list as an argument and pushes a list object containing name of the city and country, which are not in India and distance is less than 3500 km from Delhi.
(ii) Pop_element(): It pops the objects from the stack and displays them. Also, the function should display “Stack Empty” when there are no elements in the stack.
For example: If the nested list contains the following data:
NList=[["New York", "U.S.A.", 11734],
["Naypyidaw", "Myanmar", 3219],
["Dubai", "UAE", 2194],
["London", "England", 6693],
["Gangtok", "India", 1580],
["Columbo", "Sri Lanka", 3405]]
The stack should contain:
['Naypyidaw', 'Myanmar'],
['Dubai', 'UAE'],
['Columbo', 'Sri Lanka']
The output should be:
['Columbo', 'Sri Lanka']
['Dubai', 'UAE']
['Naypyidaw', 'Myanmar']
Stack Empty
Ans:
travel = []
def Push_element(NList):
    for L in NList:
        if L[1] != "India" and L[2] < 3500:
            travel.append([L[0], L[1]])
def Pop_element():
    while len(travel):
        print(travel.pop())
    else:
        print("Stack Empty")

SECTION D

31. Consider the tables PRODUCT and BRAND given below:
Table: PRODUCT
PCode PName UPrice Rating BID
P01 Shampoo 120 6 M03
P02 Toothpaste 54 8 M02
P03 Soap 25 7 M03
P04 Toothpaste 65 4 M04
P05 Soap 38 5 M05
P06 Shampoo 245 6 M05
Table: BRAND
BID BName
M02 Dant Kanti
M03 Medimix
M04 Pepsodent
M05 Dove
Write SQL queries for the following:
(i) Display product name and brand name from the tables PRODUCT and BRAND.
Ans: SELECT PName, BName FROM PRODUCT P, BRAND B WHERE P.BID=B.BID;
(ii) Display the structure of the table PRODUCT.
Ans: DESC PRODUCT;
(iii) Display the average rating of Medimix and Dove brands.
Ans: SELECT BName, AVG(Rating) FROM PRODUCT P, BRAND B
WHERE P.BID=B.BID
GROUP BY BName
HAVING BName='Medimix' OR BName='Dove';
(iv) Display the name, price, and rating of products in descending order of rating.
Ans: SELECT PName, UPrice, Rating
FROM PRODUCT
ORDER BY Rating DESC;

32. Vedansh is a Python programmer working in a school. For the Annual Sports Event, he has created a csv file named Result.csv, to store the results of students in different sports events. The structure of Result.csv is:
[St_Id, St_Name, Game_Name, Result]
Where
St_Id is Student ID (integer)
ST_name is Student Name (string)
Game_Name is name of game in which student is participating(string)
Result is result of the game whose value can be either 'Won', 'Lost' or 'Tie'
For efficiently maintaining data of the event, Vedansh wants to write the following user defined functions:
Accept() – to accept a record from the user and add it to the file Result.csv. The column headings should also be added on top of the csv file.
wonCount() – to count the number of students who have won any event.
As a Python expert, help him complete the task.
Ans:
def Accept():
    sid = int(input("Enter Student ID "))
    sname = input("Enter Student Name ")
    game = input("Enter name of game ")
    res = input("Enter Result")
    headings = ["Student ID", "Student Name", "Game Name", "Result"]
    data = [sid, sname, game, res]
    f = open('Result.csv', 'a', newline='')
    csvwriter = csv.writer(f)
    csvwriter.writerow(headings)
    csvwriter.writerow(data)
    f.close()

def wonCount():
    f = open('Result.csv', 'r')
    csvreader = csv.reader(f, delimiter=',')
    head = list(csvreader)
    print(head[0])
    for x in head:
        if x[3] == "WON":
            print(x)
    f.close()

SECTION E

33. Meticulous EduServe is an educational organization. It is planning to setup its India campus at Chennai with its head office at Delhi. The Chennai campus has 4 main buildings – ADMIN, ENGINEERING, BUSINESS and MEDIA
CBSE-Class-12-CS-083-Sample-Question-Paper-2023-24-with-Solution-q33
Block to Block distances (in Mtrs.)
From To Distance
ADMIN ENGINEERING 55 m
ADMIN BUSINESS 90 m
ADMIN MEDIA 50 m
ENGINEERING BUSINESS 55 m
ENGINEERING MEDIA 50 m
BUSINESS MEDIA 45 m
DELHI HEAD OFFICE CHENNAI CAMPUS 2175 km
Number of computers in each of the blocks/Center is as follows:
ADMIN 110
ENGINEERING 75
BUSINESS 40
MEDIA 12
DELHI HEAD 20
a) Suggest and draw the cable layout to efficiently connect various blocks of buildings within the CHENNAI campus for connecting the digital devices.
Ans:
CBSE-Class-12-CS-083-Sample-Question-Paper-2023-24-with-Solution-a30
b) Which network device will be used to connect computers in each block to form a local area network?
Ans: Switch
c) Which block, in Chennai Campus should be made the server? Justify your answer.
Ans: Admin block, as it has maximum number of computers.
d) Which fast and very effective wireless transmission medium should preferably be used to connect the head office at DELHI with the campus in CHENNAI?
Ans: Microwave
e) Is there a requirement of a repeater in the given cable layout? Why/ Why not?
Ans: No, a repeater is not required in the given cable layout as the length of transmission medium between any two blocks does not exceed 70 m.

34. (i) Differentiate between r+ and w+ file modes in Python.
Ans:
r+ Mode w+ Mode
Primary function is reading Primary function is writing
File pointer is at beginning of file If the file does not exist, it creates a new file
If the file does not exist, it results in an error If the file exists, previous data is overwritten
(ii) Consider a file, SPORT.DAT, containing records of the following structure:
[SportName, TeamName, No_Players]
Write a function, copyData(), that reads contents from the file SPORT.DAT and copies the records with Sport name as “Basket Ball” to the file named BASKET.DAT. The function should return the total number of records copied to the file BASKET.DAT.
Ans:
def copyData():
    fObj = open("SPORT.DAT", "rb")
    fObj1 = open("BASKET.DAT", "wb")
    cnt = 0
    try:
        while True:
            data = pickle.load(fObj)
            print(data)
            if data[0] == "Basket Ball":
                pickle.dump(data, fObj1)
                cnt += 1
    except:
        fObj.close()
        fObj1.close()
    return cnt

OR

(i) How are text files different from binary files?
Ans:
Text Files Binary Files
Extension is .txt Extension is .dat
Data is stored in ASCII format that is human readable Data is stored in binary form (0s and 1s), not human readable
(ii) A Binary file, CINEMA.DAT has the following structure:
{MNO:[MNAME, MTYPE]}
Where
MNO - Movie Number
MNAME - Movie Name
MTYPE - Movie Type
Write a user defined function, findType(mtype), that accepts mtype as parameter and displays all the records from the binary file CINEMA.DAT, that have the value of Movie Type as mtype.
Ans:
def Searchtype(mtype):
    fObj = open("CINEMA.DAT", "rb")
    try:
        while True:
            data = pickle.load(fObj)
            if data[2] == mtype:
                print("Movie number:", data[0])
                print("Movie Name:", data[1])
                print("Movie Type:", data[2])
    except EOFError:
        fObj.close()

35. (i) Define the term Domain with respect to RDBMS. Give one example to support your answer.
Ans: Domain is a set of values from which an attribute can take value in each row. For example, roll no field can have only integer values and so its domain is a set of integer values.
(ii) Kabir wants to write a program in Python to insert the following record in the table named Student in MYSQL database, SCHOOL:
rno (Roll number ) - integer
name (Name) - string
DOB (Date of birth) - Date
Fee - float
Note the following to establish connectivity between Python and MySQL:
Username - root
Password - tiger
Host - localhost
The values of fields rno, name, DOB and fee has to be accepted from the user. Help Kabir to write the program in Python.
Ans:
import mysql.connector as mysql
con1 = mysql.connect(host="localhost", user="root", password="tiger", database="sample2023")
mycursor = con1.cursor()
rno = int(input("Enter Roll Number:: "))
name = input("Enter the name:: ")
DOB = input("Enter date of birth:: ")
fee = float(input("Enter Fee:: "))
query = "INSERT into student values({}, '{}', '{}', {})".format(rno, name, DOB, fee)
mycursor.execute(query)
con1.commit()
print("Data added successfully")
con1.close()

OR

(i) Give one difference between alternate key and candidate key.
Ans: All keys that have the properties to become a primary key are candidate keys. The candidate keys that do not become primary keys are alternate keys.
(ii) Sartaj has created a table named Student in MYSQL database, SCHOOL:
rno (Roll number ) - integer
name (Name) - string
DOB (Date of birth) - Date
Fee - float
Note the following to establish connectivity between Python and MySQL:
Username - root
Password - tiger
Host - localhost
Sartaj, now wants to display the records of students whose fee is more than 5000. Help Sartaj to write the program in Python.
Ans:
import mysql.connector as mysql
con1 = mysql.connect(host="localhost", user="root", password="tiger", database="sample2023")
mycursor = con1.cursor()
query = "SELECT * FROM student where fee>{}".format(5000)
mycursor.execute(query)
data = mycursor.fetchall()
for rec in data:
    print(rec)
con1.close()

Download Now - Class 12 CS 083 Sample Question Paper 2023-24 with Solution

download-class-12-cs-083-sample-pre-board-question-paper-with-solution

Year wise Pre-Board and CBSE Sample Question Papers with Solution – Class 12 Computer Science (Code 083)

CBSE Class 12 CS 083 Sample QP 2026-27 with Solution

CBSE Class 12 CS 083 Sample QP 2025-26 with Solution

CBSE Class 12 CS 083 Sample QP 2024-25 with Solution

CBSE Class 12 CS 083 Additional Sample QP 2023-24 with Solution

CBSE Class 12 CS 083 Sample QP 2023-24 with Solution

CBSE Class 12 CS 083 Sample QP 2022-23 with Solution

CBSE Class 12 CS 083 Sample QP 2021-22 Term 2 with Solution

CBSE Class 12 CS 083 Sample QP 2021-22 Term 1 with Solution

CBSE Class 12 CS 083 Sample QP 2020-21 with Solution

Post a Comment

Previous Post Next Post