Class 12 IP 065 Previous Year Question Paper 2025 with Solution

Series &RQPS
Question Paper Code 90 Set 4

INFORMATICS PRACTICES
(Session 2024-25)

Time allowed : 3 hours
Maximum Marks : 70

General Instructions :

  1. This question paper contains 37 questions and five sections, Section A to E.
  2. All questions are compulsory. However, internal choices have been provided in some questions. Attempt only one of the choices in such questions.
  3. Section A have 21 questions carrying 1 mark each.
  4. Section B has 7 Very Short Answer type questions carrying 2 marks each.
  5. Section C has 4 Short Answer type questions carrying 3 marks each.
  6. Section D has 2 case study type questions carrying 4 marks each.
  7. Section E has 3 questions carrying 5 marks each.
  8. All programming question are to be answered using python language only.
  9. In case of MCQs, text of the correct answer should also be written.

SECTION – A

1. State whether the following statement is True or False :
In Python, we cannot create an empty DataFrame.
Ans: False

2. What will be the output of the following SQL command?
SELECT MONTHNAME ('2024-08-02'):
a) 08
b) 02
c) February
d) August

3. Temporary data files stored by websites in our computer can be used to track our online activities and also to personalize browsing experience. These files are known as:
a) Plug-ins
b) Add-ons
c) Cookies
d) Bookmarks

4. Which of the following is not an aggregate function in SQL?
a) COUNT(*)
b) MIN()
c) LEFT()
d) AVG()

5. Raheem created a unique computer software and wants to protect his creation from being copied or used without his permission. He is considering to apply for legal protection. Which type of intellectual property protection should Raheem apply for, to safeguard his software ?
a) Copyright
b) Plagiarism
c) Trademark
d) Lease

6. What is the default index type for a Pandas Series if not explicitly specified ?
a) String
b) List
c) Numeric
d) Boolean

7. In Python which function of matplotlib library is used to save a plot?
a) save()
b) saveplot()
c) export()
d) savefig()

8. State whether the following statement is True or False :
The MOD() function in SQL returns the quotient of division operation between two numbers.
Ans: False

9. Which of the following data structure is used for storing one-dimensional labelled data in Python Pandas ?
a) Integer
b) Dictionary
c) Series
d) DataFrame

10. Priya received an email that appeared to be from her bank, asking her to update her account information by clicking on a link. She clicked the link to enter her details, but immediately after, some amount was debited from her account. What type of cybercrime did Priya fall victim to?
a) Cyber stalking
b) Phishing
c) Fishing
d) Cyber bullying

11. Which SQL function calculates ab?
a) MOD()
b) POWER()
c) RAISE()
d) ROUND()

12. Which protocol is used while communicating through video calls on the Internet?
a) Video Over Internet Protocol
b) Voice Over Internet Protocol
c) Internet Protocol
d) Video Audio Over Internet Protocol

13. Which of the following Python statements will be used to select a specific element having index as points, from a Pandas Series named ser?
a) ser.element(points)
b) ser.select (points)
c) ser[points]
d) ser.show[points]

14. Excessive screen time and poor posture can lead to :
a) Faster Internet Speeds
b) Eye strain and other health issues
c) Better vision and bone density
d) Improved physical health

15. Which of the following libraries defines an ndarray in Python ?
a) pandas
b) numpy
c) matplotlib
d) scipy

16. With respect to SQL, match the function given in column-2 with categories given in column-1 :

Column-1Column-2
(i)Math function(a)COUNT()
(ii)Aggregate function(b)ROUND()
(iii)Date function(c)RIGHT()
(iv)Text function(d)YEAR()
a) (i)-(c), (ii)-(d), (iii)-(a), (iv)-(b)
b) (i)-(b), (ii)-(a), (iii)-(d), (iv)-(c)
c) (i)-(d), (ii)-(b), (iii)-(a), (iv)-(c)
d) (i)-(b), (ii)-(c), (iii)-(d), (iv)-(a)

17. Which of the following Python statements is used to change a column label in a DataFrame, df?
a) df = df.rename ({old_name : new_name}, axis='columns')

b) df = df.rename (old_name, new_name), axis='columns'
c) df = df.change_name (old_name, new_name, axis='bar')
d) df = df.update ({old_name : new_name), axis='bar'

18. In Python Pandas, DataFrame. _________ [ ] is used for label indexing with DataFrames.
a) label
b) index
c) labindex
d) loc

