Computer Science Class 12
Computer Science Class 12
REVIEW OF PYTHON
LET US REVISE THE CONCEPTS THAT WE LEARNED IN CLASS
XI
Characteristics of Python:
1. Python is Object-Oriented
Python supports concepts such as polymorphism, operator overloading and multiple
inheritance.
2. Indentation
Indentation is one of the greatest features in python – indentation identifies the
blocks of code.
3. Open source Programming Language
Python is an open source programming language.
It can be freely downloaded. Installing python is free and easy
4. It’s Powerful
• Dynamic typing
• Built-in types and tools
• Library utilities
• Third party utilities (e.g. NumPy, SciPy) Automatic memory management
5. It’s Portable and Platform independent
• Python runs virtually in every major platform used today
• As long as you have a compatible python interpreter installed, python
programs will run in exactly the same manner, irrespective of platform.
6. It’s easy to use and learn
• No intermediate compiler
• Python Programs are compiled automatically to an intermediate form called
byte code, which the interpreter then reads.
• This gives python the development speed of an interpreter without the
performance loss inherent in purely interpreted languages.
• Structure and syntax are pretty intuitive and easy to grasp.
7. Interpreted Language
Python is processed at runtime by python Interpreter
8. Interactive Programming Language
Users can interact with the python interpreter directly for writing the programs
9. Straight forward syntax
The formation of python syntax is simple and straight forward which also makes it
popular.
Character Set of Python:
Set of all characters recognised by python. It can be any alphabet, digit or any symbol.
Python uses ASCII character set.
Python Supports the following character set:
Letters: A- Z and a -z
Digits: 0-9
Special Symbols: + , - , /, % , ** , * , [ ], { }, #, $ etc.
White spaces: Blank space, tabs, carriage return, newline, form feed Other
Characters: All ASCII and UNICODE characters.
Tokens:
Tokens are smallest identifiable units. Different
tokens are:
• Keywords: reserved words which are having special meaning.
• Examples: int, print, input, for, while
• Identifiers: name of given by the user to identify variables, functions, constants, etc.
• Literals: literals are constant values. It can be numeric or non-numeric
• Operators: triggers an operation. Parameters provided to the operators are called
operands
Examples: + - * % ** / // Delimiters: Symbols used
as separators.
Examples: {} , [ ] ; :
Based on the data type of a variable, the interpreter allocates memory and decides what can
be stored in the reserved memory. Therefore, by assigning different data types to variables,
you can store integers, decimals or characters in these variables.
For example: a = b = c = 1
Here, an integer object is created with the value 1, and all three variables are assigned to
the same memory location. You can also assign multiple objects to multiple variables.
Output Variables:
The Python print statement is often used to output variables.Variables do not need to be
declared with any particular type. Different type of data can be assigned even after
initializing them with some type of data. x = 5 # x is of type int
x = "kve " # x is now of type str print(x)
Output: kve
To combine both text and a variable, Python uses the “+” character: Example
x = "awesome"
print("Python is " + x) Output of
the above code is:
Python is awesome
You can also use the + character to add a variable to another variable: Example
x = "Python is "
y = "awesome"
z = x + y print(z)
Output:
Python is awesome
Expressions:
An expression is a combination of values, variables, and operators.
An expression is evaluated using assignment operator.
Examples: Y=x + 17
>>> x=10
>>> z=x+20
>>> z
30
>>> x=10
>>> y=20
>>> c=x+y
>>> c
30
Operators:
In Python you can implement the following operations using the corresponding operators.
Operators trigger an operation. Some operators need one operand, some need more than
one operand to perform the operation.
Operator Token
addition +
subtraction -
multiplication *
Integer Division /
remainder %
and &
or \
Statements:
A statement is an instruction that the Python interpreter can execute. We have normally two
basic statements, the assignment statement and the print statement. Some other kinds of
statements that are if statements, while statements, and for statements generally called as
control flows.
Examples:
An assignment statement creates new variables and gives them values:
>>> x=10
>>> school="kve"
Precedence of Operators:
Operator precedence affects how an expression is evaluated. Each operator is having a
priority when used in an expression in combination with other operators. For example, x =
7 + 3 * 2;
here, x is assigned 13, not 20 because operator * has higher precedence than +, so it first
multiplies 3*2 and then adds into 7. Example 1:
>>> 3+4*2 11
Multiplication gets evaluated before the addition operation
>>> (10+10)*2 40
Parentheses () overriding the precedence of the arithmetic operators
Example 2:
a =
20
b =
10
c =
15
d =
5e=0
e =
(a + b)
*c/d
#( 30
* 15 )
/5
print("
Value
of (a +
b) * c
/ d is
", e) e
= ((a +
b) * c)
/d
# (30
* 15 )
/5
print("
Value
of ((a
+ b) *
c) / d
is ",
e) e =
(a + b)
* (c /
d)
# (30)
*
(15/5)
print("
Value
of (a +
b) * (c
/ d) is
", e)
e = a + (b * c) / d; # 20 +(150/5) print("Value
of a + (b * c) /d is", e)
Output:
Value of (a + b) * c / d is 90.0
Value of ((a + b) * c) / d is 90.0 Value
of (a + b) * (c / d) is 90.0
Value of a + (b * c) /d is 50.0
Comments:
Comments are discarded by the Python interpreter. Comments acts as some message to the
Programmer. It can be used as documents.
Single-line comments begins with a hash(#) symbol and is useful in mentioning that the
whole line should be considered as a comment until the end of line.
A Multi line comment is useful when we need to comment on many lines. In python, triple
double quote(“ “ “) and single quote(‘ ‘ ‘)are used for multi-line commenting.
Example:
# this is a single line comment
‘’’ I am a multi line comment’’’
Import Error: It is raised when you try to import a module which does not exist. This may
happen if you made a typing mistake in the module name or the module doesn't exist in its
standard path. In the example below, a module named "non_existing_module" is being
imported but it doesn't exist, hence an import error exception is raised.
Index Error: An IndexError exception is raised when you refer a sequence which is out of
range. In the example below, the list abc contains only 3 entries, but the 4th index is being
accessed, which will result an IndexError exception.
Type Error: When two unrelated type of objects are combined, TypeErrorexception is
raised.In example below, an int , and a string is added, which will result in TypeError
exception.
Syntax errors: These are the most basic type of error. They arise when the Python parser is
unable to understand a line of code. Syntax errors are almost always fatal, i.e. there is
almost never a way to successfully execute a piece of code containing syntax errors
Run-time error: A run-time error happens when Python understands what you are saying,
but runs into trouble when following your instructions.
Key Error : Python raises a KeyError whenever a dict() object is requested (using
the format a= adict[key]) and the key is not in the dictionary.
Value Error: In Python, a value is the information that is stored within a certain object. To
encounter a ValueError in Python means that is a problem with the content of the object
you tried to assign the value to.
Python has many built-in exceptions which forces your program to output an error when
something in it goes wrong. In Python, users can define such exceptions by creating a new
class. This exception class has to be derived, either directly or indirectly, from
Exception class.
Different types of exceptions:
• ArrayIndexOutOfBoundException.
• ClassNotFoundException.
• FileNotFoundException.
• IOException.
• InterruptedException.
• NoSuchFieldException.
• NoSuchMethodException
Modules:
Python module can be defined as a python program file which contains a python code
including python functions, class, or variables. In other words, we can say that our python
code file saved with the extension (.py) is treated as the module. We may have a runnable
code inside the python module. A module in Python provides us the flexibility to organize
the code in a logical way. To use the functionality of one module into another, we must
have to import the specific module.
Syntax:
import <module-name>
Every module has its own functions, those can be accessed with . (dot) Note:
In python we have help ()
Enter the name of any module, keyword, or topic to get help on writing Python programs
and using Python modules. To quit this help utility and return to the interpreter, just type
"quit".
Some of the modules like os, date, and calendar so on……
>>> print(sys.version_info)
sys.version_info(major=3, minor=8, micro=0, release level='final', serial=0)
>>> print(calendar.isleap(2020))
True
>>> print(calendar.isleap(2017))
False
Control Structures
Flow of execution means the way in which the instructions are executed. It can be
1. Sequential execution
2. Selection/ Conditional statements
3. Iterations/loop
Sequential execution means executing the statements one by one starting from the first
instruction onwards.
Selection:
Selection or Conditional statements helps us to execute some statements based on whether
the condition is evaluated to True or False.
Use of if statement:
The if statement contains a logical expression using which data is compared and a decision
is made based on the result of the comparison.
Syntax:
if <expression>:
statement(s)
If the boolean expression evaluates to TRUE, then the block of statement(s) inside the if
statement is executed. If boolean expression evaluates to FALSE, then the first set of code
after the end of the if statement(s) is executed.
Output:
3 is greater done
-1 a is smaller
Finish
a=10
if a>9:
print("A is Greater than 9") Output:
A is Greater than 9
Alternative if (If-else):
An else statement can be combined with an if statement. An else statement contains the
block of code (false block) that executes if the conditional expression in the if statement
resolves to 0 or a FALSE value.
The else statement is an optional statement and there could be at most only one else
Statement following if.
Syntax of if - else: if
test expression:
Body of if stmts
else:
Body of else
Flow Chart:
Example of if - else:
a=int(input('enter the number')) if
a>5:
print("a is greater") else: print("a is
smaller than the input given") Output:
enter the number 2 a is smaller
than the input given
----------------------------------------
a=10 b=20
if a>b:
print("A is Greater than B") else:
print("B is Greater than A")
Output:
B is Greater than A
Chained Conditional: (If-elif-else):
The elif statement allows us to check multiple expressions for TRUE and execute a block
of code as soon as one of the conditions evaluates to TRUE. Similar to the else, the elif
statement is optional. However, unlike else, for which there can be at most one statement,
there can be an arbitrary number of elif statements following an if.
Flow Chart:
Iteration/Repetition:
A loop statement allows us to execute a statement or group of statements multiple times as
long as the condition is true. Repeated execution of a set of statements with the help of
loops is called iteration.
Loops statements are used when we need to run same code again and again, each time with
a different value.
While loop:
Loops are either infinite or conditional. Python while loop keeps iterating a block of code
defined inside it until the desired condition is met.
• The while loop contains a Boolean expression and the code inside the loop is
repeatedly executed as long as the Boolean expression is true.
• The statements that are executed inside while can be a single line of code or a block
of multiple statements
Syntax:
while(expression):
Statement(s)
Flow Chart:
Example Programs:
i=1 while i<=6:
print("KV School")
i=i+1
Output:
KV School
KV School
KV School
KV School
KV School
KV School
____________________________________________
_ i=1 while i<=3:
print("KV School",end=" ")
j=1 while j<=1:
print("CS DEPT",end="")
j=j+1
i=i+1
print() Output:
KV School CS DEPT
KV School CS DEPT
KV School CS DEPT
For loop:
Python for loop is used for repeated execution of a group of statements for the desired
number of times. It iterates over the items of lists, tuples, strings, the dictionaries and other
iterable objects.
Syntax:
for <loopvariable> in <sequence>:
Statement(s)
A sequence or iterable object is used to execute the loop. The for loop executes for a definite
number of times. During each of the iteration, the loop variable holds a value from the
sequence.
Example 1:
L = [ 1, 2, 3, 4, 5]
for var in L:
print( var, end=’ ‘)
output: 0,1,2,3,4,5,6,7,8,9
Example 3: for k in
range(1, 10):
if k% 2 ==0:
print(k, end = ‘ , ‘)
Output: 2, 4, 6, 8
Example 4:
list =
['K','V','S','C','H'] i=
1 for item in list:
print ('School ',i,' is ',item)
i = i+1
Output:
School 1 is K
School 2 is V
School 3 is S
School 4 is C
School 5 is H
Example 5:
#Iterating over a Tuple:
tuple = (2,3,5,7) print ('These are the first four
prime numbers ')
#Iterating over the tuple for
a in tuple:
print (a)
Output:
These are the first four prime numbers 2
3
5
7
Example 6:
# Iterating over a dictionary: #creating
a dictionary
college =
{"ces":"block1","it":"block2","ece":"block3"}
#Iterating over the dictionary to print keys print
('Keys are:')
for keys in college:
print (keys)
#Iterating over the dictionary to print values
print ('Values are:') for blocks in
college.values():
print(blocks)
Output:
Keys are:
ces
it
ece Values
are: block1
block2
block3
Example 7:
#Iterating over a String:
#declare a string to iterate over
college = 'KVSCH' #Iterating
over the string for name in
college:
print (name)
Output:
K
V
S
C
H
Syntax:
for val in sequence1:
for val in sequence2:
statements
Output:
11111 1
222 18
45 Error! Bookmark not defined.
333
Strings:
A string is a group/ a sequence of characters. Since Python has no provision for arrays, we
simply use strings. A sequence of any type of characters enclosed within quotes, is a string.
This is how we declare a string. We can use a pair of single or double quotes. Every string
object is of the type ‘str’.
>>> type("name")
<class 'str'>
>>> name=str()
>>>name
''
>>> a=str('kvsch')
>>> a
' kvsch'
>>> a=str(kvsch)
>>> a[2]
's'
>>> fruit = 'banana'
>>> letter = fruit[1]
The second statement selects character number 1 from fruit and assigns it to letter. The
expression in brackets is called an index. The index indicates which character in the
sequence we want.
String slices:
A segment or a part of a string is called a slice. Selecting a slice is similar to selecting a
character:
Subsets of strings can be taken using the slice operator ([ ] and [:]) with indexes starting at
0 in the beginning of the string and working their way from -1 at the end.
Slice out substrings, sub lists, sub Tuples using index.
Syntax:
[Start: stop: steps]
• Slicing will start from index and will go up to stop in step of steps.
• Default value of start is 0,
• Stop is last index of list
• And for step default is 1 For example, 1: str = 'Hello World!' print (str) # Prints
complete string print (str[0] )# Prints first character of the string print (str[2:5] ) # Prints
characters starting from 3rd to 5th print (str[2:]) # Prints string starting from 3rd
character print ( str * 2 )# Prints string two times print (str + "TEST") # Prints
concatenated string Output:
Hello World!
H
llo llo
World!
Hello World!Hello World!
Hello World!TEST
Example 2:
>>> x='computer'
>>> x[1:4]
'omp'
>>> x[1:6:2]
'opt' >>>
x[3:]
puter
>>>
x[:5]
'compu'
>>> x[-1]
'r'
>>> x[-3:]
'ter'
>>> x[:-2]
'comput'
>>> x[::-2]
'rtpo'
>>> x[::-1]
'retupmoc'
Note: strings are immutable, which means we can’t change an existing string. The
best we can do is create a new string that is a variation from the original:
‘*’ is called repetition operator and it causes repetition of the characters the specified
number of times.
List:
With the help of lists, we can store different types of items in a variable. It helps us to store
collection of data. List items are ordered, changeable and can be repeated. Indexes are used
to access the items.
Lists are mutable.
Python has a set of built-in methods that you can use on lists
Method Description
extend() Add the elements of a list (or any iterable), to the end of the current list
index() Returns the index of the first element with the specified value
Whenever we need an array, we can use lists. We can construct / create list in many ways.
Example 1:
list1=[1,2,3,'A','B',7,8,[10,11]]
print(list1)
output:
[1, 2, 3, 'A', 'B', 7, 8, [10, 11]]
Example 2:
x=list()
print(x)
output:
x []
Example 3:
Name = “ abcdefg”
L = list(Name)
print(L)
Output:
[ ‘a’, ‘b’, ‘c’, ‘d’, ‘e’, ‘f’, ‘g’]
List Comprehension:
This is a way to create a new list using an existing list.
Syntax:
NewList = [ expression for variable in iterableobject if condition == True ]
Example1:
list1=[x**2 for x in
range(10)] print(list1) output:
[ 0,1,4,9,16,25,36,49,64,81]
Note: in the above given code, a new list named list1 is created using the expression x**2,
where the for loop is used to assign different values to ‘x’ using the range( ) function.
Example 2:
x=[z**2 for z in range(10) if z>4]
print(x)
Output: [25, 36, 49, 64, 81]
Example 3:
x=[x ** 2 for x in range (1, 11) if x % 2 == 1]
print(x)
Output: [1, 9, 25, 49, 81]
Tuples:
A tuple is a collection which is ordered and unchangeable. In Python tuples are created by
enclosing items within round brackets.
• Supports all operations for sequences.
• Immutable, but member objects may be mutable.
• If the contents of a list shouldn’t change, use a tuple to prevent items from accidently
being added, changed, or deleted.
• Tuples are more efficient than list due to python’s implementation.
We can create tuple in different ways.
X=( ) # an empty tuple
X=(1,2,3) # a tuple with three elements
X=tuple(list1)
X=1,2,3,4
Syntax:
<Name of the tuple>[index] Example:
T = ( 1, 2,4,6)
print(T[0])
Output: 1 print(T[-
-1])
Output: 6
index (): Searches the tuple for a specified value and returns its position in the tuple.
>>> x=(1,2,3,4,5,6,2,10,2,11,12,2)
>>> x.index(2)
Output: 1
(Or)
>>> x=(1,2,3,4,5,6,2,10,2,11,12,2)
>>> y=x.index(2)
>>> print(y)
Output: 1
len(): To know the number of items or values present in a tuple, we use len().
>>> x=(1,2,3,4,5,6,2,10,2,11,12,2)
>>> y=len(x)
>>> print(y)
output: 12
Tuple comprehension:
Tuple Comprehensions are special: The result of a tuple comprehension is special. You
might expect it to produce a tuple, but what it does is produce a special "generator" object
that we can iterate over.
For example:
>>> x = (i for i in 'abc') #tuple comprehension
>>> x
<generator object <genexpr> at 0x033EEC30>
>>> print(x)
<generator object <genexpr> at 0x033EEC30>
You might expect this to print as ('a', 'b', 'c') but it prints as <generator object <genexpr> at
0x02AAD710>. The result of a tuple comprehension is not a tuple: it is actually a generator.
The only thing that you need to know now about a generator is that you can iterate over it,
but ONLY ONCE.
Example:
>>> x = (i for i in 'abc')
>>> for i in x:
print(i)
Output:
ab
c
Example:
Create a list of 2-tuples like (number, square):
>>> z=[(x, x**2) for x in range(6)]
>>> z
[(0, 0), (1, 1), (2, 4), (3, 9), (4, 16), (5, 25)]
Set comprehension:
Similarly, to list comprehensions, set comprehensions are also supported by Python:
Example:
>>> a = {x for x in 'abracadabra' if x not in 'abc'}
>>> a
Output:
{'r', 'd'}
Output:
{24, 18, 27, 21}
Example:
>>> dict1 = {"brand":"mrcet","model":"college","year":2004}
>>> dict1
{'brand': 'mrcet', 'model': 'college', 'year': 2004}
Method Description
Return the value of key. If key does not exit, return d (defaults to
get(key[,d]) None).
Remove the item with key and return its value or d if key is not
pop(key[,d])
found. If d is not provided and key is not found, raises KeyError.
Comprehension:
Dictionary comprehensions can be used to create dictionaries from arbitrary key and value
expressions Syntax:
<dictionary> = { expression for <variable> in sequence }
Example:
>>> z={x: x**2 for x in (2,4,6)}
>>> z
{2: 4, 4: 16, 6: 36}
>>> dict11 = {x: x*x for x in range(6)}
>>> dict11
{0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25}
3. What error occurs when you execute the following Python code snippet?
apple = mango
a) SyntaxError
b) NameError
c) ValueError
d) TypeError
a) 30.0
b) 30.8
c) 28.4
d) 27.2
7. Which of the following can be used as valid variable identifier(s) in Python? a. total
b. 7Salute
c. Que$tion
d. global
14.Which of the following method is used to delete element from the list? a)del()
b)delete()
c)pop()
d)All of these
Answers of MCQ:
1) A 2)A 3)B 4)A 5)D 6)C 7)A 8)B 9) D 10)B 11)B 12)B 13)A 14)C
15)C
Sum = 0 for k in
range(5): Sum
= Sum+k
print(Sum)
Sum = 0
for k in range(10 , 1, -2):
Sum = Sum+k
print(Sum)
5. How many times the following loop will execute? Justify your answer
A=0
while True:
print(A)
A =A+1
6. Give the output of the following. Also find how many times the loop will execute.
A=0
while A<10:
print(A, ‘ , ‘)
A =A+1
7. Give the output of the following. Also find how many times the loop will execute.
A=0
while A<10:
print(A, ‘ , ‘)
A =A+1
print(‘\n’, A)
T = (5)
T=
T*2
print(T
)
10. What kind of error message will be generated if the following code is executed A = 5
B = ‘hi’ d = A+B
print(D)
S = ‘abcdefgh’
L = list(S)
print(L[1:4])
1) 10
2) 30
3)
*
* *
* * *
4) * * * * *
* ***
* * *
* * *
5)infinite loop. Condition / test expression is always Ture.
6) 0,1,2,3,4,5,6,7,8,9
7) 0,1,2,3,4,5,6,7,8,9
10
8) 10 Note: here T is an integer
10)TypeError
11) [1,2,3,4,5,6,7,8,9]
12) [1,2,3,4,5,6,7,8]
14) 1
1
2.Write Python code to remove an element as entered by the user form the list, L
3.Create a list k, by selecting all the od numbers within the given range, m and n. User will
input the values of m , n at run time
4.Write Python code to create and add items to a dictionary. Ask the user to input key value
pairs. Continue as long as the user wishes.
5.Write Python code to find whether the given item is present in the given list using for
loop.
6.Create a list, L, with the squares of numbers from 0 to 10
7.Mr. Rahul wants created a dictionary to store the details of his students and to manipulate
the data.
He wrote a code in Python, help him to complete the code:
studentDict = ______ # stmt 1 n = int(input("How Many
Students you Want To Input?"))
for i in range(___ ): # stmt 2 - to enter n number of students data rollno
= input("Enter Roll No:")
name = input("Enter Name:")
physicsMarks = int(input("Enter Physics Marks:"))
chemistryMarks = int(input("Enter Chemistry Marks:"))
mathMarks = int(input("Enter Maths Marks:"))
studentDict[rollno]=__________ # stmt 3
3) m = int(input(‘lower limit’)) n =
int(input(‘upper limit’)) n = n+1
L = [x for x in range(m, n) if x%2!=0]
4) D = { } while Ture:
K = input(‘type a key’)
V = int(input(‘type the value’)
D[K] = V
C = input(‘type ‘y’ to add more’)
if C!=’y’:
break
5) flag = 0
L = eval(input(‘input a list on numbers’))
E = int(input(‘item to be searched’) K
=len(L) for p in range(K): if E
==L(p):
flag = 1 print(‘found and index is ‘,p) if
flag==0:
print(‘not found’)
6) list1=[] for x in range(10):
list1.append(x**2)
list1
Output:
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
OR
list1=list(map(lambda x:x**2, range(10)))
7)
Statement 1 : StudentDict = dict( )
Statement 2 = for i in range( n ):
Statement 3: studentDict[rollno]=[name, physicsMarks, chemistryMarks, mathMarks]
FUNCTIONS
A function is a block of code that performs a specific task.
A function usually performs a single task of a large program.
Functions help in the division of our program into smaller, modular portions known as
divide and conquer approach
FUNCTION DEFINITION
A function is a named sequence of statement(s) that performs a computation. It contains
line of code(s) that are executed sequentially from top to bottom by Python interpreter.
They are the most important building blocks for any software in Python.
Built in functions are the function(s) that are built into Python and can be accessed by a
programmer.
These are always available and for using them, we don’t have to import any module
(file).
Name of the Description Example
function
abs (x) It returns distance between x and zero, where >>>abs(-45) 45 >>>abs(119)
x is a numeric expression. 119
max( x, y, z, .... ) It returns the largest of its arguments: where >>>max(80, 100, 1000)
x, y and z are numeric 1000
variable/expression. >>>max(-80, -20, -10)
-10
min( x, y, z, .... ) It returns the smallest of its arguments; >>> min(80, 100, 1000)
where x, y, and z are numeric 80
Variable/expression. >>>min(-80, -20, -10)
-80
cmp( x, y ) It returns the sign of the difference of two >>>cmp(80,100)
numbers: -1 if x < y, 0 if x == y, or 1 if x > y, -1
where x and y are numeric variable/expression. >>>cmp(180, 100)
1
divmod (x,y ) Returns both quotient and remainder by >>> divmod (14,5)
division through a tuple, when x is divided by (2,4)
y; where x & y are variable/expression. >>>divmod (2.7, 1.5)
(1.0, 1.20000)
range(start, stop[, This is a versatile function to create lists >>> range(10)
step]) containing arithmetic progressions. It is most [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
often used in for loops. The arguments must be >>> range(1, 11)
plain integers. If the step argument is omitted, [1,2, 3, 4, 5,6, 7, 8, 9, 10]
it defaults to 1. If the start argument is omitted, >>>range(0, 30, 5)
it defaults to 0. The full form returns a list of [0, 5, 10,15,20, 25]
plain integers [start,start + step, start + 2 * step, >>> range(0, 10, 3) [0,3,
...]. Step must not be zero (or else Value Error 6, 9]
is raised).
>>> range(0, -10, -1)
[0,-1,-2, -3, -4, -5, -6, -7, -8, -9]
>>> range(0) - []
>>> range(1, 0) - []
round( x [, n] ) It returns float x rounded to n digits from the >>>round(80.23456, 2)
decimal point, where x and n are numeric 80.23
expressions. If n is not provided then x is >>>round(-100.000056, 3)
rounded to 0 decimal digits. -100.0
>>> round (80.23456) 80
There are many ways to import a module in your program, they are:
⦿ Import
⦿ From
Import
It is simplest and most common way to use modules in our code. Its syntax is:
Example
To use/ access/invoke a function, you will specify the module name and name of the
function- separated by dot (.). This format is also known as dot notation.
Example
>>> value= math. sqrt (25) # dot notation
From Statement
It is used to get a specific function in the code instead of the complete module file. If we
know beforehand which function(s), we will be needing, then we may use from. For
modules having large no. of functions, it is recommended to use from instead of import.
Example
= sqrt (25)
math.log10(100.72)
2.0031157171
pow( x, y ) It returns the value of xy, where x and y math.pow(100, 2) 10000.0
are numeric expressions. math.pow(100, -2) 0.0001
math.pow(2, 4) 16.0
math.pow(3, 0) 1.0
math.tan(0) -
0.0
degrees (x) It converts angle x from radians to math.degrees(3) 171.887338539
degrees, where x must be a numeric value.
math.degrees(-3) 171.887338539
math.degrees(0) - 0.0
math.radians(-3)
0.0523598775598
math.radians(0) - 0.0
Some of the other modules, which you can explore, are: string, time, date.
• If you are passing values of mutable types (i.e., List, Dictionary, etc.) to the Called
function, then the called function can make changes to them.
Example:
def area_of_circle( radius ): # here radius is the Formal Parameter or Formal Argument
print(“Area of circle = “,3.1416*radius*radius) r=int(input(“Enter radius of circle”))
ar=area_of_circle(r) # here r is the Actual Parameter or Actual Argument output:
OUTPUT
Enter radius of circle 10
Area of circle = 314.16
Types of Arguments:
In Python following four types of arguments allowed:
• Positional Arguments
• Default Arguments
• Keyword Arguments
• Variable length Arguments
(i) Default Parameters
The parameters which are assigned with a value in function header while defining the
function are known as default parameters. This value is optional for the parameter. If a user
explicitly passes the value in function call, then the value which is passed by the user will
be taken by the default parameter. If no value is provided, then the default value will be
taken by the parameter. Default parameters will be written in the end of the function header,
means positional parameter cannot appear to the right side of default parameter. Example:
def SICal(amount, rate, time=10): #Function definition header
When the function call statement must match the number and positional order of arguments
as defined in the function definition, this is called the positional parameters.
Example:
Keyword arguments are related to the function calls. When you use keyword arguments in
a function call, the caller identifies the arguments by the parameter name. This allows you
to place argument out of order because the Python interpreter is able to use the keywords
provided to match the values with parameters. Having a positional argument after keyword
arguments will result into error Example def show(x,y):
print(“Name is “,x)
print(“Age is “,y)
show(y=18,x=”Raj”)
OUTPUT
Name is Raj
Age is 18
(iv) Variable Number of Arguments:
In cases where you don’t know the exact number of arguments that you want to pass to a
function, you can use the following syntax with *args: The variable stored in *args are
represented in the form of tuple. Example def change(*a): for i in a: print(i) print(a)
change(10,5) change(15,20,25)
OUTPUT
10
5
(10, 5)
15
20
25
(15, 20, 25)
Example 1:
def add10(x,y,z):
return
x+10,y+10,z+10 x=10
y=20 z=30
result=add10(x,y,z)
print(result)
Output (20,
30, 40)
Example 2:
def add10(x,y,z):
return
x+10,y+10,z+10 x=10
y=20 z=30
a,b,c=add10(x,y,z) #unpack
Output:
20 30 40
SCOPE OF VARIABLES:
Scope of a variable is the portion of a program where the variable is recognized and can be
accessed therein.
There are two types of scope for variables:
Local Scope
Global Scope
1.Local Scope:
A variable declared in a function-body is said to have local scope. It cannot be accessed
outside the function. In this scope, the lifetime of variables inside a function is as long as
the function executes.
2. Global Scope:
A variable declared in top level segment ( main) of a program is said to have a global scope.
In this scope, lifetime of a variable inside a program is as long as the program executes.
Example 1: def
Sum(x , y) :
z=x+y
return z a = 5
b=7
s = Sum(a , b)
print(s)
In the above program x, y and z are local variables and are destroyed once we return from
the function. a, b and s are global variables and remains in the memory until the program
executes.
Example 2:
def my_func( ):
x=10 # local variable print(“Value inside function:”,x)
x=20 # global variable my_func( ) print(“Value outside
function:”,x) Output:
Value inside function:10
Value outside function:20
Here, we can see that the value of x is 20 initially. Even though the function my_func()
changed the value of x to 10, it did not affect the value outside the function. This is because
the variable x inside the function is different (local to the function) from the one outside.
Although they have same names, they are two different variables with different scope. On
the other hand, variables outside of the function are visible from inside. They have a global
scope.
Practice Questions
1 Which of the following is a valid function name?
a) Start_game() b) start game() c) start-game() d) All of the above
2 If the return statement is not used in the function then which type of value will be
returned by the function?
a)int b) str c) float d) None
3 Richa is working with a program where she gave some values to the function. She
doesn’t know the term to relate these values. Help her by selecting the correct option.
a) function value b) arguments or parameters
c) return values d) function call
4 What is the minimum and maximum value of c in the following code snippet?
import random
a=random.randint(3,5)
b = random.randint(2,3)
c = a + b print(c)
a) 3 , 5 b) 5, 8 c) 2, 3 d) 3, 3
print(float())
12 Identify the module to which the following function load () belong to?
def fun():
global a
a=10
print(a)
a=5
fun()
print(a)
a) 10 b) 5 c) 5 d) 10
10 10 5 5
15 Value returning functions should be generally called from inside of an expression a)
True b) False
17 These are predefined functions that are always available for use. For using them we
don’t need to import any module
c) 9 > 10 > 5 > 1 > 6 > 2 > 3 > 7 > 11 d) None of the above
22. Python resolves the scope of a name using the LEGB rule
a) True b) False
24 When you use multiple type argument in function, then default argument take place
1 a)Start_game()
2 d) None
3 b) arguments or parameters
4 b) 5, 8
5 b) caller, called
6 c) 100+200
7 a) math
8 d) tuple
9 b) 9
10 c) input()
11 b) 0.0
12 c)pickle
13 b) 0 or many
14 a) 10
10
15 a) True
16 b) local
17 a) built in function
18 c) scope
19 c) arguments
22 a) True
23 a) None
24 b) at end
25 b) default parameter
QUESTIONS
2022-23 53
5. What will be the output of the following python code?
def mul (num1, num2): x = num1 * num2 x =
mul(20,30)
A. 600 B. None C. No Output D. 0
Ans. C)No Output
2022-23 54
9 Predict the output of the following code fragment def
update(x=10):
x+=15
print("x=",x)
x=20 update()
print("x=",x)
a) x=20 b) x=25
x=25 x=25
c) x=20 d) x=25
x=25 x=20
Ans. d)
x=25
x=20
c) 5 6 d) 5 5
12 5 7 7 6
3 6 6
Ans. a)
55
63
12 5
2022-23 55
Give the output of the following program
12 def check(a): for i in range(len(a)):
a[i]=a[i]+5
return a
b=[1,2,3,4]
c=check(b)
print(c)
a) [6, 8, 8, 9] b) [6,7,8,9]
c) [7, 7, 8, 9] d) [6,7,9,9]
Ans. b) [6, 7, 8, 9]
b=30
a=abc(a,b) print(a,b)
b=abc(a) print(a,b)
a=abc(b) print(a,b)
a) 50 30 50 110 170
170 110
Ans.C)
c) 50 30
50 110
170 110
2022-23 56
14 Predict the output of the following code snippet:
def
Execute(M):
if M%3==0:
return M*3
else:
return M+10;
def Output(B=2):
for T in range (0,B):
print(Execute(T),"*",end="")
print()
Output(4)
Output()
Output(3)
Ans.
0 *11 *12 *9 *
0 *11 *
0 *11 *12 *
2022-23 57
15. Find the output of the following program:
range(len(Text)): if Text[K]>='F'
and Text[K]<='L':
T=T+Text[K].lower(); elif
Text[K]=='E' or Text[K]=='e':
T=T+Text[K].upper()
else:
T=T+T[K-1]
print(T)
OldText="pOwERALone"
ChangeIt(OldText,"%")
Ans: c)
PPW%RRllN%
2022-23 58
16 What possible outputs are expected to be displayed on screen at the time of execution of
the program from the following code? Also specify the maximum value that can be
assigned to each of the variables L and U.
import random
Arr=[10,30,40,50,70,90,100]
L=random.randrange(1,3) U=random.randrange(3,6)
for i in range(L,U+1):
print(Arr[i],"@",end="")
2022-23 59
17 Find the output of the following code
def disp(str):
m=' ' for i in
range(0,len(str)):
if(str[i].isupper()):
m=m+str[i].lower()
elif str[i].islower():
m=m+str[i].upper()
else:
if i%2==0:
m=m+str[i-1]
else:
m=m+"@"
print(m.swapcase())
disp('StudyBag$2021')
Note: The swapcase() method returns a string where all the upper case letters are lower
case and vice versa. Syntax. string.swapcase().
18 What will be the output of the following code
total=0 def
add(a,b): global
total total=a+b
print(total)
add(6,6) print(total)
a) 12 b) 12 c) 0 d) None of these
12 0 12
Ans : a)
12
12
2022-23 60
19 Find and write the output of the following Python code:
def makenew(mystr):
newstr = " " count
= 0 for i in mystr:
if count%2 ==0:
newstr = newstr+i.lower()
else:
if i.islower():
newstr = newstr+i.upper()
else:
newstr = newstr+i
count +=1
newstr = newstr+mystr[:3] print
("The new string is :", newstr)
makenew("cbseEXAMs@2022")
20
import random
L=[10,7,21]
X=random.randint(1,2)
for i in range(X):
Y=random.randint(1,X)
print(L[Y],"$",end=" ")
Minimum value of x is 1
2022-23 61
21 Choose the correct option:
Statement1: Local Variables are accessible only within a function or block in which it
is declared.
a) 13 b) 25 c) 26 d) Error
Ans : b) 25
2022-23 62
24 Consider the code given below and Identify how many times the message “Hello All”
will be printed.
def prog(name):
for x in name:
if x.isalpha():
print('Alphabet')
elif x.isdigit():
print('Digit') elif
x.isupper():
print('Capital Letter')
else:
print('Hello All')
prog('vishal123@gmail.com')
a) 0 b) 2 c) 1 d) 3
Ans: b) 2
def changer(p,q=10):
p=p/q
q=p%q
print(p,"#",q)
return p a=200
b=20
a=changer(a,b)
print(a,"$",b)
a=changer(a)
print(a,"$",b)
Ans.
10.0 # 10.0
10.0 $ 20
1.0 # 1.0
1.0 $ 20
2022-23 63
26 What will be the output for the below code snippet?
c) 50#25#1#0#10# d) 225#100#1#0#25#
Ans: b) 50#25#11#27#10#
2022-23 64
DATA FILE HANDLING
File- A file is a sequence of bytes on the disk/permanent storage where a group of related
data is stored. File handling in Python enables us to create, update, read, and delete the files
stored on the file system through our python program.
1- Opening a file.
2- Performing operations (read, write) or processing data.
3- Closing the file.
Text file: A text file is simply a sequence of ASCII or Unicode characters. A line is a
sequence of characters, stored on permanent storage. In a text file, each line is terminated
by a special character, known as End of Line (EOL). Text file can be created using any text
editor. Ex. Myfile.txt.
Binary file: A binary file stores the data in the same way as stored in the memory. The .exe
files, mp3 file, image files, word documents are some of the examples of binary files. We
can’t read a binary file using a text editor.
CSV file: CSV (Comma Separated Values) is a simple text file format for storing data in
tabular form such as spread sheet or database. The data is organized with one record on each
line and each field is separated by comma.
2022-23 65
3 Any text editors like No specific programs can be It can be read using text
notepad can be used to used to read them, python editors like notepads and
read them. provides functions to read spreadsheet software.
data.
4 Every line ends with There is no specific EOL It terminates a
EOL. character. line automatically
when the
delimiter is not used after
data.
Absolute Path – It is a full path of the file from the root directory. Absolute paths ensure
that Python can find the exact file on your computer. Ex : -
C:\\Users\\Tanmay\\Desktop\\Delete\\file_handling.txt
f=open(“C:\\Users\\Tanmay\\Desktop\\Delete\\file_handling.txt”,r)
Relative Path – It is the path of the file from the current working directory.
Relative Path is the hierarchical path that locates a file or folder on a file system starting
from the current directory. The relative path is different from the absolute path, which
locates the file or folder starting from the root of the file system.
f=open(“file_handling.txt”,r)
Operation On Files
In Python
2022-23 66
3. Closing the file–
file_object.close()
We use open () function in Python to open a file in read or write mode. open ( ) will return
a file object. To return a file object we use open() function along with two arguments, that
accepts file name and the mode, whether to read or write. So, the syntax being:
open(filename, mode). There are three kinds of mode, that Python provides and how files
can be opened:
“ r “, for reading.
“ w “, for writing.
“ a “, for appending.
Modes Description
1. r - Opens a file for reading only. The file pointer is placed at the beginning of the file.
This is the default mode. Gives error if file does not exist.
2. r+ - Opens a file for both reading and writing. The file pointer placed at the
beginning of the file.
3. w - Opens a file for writing only. Overwrites the file if the file exists. If the file
does not exist, creates a new file for writing.
4. w+ - Opens a file for both writing and reading. Overwrites the existing file if
the file exists. If the file does not exist, creates a new file for reading and writing.
5. a - Opens a file for appending. The file pointer is at the end of the file if the file exists.
That is, the file is in the append mode. If the file does not exist, it creates a new file for
writing.
6. a+ - Opens a file for both appending and reading. The file pointer is at the end of
the file if the file exists. The file opens in the append mode. If the file does not exist, it
creates a new file for reading and writing.
2022-23 67
read() : Returns the read bytes in form of a string. Reads n bytes, if no n specified, reads the
entire file.
File_object.read([n])
readline() : Reads a line of the file and returns in form of a string. For specified n, reads at
most n bytes. However, does not reads more than one line, even if n exceeds the length of
the line.
File_object.readline([n])
readlines() : Reads all the lines and return them list in which each line as a string element.
File_object.readlines()
write() function
The write() function will write the content in the file without adding any extra characters.
file_name.write(content)
writelines() function98
This function writes the content of a list to a file. file_name.
writelines(list_of_lines)
# Creating a file
file1 = open("myfile.txt", "w")
L = ["This is Delhi \n", "This is Paris \n", "This is London \n"]
2022-23 68
# seek(n) takes the file handle to the nth #
byte from the beginning.
file1.seek(0)
Output:
Output of Read function is
Hello
This is Delhi
This is Paris
This is London
Output of Readline function is
Hello
If we want to access data in a random fashion, then Python gives us seek() and tell()
functions to do so
2022-23 69
This function returns an integer that specifies the current position of the file object in the
file. The position so specified is the byte position from the beginning of the file till the
current position of the file object. The syntax of using tell() is:
A=file_object.tell()
file_object.seek(offset [, reference_point])
In the above syntax, offset is the number of bytes by which the file object is to be moved.
reference_point indicates the starting position of the file object. That is, with reference to
which position, the offset has to be counted. It can have any of the following values:
By default, the value of reference_point is 0, i.e. the offset is counted from the beginning of
the file.
For example, the statement fileObject.seek(5,0) will position the file object at 5th byte
position from the beginning of the file.
SAMPLE PROGRAMS
2022-23 70
2.Write read contents from story.txt and count no: of independent words “to”
in the file
Ans: string
PRACTICE QUESTIONS
1. Write a program to read contents from the text file story.txt and count no:of vowels in
it
2. Write a program to read contents from the text file myfile.txt and find average word
count
3. Write a program to read contents from the text file library.txt and count “is” as
independent word
4. Write a program to read contents from the text file diary.txt and count number of lines
with Starting letter “T” or “M”
5. Write a program to read contents from the text file mydiary.txt and count number of
lines with ending letter “r”
2022-23 71
b. End of the file
c. Beginning of the last line of text file
d. Undetermined
3. To read the entire remaining contents of the file as a string from a file object
myfile, we use
a. myfile.read(2)
b. myfile.read()
c. myfile.readline()
d. myfile.readlines()
4. A text file is opened using the statement f = open(‘story.txt’). The file has a total of
10 lines. Which of the following options will be true if statement 1 and statement 2 are
executed in order. Statement 1: L1 = f.readline( ) Statement 2: L2 = f.readlines( )
a. L1 will be a list with one element and L2 will be list with 9 elements.
b. L1 will be a string and L2 will be a list with 10 elements.
c. L1 will be a string and L2 will be a list with 9 elements.
d. L1 will be a list with 10 elements and L2 will be an empty list.
5. Which function of a file object can be used to fetch the current cursor position in
terms of number of bytes from beginning of file? a. seek( )
b. bytes( )
c. tell( )
d. fetch( )
2022-23 72
a. 33
b. 31
c. 28
d. 3
a. AllngsAll
b. AllcanAll
c. Allcancan
d. Allngscan
8. What will be the most correct option for possible output of the following code, given
that the code executes without any error.
f = open(‘cricket.txt’) data
= f.read(150)
print(len(data))
9. For the following python code, what will be the datatype of variables x, y, z given that
the code runs without any error?
2022-23 73
f=
open(‘story.txt’) x
= f.read(1) y =
f.readline() z =
f.readlines()
a. string, list, list
b. None, list, list
c. string, string, list
d. string, string, string
Answers:
1. a. Beginning of file
2. d. All of the mentioned
3. b. myfile.read()
4. c. L1 will be a string and L2 will be a list with 9 elements.
5. c. tell( )
6. d. 3
7. a. AllngsAll
8. d. Less than or equal to 150
9. c. string, string, list
10. a. 12
2022-23 74
1. Differentiate between file modes r+ and w+ with respect to python?
Ans: r+ opens a text file for reading and writing.
w+ opens a text file for reading and writing. It overwrites the file if it exists, create a file if
it doesn’t.
b) File.write(“ABC”)
Ans: A named entity, usually stored on a hard drive that contains a stream of
characters are called files.
2022-23 75
2. Write a function in Python that counts the number of “the” or “this” words present
in a text file “myfile.txt”.
Example: If the “myfile.txt” contents are as follows:
This is my first class on Computer Science. File handling is the easiest topic for me
and Computer Networking is the most interesting one.
The output of the function should be: Count of the/this in file: 3
Answer:
def displayTheThis():
num=0
f=open("myfile.txt","r")
N=f.read() M=N.split()
for x in M: if x=="the"
or x== "this":
print(x)
num=num+1 f.close()
print("Count of the/this in file:",num)
3. Write a function countVowels() in Python, which should read each character of a text
file “myfile.txt”, count the number of vowels and display the count.
Example: If the “myfile.txt” contents are as follows:
This is my first class on Computer Science.
The output of the function should be: Count of vowels in file: 10 Answer:
def countVowels(): fobj =
open(“myfile.txt”) data = fobj.read()
count = 0 vowels=[‘a’,’e’,’I’,’o’,’u’]
for ch in data: if ch in vowels:
count +=1 print(“Count of vowels in
file:”, count)
4. Write a Python program to count all the line having 'a' as last character. Answer:
5. Assume that a text file named TEXT1.TXT already contains some text written into
it, write a program with a function named vowelwords(),that reads the file TEXT1.TXT
and create a new file named TEXT2.TXT ,which shall contain only those words from
the file TEXT1.TXT which don’t start with an uppercase vowel(i.e. with
‘A’,’E’,’I’,’O’,’U’) , for example if the file TEXT1.TXT contains Carry Umbrella and
Overcoat When it Rains then the file TEXT2.TXT shall contain Carry and when it Rains.
2022-23 76
Answer:
file1=open('TEXT1.txt','r')
file2=open('TEXT2.txt','w')
text = file1.read()
text=text.split()
vowels=['A','E','I','O','U']
for i in text: if i[0] not in
vowels:
file2.write(i)
file2.write(" ")
file1.close()
file2.close()
vowelwords()
BINARY FILES
2022-23 77
File
● Binary file(used to store binary data such as images, video files, audio files etc.)
is a non-text file. It contains data as 1s and 0s(computer readable format).
● Binary files are processed byte by byte.
● Binary files are faster in processing and consumes less memory compared to text
files.
● Extension of binary files are any non-text file exensions like .bin,.dat etc
2022-23 78
• Searching of data
• Modifying data
• Deleting data
• Appending data
pickle.load() can generate runtime exceptions like EOFError. try and except
block will handle runtime errors raised due to EOF (end of file) .In try block write all the
statements that can generate an exception and in except block write code to handle the
exception.
Write a program to write contents to a binary file stud.dat with record format
[rollno,name,marks]
Write a program to read contents from the file stud.dat and display those
records whose marks >90. Assume stud.dat existing in the system with the record
format [rollno,name,marks]
2022-23 79
Write a program to read contents from the file stud.dat and delete those records whose
marks <90. Assume stud.dat existing in the system with the record format
[rollno,name,marks]
Below program is implemented using function and module os is used to use functions like
rename() and remove()
Write a program to update records in the file stud.dat with records in the format
[rollno,name,marks].Increase 10 marks to the student whose rollnumber entered by the
user
2022-23 80
Write a program to append records into the file stud.dat with records in the format
[rollno,name,marks]
The with statement is a compact statement which combines the opening of file , processing
of file along with inbuilt exception handling.The with statement will also close the file
automatically after with block is over.
content = myObject.read()
Here, we don’t have to close the file explicitly using close() statement. Python will
automatically close the file.
SAMPLE QUESTIONS
2022-23 81
1. A binary file “employees.dat” has structure [empid, empname, age, department]
PRACTICE QUESTIONS
2022-23 82
3. A binary file “STOCK.DAT” has structure [ITEMID, ITEMNAME, QUANTITY,
PRICE].
(i) Write a user defined function MakeFile( ) to input data for a record and add
to Book.dat.
(ii) Write a function GetPrice(ITEMID) in Python which accepts the ITEMID as
parameter and return PRICE of the Item stored in Binary file STOCK.DAT
4. A binary file “EMPLOYEE.DAT” has structure (EMPID, EMPNAME, SALARY).
Write a function CountRec( ) in Python that would read contents of the file
“EMPLOYEE.DAT” and display the details of those Employees whose Salary is above
20000. Also display number of employees having Salary more than 20000.
5. A binary file “Computers.dat” has structure [CNo, Make, Model, Price].
The description is given below:
CNo : Computer Number e.g. 278548
Make : Make of PC e.g. HP
Model : Model Number e.g. VXPC126
Price : Price of computer e.g.40258.99
i)Write a user defined function CreatePC() to input data for a record and append in
Computers.dat .
ii. Write a function FindPCs(Price) in Python which accepts the Price as parameter and
display only those computer records from Computers.dat which are having less than or
equal to given price.
2. Shylesh is writing python code to append a new record to a binary file ‘salary.dat’
that is storing list objects containing [empid, empname, salary]. Consider the
following code written by him.
import pickle f = open(‘salary.dat’, ‘ab’) id
= input(“Enter employee id : ”) name =
input(“Enter name of employee: ”) sal =
float(input(“Enter salary :”)) record =
2022-23 83
___________ #Blank 1
pickle.dump(record,f)
f.close()
4. Which is the valid syntax to write an object onto a binary file opened in the
write mode?
a. pickle.dump(<object to be written>, <file handle of open file>)
b. pickle.dump(<file handle of open file>, <object to be written>)
c. dump.pickle(<object>, <file handle>)
d. None of the above
5. What is the binary file mode associated with “ file must exist, otherwise error
will be raised and reading and writing can take place”.
a. wb+
b. w+
c. rb
d. rb+
a. Statement 1
b. Statement 2
c. Statement 3
d. Statement 4
2022-23 84
6. A binary file “salary.dat” has structure [employee id, employee name, salary].
What the following code will display: def
records():
num=0
fobj=open("data.dat","rb") try:
print("Emp id\tEmp Name\tEmp Sal")
while True:
rec=pickle.load(fobj)
if rec[2]< 20000:
print(rec[0],"\t\t",rec[1],"\t\t",rec[2])
except: fobj.close() records()
7. In which file, no delimiters are used for line and no translations occur?
(a) Text file
(b) Binary file
(c) csv file
(d) None of the above
8. Choose the file mode used to write data into binary file.
(a) rb
(b) wb
(c) r+
(d) w+
9. Which of the following function is used to read data from a binary file?
(a) write
(b) load
(c) dump
(d) scan
10. Dima is trying to read a list l1 from a binary file ‘num’. Consider the
following code written by her.
2022-23 85
import pickle f1 = open("num",'rb')
l1=__________________#Statement 1
print(l1)
f1.close()
(a) pickle.load(f1)
(b) pickle.load(l1,f1)
(c) pickle.read(f1)
(d) pickle.dump(l1,f1)
Answers:
a.[id,name,sal]
rb+
c. Statement 3
d.Display the details of those employees whose salary is less than 20000. (b)
Binary file
(b) wb
(b) load
(a) pickle.load(f1)
CASE STUDY QUESTIONS
Amit Kumar of class 12 is writing a program to store roman numbers and find their
equivalents using a dictionary. He has written the following code. As a programmer,
help him to successfully execute the given task.
file1 = open(“roman.log”,”_______”)
#Line 2 pickle.dump(numerals,file1) file1.close() file2 =
2022-23 86
open(“roman.log”,’________”) #Line 3
num = pickle.load(file2)
file2.__________
#Line 4 n = 0 while n!=-1:
print(“Enter 1,4,5,9,10,40,50,90,100,400,500,900,1000:”)
print(“or enter -1 to exit”) n = int(input(“Enter numbers”))
if n!= -1:
print(“Equivalent roman number of this numeral is:”,num[n])
else:
print(“Thank You”)
Answers:
(a) pickle
(b) wb
(c) rb
(d) file2.close()
(e) C
I.Write a user defined function CreateEmp() to input data for a record and add to emp.dat.
II.Write a function display() in Python to display the detail of all employees.
Answer:
I.
2022-23 87
designation=input("Enter Designation")
salary=int(input("Enter Salary"))
l=[eid,ename,designation,salary]
pickle.dump(l,f1) f1.close()
II.
import pickle
def display():
f2=open("emp.dat","rb")
while True: try:
rec=pickle.load(f2)
print(rec['eid'],rec['ename'],rec['designation'],rec['salary'])
except EOFError: break f2.close()
2. A binary file “emp.DAT” has structure [EID, Ename, designation,salary].
I)
import pickle
def createemp():
f1=open("emp.dat",'ab')
eid=input("Enter E. Id")
ename=input("Enter Name")
designation=input("Enter Designation")
salary=int(input("Enter Salary"))
l=[eid,ename,designation,salary]
pickle.dump(l,f1) f1.close()
II) def Show():
f2=open("emp.dat","rb")
while True: try:
2022-23 88
rec=pickle.load(f2) if
(rec['designation']=='Manager'):
print(rec['eid'],rec['ename'],
rec['designation'],rec['salary'])
except EOFError: break
f2.close()
3. A binary file “employee.dat” has structure [ empId, empName , Dept, Salary].
(i) Write a user defined function addData() to input data for a record and add tp
employee.dat
(ii) Write a function checkSalary(empName) in Python which accepts the empName as
parameter and return the salary of particular employee by the given employee name stored
in the file employee.dat
(i) import pickle def addData():
fobj=open("e
mployee.dat"
,"ab")
empID=int(in
put("Enter
Emp ID : "))
empName=in
put("Employ
ee Name :")
Dept =
input(“Depart
ment: “)
Salary = int(input("Monthly Salary :
")) rec=[ empId, empName , Dept,
Salary] pickle.dump(rec,fobj)
fobj.close()
(ii)
import pickle def
checkSalary(empName):
fobj=open("employee.dat","rb")
num = 0 try: while True:
rec=pickle.load(fobj)
if Author==rec[3]:
num = num + 1 except:
fobj.close()
return num
2022-23 89
4. A binary file “discovery.dat” has a structure
[scien_name,discovery,yearofDiscovery,yearofbirth]
Write a function display(scien_name) in python that accepts the name of a scientist as
scien_name and returns the discovery with the year of discovery.
fobj=open("Discovery.DAT","rb
") num = 0 try:
while True:
rec=pickle.load(fobj)
if rec[1] == scien_name:
print(rec[0],rec[1],rec[2],sep="\t")
num = num + 1 except:
fobj.close()
return num
CSV FILE
• A Comma Separated Values (CSV) file is a plain text file that contains the
commaseparated data.
• These files are often used for exchanging data between different applications.
• CSV files are usually created by programs that handle huge amounts of data. They are
used to export data from spreadsheets (ex:- excel file) and databases (Ex:- Oracle, MySQL).
It can be used to import data into a spreadsheet or a database.
2022-23 90
Methods of CSV Module :
• writer( ) reader( )
Both the methods return an Object of writer or reader class. Writer Object again have two
methods – writerow( ) , writerows( ).
writer( ) Methods
This function returns a writer object which is used for converting the data given by the user
into delimited strings on the file object. writer( ) Object Methods –
• w_obj . writerow( <Sequence> ) : Write a Single Line
• w_obj . writerows ( <Nested Sequence> ) : Write Multiple Lines
Example:-
## writerow()
import csv
row=['Nikhil', 'CEO', '2',
'9.0'] f=open("myfile.csv",
'w') w_obj = csv.writer(f)
w_obj.writerow(row)
f.close()
## writerows()
import csv
rows = [['Nikhil','CEO','2','9.0'],
['Sanchit','CEO','2','9.1']]
f=open("myfile.csv",'w')
w_obj = csv.writer(f)
w_obj.writerows(rows)
f.close()
reader( ) Methods
This function returns a reader object which will be used to iterate over lines of a given CSV
file.
r_obj = csv.reader(csvfile_obj)
2022-23 91
for i in r_obj:
print(i)
import csv
f=open("myfile.csv",'r')
r_obj = csv.reader(f)
for data in r_obj:
print(data)
f.close()
SAMPLE QUESTIONS:
2022-23 92
Multiple Choice Questions:
1. CSV stands for :
a. Comma Separated Values
b. Comma Separated Variables
c. Comma Stored Values
d. Comma Stored Variables
4. _____ module of Python provides the functionality to read and write tabular data in CSV
file.
a. pickle
b. csv
c. file
d. ccv
2022-23 93
b. read()
c. writer()
d. writerows()
10. The opening function of a csv file is similar to the opening of:
a. Binary file
b. Text File
c. Both of them
d. None of them
11. The _______argument of open function is to specify how Python handle the
newline characters in csv file
a. newline
b. line
c. mode
d. char
13. To specify a different delimiter while writing into a csv file, argument is used
with writer object :
a. newline
b. separator
c. character
d. delimiter
2022-23 94
14. Which mode opens the file for exclusive creation, which fails in the case where file
already exists
a. a
b. w
c. x
d. r
15. The file mode to open a CSV file for reading as well as writing is .
a. a+
b. w+
c. r+
d. All the above.
16. Identify the line number which may cause an error: import
csv #Line1 line=[[1,2,3],[4,5,6]]#Line 2 with
open("sample.csv","w",newline="") as csvfile: #Line3
writer=csv.writer(csvfile,delimiter="|") #Line4 for
line in writer: #Line5
writer.writerow(line)
a. Line1
b. Line2
c. Line 4
d. Line
19. Which of the following parameter needs to be added with open function to avoid blank
row followed by each record in the CSV file?
a. quotechar
b. quoting
c. newline
2022-23 95
d. skiprow
20. Ajaikrishna wants to separate the values by a $ sign. Suggests him a pair of function
and parameter to use it. a. open, quotechar
b. writer, quotechar
c. open, delimiter
d. writer, delimiter
21. Tejalakshmi of Class 12 have written the below code . Observe and fill in the given
blanks so that it opens the file “data.csv” and read and print all the records.
2022-23 96
d. row
V. What is the default data type of data read from this file?
a. List
b. String
c. Tuple
d. Integer
22. Sudev, a student of class 12th, is learning CSV File Module in Python. During
examination, he has been assigned an incomplete python code to create a CSV file
‘customer.csv’ .Help him in completing the code which creates the desired CSV file.
2022-23 97
I. Identify suitable code for the blank space in line marked as Statement-1.
a) include
b) add
c) Import
2022-23 98
d) import
II. Identify the missing code for the blank space in line marked as Statement-2.
a) Customer
b) reader
c) csvwriter
d) writer
III. Identify the argument name for the blank space in line marked as Statement-3?
a) Row
b) Rec
c) row
d) rec
IV. Identify the missing file name for the blank space in line marked as Statement-4?
a) customer
b) customer.csv
c) customer.txt
d) customer.dat
V .Identify the object name for the blank space in line marked as Statement-5?
a) i
b) Rec
c) row
d) rec
23. Daya of class 12 is writing a program to create a CSV file “empdata.csv” with empid,
name & mobile number. Also to search a particular empid and display its record details. He
has written the following code. As a programmer, help him to successfully execute the
given task.
2022-23 99
Choose the module he should import in Line 1.
a) math
b) pickle
c) csv
d) random
II. Choose a code to write the column heading from fields list in Line2. a)
writerows(fields)
b) writerow(field)
c) writerow(fields)
d) writerows(fields)
III. Choose a code to write the row from rows list in Line3. a)
writerows(row)
b) writerow(row)
c) writerow(rows)
d) write_row(row)
IV. Choose a code for line 4 to read the data from a csv file. a)
csv.reader(f)
2022-23 100
b) csv.read(f) d) pickle.load(f) e) f.read()
V. Choose the correct variable (list value) to check “emplid” in Line5
a) Row[0]
b) Rec[0]
c) row[0]
d) rec[0]
24.Viraj is making a software on “Countries and their Capitals” in which various records
are to be stored/retrieved in “CAPITAL.CSV” data file. It consists of few records of
Countries and their Capitals. He has written the following code in python. As a programmer,
you have to help him to successfully execute the program.
II. Choose the file mode to be passed to add new records in Statement-2.
a) w
b) r
c) w+
2022-23 101
d) a
III. Identify the correct variables in Statement-3 to store data to the file.
a) country,capital
b) Country,Capital
c) Coun,Cap
d) [Country,Capital]
IV. Choose the correct option for Statement-4 to read the data from a csv file. a)
Reader()
b) reader()
c) read
d) reader
25. Rinsha of class 12 is writing a program to create a CSV file “user.csv” which will
contain user name and password for some entries. She has written the following code. As
a programmer, help her to successfully execute the given task.
2022-23 102
2022-23 103
I. Name the module she should import in Line 1.
a. CSV
b. csv
c. math
d. File
II. In which mode, Rinsha should open the file to add data into the file.
a. r
b. a
c. w
d. w+
III. Fill in the blank in Line 3 to read the data from a csv file.
a. writer()
b. reader()
c. write()
d. read()
26. Consider the following csv file and the code fragment associated with the following csv
file :
II. What will be the output printed by the above code if the break is replaced with continue?
a. SLNO12345
b. SLNO
c. The entire content
d. Error
III. What will occur if the file stud.csv is not existing in the mentioned path? a.
It will create a new one
b. It will create an error
c. None of the above
d. It will cause a system reboot
IV. Which statement in the above code will help to move to the next record? a.
fobj.next()
b. next(fobj)
c. fobj.move()
d. fobj.forward()
27. Sai Krishna has created the following csv file named item.csv:
He has written the following program for managing the file. Help him to find the answers
for the following questions.
I. What will be printed by Line1?
a. All the records
b. ITEMNO, NAME, PRICE c.item.csv
d. None of the above
ANSWERS
QNO OPT QNO OPT QNO OPT QNO OPT
1 A 6 b 11 a 16 d
2 B 7 b 12 c 17 a
3 C 8 c 13 d 18 a
4 B 9 a 14 c 19 c
5 B 10 b 15 d 20 d
I b I d I c
II a II c II c
21 22 23
III c III b III b
IV d IV b IV a
V b V d V c
I d I b I b
II d II b II c
24 25 26
III b III b III b
IV D IV c IV b
V b
QNO OPT
I b
II a
27
III b
IV c
V b
DATA STRUCTURE
INTRODUCTION
We know that computers store and process data with an extra ordinary speed and accuracy.
So, it is highly essential that the data is stored efficiently and can be accessed fast. Also, the
processing of data should happen in the smallest possible time but without losing the
accuracy.
Data structures deal with how the data is organized and held in the memory when a program
processes it.
• Data structures are fundamental concepts of computer science which helps in writing
efficient programs in any language.
• A data structure is a named group of data of different data types which is stored in a
specific way and can be processed as a single unit.
• A data structure has well-defined operations, behavior and properties.
• A data type defines a set of values along with well-defined operations stating its
input-output behavior.
• A data structure is a physical implementation that clearly defines a way of storing,
accessing, manipulating data stored in a data structure.
For example, List as a data type which can store heterogeneous data type of elements, but
when implemented as data structure its behavior is clearly prescribed (searching, sorting
etc.)
List
Stack
A stack is a container of objects that are inserted and removed according to the Last-InFirst-
Out (LIFO) concept.
Linear List
• A linear data structure is that those elements form a sequence.
• When elements of linear structure are homogeneous and are represented in
memory by means of sequential memory locations, these linear structures
are called arrays. Linear List size: Length=UB-LB+1
Stack
Stack is a linear/sequence structure in which insertion and deletion can take place only at
one end, i.e., stack’s top. Because of this, stack is called LIFO (Last in First out) data
structure. For example, a pile of books, a stack of coins where you can remove only the top
book or the coin placed at the top.
Implementation of stack using list
• The implementation of stack using list in Python is the easiest of all programming
language.
• Basic operations performed on stack are:
1. Creating a stack
2. Push/Adding elements to the stack
3. Checking for empty stack
4. Pop/Deleting elements from a stack
5. Traversal/Displaying a stack
Applications of Stack
2.The compilers use stacks to store the previous state of a program when a function is called
during recursion.
2. Backtracking is a form of recursion. But it involves choosing only one option out of
possibilities. Used in solving Puzzle Sudoku.
3. Undo mechanism in Text editors by keeping all the text changes in a stack.
1. Choose the correct output for the following stack operation(* top position)
(a) 8 5 2 5 1* (b)
8 5 5 2 1*
(c) 2 5 5 1*
(d) 5 2 1*
(e) Which list method can be used to perform Push operation in a stack implemented by
list?
(f) append()
(g) extend()
(h) push()
(i) insert()
2. Which list method can be used to perform Pop operation in a stack implemented by list?
(a) pop()
(b) pop(1)
(c) remove()
(d) pop(0)
4. Consider the following operation performed on a stack of size 3, What will be the
output? (* top position)
(a) overflow
(b) underflow
(c) 10 20 30 40 50*
(d) 10 20 40 50*
5. Based on the below given code, Write answer to the following questions i to v
(i) Identify the suitable code for statement 1?
a) colour.insert(len(colour),n)
b) colour.append(len(colour),n)
c) colour.append()
d) colour.extend()
a) push(colour,c[i])
b) push(colour)
c) push(c[i])
d) push(colour,i)
a) colour==[]:
b) colour.isEmpty():
c) len(colour)=0:
d) None of the above
a) colour.pop(1)
b) colour.pop()
c) del colour[1]
d) colour.delete(1)
12. Write a program to implement a stack for the students(studentno, name). Just
implement Push.
13. Write a program to implement a stack for the students(studentno, name). Just
implement Pop and display.
14. If
L=["Python", "is", "a", ["modern", "programming"], "language", "that", "we", "use"] , then
find the output:
(a) L[0][0]
(b) L[3][0][2]
(c) L[3:4][0]
(d) L[3:4][0][1]
(e) L[3:4][0][1][3]
(f) L[0:9][0]
(g) L[0:9][0][3]
(h) L[3:4][1]
4. Write functions in python for performing stack operations implemented by using list
and also write a function for the menu driven operations to implement all the stack
operations? (Hint: Use global variables)
ANSWER KEY
I. MCQ/ Very Short Answer Type Questions(1-mark)
1. (d) 5 2 1*
2. (a) append()
3. (a) pop() 4. (a) overflow
5.
(i). a colour.insert(len(colour),n)
(ii). a push(colour,c[i]) (iii).a colour==[]
(iv). b colour.pop()
(v). b pop(colour)
6. Data Structure means organization of data. A data structure has well defined
operations or behaviour.
7. STACK
8. Yes
9. Lists
10. Graphs
11 PUSH
12 pop
13. len()
14. 0
6. #stack operation-Pop
8.
9.
10.
11.
12
13
COMPUTER NETWORKS
INTRODUCTION
We are living in a connected world. Information is being produced, exchanged, and traced
across the globe in real time. It's possible as almost everyone and everything in the digital
world is interconnected through one way or the other.
A group of two or more similar things or people interconnected with each other is called
network. Some of the examples of network in our everyday life includes:
• Social network
• Mobile network
• Network of computers
• Airlines, railway, banks, hospitals networks What is Computer Network?
A Computer network is an interconnection among two or more computers or computing
devices. Such interconnection allows computers to share data and resources among each
other Resources such as files, applications, printers and software are common information
shared in a networking.
COMMUNICATION
The exchange of information between two or more networked or interconnected devices is
called communication. These devices must be capable of sending /receiving data over a
communication medium.
MESSAGE: message is the information being exchanged between a sender and a receiver
over a communication network.
PROTOCOLS: The set of standard rules which are followed in data communication are
known as Data Communication Protocols. All the communicating devices like sender
receiver and other connected devices in the network should follow these protocols .
Why Protocols are needed? The communicating devices may be in different geographical
areas. The speed of these devices may be different. Also, the data transfer rates of different
networks may be different. These complexities make it necessary to have a common set of
rules to ensure the secure communication of data.
Examples of some commonly used Protocols in data communication are given below:
• Transmission Control Protocol (TCP)
• Internet Protocol (IP)
• File Transfer Protocol (FTP)
• Simple Mail Transport Protocol (SMTP)
• Hyper Text Transfer Protocol (HTTP)
BANDWIDTH
Bandwidth is the difference between the highest and lowest frequencies a transmission
media can carry.
The unit of bandwidth is Hertz.
IP ADDRESS
IP address or Internet Protocol address is a unique numeric address assigned to every device
connected to a network. It uniquely identifies every node connected to a local network or
internet.
An IP address allows computers to send and receive data over the internet. They can also
be used to track down a user's physical location.There are two versions for IP address IPV4
and IPV6. IP addresses are binary numbers but are typically expressed in decimal form
(IPv4) or hexadecimal form (IPv6) to make reading and using them easily.
The commonly used IP address is IPV4. An IPv4 address consists of four numbers, each of
which contains one to three digits, with a single dot (.) separating each set of digits. Each
of the four numbers can range from 0 to 255.
SWITCHING TECHNIQUES
In large networks, there may be more than one paths for transmitting data from sender to
receiver. The process of selecting a path of data out of the available paths is called
switching. There are two popular switching techniques – circuit switching and packet
switching.
1. Circuit Switching
In circuit switching, whenever a source end node wants to send a message to the destination
end node a physical link is first established between the source and the destination. Then
only the data transmission takes place. After the complete transmission of data this physical
link is terminated.
Simple example of a circuit switching is telephone network in which a person calls another
person. When the call receiving person receives the call, then only the connection is
established. Then the message is conveyed and finally the connection is terminated.
Advantages:
1. Since a dedicated communication channel is set up before communicating the message,
the data transmission is reliable and is suitable for long and continuous communication.
2 Circuit switching uses fixed bandwidth as well as data rates.
3. As the data is communicated continuously, no need of sequencing or re ordering it at the
receiving end.
Disadvantages:
1. Time required to setup a physical connection between the sender and the receiver
makes delay in communication
2. Since a communication channel is dedicated for a particular transmission, it cannot
be utilized for other communication, even if the channel is free.
3. More expensive since connection has to be established every time before
communication.
2. Packet Switching
In the packet switching technique, the whole message is split into small packets. Now, these
packets are transmitted one by one from sender to the receiver through the intermediary
switches in the network. The packets will take shortest path as possible. Every packet will
have a sequence number in order to identify their order at the receiving end. The packets
will also contain information like source address, intermediate node address, destination
address etc.
Advantages:
1. Packet switching is effective type of data transmission technique as it effectively
utilizes the communication channel. Multiple users can share the channel simultaneously
utilizing the bandwidth effectively.
2. It is cost effective and easy to implement compared to circuit switching.
3. As the messages are sent as small sized packets, the data transmission is quick and
easy. Disadvantages:
1. In packet switching the movement of packets may not be in correct order. Hence it
is not suitable for voice communication.
2. Unorganized movement of packets makes it necessary to implement proper
sequencing and reordering techniques.
3. As the packets flow through multiple paths from the source to the destination,
complex security protocols are required to ensure reliable communication.
TRANSMISSION MEDIA
● A transmission medium can be anything that can carry signals or data between the
source (transmitter) and destination (receiver). In data communication, transmission media
are the links that carry messages between two or more communicating devices.
● Transmission can be classified as guided or unguided.
● In guided transmission, there is a physical link made of wire/cable through which
data in terms of signals are propagated between the nodes. These are usually metallic cable,
fiber-optic cable, etc. They are also known as wired media.
● In unguided transmission, data travels in air in terms of electromagnetic waves using
an antenna. They are also known as wireless media.
Advantages:
• It is low-cost, low-weight and flexible cables.
• It is easy to install and maintain and requires RJ-45 Connector. Disadvantages:
• Suitable for short distance (up to 100 mt.). For long distance Repeater is required.
• It supports low bandwidth and offers up to 100 Mbps speed.
(B) Coaxial cable
• Coaxial cable has a copper wire at the core of the cable which is surrounded with
insulating material. The insulator is further surrounded with an outer conductor (usually a
copper mesh). This outer conductor is wrapped in a plastic cover.
• The shielded design allows the cable's copper core to transmit data quickly, without
interference of environmental factors.
• These types of cables are used to carry signals of higher frequencies to a longer
distance.
• It is better shielded and has more bandwidth than a twisted pair.
Advantages:
• It offers high bandwidth and carry data for a long distance (185-500 m)
• Suitable for Broadband transmission (cable TV) and can be used in shared cable
network.
Disadvantages:
• It is less flexible and expensive compared to Twisted Pair cable.
• Not compatible with modern cables like Twisted pair cable.
Advantages:
• It is free from Electro-Magnetic Interference (EMI), since no Electrical signal are
carried.
• Offers secure and high speed transmission up to a long distance.
Disadvantages:
• Expensive and quite fragile (breakable).
• They are unidirectional
• Complicated Installation procedure and difficult to join two broken fiber.
• Not suitable for domestic purposes due to high maintenance cost.
Wireless Transmission Media
• In wireless communication technology, information travels in the form of
electromagnetic signals through air.
• Electromagnetic spectrum of frequency ranging from 3 KHz to 900 THz is available
for wireless communication.
• Wireless technologies allow communication between two or more devices in short
to long distance without requiring any physical media.
There are many types of wireless communication technologies such as Bluetooth, WiFi,
WiMax etc.
The electromagnetic spectrum range (3KHz to 900THz) can be divided into 4 categories (
Radio waves, Microwaves, Infrared waves and Visible or Light waves) according to their
frequency ranges.
Transmission Properties
Waves
Radio Waves 1. Waves of frequency range 3 KHz - 1 GHz
2. Omni-directional, these waves can move in all directions
3. Radio waves of frequency 300KHz-30MHz can travel long distance
4. Susceptible to interference
5. Radio waves of frequency 3-300KHz can penetrate walls
6. These waves are used in AM and FM radio, television, cordless phones.
Microwaves 1. Electromagnetic waves of frequency range 1GHz - 300GHz.
2. Unidirectional, can move in only one direction.
3. Cannot penetrate solid objects such as walls, hills or mountains.
4. Needs line-of-sight propagation i.e. both communicating antenna must be
in the direction of each other.
5. Used in point-to-point communication or unicast communication such as
radar and satellite.
6. Provide very large information-carrying capacity.
Infrared waves 1.
Electromagnetic waves of frequency range 300GHz - 400THz.
2.
Very high frequency waves.
3.
Cannot penetrate solid objects such as walls.
4.
Used for short-distance point-to-point communication such as mobile-
tomobile, mobile-to-printer, remote-control-to-TV, and Bluetooth-enabled
devices to other devices like mouse, keyboards etc.
Radiowave transmission
Network Devices
To communicate data through different transmission media and to configure networks with
different functionality, we require different devices like Modem, Hub, Switch, Repeater,
Router, Gateway, etc.
Modem
Ethernet Card
• Ethernet card, also known as Network Interface Card (NIC) is a network adapter
used to set up a wired network. It acts as an interface between computer and the network.
• It is a circuit board mounted on the motherboard of a computer
• The Ethernet cable connects the computer to the network through NIC.
• Ethernet cards can support data transfer between 10 Mbps and 1 Gbps (1000 Mbps).
Each NIC has a MAC address, which helps in uniquely identifying the computer on the
network.
RJ45
Hub
An Ethernet hub is a network device used to connect different devices through wires.
Data arriving on any of the lines are sent out on all the others. The limitation of Hub is that
if data from two devices come at the same time, they will collide.
Switch
Router
• A router is a network device that can receive the data, analyses it, decide/alter how
it is packaged and transmit it to other networks.
• A router connects a local area network to the internet.
• For example, data has been divided into packets of a certain size. Suppose these
packets are to be carried over a different type of network which cannot handle bigger
packets. In such a case, the data is to be repackaged as smaller packets and then sent over
the network by a router.
Gateway
• “Gateway” is a key access point that acts as a “gate” between an organisation's
network and the outside world of the Internet.
• Gateway serves as the entry and exit point of a network, as all data coming in or
going out of a network must first pass through the gateway in order to use routing
paths.
• If a node from one network wants to communicate with a node of a foreign network,
it will pass the data packet to the gateway, which then routes it to the destination
using the best possible route.
• For simple Internet connectivity at homes, the gateway is usually the Internet
Service Provider that provides access to the entire Internet.
• Generally, a router is configured to work as a gateway device in computer networks.
• A gateway can be implemented completely in software, hardware, or a combination
of both.
• Since a network gateway is placed at the edge of a network, the firewall is usually
integrated with it.
WiFi card
• A Wi-Fi card connects to your laptop either in your USB port or a wider card slot.
• The Wi-Fi card acts as both a receiver and transmitter.
• It receives the wireless signal and communicates with the wireless network, enabling
you to access the Web with your laptop.
Computer Network Types
A computer network is a group of computers linked to each other that enables the computer
to communicate with another computer and share their resources, data, and applications.
A computer network can be categorized by their size, complexity and geographical spread.
A computer network is mainly of four types:
• LAN (Local Area Network)
• PAN (Personal Area Network)
• MAN (Metropolitan Area Network)
• WAN (Wide Area Network)
PAN (Personal Area Network)
• Personal Area Network is a network of information technology devices (laptop,
mobile phones, media player and play stations) arranged within the range of an
individual person, typically within a range of 10 meters / covers an area of 30 feet.
Thomas Zimmerman was the first research scientist to bring the idea of the
Personal Area Network.
• Local Area Network is a group of computers connected to each other in a small area
such as a building, office through a communication medium such as twisted pair,
coaxial cable, etc to share resources. Shared resources can be data, information,
programs, printers, hard-disks, modem etc. The data is transferred at an extremely faster
rate, and provides higher security
• It is less costly as it is built with inexpensive hardware such as hubs, network adapters,
and Ethernet cables.
MAN (Metropolitan Area Network)
• A metropolitan area network is a network that covers a larger geographic area that
is spread over an area as big as a city by interconnecting different LAN to form a
larger network through a telephone exchange line.
• Government agencies use MAN to connect to the citizens and private industries.
• The most widely used protocols in MAN are RS-232, Frame Relay, ATM, ISDN,
OC3, ADSL, etc.
• A Wide Area Network is a network that extends over a large geographical area such
as states or countries through a telephone line, fiber optic cable or satellite links.
• The internet is one of the biggest WAN in the world.
• A Wide Area Network is widely used in the field of Business, government, and
education.
• Security issue: A WAN network has many security issues as compared to LAN and
MAN network as all the technologies are combined together that creates the security
problem.
• Needs Firewall & antivirus software: The data is transferred on the internet which can
be changed or hacked by the hackers, so the firewall needs to be used. Some people can
inject the virus in our system so antivirus is needed to protect from such a virus.
• High Setup cost: An installation cost of the WAN network is high as it involves the
purchasing of routers, switches.
• Troubleshooting problems: It covers a large area so fixing the problem is difficult.
NETWORK PROTOCOL:
A protocol means the rules that are applicable for a network. Protocols defines standardized
formats for data packets, techniques for detecting and correcting errors etc.
• It is a standard internet protocol provided by TCP/IP used for transmitting the files
from one host to another. It is mainly used for transferring the web page files from their
creator to the computer that acts as a server for other computers on the internet. It is also
used for downloading the files to computer from other servers.
Objectives of FTP
• It provides the sharing of files.
• It is used to encourage the use of remote computers.
• It transfers the data more reliably and efficiently.
POP3 Protocol
Post Office Protocol version 3 (POP3) is a standard mail protocol used to receive emails
from a remote server to a local email client. POP3 allows you to download email messages
on your local computer and read them even when you are offline. How is mail transmitted?
twen J, and
JVM
Telnet
• The main task of the internet is to provide services to users. For example, users want
to run different application programs at the remote site and transfers a result to the local
site. This requires a client-server program such as FTP, SMTP. But this would not allow us
to create a specific program for each demand.
• The better solution is to provide a general client-server program that lets the user
access any application program on a remote computer. Therefore, a program that allows a
user to log on to a remote computer. A popular client-server program Telnet is used to meet
such demands. Telnet is an abbreviation for Terminal Network.
• Telnet provides a connection to the remote computer in such a way that a local
terminal appears to be at the remote side.
There are two types of login:
Local Login- When a user logs into a local computer, then it is known as local login.
Remote logi- When the user wants to access an application program on a remote computer,
then the user must perform remote login.
VoIP :
VoIP stands for Voice over Internet Protocol. It is also referred to as IP telephony, internet
telephony, or internet calling. It's an alternative to a public switched telephone network
(PSTN).
Introduction to Web Services
Everyone is using internet irrespective of their background & interest. The types of
services available on internet are as diverse as the interest of the people. Web Services
means the services provided by World Wide Web. The World Wide Web provides services
like chatting, emailing, video conferencing, e-learning, e-shopping, e-reservation, egroups
and social networking. These services may mean different things to different people but in
simple words, they are the ways to communicate and here the communication takes place
between two electronic devices.
The World Wide Web commonly referred to as WWW, W3, or the Web is an interconnected
system of public webpages accessible through the Internet.
The Web is not the same as the Internet: the Web is one of many applications built on top
of the Internet.It’s invented by Tim Berners-Lee in 1989. Since that time, the Web has
changed the world. It has perhaps become the most powerful communication medium the
world has ever known.
Major components of WWW are,
1. Web Server – It is a computer that stores website resources (web pages, images,
videos, etc.).
2. Web Browser (Client) - A software application used to access the web resources.
3. Webpage - Hypertext documents formatted in Hypertext Mark-up Language
(HTML) and displayed in a web browser.
4. Website - A website is a collection of inter-linked web pages that is identified by a
common domain name (website name) and stored on a web server.
5. HTTP Protocol - It governs data (web page) transfer between a server and a client.
6. HTML- A mark-up language used to specify the structure of a webpage.
7. URL- Address used to identify documents and other web resources on the internet.
Web Architecture
Web is working based on a client-server architecture.
So, it’s basically the Client requesting web pages and the Server serving it as long as the
requested content is available in the server. i.e. a request-response model.
Difference between Internet and WWW
Internet World Wide Web(WWW)
Internet stands for Interconnected
WWW stands for World wide Web
Networks
Internet is a means of connecting a World Wide Web which is a collection of
computer to any other computer anywhere information which is accessed via the
in the world. Internet.
WWW is service on
Internet is infrastructure.
top of that infrastructure.
Clients (web browsers) send requests through request object of http to web servers for
web pages, resources etc.
Web server respond accordingly through response object of http.
After this cycle (request – response), the connection between client and server across
the Internet is disconnected.
A new connection must be made for each request (means for each web page).
Hypertext Transfer Protocol Secure (HTTPS) is an extension of the HTTP.
It is used for secure communication over a computer network.
In HTTPS, the communication protocol is encrypted using Transport Layer Security
(TLS).
HTTPS provides,
1) Encryption: Encrypting the exchanged data to keep it secure from eavesdroppers.
2) Data integrity: Data cannot be modified or corrupted during transfer.
3) Authentication: Proves that your users communicate with the intended website.
Domain Names
The Internet is a vast ocean where information is available in the form of millions of
websites.
Each website is stored on a server which is connected to the Internet, which means each
server has an IP address. Every device connected to the Internet has an IP address.
To access a website, we need to enter its IP address on our web browser.
But it is very difficult to remember the IP addresses of different websites as they are in
terms of numbers or strings.
However, it is easier to remember names, and therefore, each computer server hosting
a website or web resource is given a name against its IP address. These names are called
the Domain names or hostnames corresponding to unique IP addresses assigned to each
server.
For easy understanding, it can be considered as the phonebook where instead of
remembering each person’s phone number, we assign names to their numbers. For
example, IP addresses and domain names of some websites are as follows:
Server type://hostname/directory/sub-directory/.../filename
Websites
A website is a collection of linked web pages (plus their associated resources) that share
a unique domain name.
Thus, a Web site is a collection of related Web pages.
Each web page of a given website provides explicit links, most of the time in the form
of clickable portion of text, that allow the user to move from one page of the website to
another.
Each Web site is owned and updated by an individual, company, or an organization.
Web is a dynamically moving and changing entity, today web sites generally change on
a daily or even hourly basis.
To access a website, type its domain name in your browser address bar, and the browser
will display the website's main web page, or homepage (casually referred as "the home")
Web page
Web page is an electronic document designed using HTML.
It displays information in textual or graphical form.
It may also contain downloadable data files, audio files or video files.
Traversal from one webpage to another web page is possible through hyperlinks.
Difference between Webpage and Website
A web page is one single page of information, while a website is made up of a number of
related web pages inter-connected by links known as hyperlinks.
Web Browser
• Web browser is software program to navigate the web pages on the internet.
• A bowser interprets the coding language of the web page and displays it in graphic
form.
• A web browser allows anyone to access the web without even knowing commands
used in software languages to design a web page.
• Internet works on client -server model.
• A web browser is a client which requests the information from the web server.
• The web server sends the information back to the client.
• The web address of the webpage written on the address bar tells the web browser
which page to access.
• The most popular web browsers are: Google Chrome, Mozilla Firefox, Internet
Explorer, Safari, Opera, Netscape and UC Browser.
What is a cookie?
Web Server
• A web server is a computer or a group of computers hosting one or more websites.
• "Hosting" means that all the web pages and their supporting files are available on
that computer.
• The web server will send any web page from the website it is hosting to any user's
browser, per user request.
• More importantly, since a web server can host multiple websites, the term web
server is never used to designate a website, as it could cause great confusion.
• It works on client/server model.
• It delivers the requested web page to web browser.
• Web servers use special programs such as Apache or IIS to deliver web pages over
the http Protocol
Web Hosting
Web hosting is the process of uploading/saving the web content on a web server to make
it available on WWW.
In case an individual or a company wants to make its website available on the internet,
it should be hosted on a web server.
A good way to think about this is if the domain name is the address of our house, then
web hosting is the actual house that address points to. All websites on the internet, need
web hosting.
Domain names and web hosting are two different services. However, they work together
to make websites possible. It is possible with the system known as DNS.
Model Questions
2. What are Protocols? Name the protocol used to transfer a file from one device to the
other.
Protocols are set of rules that are followed while transmitting data through a
computer network. Protocols determines how to data can be moved securely from a source
device to a destination device. The protocol used for transferring a file from one device to
another is the File Transfer Protocol (FTP)
9. Explain why Circuit Switching is not cost effective compared to Packet Switching?
The Circuit Switching is not cost effective like Packet Switching because, in Circuit
Switching, every time there is a need to set up a connection between the sender and the
receiver before communicating the message.
12. What is the difference between World Wide Web & Internet?
Internet means interconnected networks that spread all over the world (i.e. the
physical infrastructure), while WWW means the information’s (available in the form of
webpages) that can be accessed through internet.
17. Give one suitable example of each URL and domain name?
URL: https://kvsangathan.nic.in/hq-gyan-kosh
Domain name: kvsangathan.nic.in
20. Differentiate between the terms Domain Name and URL in context of web services.
Also write one example of each to illustrate the difference.
Domain Name URL
A domain name or website name is URL is a string that represents the complete web
a human-friendly text form of the address of any web page. It’s used to locate a
IP address. webpage.
It is the part of the URL that is more It is the string that represents a complete web
human friendly. address that contains the domain name.
Example: kvsangathan.nic.in Example: https://kvsangathan.nic.in/contact-us
22.Differentiate between communication using Optical Fiber and Ethernet Cable in context
of wired medium of communication technologies.
Optical Fibre - Very Fast - Expensive - Immune to electromagnetic interference
Ethernet Cable - - Slower as compared to Optical Fiber - Less Expensive as
compared to Optical Fiber - prone to electromagnetic interference
6) Devanand, a student of Class XII, is not able to understand the difference between
web client and web-server. Help him in understanding the same by explaining their
role and giving suitable example of each.
7) Write the full form of Cc and Bcc (used in email communication). Explain the
difference between them.
8) Define Internet and write its two uses in our daily life. How is it different from the
World Wide Web (WWW).
14) Among the following service available on the World Wide Web are?
i) Email ii) HTML iii) XML iv) Video conferencing
a) (i) and (ii) (b) (i) and (iv)
(c) (ii) and (iii) (d) None of the above
15) HTML and XML are _______________
a) Programming Languages (b) Scripting Languages
(c) Mark-up Languages (d) None of the above
16) XML uses _____________
a) User defined tags (b) Predefined Tags
(c) Both user defined and predefined tags (d) None of the above
21) “With XML you invent your own tags”, Explain this statement with the help of
example.
22) Define Domain Name Resolution?
23) ____________ tags are case sensitive and _____________ tags are not case
sensitive.
(a) HTML, XML (b) HTTP, XML
(c) XML, HTTP (d) XML,HTML
25) Which protocol helps us to browse through web pages using internet browsers?
30). MyPace University is setting up its academic blocks at Naya Raipur and is planning
to set up a network. The University has 3 academic blocks and one Human Resource
Center as shown in the diagram below: Study the following structure and answer
questions (a) to (e)
a) Suggest the most suitable place (i.e., Block/Center) to install the server of this
University with a suitable reason.
b) Suggest an ideal layout for connecting these blocks/centers for a wired connectivity.
c) Which device will you suggest to be placed/installed in each of these
blocks/centers to efficiently connect all the computers within these blocks/centers?
d) Suggest the placement of a Repeater in the network with justification.
e) The university is planning to connect its admission office in Delhi, which is more
than 1250km from university. Which type of network out of LAN, MAN, or WAN will
be formed? Justify your answer.
2. What happens to the Network with Star topology if the following happens:
(i) One of the computers on the network fails?
(ii) The central hub or switch to which all computers are connected, fails?
3. Two doctors have connected their mobile phones to transfer a picture file of a person
suffering from a skin disease. What type of network is formed?
4. SunRise Pvt. Ltd. is setting up the network in the Ahmadabad. There are four
departments named as MrktDept, FunDept, LegalDept, SalesDept.
5. Name the protocol Used to transfer voice using packet switched network.
6. What is HTTP?
7. Write the purpose of the following devices:
(i). Network Interface Card
(ii). Repeater
4. Dinsey has to share the data among various computers of his two offices branches
situated in the same city. Name the network (out of LAN, WAN, PAN and MAN) which
is being formed in this process.
5. . Global Pvt. Ltd. is setting up the network in the Bangalore . There are four
departments
Distances between various buildings are as follows:
Accounts to Research Lab 55 m
Accounts to Store 150 m
Store to Packaging Unit 160 m
Packaging Unit to Research Lab 60 m
Accounts to Packaging Unit 125 m
Store to Research Lab 180 m
Number of Computers
Accounts 25
Research 100
Lab
Store 15
Packaging 60
Unit
ANSWER KEY
I. Multiple Choice Questions(MCQ)
1. a 2. d 3. c 4. b 5. a
6. a 7. c 8. b 9. a 10. b
c. Switch
d. Repeater may be placed when the distance between 2 buildings is more than 70 meter.
e. WAN, as the given distance is more than the range of LAN and MAN.
1. Advantage: Since there is a single common data path connecting all the nodes, the
bus topology uses a very short cable length which considerably reduces the installation cost.
Disadvantage: Fault detection and isolation is difficult. This is because control of the
network is not centralized in any particular node. If a node is faulty on the bus, detection of
fault may have to be performed at many points on the network. The faulty node has then to
be rectified at that connection point.
2. (i). failure in one cable will not affect the entire network
(ii). If the central hub or switch goes down, then all the connected nodes will not be able to
communicate with each other.
3. PAN
5. VoIP
6. HTTP is a protocol that is used for transferring hypertext(i.e. text, graphic, image,
sound, video, etc,) between 2 computers and is particularly used on the World Wide
Web (WWW)
7.
(i) Network Interface Card (NIC) is a network adapter used to set up a wired network.
It acts as an interface between computer and the network.
(ii) A repeater is a device that amplifies a signal being transmitted on the network.
6. IP address 192.168.1.1
URL : https://www.apple.com/
Relational model:
The relational model uses a collection of tables to represent both data and the relationships
among those data.
Each table has multiple columns, and each column has a unique name. The relational model
is an example of a record – based model.
Record- based models are so named because the database is structured in fixed- format
records of several types. Each table contains records of particular type. Each record type
defines a fixed number of fields/attributes.
The columns of the table correspond to the attributes of the record type.
A row in a table represents a relationship among a set of values. The relational data model
is the most widely used data model.
Other types of data models include object-oriented data model, entity-relationship data
model, document model and hierarchical data model.
Domain: It is collection of values from which the value is derived for a column.
Primary Key – A primary is a column or set of columns in a table that uniquely identifies
tuples (rows) in that table.
Candidate Key –It is an attribute or a set of attributes or keys participating for Primary
Key, to uniquely identify each record in that table.
Alternate Key – Out of all candidate keys, only one gets selected as primary key,
remaining keys are known as alternate or secondary keys.
Foreign Key – Foreign keys are the columns of a table that points to the primary key of
another table.
By using SQL commands, one can search for any data in the database and perform
other functions like creating tables, adding records, modifying data, removing rows,
dropping tables etc.
1.2 What Can SQL do?
SQL can execute queries against a database
SQL can retrieve data from a database
SQL can insert records in a database
SQL can update records in a database
SQL can delete records from a database
SQL can create new databases
SQL can create new tables in a database
SQL can create stored procedures in a database
SQL can create views in a database
SQL can set permissions on tables, procedures, and views
1.3 ADVANTAGES OF SQL
There are the following advantages of SQL:
● High speed
Using the SQL queries, the user can quickly and efficiently retrieve a large amount of
records from a database.
● No coding needed
In the standard SQL, it is very easy to manage the database system. It doesn't require a
substantial amount of code to manage the database system.
● Well defined standards
Long established are used by the SQL databases that are being used by ISO and ANSI.
● Portability
SQL can be used in laptop, PCs, server and even some mobile phones.
● Interactive language
SQL is a domain language used to communicate with the database. It is also used to receive
answers to the complex questions in seconds.
● Multiple data view
Using the SQL language, the users can make different views of the database structure
1.6 DATATYPES
Date , Time
1.7 CONSTRAINT
A Constraint is a condition or check applicable on a field or set of fields.
Types of Constraints:
⮚ Unique Constraint :-This ensures that no rows have the same value in the
specified column(s) Syntax:
Create table EMP (ecode integer unique, ename char(20),sex char(1),grade char(2));
Unique constraint applied on ecode of EMP table ensures that no rows have the same ecode
value
⮚ Primary key Constraint:- This declares a column as the primary key of the table
This is similar to unique constraint except that one column (or one group of
columns)can be applied in this constraint .
The primary key cannot allow NULL values but Unique key allows NULL values.
The following SQL creates a PRIMARY KEY on the "ID" column when the "Persons" table
is created:
CREATE TABLE Persons ( ID int NOT NULL, LastName varchar(255) NOT
NULL, FirstName varchar(255), Age int, PRIMARY KEY (ID));
Syntax:
Create table EMP(ecode integer Not null unique, ename char(20),sex char(1),grade
char(2));
⮚ CREATE DATABASE
CREATE DATABASE is the SQL command used for creating a database in MySQL.
Imagine you need to create a database with name “movies”. You can create a database in
MySQL by executing following SQL command
⮚ SHOW DATABASES
You can see list of existing databases by running following SQL command.
Syntax: mysql>SHOW DATABASES;
⮚ USE
CREATE TABLE
The CREATE TABLE statement is used to create a new table in a database.
Syntax: CREATE TABLE table_name ( column1 datatype, column2
datatype, column3 datatype, ....);
Example: The following example creates a table called "Persons" that contains five
columns:
PersonID, LastName, FirstName, Address, and City:
CREATE TABLE Persons (
PersonID int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
);
⮚ SHOW TABLES;
We can get the number of table information of a database using the following statement:
mysql> SHOW TABLES;
⮚ DESCRIBE TABLE
Use the DESCRIBE command to show the structure of the table, such as column names,
constraints on column names, etc. The DESC command is a short form of the DESCRIBE
command. Both DESCRIBE and DESC commands are equivalent.
Syntax The following are the syntax to display the table structure:
mysql> DESCRIBE | DESC table_name;
To create a PRIMARY KEY constraint on the "ID" column when the table is already
created, use the following SQL:
ALTER TABLE table_name ADD PRIMARY KEY (Column_name);
INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2,
value3, ...);
2. If you are adding values for all the columns of the table, you do not need to specify
the column names in the SQL query. However, make sure the order of the values is in the
same order as the columns in the table. Here, the INSERT INTO syntax would be as
follows:
DELETE Syntax:
DELETE FROM table_name WHERE condition;
Note: Be careful when deleting records in a table! Notice the WHERE clause in the
DELETE statement. The WHERE clause specifies which record(s) should be deleted. If
you omit the WHERE clause, all records in the table will be deleted!
The following SQL statement deletes all rows in the "Customers" table, without deleting
the table:
Here, column1, column2, ... are the field names of the table you want to select data from. If
you want to select all the fields available in the table, use the following syntax:
Operator Description
= Equal
The WHERE clause can be combined with AND, OR, and NOT operators.
The AND and OR operators are used to filter records based on more than one condition:
● The AND operator displays a record if all the conditions separated by AND are TRUE. ●
The OR operator displays a record if any of the conditions separated by OR is TRUE.
AND Syntax
OR Syntax
FROM table_name
NOT Syntax
FROM table_name
IN Syntax
SELECT column_name(s)
FROM table_name
or:
SELECT column_name(s)
FROM table_name
The BETWEEN operator selects values within a given range. The values can be numbers,
text, or dates.
The BETWEEN operator is inclusive: begin and end values are included.
BETWEEN Syntax
SELECT column_name(s)
FROM table_name
The ORDER BY keyword is used to sort the result-set in ascending or descending order.
The ORDER BY keyword sorts the records in ascending order by default. To sort the
records in descending order, use the DESC keyword.
ORDER BY Syntax
FROM table_name
Example
ORDER BY Country;
The following SQL statement selects all customers from the "Customers" table, sorted
DESCENDING by the "Country" column:
The following SQL statement selects all customers from the "Customers" table, sorted by
the "Country" and the "CustomerName" column. This means that it orders by Country,
but if some rows have the same Country, it orders them by CustomerName:
Eg: SELECT * FROM Customers ORDER BY Country, CustomerName;
SQL Aliases
SQL aliases are used to give a table, or a column in a table, a temporary name.
Alias Table
WHERE condition;
UPDATE Table
The following SQL statement updates the first customer (CustomerID = 1) with a new
contact person and a new city.
UPDATE Customers
WHERE CustomerID = 1;
The SELECT DISTINCT statement is used to return only distinct (different) values.
Inside a table, a column often contains many duplicate values; and sometimes you only
want to list the different (distinct) values.
The following SQL statement selects all (including the duplicates) values from the
"Country" column in the "Customers" table:
The following SQL statement selects only the DISTINCT values from the "Country"
column in the "Customers" table:
SELECT DISTINCT Country FROM Customers;
The following SQL statement lists the number of different (distinct) customer countries:
The LIKE operator is used in a WHERE clause to search for a specified pattern in a column.
There are two wildcards often used in conjunction with the LIKE operator:
The percent sign and the underscore can also be used in combinations!
LIKE Syntax
FROM table_name
WHERE CustomerName LIKE 'a%' Finds any values that start with "a"
WHERE CustomerName LIKE '%a' Finds any values that end with "a"
WHERE CustomerName LIKE '%or%' Finds any values that have "or" in any position
WHERE CustomerName LIKE '_r%' Finds any values that have "r" in the second
position
WHERE CustomerName LIKE 'a_%' Finds any values that start with "a" and are at least
2 characters in length
WHERE ContactName LIKE 'a%o' Finds any values that start with "a" and ends with
"o"
If a field in a table is optional, it is possible to insert a new record or update a record without
adding a value to this field. Then, the field will be saved with a NULL value.
It is not possible to test for NULL values with comparison operators, such as =, <, or <>.
We will have to use the IS NULL and IS NOT NULL operators instead.
IS NULL Syntax
SELECT column_names
FROM table_name
SELECT column_names
FROM table_name
WHERE column_name IS NOT NULL;
The IS NULL operator is used to test for empty values (NULL values).
The following SQL lists all customers with a NULL value in the "Address" field:
FROM Customers
The IS NOT NULL operator is used to test for non-empty values (NOT NULL values).
The following SQL lists all customers with a value in the "Address" field:
SELECT CustomerName, ContactName, Address
FROM Customers
Q: Find the sum, average, minimum, maximum value of salaries of employees in the
employee table
Count() function
Count () has got three formats:
Count(*)
This function returns the number of rows in the table that satisfy the criteria of select
statement.
In its counting, it includes duplicate rows and rows with NULL values in any of the column
Example:
Q: Count the number of employees in the employee table.
Count(<col name>)
● This function returns the number of not null values in the specified column, but
includes duplicate values in counting
Example
Q; count the number of grades of employees in the employee table.
Having clause
● This clause is used to restrict rows resulting after grouping.
● Steps followed in execution of select with group by and having clause- 1. Rows
are grouped according to the columns in the group by clause.
2. Then the group function is applied.
3. Groups matching with Having clauses are displayed.
Example
Q. Display only whose departments with sum of salaries whose total salary is greater than
70000
Joins in MySQL
● A join is used when data from two or more tables is required.
● Rows in one table can be joined to the rows in another table based on the common
values existing in corresponding columns of two tables.
● Joins are used to retrieve data from tables related to each other with primary- foreign
key relationships.
● There are many types of join Equi join
● Specified columns from the joining tables are checked for equality.
● Values from joining tables are retrieved only if the condition in where clause is
satisfied.
SYNTAX:-
SELECT <column_name (s)>
FROM <table_name1>, <table_name2>, ...., <table_nameN>
WHERE <table_name1>.<column_name> = <table_name2>.<column_name>;
Note-
To join n tables together minimum of n-1 join conditions are to be satisfied.
Results of Equi joins are the same as simple joins or inner joins. Inner join (simply join)
uses on clause.
You should always qualify the columns when joining tables having the same name as
corresponding columns. To qualify the columns we use “.” (dot) operator.
Natural Join
This clause is based on all the columns in the two tables that have the same name.
It selects the rows from two tables that have equal values in the matched columns.
SYNTAX:-
SELECT [column_names | *]
FROM table_name1
NATURAL JOIN table_name2;
Database connectivity
Database connectivity refers to connection and communication between an application and
a database system.
The term “front-end” refers to the user interface, while “back-end” means the server,
application and database that work behind the scenes to deliver information to the user.
• Mysql.connector- Library or package to connect from python to MySQL.
Before we connect the program with mysql , we need to install connectivity package named
mysql-connector- python
• Command to install connectivity package:- pip install mysql-connector-python
• Command to import connector:- import mysql.connector
• Steps for python MySQL connectivity
1 . Install Python
2 Install MySQL
3 Open Command prompt
4 Switch on internet connection
5 Type pip install mysql-connector-python and execute
6 Open python IDLE
7 import mysql.connector
The connect statement creates a connection to the mysql server and returns a MySQL
connection object.
Syntax:
con=mysql.connector.connect(host=”localhost”,user=”root”, passwd=” “)
Syntax:
<cursor object>=<connectionobject>.cursor()
Eg: cursor=con.cursor()
The above code will execute the sql query and store the retrieved records
(resultset) in the cursor object(cursor).
Result set refers to a logical set of records that are fetched from the database by
executing an sql query and made available in the program.
The records retrieved from the database using SQL select query has to be
extracted as record from the result set. We can extract data from the result set
using the following fetch () function.
fetchall() fetchone()
fetchmany()
# SHOW DATABASE
import mysql.connector
mydb=mysql.connector.connect(host="localhost",user="root",passwd="system")
mycursor=mydb.cursor() mycursor.execute("SHOW DATABASES") for x in
mycursor:
print (x)
import mysql.connector
mydb=mysql.connector.connect(host="localhost",user="root",passwd="s
ystem",database="student") mycursor=mydb.cursor()
mycursor.execute("CREATE TABLE FEES (ROLLNO INT,NAME
VARCHAR(20),AMOUNT INT);")
import mysql.connector
mydb=mysql.connector.connect(host="localhost",user="root",passwd="system
",database="student")
mycursor=mydb.cursor()
mycursor.execute("SHOW TABLES")
for x in mycursor:
print(x)
#TO DESCRIBE TABLE STRUCTURE USING PYTHON INTERFACE
mydb=mysql.connector.connect(host="localhost",user="root",passwd="system"
,database="student")
mycursor=mydb.cursor()
mycursor.execute("DESC
STUDENT") for x in mycursor:
print(x)
# TO EXECUTE SELECT QUERY USING A PYTHON INTERFACE
import mysql.connector
conn=mysql.connector.connect(host="localhost",user="root",passwd="12345
",database="student") c=conn.cursor()
c.execute("select * from student")
r=c.fetchone() while r is not None:
print(r)
r=c.fetchone()
mydb=mysql.connector.connect(host="localhost",user="root",passwd="syste
m",database="student")
mycursor=mydb.cursor()
mycursor.execute("ALTER TABLE STUDENT MODIFY GRADE CHAR(3)")
commit( ): After executing insert or update query we must commit our
transaction using commit method of connection object.
Eg: mycon.commit()
rollback( ): mysqlConnection.rollback() reverts the changes made by the
current transaction.
rowcount: This attribute returns the number of rows that were affected by an
execute()
16. Which of the following statements is not true about relational database?
a) Relational data model is the most widely used data model.
b) The data is arranged as a collection of tables in relational database.
c) Relational database increases data redundancy and inconsistency.
d) None of the above.
18. A _____ is a property of the entire relation, rather than of the individual tuples in
which each tuple is unique.
a) Rows b)Key c)Attribute d)Fields
19. Which one of the following attribute can be taken as a primary key?
a) Name b)Street c)Id d)Department
20. A _________ integrity constraint requires that the values appearing in specified
attributes of any tuple in the referencing relation also appear in specified attributes
of at least one tuple in the referenced relation.
a) Referencing b)Referential c)Primary d)Specific
c) Which column can be made as the primary key in the table Employee?
i) EMPID ii) EMAIL
iii) Both i and ii iv)
None of the above
d) If two columns are added to the table Employee, then the cardinality and
degree of the table is …… and …… respectively. i) 4 , 7 ii) 7, 4 iii) 6,5 iv)
5,6
e) State True/False:
Both EMPID and EMAIL can be defined as primary key in the table
Employee.
i) True ii)False
22. An attribute in a relation is a foreign key if it is the ________ key in any other
relation.
a) Candidate b)Primary c)Super d)Sub
23. A(n) ________ in a table represents a logical relationship among a set of values.
a) Column b)Key c)Row d)Attribute
24. Which of the following attributes can be considered as a choice for the primary
key?
a) Name b)Street c)RollNo d)Subject
Fill in the blanks:
Worksheet 1:
1.There is a column HOBBY in a Table CONTACTS. The following two statements
are giving different outputs. What may be the possible reason ? a.SELECT
COUNT(*) FROM CONTACTS;
b.SELECT COUNT(HOBBY)FROM CONTACTS;
2. Given the following employee table:-
4. Kunal has entered the following SQL command on Table ‘STUDENT’ that has
TotalMarks as one of the columns.
SELECT COUNT (*) FROM STUDENT;
The output displayed is 20. Then, Kunal enters the following command :
SELECT COUNT (*) FROM STUDENT WHERE TotalMarks <100;
The output displayed is 15. Then, Kunal enters the following command :
SELECT COUNT (*) FROM STUDENT WHERE TotalMarks >= 100;
He predicts the output of the above query as 5. Do you agree with Kunal ? Give reason for
your answer.
5. Consider the table given below :
(ii) SELECT Area, COUNT (*) FROM Salesperson GROUP BY Area HAVING COUNT
(*) > 1;
6. Consider the table ‘PERSONS’ given below. Write commands in SQL for (i) to (iv)
and write output for (i) to (iii)
(i) SELECT SUM(BasicSalary) FROM Persons Where Gender=’F’;
(ii) SELECT Gender,MIN(BasicSalary) FROM Persons GROUP BY gender;
(iii) SELECT Gender,Count(*) FROM Persons GROUP BY Gender;
7. In a database there are two tables 'Customer' and 'Bill' as shown below:
(i) How many rows and how many columns will be there in the Cartesian product of
these two tables?
(ii) Which column in the 'Bill' table is the foreign key?
8. Consider the tables HANDSETS and CUSTOMER given below:
With reference to these tables, Write commands in SQL for (i) and (ii) and output for (iii)
below:
(i) Display the CustNo, CustAddress and corresponding SetName for each customer.
(ii) Display the Customer Details for each customer who uses a Nokia handset.
(iii)select SetNo, SetName from Handsets, customer where SetNo = SetCode and
CustAddress = 'Delhi';
9. Consider the tables DOCTORS and PATIENTS given below:
With reference to these tables, write commands m SQL for (I) and (II) and output for (iii)
below:
(i) Display the PatNo, PatName and corresponding DocName for each patient (ii)
Display the list of all patients whose OPD_Days are MWF.
(iii) select OPD_Days, Count(*) from Doctors, Patients where Patients.Department =
Doctors.Department Group by OPD_Days;
Worksheet 2
1. The following table represents information on sales representatives of ABC company
with the following data.
Sales man name
Code
Address
commission
salary.
Write Python code to create the above table.
2.Write Python mysql connectivity program to retrieve all the data from a table student.
3.Write a python code to delete all the records from employee table whose age >60 and
the table has the following fields. Empid, empname, deptid, age, payscale
3 JOHNY WE 55000
5. Consider the following Python code is written to access the details of employee,
whose employee number is passed to function:
Complete the missing statements:
def Search(eno):
import mysql.connector
mydb=mysql.connector.connect(host="localhost",user="root",passwd="sy
stem",database="DB") mycursor=mydb.cursor()
query="select * from emp where empno= ___".format(eno)
mycursor.execute(query) results = mycursor.
print(results)
import mysql.connector
mydb=mysql.connector.connect(host="localhost",user="root",passwd="
system",database="student") mycursor=mydb.cursor()
mycursor.execute("UPDATE STUDENT SET MARKS=95 WHERE
MARKS=50") print(mycursor.rowcount,"RECORD UPDATED")
Code is running but the record in actual database is not updating, what could be the
possible reason?
9.Write a python connectivity program to retrieve data, one record at a time from EMP table
for employees with id<10.
10. Write python connectivity program to delete the employee record whose name is read
from the keyboard at execution time.
11.SD School is managing the student data in student table in school database. Write a
python code that connects to database school and display the record of students and total
number of students.
12.Which record will get inserted in the table by the following code: Import
mysql.connector
mydb=mysql.connector.connect(host="localhost",user="root",passwd="s
ystem",database="db") mycursor=mydb.cursor() a=1011 b=”Euphoria”
c=599.00
mycursor.execute("INSERT INTO BOOKS(bookid,bname,price) VALUES
({},'{}',{})" .format(a,b,c))
mydb.commit() WORKSHEET 3 - Fill
in the blanks
1.A ------------------ is a special control structure that facilitates the row by row processing
of records in the resultset.
2.After importing mysqlconnector, first of all --------------is established by using connect()
3.-----------------method executes a database query from within Python.
4. Running of sql query through database cursor returns the table records in the form of--
-------------
5.A connectivity package---------------must be imported before running db connection
program.
10. Raj is a database programmer, He has to write the query from EMPLOYEE table to
search for the employee who are not getting any commission, for this he has written
the query as: SELECT * FROM EMPLOYEE WHERE commission=null; But the
query is not producing the correct output, help Raj and correct the query so that he
gets the desired output.
11. Deepika wants to remove all rows from the table BANK. But he needs to maintain
the structure of the table. Which command is used to implement the same?
12. While creating table ‘customer’, Rahul forgot to add column ‘price’. Which
command is used to add new column in the table. Write the command to implement
the same.
13. Observe the given Table TEACHER and give the output of question (i) and (ii)
1.To display NO, NAME, TDATE from the table TRIP in descending order of NO.
2.To display the NAME of the drivers from the table TRIP who are traveling by transport
vehicle with code 101 or 103.
3.To display the NO and NAME of those drivers from the table TRIP who travelled
between ‘2015-02-10’ and ‘2015-04-01’.
4.To display all the details from table TRIP in which the distance travelled is more than
100 KM in ascending order of NOP
ANSWERS: 1. Multiple Choice Questions (MCQ )
1 D 2 A 3 B 4 B
5 A 6 B 7 C 8 B
9 A 10 B 11 A 12 B
13 D 14 B 15 A 16 C
17 D 18 B 19 C 20 B
21e) (ii) 22 B 23 C 24 C
13 Foreign key
III) F 3
M 4
7. i) 15 rows and 6 columns ii) custID
8. i) select Custno,CustAddress,setName from customer c,handset h where
c.setNo=h.setName; ii) select Custno,CustAddress,setName from
customer c,handset h where c.setNo=h.setName and h.setName like
‘Nokia%’; iii) N2 Nokia 3G
B1 Blackberry
9. I) select patNo,PatName,DocName from Patient p,doctor d where
p.docID=d.docID;
II) select patNo,PatName,DocName from Patient p,doctor d where
p.docID=d.docID and OPD_Days=”MWF”;
3.
import mysql.connector
mydb=mysql.connector.connect(host="localhost",user="root",passwd="system
",database="DB") mycursor=mydb.cursor()
mycursor.execute("DELETE FROM EMP WHERE AGE>60
") mydb.commit()
print(mycursor.rowcount,"RECORD DELETED")
mydb.close()
4. 165000
5. .{ } and fetchone()
7. con.is_connected()
8. fetchall() function is used to fetch all the records from the cursor in the form of tuple.
fetchone() is used to fetch one record at a time. Subsequent fetchone() will fetch next
records. If no more records to fetch, it returns None.
9. import mysql.connector
conn=mysql.connector.connect(host="localhost",user="root",passwd="system",datab
ase="com")
c=conn.cursor()
c.execute("select * from emp where id>10")
r=c.fetchone() while r is not None:
print(r)
r=c.fetchone()
conn.close()
10.
import mysql.connector
mydb=mysql.connector.connect(host="localhost",user="root",passwd="system
",database="DB") mycursor=mydb.cursor()
s= input(“enter the name”) mycursor.execute("delete
from emp where name =’{}’)”.format(s) mydb.commit()
11.
import mysql.connector
mydb=mysql.connector.connect(host="localhost",user="root",passwd="system
",database="school") mycursor=mydb.cursor()
sql=”select * from student”
mycursor.execute(sql)
recs=mycursor.fetchall() count=0 for r in recs:
count+=1
print(r)
print(“total no of records”,count)
1.database cursor
2.database connection.
3. execute()
4.resultset
5.mysql.connector
1. b)fetchtwo()
2. b)fetchone()
3. c)commit()
4. b)execute()
5. b)connection object
6. DISTINCT
7. DROP TABLE
8. DESC
9. SELECT * FROM EMPLOYEE WHERE commission IS NOT null;
10. SELECT * FROM EMPLOYEE WHERE commission IS null;
11. DELETE FROM BANK.
(ii)
TEACHER_CODE TEACHER_NAME DOJ
----------------------------------------------------------------------
T002 AMIT 2007-09-05 T003
ANKIT 2007-09-20
14.
1.SELECT NO,NAME,TDATE FROM TRIP ORDER BY NO DESC;
2. SELECT NAME FROM TRIP WHERE TCODE=101 OR TCODE=103;
3. SELECT NO,NAME FROM TRIP WHERE TDATE BETWEEN ‘2015-02-10’
AND
‘2015-04-01’;
4. SELECT * FROM TRIP WHERE KM >100 ORDER BY NOP;
KENDRIYA VIDYALAYA SANGHATHAN – ERNAKULAM
REGION SAMPLE PAPER-1(SOLVED) – COMPUTER SCIENCE
(083)
General Instructions:
1.This question paper contains five sections, Section A to E.
2022-23 224
7. With SQL, how do you select all the records from a table named “Persons” 1
where the value of the column “FirstName” ends with an “a”? a) SELECT
* FROM Persons WHERE FirstName=’a’
b) SELECT * FROM Persons WHERE FirstName LIKE ‘a%’
c) SELECT * FROM Persons WHERE FirstName LIKE ‘%a’
d) SELECT * FROM Persons WHERE FirstName=’%a%’.
9. To include the use of functions which are present in the random library, we 1
must use the option: a) import random
b) random.h
c) import.random
d) random.random
12. Which of the following command is used to change the VALUES OF rows that 1
already exist in a table?
1. Insert. 2. Union. 3. Update. 4. Select
13. Give the output: my_data = (1, 2, "Kevin", 8.9) print (my_data[-3]) 1
1. 8.9 2. “Kevin”. 3. 1 4. 2
16 To write data into CSV from python console, which of the following function is 1
correct?
2022-23 225
a) csv.write(file) b) csv.writer(file)
c) csv.Write(file) d) csv.writerow()
Statement (A) : A function can perform certain functionality 1
17 Statement (B) : A function must return a result value a)
Statement A is correct
b) Statement B is correct
c) Statement A is correct but Statement B is not correct
d) Both are incorrect
18 Ms. Suman is working on a binary file and wants to write data from a list to a binary 1
file. Consider list object as l1, binary file suman_list.dat, and file object as
f. Which of the following can be the correct statement for her?
a) f = open(‘sum_list’,’wb’); pickle.dump(l1,f)
b) f = open(‘sum_list’,’rb’); l1=pickle.dump(f)
c) f = open(‘sum_list’,’wb’); pickle.load(l1,f)
d) f = open(‘sum_list’,’rb’); l1=pickle.load(f)
a) 6+7*4+2**3//5-8
b) 8<5 or no 19<=20 and 11<4
21 Differentiate between Candidate Key and Primary Key in the context Relational 2
Database Mode
2022-23 226
22 What will be the output of the following code? 2
a=[1,2,3,4] s=0 for a[-1] in a: print(a[-
1]) s+=a[-1]
print(‘sum=’,s)
24 Smridh has recently changed his school so he is not aware of the people, but 2
someone is posting negative , demeaning comments on his social media profile.
He is also getting repeated mails from unknown people. Every time he goes
online, he finds someone chasing him online.
2022-23 227
25 In the table Loan below 2
(a) Identify the candidate key(s) from the table Garment. (b)
What is the cardinality and degree of the table?
26 Vedika has created a dictionary containing names and marks as key-value pairs of 3
5 students. Write a program, with separate user-defined functions to perform the
following operations:
Push the keys (name of the student) of the dictionary into a stack, where the
corresponding value (marks) is greater than 70.
Pop and display the content of the stack.
The dictionary should be as follows:
2022-23 228
27. A department is considering to maintain their worker data using SQL to store the 3
data. As a database administer, Karan has decided that :
2022-23 229
28. Ashok Kumar of class 12 is writing a program to create a CSV file “cust.csv” 3
with custid, custname and mobile no and search custname and delete the record.
He has written the following code. As a programmer, help him to successfully
execute the given task.
import _______ # LINE1
record = list() custname= input("Please enter a customer
name to delete:") with open('cust.csv', 'r') as f: data =
csv._______(f) # LINE2 for row in data:
record.append(row) for
field in row:
if field == custname:
record.____(row) #LINE3
with open('cust.csv', 'w') as f:
writer = csv.writer(f) writer.writerows(record
29. Write SQL commands for(a) to (b) and write the outputs for (C) on the basis of 2+1
table GRADUATE
a) List the names of those students who obtained DIV 1 sorted by NAME .
2022-23 230
30 A) Write a function countmy() in Python to read the text file "DATA.TXT" and 3
count the number of times "my" occurs in the file.
For example, if the file "DATA.TXT" contains "This is my website. I have
displayed my preferences in the CHOICE section." - the countmy() function
should display the output as: "my occurs 2 times"Or
Write a method/function DISPLAYWORDS() in python to read lines from a text
file STORY.TXT, and display those words, which are less than 4 characters.
Or
31. Indian School, in Mumbai is starting up the network between its different wings. 5
There are four Buildings named as SENIOR, JUNIOR, ADMIN and HOSTEL as
shown below:
2022-23 231
a. Repeater b.Hub/Switch
2022-23 232
4. The organisation also has inquiry office in another city about 50-60 km away
in hilly region. Suggest the suitable transmission media to interconnect to school
and inquiry office out of the following : (1)
32. 5
Give Output of :
(2+3)
1. The books table of test database contains the records shown below:-
23686286243
42568987036
2022-23 233
33 A. Considering the following definition of dictionary MULTIPLEX, write a 5
method in python to search and display all the content in a pickled file
CINEMA.DAT, where MTYPE key of the dictionary is matching with the value
"Comedy".
Or
Following is the structure of each record in a data file named "phonebook.DAT".
{“name”: value, "phone": value}
Write a program to edit the phone number of “Arvind” infile “phonebook.dat”. If
there is no record for “Arvind”, report error.
2022-23 234
34 Write SQL commands for the queries (i) to (iii) and output for (iv) & (vii) based 4
on a
I) Identify the most appropriate Primary key for Tables Company and Customer.
Ii) To display those company name which are having prcze less than 30000.
iii a.To increase the price by 1000 for those customer whose name starts with S?
Or
Iii)a) Delete the records from table customer whose name has KUMAR.
B. Insert a new record in table COmpany where CID : 777, Name : APPLE City
KOCHI and PRODUCTNAME is LAPTOP
2022-23 235
35 Aradhana is creating a binary file student.dat that has structure 4
(rollno,name,class,percentage). She wrote a program to updating a record in the
file requires roll number to be fetched from the user whose name is to be updated.
She has few doubts in the code. Help her to complete the task. She uses
intermediate file for working temp.dat
Import______ #STATEMENT 1
import os
f1 = open(‘student.dat','rb')
f2=open(“temp.dat”,”______”) #Statement2
r=int(input(“enter rollno which you want to search”))
try: while True:
e = pickle.load(f1) if
e[0]==r:
e[1]=input(“enter name”) pickle.dump(____)
#Statement3
else:
pickle.dump(e,f2)
except: f1.close()
f2.close()
os.remove(“student.dat”)
os._______(“temp.dat”,”student,dat”) #Statement4
2022-23 236
KENDRIYA VIDYALAYA SANGHATHAN – ERNAKULAM
REGION SAMPLE PAPER-1(SOLUTION) – COMPUTER
SCIENCE (083)
Part A
Section 1 [18 marks] (1x18)
1. (a) // 1
2. (d)str 1
3. (a) Tuple 1
4. b)LAN 1
5. a)IT act 2000 1
6. ii)switch 1
7. c) SELECT * FROM Persons WHERE FirstName LIKE ‘%a’ 1
8. a) UPDATE 1
9. a) import random 1
10. c) more than one 1
11. 4. Memory address of x 1
12 3. Update. 1
13. 4. 2 1
14. c) [1, 3, 2, 1, 3, 2] . 1
15. b) a list of lines 1
16. 1
b) csv.writer(file)
17 1
18 1
a) f = open(‘sum_list’,’wb’); pickle.dump(l1,f)
Section B [2x7=14]
Answer All questions
19 a) 27 b) False 2
20 a) Post Office Protocol b)Transmission Control Protocol/Internet 2
Protocol c) World Wide Web
d) Hypertext Transfer Protocol Secure
2022-23 237
21 Candidate Key: The columns which can serve as primary key of a table 2
is known as candidate keys. There can be multiple candidate for a
relation.
Primary Key: Primary key is a field name which identifies rows
uniquely. There can be only one primary key for a relation.
22 1 2
2
3
3
Sum=9
23 ALTER Command is used to add, delete, modify the attributes of the 2
relations (tables) in the database. UPDATE Command is used to update
existing records in a database.
27 I) WORKER_ID 3
II)alter table worker modify FIRST_NAME varchar(20);
lll)DELETE FROM WORKER;
28. a) csv 3
.b) reader
.c) remove
2022-23 238
29 A. List the names of those students who obtained DIV 1 sorted by 2+1
NAME .
Ans.: SELECT name FROM graduate WHERE div=1 ORDER BY
name; (b )Display a report, listing NAME , STIPEND , SUBJCT
and amount of stipend received in a year assuming that the
STIPEND is paid every month.
Ans.: SELECT name, stipend, subject, stipend *12 FROM graduate;
(C) Give the output of the following SQL statements based on table
GRADUATE :
(i) Select MIN(AVERAGE ) from GRADUATE where
SUBJECT=”PHYSICS”;
Ans. MIN(AVERAGE)
----------------------
63
(ii)Select SUM(STIPEND) from GRADUATE where DIV=1;
Ans.: SUM(STIPEND)
---------------------
1000
30 A) def countmy (): f = 3
open("DATA.txt", "r")
count = 0
2022-23 239
x = f.read() word =
x.split() for i in word :
if (i == "my") :
count = count + 1
print ("my occurs", count, "times")
A. close()
Or
ii) ) def
DISPLAYWORDS() :
file = open("story.txt", "r")
lst = file.readlines() for i in
lst :
word = i.split()
for j in word :
if len( j ) < 4 :
print( j )
file.close()
print("Word with length smaller than 3 :- \n")
DISPLAYWORDS()
1.
2. Server can be placed in the ADMIN building as it has the
maxium number of computer.
3. (a) Repeater can be placed between ADMIN and SENIOR and
ADMIN and JUNIOR building as the distance is more than 80 m. (b)
Hub/Switch : can be placed in all building in order to connect the
computer within
4. Radiowaves can be used in hilly regions as they can travel
through obstacles
32 b) 2+3
250 @ 150
2022-23 240
250 @ 100
130 @ 100
c)
(Die to Live 78127873915)
(Again? 23686286243)
(Ushakaal 12678987036)
(ushakiran 42568987036)
2022-23 241
33. A.) def Search(): 5
file = open('CINEMA.DAT', "rb")
try:
while True:
MULTIPLEX = pickle.load(file) if
MULTIPLEX ["MTYPE"] == "Comedy":
print (MULTIPLEX)
except EOFError:
file.close()
Or
B.) Try = 0
f = open("phonebook.det","r") data =
f.readlines()
f.close()
f = open("phonebook.det","w")
name = input("Enter name which you want search :-") for
i in range(len(data)) : line = data[ i ] . split() if line[0]
== name :
phone = input("Enter new Phone :-")
data[ i ] = name + " " + phone
Try = 1
2022-23 242
if Try != 1 :
print("Try again !!!!! ")
for i in range(len(data)) :
line = data[ i ] . split()
for j in line :
f.write( j + "\t")
f.write("\n")
f.close()
print("Thankyou")
Section E [8 Marks]
[4x2]
34 1)CID for Company and CUSTID for CUtomer 4
35 (v) pickle 4
(vi) Wb
(vii) pickle.dump(e,f2)
(viii).rename()
2022-23 243
KENDRIYA VIDYALAYA SANGATHAN ERNAKULAM REGION
CLASS XII SAMPLE PAPER-2 2022-23 (SOLVED)
7 A List is declared as 1
List1=[2,3,5,7,9,11,13]
What will be the value of len(List1)
2022-23 244
8 Name the built-in mathematical function / method that is used to return 1
the smallest integer less than or equal to N.
10 Ms. Priya is an IT expert. She recently used her skills to access the Admin 1
password for the network server of Happiest Minds Technology Ltd. and
provided confidential data of the organization to its CEO, informing him
about the vulnerability of their network security. Out of the following
options which one most appropriately defines Ms. Priya?
a) Cracker b) Operator c) Hacker d) Network Admin
Reasoning (R):- During a function call, the argument list first contains
default argument(s) followed by positional argument(s).
Mark the correct choice as
(a) Both A and R are true and R is the correct explanation for A
(b) Both A and R are true and R is not the correct explanation for A
(c) A is True but R is False
(d) A is false but R is True
2022-23 245
18 Assertion (A):- If the arguments in function call statement match the 1
number and order of arguments as defined in the function definition,
such arguments are called positional arguments.
SECTION-B
19 Evaluate the following expressions: 2
a) 16 // 3 + 3 ** 3 + 15 / 4 - 9
b) x>y or y<z and not x!=z If x, y, z=25, 16, 9
2022-23 246
23 Rewrite the following code in Python after removing all syntax error(s). 2
Underline each correction done in the code.
24 What are the incorrect output(s) from the given options when the following code is 2
executed? Also specify the minimum and maximum values that can be assigned to
the variable VALUE.
import random
VALUE = random.randint (0,3)
SUBJECT=[“PHY”,”CHEM”,”MATHS”,”COMP”];
for I in SUBJECT: for J in range(1, VALUE):
print(I, end=””) print()
Options:
ii) PHY
i) PHYPHY
PHYCHEM
CHEMCHEM
PHYCHEMMATHS
MATHSMATHS
COMPCOMP
iii) PHY
iv) PHY
CHEMCHEM
CHEM
COMPCOMPCOMP
MATHS
COMP
2022-23 247
Section- C
26 Write a function Interchange (num) in Python, which accepts a list num of 3
integers, and interchange the adjacent elements of the list and print the
modified list as shown below: (Number of elements in the list is assumed as
even)
Original List:
num = [5,7,9,11,13,15]
After Rearrangement num
= [7,5,11,9,15,13]
27 Write a function in Python that displays the words, starting with uppercase 3
letter in a file ‘legend.txt’.
Example: If the “legend.txt” contents are as follows:
Diego Maradona, Argentinian soccer legend and celebrated Hand of God
scorer dies at 60.
The output of the function should be:
Diego
Maradona,
Argentinian
Hand
God
OR
Write a function countdigits() in Python, which should read each character
of a text file “marks.txt”, count the number of digits and display the file
content and the number of digits.
Example: If the “marks.txt” contents are as follows:
Harikaran:40,Atheeswaran:35,Dahrshini:30,Jahnavi:48
2022-23 248
28 Write the outputs of the SQL queries (i) to (iii) based on the relations Car 3
and Customer given below:
Car
Ccode Cname Make Colour Capacity Charges
Customer
Custcode Custname Ccode
def Shuffle(str1):
2022-23 249
str2="" for i in
2022-23 250
range(0,len(str1)-1):
2022-23 251
if(str1[i].islower()):
2022-23 252
str2=str2+str1[i].upper()
2022-23 253
elif str1[i].isupper():
2022-23 254
str2=str2+str1[i].lower()
2022-23 255
elif str1[i].isdigit():
2022-23 256
str2=str2+'d'
2022-23 257
else:
2022-23 258
str2=str2+(str1[1-i])
2022-23 259
print(str2)
2022-23 260
2022-23 261
Shuffle('Pre-Board Exam@2023')
2022-23 262
Section-D
ADMIN to ENGINEERING 55 m
ADMIN to BUSINESS 90 m
ADMIN to MEDIA 50 m
ENGINEERING to BUSINESS 55 m
ENGINEERING to MEDIA 50 m
BUSINESS to MEDIA 45 m
DELHI Head Office to 2175 km
CHENNAI Campus
2022-23 263
Number of Computers installed at various buildings are as follows :
ADMIN 110
ENGINEERING 75
BUSINESS 40
MEDIA 12
DELHI Head Office 20
(i) Suggest the most appropriate location of the server inside the CHENNAI
campus (out of the 4 buildings), to get the best connectivity for maximum no.
of computers. Justify your answer.
(ii) Suggest the topology and draw the cable layout to efficiently connect
various buildings within the CHENNAI campus.
(iii) Which hardware device will you suggest to be procured by the company
to minimize the transmission loss?
(iv) Which will be the most suitable wireless communication medium to
connect Chennai campus with its Delhi head office?
(v) Which of the following will you suggest to establish the online face-
toface
communication between the people in the Admin Office of CHENNAI
Campus and DELHI Head Office?
(a) Cable TV
(b) Email
(c) Video Conferencing
(d) Text Chat
32 Write the SQL commands for the following questions (i) to (v) based on the 5
relations Car and Customer given below:
Car
2022-23 264
208 Innova Toyota Silver 8 3000
Customer
Custcode Custname Ccode
OR
.
SECTION E
2022-23 265
34 A Book store Current Books is planning to store their book details in a 4
database using SQL. As a database administrator, Poorvekka has decided
that:
(a) Name of the database - CB
BookNo - Numeric
BookName – Character of size 25
Price – Numeric
Quantity – Numeric
Table : Collections
(d) Identify the attribute best suitable to be declared as a primary key, (e)
Write the degree and cardinality of the table Collections.
(f) Write SQL command to increment the quantity by 20 wherever
quantity is below 50.
(d) Poorvekka wants to remove the entire data from table
Collections. Which command will she use from the following:
a. DELETE FROM Collections;
b. DELETE Collections;
c. DROP DATABASE CB;
d. DELETE * FROM Collections;
2022-23 266
35 Atul Prakash of Class 12 is writing a program to create a CSV file 4
“students.csv” which will contain student name and admission number for
some entries. He has written the following code. As a programmer, help
him to successfully execute the given task.
import #
Line 1
students.csv','r') as fobj:
AddStudents(“Raghava”, “2541”)
AddStudents (“Pooja”,”3411”)
AddStudents(“Krutika”,”2218”)
Retrievestudents () #Line 5
2022-23 267
KENDRIYA VIDYALAYA SANGATHAN: ERNAKULAM
REGION CLASS XII SAMPLE PAPER -2 2022-
23(SOLUTION)
MARKING SCHEME
Section - A
1 a) sub%marks 1
2 [“I”, “O”, “U”] 1
3 Module “csv” 1
4 c) by 1
5 b) K[3] =405 (as tuple is immutable) 1
6 {“Sub1” : “Physics” , “Sub2” : “Chemistry” , “Sub3”: “Math”} 1
7 7
1
8 floor() from math module 1
9 FTP (File Transfer Protocol) 1
10 c) Hacker 1
11 ORDER BY 1
12 To check for values which are not defined as NULL 1
13 AVG 1
14 a) UPDATE 1
15 Microwave / Radio wave 1
16 d. List 1
17 Ans: (c) A is True but R is False 1
18 Ans: (a) Both A and R are true and R is the correct explanation for A 1
SECTION B
19 a) 26.75 1
b) True
1
2022-23 268
20 Wi-Fi is the name of a wireless networking technology that uses radio waves to 2
provide wireless high-speed Internet and network connections.
Domain Name: A domain name is a unique name that identifies a particular website
and represents the name of the server where the web pages reside.
URL: The Uniform Resource Locator is a means to locate resources such as web
pages on the Internet. URL is also a method to address the web pages on the
Internet.
Example: http://cbseacademic.nic.in/web_material/CurriculumMain22/CS2022-
23.pdf is an URL where cbseacademic.nic.in is the
domain name.
21 a. GPRS – General Packet Radio Services 2
b. GSM – Global System for Mobile communications
c. WLL – Wireless Local Loop/Wireless in Local Loop
d. PPP – Point to Point Protocol
2022-23 269
22 Positional Parameter - When function calls are made, there is a one to one 2
correspondence between the argument and the parameter based on the
order/position in which the argument appears in the function. Ex:
def fun1(x,y,z):
m= x/y-z
print(m) a,b,c
= 5,2,3
fun1(a,b,c)
fun1(4,b,b)
#fun1(a,b) #Error as the third argument is missing
print(m)
2022-23 270
23 CORRECTED CODE: 2
In the above table STUD, AdmNo and RollNo are candidate keys, If RollNo
is selected as Primary Key then AdmNo will be the alternate key.
SECTION C
26 def Interchange(num): 3
for i in range(0,n,2):
num[i], num[i+1] = num[i+1], num[i]
print(num)
num=[5,7,9,11,13,15]
n=len(num) if
n%2==0:
Interchange(num)
Note : Any correct code giving the same result is also accepted
27 def Disp_upper_first(): 3
word=""
f=open("legend.txt","r")
line=f.read()
word=line.split()
for i in word:
if i[0].isupper():
2022-23 271
print(i)
f.close()
Disp_upper_first()
Note : Any correct code giving the same result is also acce pted
OR
def countdigits():
c=0
f=open("marks.txt","r")
line=f.read()
print(line) for
i in line:
if i.isdigit():
c+=1
print("Total number of digits in the file:",c)
f.close() countdigits()
Note : Any correct code giving the same result is also acce
pted
i.
28 Make Count(*) 3
Toyota 1
Suzuki 1
ii.
Cname Make
Innova Toyota
Duster Renault
Ertiga Suzuki
Harrier Tata
Altroz Tata
Triber Renault
iii.
Custname Cname
Gopinath Triber
Ashok Altroz
Harshini Harrier
Vishnu Duster
2022-23 272
29 def Push(nums):
li =[] for i in 3
range(0,len(nums)):
if nums[i]%2!=0:
li.append(nums[i])
if len(li) == 0:
2022-23 273
print('Stack is empty!!')
else:
print(li)
Push([10,15,20,25,30,35])
Note : Any correct code giving the same result is also accepted
OR
def popStack(names) : L =
len(names) if L==0:
print("Stack Underflow")
else:
val = names[L-1]
names.pop(L-1)
return val
res=popStack(['Harikaran','Balaji','Nikhil','Cathrine'])
print('Value returned:',res)
Note : Any correct code giving the same result is also accepted
30 OUTPUT : 3
pRE2bOARDxeXAMaddd
SECTION -D
31 (i) Most suitable place to install the server is ADMIN, as this building has 5
maximum number of computers.
(ii)Topology: STAR
Cable layout:
(iii)Repeater
(iv) Satellite Link
(v) (c) Video Conferencing
32 (i) Select Cname, Charges from Car where Colour=’silver’; 5
(ii) Select distinct Ccode from customer;
(iii) Select min(Charges), max(Charges) from Car;
(iv) Update Car set Charges=Charges - Charges*0.1 from Car R,
Customer C where R.Ccode=C.Ccode;
(v) Select Cname, Make from Car where Charges between 2000 and
3000;
2022-23 274
33 import pickle def 5
2022-23 275
AddVahan():
f1= open(“vehicle.dat”, “ab”)
RegNo = input(“Enter the vehicle registration number: “)
SECTION E
34 (a) BookNo 4
(b) Degree=4 Cardinality =7
(c) UPDATE collections SET quantity = quantity + 20 WHERE quantity < 50;
(d) DELETE FROM Collections;
2022-23 276
35 (a) Line 1 :import csv 4
(b) Line 2 :f=open('students.csv','a')
(c) Line 3 :readerObj=csv.reader(fobj)
(d) Line 4: Not mandatory, as we have opened the file using “with” operator, it
closes automatically.
Write the module that need to be imported to execute the function dump():
5 1
a)random b)csv c)mysql.connector d)pickle
Given the list L=[-1,4,6,-5] ,write the output of print(L[-1:-3])
6
a)[4,6,-5] b)[] c)[6,-5] d)error
2022-23 277
What will be the output of following:
x,y=10,5
7 x,y=y,x 1
print(x,y)
a) 10,5 b)5 10 c) 5,10 d)10 5
A function can return ------number of values
8 1
a)0 b)None c)Many d)2
The default file open mode is-----------mode
9 1
a)r b)r+ c)w d)a
Which of the following is/are mutable data type?
10 1
a)int b)string c)list d)tuple
Which operator in SQL is used to compare a value to a specified list of
11 values 1
a)BETWEEN b)= c)IN d)ALL
2022-23 278
Which of the following is not an aggregate function?
12 1
a)MIN() b)SUM() c)UPPER() d)COUNT()
Which keyword is used to eliminate duplicate values in an SQL select query?
13 1
a)unique b)distinct c)key d)all
Which of the following network device is a broadcasting device a)switch
14 1
b)hub c)gateway d)router
What is the degree of the following relation?
slno dateofadmn class
15 1 2022-06-05 V 1
2 2022-08-23 VIII
a)3 b)5 c)2 d)1
If all devices are connected to a central hub, then topology is called
16 1
a)tree topology b)bus topology c)star topology d)mesh topology
Q17 and 18 are ASSERTION AND REASONING based questions. Mark the
correct choice as
(a) Both A and R are true and R is the correct explanation for A
(b) Both A and R are true and R is not the correct explanation for A
(c) A is True but R is False
(d) A is false but R is True
2022-23 279
Write output
a)a=5
21 2
a+=27
print(a)
b) a=5
print(a+4<10)
22 What is scope? What is the scope resolving rule in python? 2
(a)Expand the following terms:
23 i)MAN ii)HTML 2
b)What is URL ?
Write output for the following code.
def encrypt(str):
str1=""
for i in str:
if i.isupper():
str1+=i.lower()
else:
str1+="*"
return str1
s=encrypt("HeLLo")
print(s)
or
24 2
Go through the python code shown below and find out the possible output(s)
from the suggested options i to iv. Also specify maximum and minimum
value that can be assigned to the variable j.
import random i=random.random()
j=random.randint(0,6)
print(int(i),”:”,j+int(i))
(i)0:0 (ii)0:6 (iii)1:7 (iv)1:6
2022-23 280
Consider the following tables CABHUB and CUSTOMER
CABHUB
CUSTOMER
CCode CName VCode
Hemant
1 Sahu 101
2 Raj Lal 108
Feroza
3 Shah 105
4 Ketan Dhal 104
a)What will be the output of following statement?
select VehicleName,Capacity from Cabhub c, Customer s where
c.Vcode=s.Vcode and c.capacity<4;
b)Write the output of the queries (i) to (iv) based on the table CABHUB
i) select count(VCode),Color from CABHUB group by Color;
ii) select distinct capacity from Cabhub;
iii) select min(Charges),max(charges) from CABHUB;
iv) select VehicleName,Make from CABHUB order by VehicleName
Write a function in python to count number of words ending with ‘n’ present
in a text file “ABC.txt”
If ABC.txt contains “A story of a rich man And his son”, the output of the
function should be
27 3
Count of words ending with ‘n’ is 2
Or
A text file contains alphanumeric text (say an.txt).Write a program that reads
this text file and prints only the numbers or digits from the file.
2022-23 281
a)Write the output of the SQL commands for (i) to (iv) on the basis of tables
BOOKS and ISSUES.
Table: BOOKS
Book_ID BookName AuthorName Publisher Price Qty
L02 13
L04 5
2022-23 282
L05 21
(
i) select sum(price) as TOTAL_PRICE from BOOKS; ii) select * from BOOKS
where publisher=”DEF”;
(
(iii)select BookName,AuthorName from BOOKS,ISSUES where
BOOKS.Book_ID=ISSUES.Book_ID and Qty_Issued>10;
(iv) select BOOKS.Book_ID,BookName,Publisher,Price,Qty,Qty_Iss
BOOKS,ISSUES where BOOKS.Book_ID=ISSUES.Book_ID;
b)Write SQL command to display structure of the table BOOKS. ued
from
Write a function SUMNOS() that accept a list L of numbers and fin all even d sum of
numbers and sum of all odd numbers. If L=[1,2,3,4], Output :
sum of even nos:6 Sum of odd
29 3
numbers:4
SECTION D
“Learn Together” is an educational NGO. It is setting up its new c Jabalpur for ampus
its web based activities. The campus has 4 compounds in the diagram below: at as
shown
31 5
2022-23 283
X Building to W Building 110
m
W Building to Y Building 135
m
X Building to Z Building 115
m
Z Building to W Building 35 m
Y Building 15
Z Building 5
a) W Bulding 20
2022-23 284
a)Write the output of the code given below def
f():
global s s +=
' Is Great'
print(s)
s = "Python is funny" s
= "Python"
f() print(s)
32 b)The code given below inserts the following record in the table St 5
udent:
RollNo – integer
Name – string
Marks – integer
Address –String
Phone-integer
Note the following to establish connectivity between Python and
MYSQL:
2022-23 285
2022-23 286
The details (RollNo, Name, Marks,Address,Phoneno) are to be
Statement 3- to read the complete result of the query (records who are from
“Delhi”) into the object named r, from the table student in the database
What are the characteristics of csv file ? Write a Program in Python that defines
and calls the following user defined functions:
OR
33 5
When do we use csv file?. Write a Program in Python that defines and calls the
following user defined functions:
SECTION E
Advaith,a manager has stored the details of departments in a table called
34 1+1+2
DEPARTMENT.
2022-23 287
DEPTNO DNAME LOC
----- -------------- --------
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON
2022-23 288
He wants to add one more record to this table and has written the following
code and unable to insert that record.
INSERT INTO DEPARTMENT VALUES(43,”HRD”);
i. Help him to correct the code for adding the record
ii. How can he restrict Null values in the table
iii. Write a commands to :
a. show the names of department starting with “R”.
b.update LOC as “New York” for DEPTNO 30.
OR(Option for part iii only)
iii.Write a commands to :
a.insert the following record into the table:DEPTNO-47,DNAME-
Accounting,LOC-Paris
b.delete the records of location(LOC) “Boston”
Manju has created a program using two functions for storing his friends’
exam roll numbers and marks in a binary file “STUDENT.DAT” and to
display total mark.But he forgot some lines of code. As a programmer, help
him to complete the task and to run the program successfully.
______________________ #Line
1 def create_File():
f=open(“STUDENT.DAT”,”ab”)
rollno=int(input(“Enter roll number”))
m1=int(input(“Enter Mark1”))
m2=int(input(“Enter Mark2”))
m3=int(input(“Enter Mark3”))
d={“rollno”:rollno,”M1”:m1,”M2”:m2,”M3”:m3}
pickle._______(d,f) #Line2
f.close()
35 s={} def read_File(): with 4
open(“STUDENT.DAT”,”rb”) as f:
try:
while True: s=__________________
#Line3 t=s[“M1”]+s[“M2”]+s[“M3”]
print(“RollNo:”,s[rollno],”Total Mark:”,t)
except:
______________________ #Line 4
2022-23 289
KENDRIYA VIDYALAYA SANGATHAN, ERNAKULAM REGION
Sample Paper-3(SOLUTION)
SUB: COMPUTER SCIENCE
CLASS XII
Q.NO PART A Marks
Section -A
1 d)= 1
2 a)bool 1
3 d)class 1
4 d)both b and c 1
5 d)pickle 1
6 b)[] 1
7 b)5 10 1
8 c)Many 1
9 a)read 1
10 c)list 1
11 c)IN 1
12 c)UPPER() 1
13 DISTINCT 1
14 b)hub 1
15 a)3 1
16 c)star topology 1
17 b 1
18 c 1
Section-B
19 x=10 for I in 2
range(a): if
I%3==0:
print(I) else:
pass
2022-23 290
20 Disadvantages of bus topology 2
1.Identification of problems becomes difficult if the whole network goes
down
2. Need terminators are required at both ends of the main cable
Disadvantages of star topology
1.If hub goes down everything goes down, none of the devices can work
without hub.
2.More expensive than linear bus topology due to the value of the connecting
devices (network switches)
or
What are routers?.
A router is a network device that can receive the data , analyse it and transmit
it to other networks . It is used to connect a Local Area Network to
the internet. Using a routing table, it ensures that data packets are travelling
through the best suitable paths to their destinations.
In simple words, a gateway is a device that we use for communicating among
various networks possessing different protocol sets. It is responsible for
converting a given protocol to another one.Gateway connects dissimilar
network
21 a) 32 1+1
b) True
2022-23 291
25 1. Order By : 2
Order by keyword sort the result-set either in ascending or in descending
order. This clause sorts the result-set in ascending order by default. In order to
sort the result-set in descending order DESC keyword is used.
Order By Syntax –
SELECT column_1, column_2, column_3...........
FROM Table_Name
ORDER BY column_1, column_2, column_3....... ASC|DESC;
2. Group By :
Group by statement is used to group the rows that have the same value. It is
often used with aggregate functions for example:AVG(), MAX(), COUNT(),
MIN() etc. One thing to remember about the group by clause is that the tuples
are grouped based on the similarity between the attribute values of tuples.
Group By Syntax –
SELECT function_Name(column_1), column_2
FROM Table_Name
WHERE condition
GROUP BY column_1, column_2
ORDER BY column_1, column_2;
OR
2022-23 292
26 a) 1+2
Vehicle Capacity
A-Star 3
Indigo 3
b)
I)
count(vcode) color
2 WHITE
1 BLUE
1 RED
1 SILVER
II)
distinct capacity
7
4
3
III)
min(charge) max(charge)
12 35
iv)
Vehicle Name Make
A-Star Suzuki
C Class Mercedes
Indigo Tata
Innova Toyota
SX4 Suzuki
27 def countA(): 3
file=open("ABC.txt",'r')
r=file.read()
s=r.split()
count=0 for i
in s: if i[-
1]=='n':
count+=1
file.close()
print("Count of words ending with “n” is", count)
2022-23 293
OR def
printnum():
file=open("an.txt",'r')
r=file.read() for i in
r: if i.isdigt():
print(i)
file.close()
28 a)i) 2+1
ii) TOTAL_PRICE
435
Book_ID BookName AuthorName Publisher Price Qty
L02 Science Agarkar DEF 90 15
L05 Telugu Nannayya DEF 60 25
L06 English Wordsworth DEF 55 12
iii)
BookName AuthorName
Science Agarkar
Telugu Nannayya
iv)
b)DESC BOOKS
29 def SUMNOS(L): 3
SE=0
SO=0
for i in L:
if i%2==0:
SE+=i else:
SO+=i
print(“Sum of Even no:s=”,SE)
print(“Sum of Odd no:s=”,SO)
2022-23 294
30 def POP(A): 3
if len(A)==0:
print(“UNDERFLOW”)
else:
val=A.pop()
return val
OR
Write a function PUSH(STACK,Name) to add new name to the STACK data
structure . Also display all the names having atleast 4 characters from the
stack.
def PUSH(STACK,Name):
STACK.append(Name)
#code for displaying
if len(STACK)==0:
print(“Empty stack”)
else:
top=len(STACK)-1
for i in range(top,-1,-1):
if len(STACK[i])>=4:
print(STACK[i] )
2022-23 295
31 a) The most suitable place / block to house the server of this organisation would 5(1 each)
be X Building, as this block contains the maximum number of computers, thus
decreasing the cabling cost for most of the computers as well as increasing the
efficiency of the maximum computers in the network.
b)
Answer:
Layout 1
Layout 2:
c)
Answer:
The type of network that shall be formed to link the sale counters situated in
various parts of the same city would be a MAN, because MAN (Metropolitan
Area Networks) are the networks that link computer facilities within a city. d)
Answer:
(i) In layout1 between X&Z,X&W.In layout2 between Y and Z.Because
distance is more than 90m.
(ii) In both the layouts, a hub/switch each would be needed in all the
buildings, to interconnect the group of cables from the different computers
in each block
e)switch
2022-23 296
32 a)Python Is Great 2+3
Python is funny
b)statement 1-connect statement2-
execute statement3-commit
OR
a)John Mark studies in Fifth Standard George Jose
studies in Seventh Standard b)Statement1-mycon.cursor()
statement2-select * from student where address=”Delhi”
statement3-fetchall()
def DISPLAY_PROD():
found=False
fin=open("record.csv","r",newline="\n")
data=csv.reader(fin) for i in data:
if int(i[1])>100:
found=True print(i[0],i[1])
if found==False:
2022-23 297
2022-23 298
print(“Displaying product having price more than 100\n”)
SAMPLE PAPER (UNSOLVED) – COMPUTER SCIENCE (083)
MAX MARKS: 70 TOTAL TIME : 3 hrs
2022-23 299
Part A
Section 1 [18 marks] (1x18)
2022-23 300
1 Which of the following is an invalid identifier? 1
a. CS_class_XII
b. csclass12
c. _csclass12
d. 12CS
2 Which of the is a correct statement? a. 1
xyz = 10 100 1000
b. x y z = 10 100 1000
c. x, y, z = 10, 100, 1000
d. x y z= 10, 100, 1000
3 Aman wants to write a function in python. But he doesn’t know how to 1
start with it! Select the keyword used to start a function out of the
following:
a) function
b) start
c) def
d) fun
4 Which of the following is not a part of the python function? a) 1
function header
b) return statement
c) parameter list
d) function keyword
5 Which of the following is the correct statement for checking the presence 1
of a key in the dictionary?
a) <key> in <dictionary_object>
a) <key> not in <dictionary_object>
c) <key> found in <dictionary_object>
d) a) <key> exists in <dictionary_object>
6 What will be the output of : 1
t=(4,5,6)
del t[1]
print(t)
a) (4,6) b) ([4,6])
c) [4,6] d) Error
7 Which of the following statement is correct? a) 1
Tuples are mutable.
b) Tuples are immutable.
c) Tuples and lists are same.
d) All of these are correct.
8 What will be the output of following code: 1
txt="Term 1"
2022-23 301
print(txt*2)
a) Term 1 Term 2
2022-23 302
b) Term 1Term 1
c) Term 1 2
2022-23 303
d) TTeerrmm 11
2022-23 304
9 The append() method adds an element at a. 1
first
b. last
c. specified index
d. at any location
10 Which point can be considered as difference between string and list? a. 1
Length
b. Indexing and Slicing
c. Mutability
d. Accessing individual elements
11 If n=”Hello” and user wants to assign n[0]=’F’ what will be the result? 1
a. It will replace the first character
b.It’s not allowed in Python to assign a value to an individual character
using index
c.It will replace the entire word Hello into F
d.It will remove H and keep rest of the characters
12 In list slicing, the start and stop can be given beyond limits. If it is then a. 1
raise exception IndexError
b. raise exception ValueError
c. return elements falling between specified start and stop values
d. return the entire list
13 Ms. Hetvee is working on a string program. She wants to display last four 1
characters of a string object named s. Which of the following is statement
is true? a. s[4:]
b. s[:4]
c. s[-4:]
d. s[:-4]
c. 8
d. 6
2022-23 305
17 Assertion(A) The personal area Network (PAN) is established within a very 1
small area(20 to 30 sq ft) to share the information.
2022-23 306
Reason (R ): The campus are network is used to interconnect the computers
located within a campus such as university campus, corporate campus,
2022-23 307
hospital campus etc.
2022-23 308
Based on the above discussion, choose an appropriate state form the options
given below:
2022-23 309
2022-23 310
(a) Both assertion and reason are true and the reason is the correct
explanation of assertion.
2022-23 311
(b) Both assertion and reason are true but the reason is not the correct
explanation of assertion.
2022-23 312
(c) Assertion is true but reason is false.
(d) Assertion is false but reason is true.
2022-23 313
(e) Assertion and reason both are wrong.
2022-23 314
18 Assertion ( A) : In SQL, the aggregate function Avg() calculates the average 1
value on a set of values and produce a single result.
Reason ( R) : The aggregate functions are used to perform some fundamental
arithmetic tasks such as Min(),Max(), Sum() etc
(a) Both assertion and reason are true and the reason is the correct
explanation of assertion.
(b) Both assertion and reason are true but the reason is not the correct
explanation of assertion.
(c) Assertion is true but reason is false.
(d) Assertion is false but reason is true.
(e) Assertion and reason both are wrong.
2022-23 315
(b) Which field will be considered as the foreign key if the tables Customers
and Loan are related in a database?
25 Rewrite the following code in Python after removing all syntax error(s). 2
Underline each correction done in the code.
2022-23 316
26 Coach Abhishek stores the races and participants in a dictionary. Write a 3
program, with separate user defined functions to perform the following
operations:
2022-23 317
27 a) Write the outputs of the SQL queries (i) to (iv) based on the relations 3
Teacher and Placement given below:
Table : Teacher
Or
2022-23 318
a) Addrecord() to create a binary file called school.dat containing
student information (in list datatype) - student number, name, marks(out of
100) of each student.
Or
b) Search() to display name and marks of the student by asking the
student number from the user.
30 Give the output of the following Queries from the given table: 3
29 You are a student in CBSE school. 1 Teacher has given a task to write a 3
python code to perform the following binary file operations with the help of
two user defined functions/modules:
2022-23 319
(i) Suggest the kind of network required (out of LAN, MAN, WAN) for each
of
the following units. (2)
(a) Production Unit and Media Unit
(b) Production Unit and Finance Unit
(ii) Which of the following devices will you suggest for connecting all
computers with each of their office units? (1)
(a) Switch/Hub (b) Modem (c) Telephone
(iii) Suggest a cable/wiring layout for connecting the company’s local office
units located in Chennai. Also, suggest an effective method/technology for
connecting the company’s office unit located in Delhi (2)
2022-23 320
32 A. Find an output of the following code def func(b): 5
global x (2+3)
print(‘Global x=’,
x) y = x + b x = 7
z=x–b
print(‘Local x =
‘,x) print(‘y = ‘,y)
print(‘z = ‘,z)
x=3
func(5)
B.) ABC Infotech Pvt. Ltd. needs to store, retrieve and delete the records of
its employees. Develop an interface that provides front-end interaction
through Python, and stores and updates records using MySQL.
2022-23 321
Give statements for 1,2 , 3or4
try:
cursor.______(sql) #statement2
Write a Program in Python that defines and calls the following user defined
functions:
(i) ADD() – To accept and add data of a student to a CSV file ‘Stud.csv’.
Each record consists of a list with field elements as studid,s name and
Smark to store student id, student name and student percent marks
respectively. (ii) Count() – To count the number of records present in the
CSV file where Smark is greater then 75% from stud.csv. OR
Give any one point of difference between a binary file and a csv file. Write
a Program in Python that defines and calls the following user defined
functions:
(i) add() – To accept and add data of a client to a CSV file ‘Client.csv’.
Each record consists of a list with field elements as Cid, Cname and CCity
(ii) search()- To display the records of the Clients whose city is KOCHI
Consider the
table ‘PERSONS’ given below
2022-23 322
(i) Display the SurNames, FirstNames and Cities of people residing in
Udhamwara city.
(ii) Display the Person Ids (PID), cities and Pincodes of persons in
descending order of Pincodes.
(iii) Display the First Names and cities of all the females getting Basic
salaries above 40000.
(iv) Display First Names and Basic Salaries of all the persons whose
firstnames starts with “G”
35 Consider an employee data, Empcode, empname and salary. Sneha Wrote 4
python function to create binary file emp.dat and store their records. And
function to read and display all the records Help her complete the code
import_______ #STATEMENT 1 def add_record(): f =
open(“emp.dat”,”ab”) empcode =int(input(“employee code:”)) empname
= int(input(“empName:”)) salary = int(input(“salary:”)) d = [empcode,
empname, salary]
pickle.dump(____) #STATEMENT 2
f. close()
2022-23 323
ANSWER KEY – TERM 1 (Computer Science)
CBSE Term 1CBSE Term 1
B,D C D C C C D C B D
11 12 13 14 15 16 17 18 19 20
A C A B B C B A C D
21 22 23 24 25 26 27 28 29 30
A C B D A C B D A D
31 32 33 34 35 36 37 38 39 40
A D C C D C A D C B
41 42 43 44 45 46 47 48 49 50
C C C A C D C B D B
51 52 53 54 55
A A A B C
CBSE 2022 TERM-2 QP WITH MARKING SCHEME
Maximum Marks: 35 Time: 2 hours
General Instructions :
i. This question paper is divided into 3 Sections – A, B and C
ii. Section A, consists of 7 questions (1-7). Each question carries 2 marks. iii.
Section B, consists of 3 questions (8-10). Each question carries 3 marks. iv.
Section C, consists of 3 questions (11-13). Each question carries 4 marks.
v. Internal choices have been given for question numbers 7, 8 and 12.
Section -A
(Each question carries 2 marks)
Also write an example using Python statements for removing the last
element of the list.
pop()
OR pop(-
1)
OR
pop
Example:
L=[10,20,30,40]
L.pop() OR L.pop(-1)
OR
OR
(1 mark for writing correct order)
(1 mark for correct Python statement to demonstrate the pop()
function
)
[Sub Code: 083 Series: %BAB% Paper Code: 91 Set - 4] [Page #3/15]
STUDENT SUPPORT MATERIAL COMPUTER SCIENCE(083) 292
(ii) Riya wants to transfer pictures from her mobile phone to her laptop. She 1
uses Bluetooth technology to connect two devices. Which type of network
(PAN/LAN/MAN/WAN) will be formed in this case?
Ans PAN/ Personal Area Network
(1 mark for correct type of network)
For example:
Table: Student
Name Class Marks
aaa XII 90
bbb X 99
(1 mark each for writing any correct explanation of Attribute and Domain)
Assume that the required library for establishing the connection between
Python and MYSQL is already imported in the given Python code. Also
assume that DB is the name of the database connection for table MEMBER
stored in the database CLUB.
MYCUR = DB.cursor()
MYCUR.execute("USE CLUB")
MYCUR.execute("SELECT * FROM MEMBER WHERE ACTIVITY='GYM'")
R=MYCUR.fetchone() for i in range(2):
R=MYCUR.fetchone()
print(R[0], R[1], sep ="#")
Ans M1002#Pratik
M1004#Rakesh
(Note: Deduct ½ mark for missing # or writing the output in a single line OR
writing any additional line along with the correct output)
5. Write the output of the SQL queries (a) to (d) based on the table 2
VACCINATION_DATA given below:
TABLE: VACCINATION_DATA
VID Name Age Dose1 Dose2 City
101 Jenny 27 2021-12-25 2022-01-31 Delhi
102 Harjot 55 2021-07-14 2021-10-14 Mumbai
103 Srikanth 43 2021-04-18 2021-07–20 Delhi
104 Gazala 75 2021-07-31 NULL Kolkata
105 Shiksha 32 2022-01-01 NULL Mumbai
Ans
Name Age
Harjot 55
Srikanth 43
[Sub Code: 083 Series: %BAB% Paper Code: 91 Set - 4] [Page #5/15]
STUDENTS SUPPORT MATERIAL COMPUTER SCIENCE(083) 294
Ans
City COUNT(*)
Delhi 2
Mumbai 2
Kolkata 1
Ans
City
Delhi
Mumbai
Kolkata
Ans
MAX(Dose1) MIN(Dose2)
2022-01-01 2021-07-20
[Sub Code: 083 Series: %BAB% Paper Code: 91 Set - 4] [Page #6/15]
STUDENTS SUPPORT MATERIAL COMPUTER SCIENCE(083) 295
Ans
DNAME PNAME
AMITABH NOOR
ANIKET ANNIE
AMITABH HARMEET
Note:
Deduct ½ mark for any additional row along with the correct rows
Ignore column heading of the output and order of the output rows
Ans
PNAME ADMDATE FEES
NOOR 2021-12-25 1500
HARMEET 2019-12-20 1500
(1 mark for writing correct output)
Note:
Deduct ½ mark for any additional row along with the correct rows
Ignore column heading of the output and order of the output rows
Example:
Table: BANK
ACNO NAME PHONE
10001 RISHABH 9810876677
10031 ARNAV 9810876123
10064 ARNAV 9810875577
10076 GURSHARAN 9810871144
Candidate Keys: ACNO, PHONE
Primary Key: ACNO
OR
(1 mark for writing only the correct explanation/example of candidate key)
(1 mark for writing only the correct explanation/example of primary key)
[Sub Code: 083 Series: %BAB% Paper Code: 91 Set - 4] [Page #7/15]
STUDENT SUPPORT MATERIAL COMPUTER SCIENCE(083) 296
OR
(a) Identify and write the name of the most appropriate column from the given
table PLAYER that can be used as a Primary key.
Ans PNO
(Note: Don’t deduct marks, if any additional column name is also mentioned along
with PNO)
(b) Define the term Degree in relational data model. What is the Degree of the
given table PLAYER ?
Section -B
(Each question carries 3 marks)
8. ● Write the definition of a user defined function PushNV(N) which 3
accepts a list of strings in the parameter N and pushes all strings which
have no vowels present in it, into a list named NoVowel.
● Write a program in Python to input 5 Words and push them one by one
into a list named All.
The program should then use the function PushNV() to create a stack
of words in the list NoVowel so that it stores only those words which
do not have any vowel present in it, from the list All.
Thereafter, pop each word from the list NoVowel and display the
popped word. When the stack is empty, display the message
"EmptyStack".
For example:
If the Words accepted and pushed into the list All are
['DRY', 'LIKE', 'RHYTHM', 'WORK', 'GYM']
[Sub Code: 083 Series: %BAB% Paper Code: 91 Set - 4] [Page #8/15]
STUDENT SUPPORT MATERIAL COMPUTER SCIENCE(083) 297
for i in range(5) :
All.append(input('Enter a Word: '))
PushNV(All)
while NoVowel :
print(NoVowel.pop(), end=' ')
else : print('EmptyStack')
OR
OR
[Sub Code: 083 Series: %BAB% Paper Code: 91 Set - 4] [Page #9/15]
STUDENT SUPPORT MATERIAL COMPUTER SCIENCE(083) 298
For example:
If the integers input into the list NUM are :
[10,6,14,18,30]
[10,6,18,30]
30 18 6 10 StackEmpty
Ans def Push3_5(N):
for i in N :
if i%3==0 or i%5==0 :
Only3_5.append(i)
NUM=[]
Only3_5=[]
for i in range(5):
NUM.append(int(input('Enter an Integer: ')))
Push3_5(NUM)
while Only3_5 :
print(Only3_5.pop(), end=' ')
else : print('StackEmpty')
OR
Any other correct equivalent code
(b) To display the names of all the tables stored in the opened database.
(c) To display the structure of the table "BOOKS" existing in the already
opened database "LIBRARY".
Section - C
(Each question carries 4 marks)
11. Write SQL queries for (a) to (d) based on the tables PASSENGER and 4
FLIGHT given below:
Table : PASSENGER
PNO NAME GENDER FNO
1001 Suresh MALE F101
1002 Anita FEMALE F104
1003 Harjas MALE F102
(a) Write a query to change the fare to 6000 of the flight whose FNO is F104.
(b) Write a query to display the total number of MALE and FEMALE
PASSENGERS.
(c) Write a query to display the NAME, corresponding FARE and F_DATE of
all PASSENGERS who have a flight to START from DELHI.
(d) Write a query to delete the records of flights which end at Mumbai.
[Sub Code: 083 Series: %BAB% Paper Code: 91 Set - 4] [Page #12/15]
STUDENT SUPPORT MATERIAL COMPUTER SCIENCE(083) 301
12. (i) Differentiate between Bus Topology and Tree Topology. Also, write one 2
advantage of each of them.
Ans
Bus Topology Tree Topology
Advantage: Advantage:
It is very cost-effective as It is easier to set-up multi-level plans
compared to other network for the network.
topologies.
OR
Any other correct difference/definition/advantages
(1 Mark for mentioning any one correct difference between the topologies)
(½ mark each for writing any one advantage of Bus and Tree Topologies)
OR
(½ mark each for conveying correct understanding of Bus and Tree Topology
using/not using diagram)
(½ mark each for writing any one advantage of Bus and Tree Topologies)
OR
OR
Any other valid difference/characteristic
[Sub Code: 083 Series: %BAB% Paper Code: 91 Set - 4] [Page #13/15]
(Full 2 Marks for writing any one correct difference between HTML and XML)
OR
(ii) What is a web browser ? Write the names of any two commonly used web 2
browsers.
[Sub Code: 083 Series: %BAB% Paper Code: 91 Set - 4] [Page #14/15]
(a) It is observed that there is a huge data loss during the process of data
transfer from one block to another. Suggest the most appropriate
networking device out of the following, which needs to be placed along
the path of the wire connecting one block office with another to refresh
the signal and forward it ahead.
(i) MODEM (ii) ETHERNET CARD
(iii) REPEATER (iv) HUB
Ans (iii) REPEATER
(1 Mark for correct identification of the Networking Device)
(b) Which hardware networking device out of the following, will you suggest
to connect all the computers within each block ?
(i) SWITCH (ii) MODEM
(iii) REPEATER (iv) ROUTER
Ans (i) SWITCH
(1 Mark for correct identification of the Networking Device)
(d) Draw the cable layout (block to block) to efficiently connect the three
offices of the Mumbai branch.
Ans