19. Every web page on the Internet has a unique address. This address is known as :
a) Domain Name
b) Protocol
c) Uniform Resource Locator
d) Network Topology

20. Assertion (A): The drop () method in Pandas can be used to delete rows and columns from a DataFrame.
Reason (R): The axis parameter in the drop () method specifies whether to delete rows (axis=0) or columns (axis=1).
a) Both Assertion (A) and Reason (R) are True and Reason (R) is the correct explanation for Assertion (A).
b) Both Assertion (A) and Reason (R) are True and Reason (R) is not the correct explanation for Assertion (A).
c) Assertion (A) is True and Reason (R) is False.
d) Assertion (A) is False, but Reason (R) is True.

21. Assertion (A): The ROUND () function in SQL can be used to round off a number to a specified number of decimal places.
Reason (R): The ROUND () function is a string function that accepts character values as input and returns numerical values as output.
a) Both Assertion (A) and Reason (R) are True and Reason (R) is the correct explanation for Assertion (A).
b) Both Assertion (A) and Reason (R) are True and Reason (R) is not the correct explanation for Assertion (A).
c) Assertion (A) is True and Reason (R) is False.
d) Assertion (A) is False, but Reason (R) is True.

SECTION – B

22. (a) Mention any two main points of difference between Series and DataFrame of Python Pandas.

OR

(b) Explain how we can access elements ofa series using slicing. Give an example to support your answer.
Ans: Elements of a series can be accessed in any of the following ways using slicing:
Example: Considering data to be a pandas series containing values [10, 20, 30, 40, 50] having index as ['a','b','c','d','e']
Positional Indexing/ Integer-based slicing: Slice a Series using indices
# Slice the Series from the first to the third element
data[0:3] OR data.iloc[0:3]
Label-based slicing: Slice a Series using its index labels.
data['b':'d'] OR data.loc['b':'d']
Conditional slicing: Slice a Series based on condition.
# Slice the Series where values are greater than 30
# for a pandas series named as data
data[data > 30]

23. A small tech startup, is considering using open source software to develop their new project management tool. They are evaluating the benefits and potential challenges of adopting open source solutions.

(i) ldentify one key benefit of using open source software for the development of project management tool.

Ans: Using open-source software to develop a new project management tool offers the following benefits:

(ii) Give any two examples of open source software.
Ans: Some Examples of open-source softwares are:
MySQL , PostgreSQL
, Linux , Ubuntu, LibreOffice , OpenOffice , GIMP, Firefox, Chromium

24. Consider the string, “Infornatics Practices “. Write suitable SQL queries for the following :
(i) To convert the entire string to uppercase.

Ans: SELECT UCASE(“Informatics Practices”);
* Use UPPER instead of UCASE will also correct
(ii) To display the total number of characters in the given string.

Ans: SELECT LEN(“Informatics Practices”);
* Use LENGTH instead of LEN will also correct

25. Give any two points of difference between Static web page and Dynamic web page.

OR

(b) Describe the role of a router in a network.
Ans: Packet forwarding using Best route: Routers forward packets of data between networks, using the destination IP address to determine the best route to the destination.

26. What is a Database Management System (DBMS) Mention any two examples of DBMS.
Ans: A Database Management System(DBMS) is software that lets us store, organize, manage, and retrieve data efficiently.
Examples: MySQL, PostgreSQL
, Microsoft Access, Oracle, Microsoft SQL Server, DB2 and Sybase

27. Give any two impacts on environment that are caused when e-waste is carelessly thrown or dumped in landfills or dumping grounds.
Ans: Impacts of e-waste:
i) Air pollution: Burning e-waste can release toxic fumes contributing to air pollution.
ii) Water pollution: E-waste can contaminate water posing a risk to the environment.

28. (a) Rohit is trying to create a Pandas Series from scalar values. His code has some mistakes. Rewrite the correct code and underline the corrections made.
import pandas
data = [50, 15, 40]
series = pd.series (data, Index=['x' , 'y', 'z'])
Print(series)

Ans:
import pandas as pd
data=[50,15,40] #OR data = <any numeric value>
series=pd.Series(data, index=['x', 'y', 'z'])
print(series)

OR

(b) Complete the given Python code to generate the following output:

COLOURNAMEQTY
0RedApple10
1BlueBerry15
2GreenGuava20
import ______ as pd
data=[{‘COLOUR’:’Red’, ‘NAME’:’Apple , ‘QTY’ :10},
{‘COLOUR’:’Blue’, ‘NAME’:’Berry’ , ‘QTY’:15},
{_____, ‘NAME’ : ‘Guava’ , ‘QTY’:20}]
df=pd.DataFrame (______)
print(_____)

Ans:
import pandas as pd
data= [{'COLOUR':'Red' , 'NAME': 'Apple' , 'QTY' : 10},
{'COLOUR':'Blue' , 'NAME': 'Berry' , 'QTY' : 15},
{'COLOUR':'Green' , 'NAME': 'Guava' , 'QTY' : 20}]
df=pd.DataFrame(data)
print(df)

SECTION – C

29. Ravi is a student studying in grade 12. He frequently uses the internet for various activities such as social networking, online shopping, and to research for school projects. Recently, he noticed that he receives targeted advertisements based on his browsing history and is concerned about his digital footprint. Additionally, Ravi has encountered instances of cyberbulying and is unsure how to handle them, Help Ravi by answering the following questions:

(i) What are digital footprints, and how are they created?
Ans: Digital footprints refer to the trail of data and information that individuals leave behind during online activities.
Following are some of the ways digital footprints are created:
● Browsing history: Every time a website is visited, the browser records the URL, date, and time of the visit.
● Search engine queries: When a search is performed online, the search engine records search term(s) and query.
● Social media interactions: Social media activities, such as posts, comments, likes, and shares, are recorded by the platform.
● Online purchases: When an online purchase is made, the retailer records transaction details, including name, address, and payment information.
● Surveillance cameras in public places can capture images and movements.
● RFID tags can capture movements and activities.

(ii) Write any two net etiquettes that Ravi should follow to ensure respectful and responsible online behavior.
Ans: To ensure respectful and responsible online behavior, Ravi should follow the following Net etiquettes:
● Avoid using slang, jargon, or offensive language
● Consider others’ perspectives and feelings

(iii) How can Ravi protect himself from cyberbullying? Mention any one protective measure.
Ans: Ravi should adopt following protective measures against cyberbullying:
● Avoid sharing personal information in public.

● Adopt safe privacy settings on Social Media accounts and Online Platforms
● Be cautious with links and attachments
● Use two-factor authentication

30. Write a Python program to create the following DataFrame using a Dictionary of Series :

CityState
0MumbaiMaharashtra
1DehradunUttrakhand
2BengaluruKarnataka
3HyderabadTelangana
import pandas as pd
City=pd.Series(['Mumbai','Dehradun','Bengaluru','Hyderabad'])
State=pd.Series(['Maharashtra','Uttarakhand','Karnataka','Telangana'])
df=pd.DataFrame({'City':City, 'State':State})
print(df)

(b) Write a Python program to create a Pandas Series as shown below from an ndarray containing the numbers 10, 20, 30, 40, 50 with corresponding indices ‘A’, ‘B’, ‘C’, ‘D’, ‘E’.

A10
B20
C30
D40
E50
import pandas as pd
import numpy as np
L1=np.array([10,20,30,40,50])
L2=np.array(['A','B','C','D','E'])
S1=pd.Series(L1,index=L2)
print(S1)

31. (i) Write the SQL statement to create a table, Customer with the following specifications :

Column NameData TypeKey
CIDIntPrimary Key
FNameVarchar(20)
LNameVarchar(20)
AgeInt
CREATE TABLE Customer (
CID INT PRIMARY KEY,
FName VARCHAR(20),
LName VARCHAR(20),
Age INT
);

(ii) Write the SQL query to display all records in descending order of LName from the Table Customer.

SELECT * FROM Customer ORDER BY LName DESC;

32. (a) Given the following tables:

Table: STUDENTS

S_IDNAMEAGECITY
1Rahul20Delhi
2Priya22Mumbai
3David21Delhi
4Neha23Bengaluru
5Khurshid22Delhi

Table: GRADES

S_IDSUBJECTGRADE
1MathA
2EnglishB
3MathC
4EnglishA
5MathB
Write SQL queries for the following:
(i) To display the number of students from each city.
Ans: SELECT CITY, COUNT(*) FROM STUDENTS GROUP BY CITY;
(ii) To find the average age of all students.
Ans: SELECT AVG(AGE) FROM STUDENTS;
(iii) To list the names of students and their grades.
Ans: SELECT NAME, GRADE FROM STUDENTS S, GRADES G WHERE S.S_ID = G.S_ID ;

OR

(b) Consider the following tables:
Table1: PRODUCTS
This table stores the basis details of the products available in a shop

PIDPNameCategory
201LaptopElectronics
202ChairFurniture
203DeskFurniture
204SmartphoneNULL
205TabletElectronics

Table2: SALES
This table records the number of units sold for each product.

SaleIDPIDCategory
30120150
302202100
30320360
30420480
30520570
Write SQL queries for the following :
(i) To delete those records from table SALES whose UnitsSold is less than 80.

Ans: DELETE FROM SALES WHERE UnitsSold < 80;
(i) To display names of all products whose category is not known.

Ans: SELECT PName FROM PRODUCTS WHERE Category IS NULL;
(iii) To display the product names along with their corresponding units sold.

Ans: SELECT PName, UnitsSold FROM PRODUCTS P, SALES S WHERE P.PID = S.P_ID ;

SECTION – D

33. Gurkirat has to fill in the blanks in the given Python program that generates a line plot as shown below. The given line plot represents the temperature (in degree Celcius) over five days as given in the table :

DaysTemperature
Day 130
Day 232
Day 331
Day 429
Day 528
q-33-ip-065-previous-year-question-paper-2025-with-solution

import _____ as plt #STMT 1
days = ['Day 1' , 'Day 2' , 'Day 3' , 'Day 4' , 'Day 5']
temp = [30, 32, 31, 29, 28]
plt.____(days, temp) #STMT 2
plt.xlabel('____') #STMT 3
plt.ylabel('Temperature')
plt.title('____') #STMT 4
plt.show()

Write the missing statements according to the given specifications :
(i) Write the suitable code to import the required module in the blank space in the line marked as Statement 1.

Ans: import matplotlib.pyplot as plt

(ii) Fill in the blank in Statement 2 with a suitable Python function name to create a line plot.
Ans: plt.plot(days,temp)

(iii) Refer to the graph shown and fill in the blank in Statement 3 to display the appropriate label for x-axis.
Ans: plt.xlabel('Days')

(iv) Refer to the graph shown and fill in the blank in Statement 4 to display the suitable chart title.
Ans: plt.title('Temperature over 5 days')

34. (a) An educational institution is maintaining a database for storing the details of courses being offered. The database includes a table COURSE with the following attributes :
C_ID
: Stores the unique ID for each course.
C_NAME : Stores the course’s name.
INSTRUCTOR : Stores the name of the course instructor.
DURATION : Stores the duration of the course in hours.
Table: COURSE

C_IDC_NAMEINSTRUCTORDURATION
C101Data StructuresDr. Alok40
C102Machine LearningProf. Sunita60
C103Web DevelopmentMs. Sakshi45
C104Database ManagementMr. Suresh50
C105Python ProgrammingDr. Pawan35
Write SQL quesries for the following:

(i) To add a new record with following specifications:
C_ID
: C106
C_NAME : Introduction to AI
INSTRUCTOR : Ms. Preeti
DURATION : 55
Ans: INSERT INTO COURSE VALUES('C106','INTRODUCTION TO AI', 'MS.PREETI',55);

(ii) To display the longest duration among all courses.
Ans: SELECT MAX(DURATION) FROM COURSE;

(iii) To count total number of courses run by the institution.
Ans: SELECT COUNT(DISTINCT C_NAME)FROM COURSE;

(iv) To display the instructors’ name in lower case.
Ans: SELECT LOWER(INSTRUCTOR) FROM COURSE;

(b) Ashutosh, who is a manager, has created a database to manage employee records. The database includes a table named EMPLOYEE whose attribute names are mentioned below:
EID
: Stores the unique ID for each employee.
EMP_NAME : Stores the name of the employee.
DEPT : Stores the department of the employee.
SALARY : Stores the salary of the employee.
JOIN_DATE : Stores the employee’s joining date.

EIDEMP_NAMEDEPTSALARYJOIN_DATE
E01ARJUN SINGHSALES750002019-11-01
E02PRIYA JAINENGINEERING850002020-05-20
E03RAVI SHARMAMARKETING600002018-08-14
E04AYESHANULL500002021-01-10
E05RAHUL VERMAFINANCE400002017-06-25
Write the output of the following SQL queries:

(i) Select SUBSTRING(EMP_NAME, 1, 5) from EMPLOYEE where DEPT = ‘ENGINEERING’;

SUBSTRING(EMP_NAME, 1, 5)
--------------------------
PRIYA

(ii) Select EMP_NAME from EMPLOYEE where month(JOIN_DATE) = 8;

EMP_NAME
-----------
RAVI SHARMA

(iii) Select EMP_NAME from EMPLOYEE where SALARY > 60000;

EMP_NAME
-----------
ARJUN SINGH
PRIYA JAIN

(iv) Select count(DEPT) from EMPLOYEE;

count(DEPT)
-----------
4

SECTION – E

35. XYZ Technologies, Hyderabad is a company that deals with data science and AI projects. They have different divisions ADMIN, SALES, PRODUCTION and SERVICE.
The layout of the Hyderabad branch is :
class-10-ca-165-previous-year-question-paper-2024-with-solution
The management wants to connect all the divisions as well as the computers of each division (ADMIN, SALES, PRODUCTION and SERVICE).
Distance between the divisions are as follows:

ADMIN to SALES69m
ADMIN to PRODUCTION84m
ADMIN to SERVICE60m
SALES to PRODUCTION110m
SALES to SERVICE135m
PRODUCTION to SERVICE90m

Number of computers in each division:

DivisionNumber of Computers
ADMIN40
SALES75
PRODUCTION120
SERVICE20
Based on the above specifications, answer the following questions :

(i) Suggest the topology and draw the most suitable cable layout for connecting all the divisions in the Hyderabad office.
Ans: (Make figure in Star or Bus Topology)
class-12-IP-065-previous-year-question-paper-2025-with-solution

(ii) XYZ Technologies is having its head office in USA. Out of LAN, MAN and WAN, which kind of network will be created to connect Hyderabad office with USA Office? Justify your answer.
Ans: WAN will be created as the network connection needs to be across different countries.

(iii) Suggest the division for the placement of server. Explain the reason for your selection.
Ans: Server should be placed in the Production division as it has the maximum number of computers.

(iv) Suggest the placement of Switch/Hub with justification.
Ans: Switch/Hub should be placed in each of the divisions ADMIN, SALES, PRODUCTION and SERVICE as multiple devices need to be inter-connected.

(v) Where will a repeater be placed in the suggested network layout ? Justify your answer.
Ans: Repeater will be placed: Between Sales and Production (for first layout – Star Topology)
Because a repeater is required if the distance between the blocks is more and the repeater receives the weak signal, amplifies it, and retransmits it

36. Consider the DataFrame Doctor shown below :

DIDNAMEDEPARTMENTFEE
0101Dr. JoeENT1500
1102Dr. SalmaUROLOGY1600
2103Dr. JeetORTHO1550
3104Dr. NehaENT1200
4105Dr. VikramORTHO1700
Write suitable Python statements for the following:

(i) To print the last three rows of the DataFrame Doctor.
Ans: print(doctor.tail(3))
(ii) To display the names of all doctors.

Ans: print(doctor['Name'])
(iii) To add a new column ‘Discount’ with value of 200 for all doctors.

Ans: doctor['Discount']=200
(iv) To display rows with index 2 and 3.

Ans: print(doctor.loc[[2,3]])
(v) To delete the column ‘Department’.

Ans: doctor.drop(['Department'],axis=1, inplace=True)

37. (a) Write SQL query for the following :
(i) To display sum total of all the values of the Score column, from STUDENTS table.

Ans: SELECT SUM(Score) FROM STUDENTS;
(ii) To display the first five characters of the Name column from STUDENTS table.
Ans: SELECT LEFT(Name,5) FROM STUDENTS;
(iii) To display the values of Name column from the STUDENTS table, after removing the trailing spaces.
Ans: SELECT RTRIM(Name) FROM STUDENTS;
(iv) To retrieve the lowest score from the Score column of GRADES table.
Ans: SELECT MIN(Score) FROM GRADES;
(v) To increase the fee of all students by 100, in the STUDENTS table. (The name of the column is FEE)
Ans: UPDATE STUDENTS SET FEE = FEE + 100;

OR

(b) Write SQL query for the following :
(i) To calculate the square of 15.

Ans: SELECT POWER(15, 2);
(ii) To round the number 456.789 to the nearest integer.
Ans: SELECT ROUND(456.789);
(iii) To display the position of first occurrence of ‘com’ in the string ‘mycommercial.com’.
Ans: SELECT INSTR('mycommercial.com','com');
(iv) To display the name of the day for the date ‘2024-11-07 ‘.
Ans: SELECT DAYNAME ('2024-11-07');
(v) To display the current date and time.
Ans: SELECT NOW();

Sharing is caring – pass it on!

Leave a Comment

© 2025 ExamsMantra.in All rights reserved.