0% found this document useful (0 votes)
102 views37 pages

Computer Applications PDF

Uploaded by

asima rath
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
0% found this document useful (0 votes)
102 views37 pages

Computer Applications PDF

Uploaded by

asima rath
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 37

ICSE

Analysis of Pupil
Performance
COMPUTER
APPLICATIONS

Research Development and Consultancy Division


Council for the Indian School Certificate Examinations
New Delhi
Year 2019
__________________________________________________________________________________

Published by:
Research Development and Consultancy Division (RDCD)
Council for the Indian School Certificate Examinations
Pragati House, 3rd Floor
47-48, Nehru Place
New Delhi-110019

Tel: (011) 26413820/26411706


E-mail: council@cisce.org

© Copyright, Council for the Indian School Certificate Examinations


All rights reserved. The copyright to this publication and any part thereof solely vests in the Council for
the Indian School Certificate Examinations. This publication and no part thereof may be reproduced,
transmitted, distributed or stored in any manner whatsoever, without the prior written approval of the
Council for the Indian School Certificate Examinations.
FOREWORD

This document of the Analysis of Pupils’ Performance at the ISC Year 12 and ICSE Year 10
Examination is one of its kind. It has grown and evolved over the years to provide feedback to
schools in terms of the strengths and weaknesses of the candidates in handling the examinations.

We commend the work of Mrs. Shilpi Gupta (Deputy Head) of the Research Development and
Consultancy Division (RDCD) of the Council and her team, who have painstakingly prepared this
analysis. We are grateful to the examiners who have contributed through their comments on the
performance of the candidates under examination as well as for their suggestions to teachers and
students for the effective transaction of the syllabus.

We hope the schools will find this document useful. We invite comments from schools on its
utility and quality.

Gerry Arathoon
October 2019 Chief Executive & Secretary

i
PREFACE

The Council has been involved in the preparation of the ICSE and ISC Analysis of Pupil Performance
documents since the year 1994. Over these years, these documents have facilitated the teaching-learning
process by providing subject/ paper wise feedback to teachers regarding performance of students at the
ICSE and ISC Examinations. With the aim of ensuring wider accessibility to all stakeholders, from the year
2014, the ICSE and the ISC documents have been made available on the Council’s website www.cisce.org.

The documents include a detailed qualitative analysis of the performance of students in different subjects
which comprises of examiners’ comments on common errors made by candidates, topics found difficult or
confusing, marking scheme for each question and suggestions for teachers/ candidates.

In addition to a detailed qualitative analysis, the Analysis of Pupil Performance documents for the Examination
Year 2019 also have a component of a detailed quantitative analysis. For each subject dealt with in the
document, both at the ICSE and the ISC levels, a detailed statistical analysis has been done, which has been
presented in a simple user-friendly manner.

It is hoped that this document will not only enable teachers to understand how their students have performed
with respect to other students who appeared for the ICSE/ISC Year 2019 Examinations, but also provide
information on how they have performed within the Region or State, their performance as compared to other
Regions or States, etc. It will also help develop a better understanding of the assessment/ evaluation process.
This will help teachers in guiding their students more effectively and comprehensively so that students prepare
for the ICSE/ ISC Examinations, with a better understanding of what is required from them.

The Analysis of Pupil Performance document for ICSE for the Examination Year 2019 covers the following
subjects: English (English Language, Literature in English), Hindi, History, Civics and Geography (History
and Civics, Geography), Mathematics, Science (Physics, Chemistry, Biology), Commercial Studies,
Economics, Computer Applications, Economic Applications, Commercial Applications.
Subjects covered in the ISC Analysis of Pupil Performance document for the Year 2019 include English
(English Language and Literature in English), Hindi, Elective English, Physics (Theory), Chemistry (Theory),
Biology (Theory), Mathematics, Computer Science, History, Political Science, Geography, Sociology,
Psychology, Economics, Commerce, Accounts and Business Studies.

I would like to acknowledge the contribution of all the ICSE and the ISC examiners who have been an integral
part of this exercise, whose valuable inputs have helped put this document together.

I would also like to thank the RDCD team of Dr. M.K. Gandhi, Dr. Manika Sharma, Mrs. Roshni George and
Mrs. Mansi Guleria who have done a commendable job in preparing this document.

Shilpi Gupta
October 2019 Deputy Head - RDCD

ii
CONTENTS

Page No.

FOREWORD i

PREFACE ii

INTRODUCTION 1

QUANTITATIVE ANALYSIS 3

QUALITATIVE ANALYSIS 10
INTRODUCTION

This document aims to provide a comprehensive picture of the performance of candidates in the
subject. It comprises of two sections, which provide Quantitative and Qualitative analysis results in
terms of performance of candidates in the subject for the ICSE Year 2019 Examination. The details
of the Quantitative and the Qualitative analysis are given below.

Quantitative Analysis
This section provides a detailed statistical analysis of the following:

 Overall Performance of candidates in the subject (Statistics at a Glance)


 State wise Performance of Candidates
 Gender wise comparison of Overall Performance
 Region wise comparison of Performance
 Comparison of Region wise performance on the basis of Gender
 Comparison of performance in different Mark Ranges and comparison on the basis of Gender for
the top and bottom ranges
 Comparison of performance in different Grade categories and comparison on the basis of Gender
for the top and bottom grades

The data has been presented in the form of means, frequencies and bar graphs.

Understanding the tables

Each of the comparison tables shows N (Number of candidates), Mean Marks obtained, Standard
Errors and t-values with the level of significance. For t-test, mean values compared with their
standard errors indicate whether an observed difference is likely to be a true difference or whether it
has occurred by chance. The t-test has been applied using a confidence level of 95%, which means
that if a difference is marked as ‘statistically significant’ (with * mark, refer to t-value column of the
table), the probability of the difference occurring by chance is less than 5%. In other words, we are
95% confident that the difference between the two values is true.

t-test has been used to observe significant differences in the performance of boys and girls, gender
wise differences within regions (North, East, South and West), gender wise differences within marks
ranges (Top and bottom ranges) and gender wise differences within grades awarded (Grade 1 and
Grade 9) at the ICSE Year 2019 Examination.

The analysed data has been depicted in a simple and user-friendly manner.

1
Given below is an example showing the comparison tables used in this section and the manner in
which they should be interpreted.

The table shows comparison


between the performances of boys
and girls in a particular subject.
Comparison on the basis of Gender
The t-value of 11.91 is significant at
Gender N Mean SE t-value 0.05 level (mentioned below the
Girls 2,538 66.1 0.29 table) with a mean of girls as 66.1
11.91*
Boys 1,051 60.1 0.42 and that of boys as 60.1. It means
*Significant at 0.05 level
that there is significant difference
between the performance of boys
and girls in the subject. The
probability of this difference
occurring by chance is less than 5%.
The mean value of girls is higher
than that of boys. It can be
interpreted that girls are performing
significantly better than boys.

The results have also been depicted


pictographically. In this case, the girls
performed significantly better than the
boys. This is depicted by the girl with a
medal.

Qualitative Analysis
The purpose of the qualitative analysis is to provide insights into how candidates have performed in
individual questions set in the question paper. This section is based on inputs provided by examiners
from examination centres across the country. It comprises of question wise feedback on the
performance of candidates in the form of Comments of Examiners on the common errors made by
candidates along with Suggestions for Teachers to rectify/ reduce these errors. The Marking Scheme
for each question has also been provided to help teachers understand the criteria used for marking.
Topics in the question paper that were generally found to be difficult or confusing by candidates,
have also been listed down, along with general suggestions for candidates on how to prepare for the
examination/ perform better in the examination.

2
QUANTITATIVE ANALYSIS

STATISTICS AT A GLANCE

Total Number of
Candidates: 1,15,133

Mean Marks: Highest Marks: 100

84.8 Lowest Marks: 01

3
PERFORMANCE (STATE-WISE & FOREIGN)
West Bengal 84.6
Uttarakhand 85.1
Uttar Pradesh 83.2
Tripura 84.6
Telangana 84.1
Tamil Nadu 88.4
Sikkim 75.9
Rajasthan 89.7
Punjab 83.1
Puducherry 71.5
Odisha 85.0
New Delhi 89.4
Meghalaya 86.3
Maharashtra 89.3
Madhya Pradesh 79.4
Kerala 88.6
Karnataka 88.1
Jharkhand 83.2
Himachal Pradesh 82.6
Haryana 86.2
Gujarat 83.4
Goa 95.1
Chhattisgarh 79.1
Chandigarh 88.4
Bihar 85.9
Assam 89.3
Andhra Pradesh 81.4
Foreign 90.2

The States/UTs of Goa, Rajasthan and New Delhi secured highest


mean marks. Mean marks secured by candidates studying in schools
abroad were 90.2.
4
GENDER-WISE COMPARISON

GIRLS BOYS
Mean Marks: 85.2 Mean Marks: 84.6
Number of Number of
Candidates: 49,595 Candidates: 65,538

Comparison on the basis of Gender


Gender N Mean SE t-value
Girls 49,595 85.2 0.06 7.51*
Boys 65,538 84.6 0.05
*Significant at 0.05 level

Girls performed
significantly better than
boys.

5
REGION-WISE COMPARISON

East North
Mean Marks: 84.4 Mean Marks: 83.2

Number of Number of
Candidates: 37,929 Candidates: 43,215

Highest Marks: 100 Highest Marks: 100


Lowest Marks: 21 Lowest Marks: 01

Mean Marks: 86.9 REGION Mean Marks: 88.3

Number of Number of
Candidates: 23,897 Candidates: 9,842

Highest Marks: 100 Mean Marks: 90.2 Highest Marks: 100


Lowest Marks: 33 Lowest Marks: 40
Number of
South Candidates: 250 West

Highest Marks: 100


Lowest Marks: 43

Foreign

6
Mean Marks obtained by Boys and Girls-Region wise

90.9
89.6
88.6
88.1
87.5
86.4
84.7
84.2
83.4 83.1

North East South West Foreign

Comparison on the basis of Gender within Region


Region Gender N Mean SE t-value
Girls 18,298 83.4 0.10
North (N) 2.28*
Boys 24,917 83.1 0.09
Girls 15,853 84.7 0.11
East (E) Boys 22,076 84.2 0.10
3.05*
Girls 11,599 87.5 0.10
South (S) Boys 12,298 86.4 0.11
7.59*
Girls 3,718 88.6 0.20
West (W) 1.89
Boys 6,124 88.1 0.16
Girls 127 89.6 1.14
Foreign (F) Boys 123 90.9 1.20
-0.79
*Significant at 0.05 level

REGION (N, E, S)

7
MARK RANGES :
COMPARISON GENDER-WISE

Comparison on the basis of gender in top and bottom mark ranges


Marks Range Gender N Mean SE t-value
Girls 33,133 93.1 0.03
Top Range (81-100) Boys 43,224 93.4 0.03
-5.90*
Girls 0 0 0
Bottom Range (0-20) Boys 3 3.0 1.53
-
*Significant at 0.05 level

Boys Girls All Candidates


Marks Range (81-100)
93.4
81 - 100 93.1
93.2

71.1
61 - 80 71.5

Marks Range (81-100) 71.3

54.9
41 - 60 55.7
55.2

38.1
21 - 40 33.5
37.1

3.0
0 - 20
3.0

8
GRADES AWARDED :
COMPARISON GENDER-WISE
Comparison on the basis of gender in Grade 1 and Grade 9

Grades Gender N Mean SE t-value


Girls 23,852 96.2 0.02
Grade 1 Boys 31,745 96.3 0.02
-4.61*
Girls 0 0 0
Grade 9 Boys 3 3.0 1.53
-
*Significant at 0.05 level

Boys Girls All Candidates

96.3
Grade 1 1 96.2
96.2
84.8
2 84.8
84.8
75.6
3 75.6
75.6
66.8
4 66.9
Grade 1 66.8
57.2
5 57.5
57.3
48.4
6 48.8
48.5
40.8
7 40.6
40.8
21.0
8 26.8
25.6
3.0
9
3.0

9
QUALITATIVE ANALYSIS

SECTION A (40 Marks)


Attempt all questions

Question 1
(a) Name any two basic principles of Object-oriented Programming. [2]

(b) Write a difference between unary and binary operator. [2]

(c) Name the keyword which: [2]


(i) indicates that a method has no return type.
(ii) makes the variable as a class variable.
(d) Write the memory capacity (storage size) of short and float data type in bytes. [2]
(e) Identify and name the following tokens: [2]
(i) public
(ii) 'a'
(iii) ==
(iv) {}

10
Comments of Examiners
(a) Most of the candidates wrote the features of Java instead Suggestions for teachers
of principles of Object-oriented Programming. - Explain the basic principles of
(b) Although many candidates attempted this part well, Object-oriented Programming with
there were some candidates who were confused real life examples and test the
between the terms operator and operand and wrote students regularly on these
operator in place of operand. principles.
- Explain with examples, the different
(c) (i) Some candidates were unable to write the return types of operators, based on the
type in a method header/prototype. number of operands used.
(ii) Many candidates did not name the keyword which - Explain clearly the role of void
makes the variable as a class variable. A few keyword in method prototype.
candidates wrote keyword as the answer which was - Familiarise students with various
incorrect. keywords/technical terms and their
use.
(d) Many candidates did not write the storage capacities of - Give simple programs that
data types in bytes correctly. Some candidates wrote the demonstrate that static variables are
answers in bits and the unit was written in bytes or vice also called class variables.
versa. Some candidates wrote the incorrect memory - Instruct the students to write
size. keywords in small letters.
(e) (i) Most of the candidates were unable to differentiate - Explain clearly the concept of data
tokens confidently. Many candidates, instead of types with the storage capacities in
keyword wrote access specifier /access visibility. terms of bits and bytes.
- Explain the difference between the
(ii) Many candidates wrote character or char instead of
units bits and bytes.
character literal /constant.
- Give adequate practice on data types
(iii) Most of the candidates got confused between and ask students to arrange them in
assignment operator and equality / relational ascending or descending order of
operator and wrote the answer as equal to their memory size.
/assignment operator. - Clearly explain token and its types
with chart needs.
(iv) Many candidates wrote the literal meaning of { } as
braces / parenthesis / curly braces. - Discuss various exercises based on
token identification and naming
tokens.
- Display a chart consisting of all the
keywords in the class room /
computer laboratory.
- Explain Literals /Constants and its
types with the help of various
examples.
- Give enough practice to the students
to identify constants and name them.
- Explain the difference between
assignment operator and relation
operator with proper examples and
their effects in programming.
- Clarify to the students the concept of
separators to avoid the syntax error
in the program.
11
MARKING SCHEME
Question 1
(a) Encapsulation, Data Abstraction, Polymorphism, Inheritance. (Any two)

(b) Unary operator Binary operator


It works /Performs on single It works/performs on two
operand or variables. variables or operands.
OR OR
Holds only one operand Holds more than one operand

(c) (i) void


(ii) static

(d) short – 2 bytes


float – 4 bytes
(e) (i) Keyword
(ii) character literal /constants
(iii) operator
(iv) separator/punctuator

Question 2
(a) Differentiate between if else if and switch-case statements. [2]
(b) Give the output of the following code: [2]
String P = "20", Q ="19";
int a = Integer.parseInt(P);
int b = Integer.valueOf(Q);
System.out.println(a+""+b);
(c) What are the various types of errors in Java? [2]
(d) State the data type and value of res after the following is executed: [2]
char ch = '9';
res= Character.isDigit(ch);
(e) What is the difference between the linear search and the binary search technique? [2]

12
Comments of Examiners
(a) Many candidates got confused between bidirectional Suggestions for teachers
and multiple branching statements. Some candidates - Follow the steps while introducing
gave appropriate examples but could not explain in any new construct such as: need of
detail. construct in the program, its basic
(b) Some candidates syntax, working, example.

(i) added and showed the result as 39 - Train students to compare between if
else if and switch-case statements
(ii) wrote 20 & 19 in two different lines. with examples.
(iii) used '- ' in between 20 and 19 - Explain wrapper classes and its
function parse and value of with
(iv) wrote 19 20 various examples to know the
(v) wrote 20 19 within double quotes. working.
(c) Some candidates, instead of writing the name of - Clarify to the students the concept of
different errors i.e syntax, logical and runtime error various types of concatenation in the
mentioned the examples of syntax errors only. print statement with the help of
examples and hands on sessions in
(d) Many candidates were not clear about the difference the laboratory.
between the data type and wrapper classes. Some - Show the working of program and
candidates wrote the data type and result in Uppercase output on the computer and explain
[ Boolean / True]. A few candidates wrote data type as how errors occurs, how they are
primitive with the value as 9. displayed and how to eliminate them
and, the difference between various
(e) Most of the candidates wrote the correct answer.
types of errors.
However, some candidates wrote two full programs
instead of the difference between the linear search and - Instruct the students not to use
the binary search technique. Some candidates wrote uppercase letters when datatype is
the difference between bubble sort and selection sort. asked.
- Explain Library class Character and
its various functions with the help of
examples and show their working on
the computer for the students to
understand output.
- Clarify to the students the difference
between the two methods of
searching with working or examples.

13
MARKING SCHEME
Question 2
(a) if else if switch case
Range of values are checked Only one value is compared
Supports both primitive and composite Supports only integer (byte, short,
data types int, long), char and String

Relational/Logical expressions can be


Only equality can be checked
checked
(Any two valid differences)
(b) 2019

(c) Syntax error


Logical error
Runtime error
(d) (i) boolean
(ii) true
(e)
Linear search Binary search
1. Array need not be sorted Array must be sorted in
ascending/descending order

2. check each item Does not check each item


3. Checks the search value Checks the search value with
with values in the array middle value of the array
from 0th index
4. It checks in a sequential It checks by diving the array
order into two halves

Question 3
(a) Write a Java expression for the following: [2]
2
| x +2xy |
(b) Write the return data type of the following functions: [2]

(i) startsWith( )
(ii) random( )

14
(c) If the value of basic=1500, what will be the value of tax after the following statement [2]
is executed?
tax = basic>1200 ? 200 :100;

(d) Give the output of following code and mention how many times the loop will execute? [2]

int i;
for( i=5 ; i>=1 ;i--)
{
if(i%2 ==1)
continue;
System.out.print( i+ '' '');
}
(e) State a difference between call by value and call by reference. [2]

(f) Give the output of the following: [2]


Math.sqrt(Math.max(9,16))

(g) Write the output for the following: [2]


String s1 = ''phoenix''; String s2 =''island'' ;
System.out.println (s1.substring(0).concat (s2.substring(2) ) );
System.out.println(s2.toUpperCase());

(h) Evaluate the following expression if the value of x=2, y=3 and z=1. [2]
v=x+ --z+ y++ +y

(i) String x[] = {"Artificial intelligence", "IOT", "Machine learning", "Big data"}; [2]
Give the output of the following statements:

(i) System.out.println(x[3]);
(ii) System.out.println(x.length);

(j) What is meant by a package? Give an example. [2]

15
Comments of Examiner
(a) Many candidates were unsure about the concept of
absolute representation mathematically. Some candidates
Suggestions for teachers
used the mathematical operators as x instead of - Give adequate practice to the students
multiplication symbol (*) in the expression. of writing expressions involving
operators and Math functions.
(b) In sub parts (i) and (ii) of this question, majority of the
candidates wrote Data types in capital letters. - Stress upon using correct symbols
while converting a mathematical
(c) Some candidates simply converted the ternary operator expression to a Java expression.
statement to if...else.
- Explain thoroughly, return data types
(d) Most of the candidates gave the output as 4, 2, 1 instead of character functions as well as
of 4, 2. Several candidates did not have a clear idea of the string functions, especially using
number of times loop was repeated and wrote the output different type of output questions.
as 2 instead of 5. Some candidates were not clear about - Explain the difference between data
the difference between print () and println( ) and wrote type and wrapper class.
the output as 4 2. - Teach the concept of dry run and
(e) Most of the candidates could answer this question well. encourage the students to find the
However, some candidates were confused between output of the program segments
actual and formal parameters. A few candidates repeated involving all the concepts of looping.
the same words of the question. - Give ample practice to the students to
get the Output by just doing the dry
(f) Majority of the candidates wrote the correct answer.
run / executing the program segment
However, some candidates were unable to solve the given.
second part correctly. A few candidates were unclear
about Math.sqrt and Math.pow functions. - Insist on the students writing the dry
run of the program segment.
(g) Most of the candidates answered this question correctly.
However, some candidates were not clear about the - Clarify the complete concept of
values / reference / objects by giving
working of substring (). A few candidates got confused
appropriate examples.
with both print statements and so jumbled up the outputs.
- Explain in detail the Output questions
(h) Many candidates answered this question correctly. But containing more than one Math
some candidates were unsure about post and pre - functions.
increment or decrement and change of self -value and so
- Ensure that the students, to have a
miscalculated the value of v. v=2+ - -1+3+4 = 10;
better understanding, practice on the
v=2+0+3+3 =8; v=2+0+4+4=10 system, the outputs involving
(i) (i) Majority of the candidates made an error in the multiple functions.
counting of array index. Several candidates were - Give enough practice to the students
unclear about array subscripts. Some candidates based on pre and post increment and
stated the array index counting from 1 instead of decrement operators.
from 0. A few candidates wrote the answer in
- Clearly explain the concept of arrays,
capital letter. subscript of the array begins from 0.
(ii) Majority of the candidates got confused with length - Encourage students to execute and
and length () method. Many candidates found the see the outputs practically.
length of the last element i.e. Big Data instead of
finding the length of the array.
(j) Most candidates wrote the correct examples but were
unable to write the correct definition. Several candidates did
16
not include important keywords like related classes
etc. in the definition. Some candidates wrote - Explain, with examples, how to find the
collection of classes/ collection of functions/objects, length of the array and array element.
etc. - Advise students to include keywords
while writing the definition of a term.

MARKING SCHEME
Question 3
(a) Math.abs(x*x +2*x*y)
Math.abs(Math.pow(x,2)+ 2*x*y)
(b) (i) boolean
(ii) double
(c) tax = 200

(d) 4 2
five times loop will execute
(e) Call by value Call by reference
It works with primitive data type It works with reference data
type
The original value of variable The original value of variable
remains unchanged changes
Operation is performed on Operation is performed on
duplicate value of variables original values of variables.
It is also called as pure function. It is also called as Impure
function.

(f) 4.0

(g) phoenixland
ISLAND

(h) v=9

(i) (i) Big data


(ii) 4
(j) Package in Java is a mechanism to encapsulate a group of classes, sub packages and interfaces
Example: java.lang
java.util
java.io

17
SECTION B (60 Marks)
Attempt any four questions from this Section

Question 4
Design a class name ShowRoom with the following description: [15]

Instance variables / Data members:


String name - To store the name of the customer
long mobno - To store the mobile number of the customer
double cost - To store the cost of the items purchased
double dis - To store the discount amount
double amount - To store the amount to be paid after discount

Member methods:

ShowRoom() - default constructor to initialize data members


void input () - To input customer name, mobile number, cost
void calculate () -To calculate discount on the cost of purchased items, based on following
criteria

Discount
Cost
(in percentage)
Less than or equal to ₹ 10000 5%

More than ₹10000 and less than or equal to ₹ 20000 10%

More than ₹ 20000 and less than or equal to ₹ 35000 15%

More than ₹ 35000 20%


Void display () - To display customer name, mobile number , amount to be paid
after discount.

Write a main method to create an object of the class and call the above member methods.

18
Comments of Examiners
In this Question stepwise following glitches were Suggestions for teachers
noticed:
- Explain properly where variable
• Majority of the candidates, instead of declaring the needs to be declared. Tell the
instance variables as global variables, declared and students that if it is declared inside
initialized in the constructor. any function then it becomes local
• Most candidates were not clear about the concept of variable, which cannot be used in
any other function.
default constructor.
- Demonstrate the difference between
• Some candidates initialised with some values instead instance variable and local variable
of with default values. practically.
• Several candidates were able to write the if - While taking user input, demonstrate
statements correctly but were unable to calculate the on the computer, the importance of
amount as cost - dis. import statement and methods of
Scanner class.
• A number of candidates used different function
names other than those specified in the question. - Clarify how to write conditions using
greater than (>) and less than (<)
• Several candidates, instead of accepting data by symbol in if else if programs.
using methods of Scanner class, used a function with - Ensure that students practice Object
arguments. creation and calling function.
• A large number of candidates did not use the variable - Recapitulate some of the math
names as per the question. In some answer scripts, formulas and calculations during
syntax of object creation and function calling revision time.
statements were incorrect. - Demonstration on the computer, the
• A few candidates accepted the data in the main types of errors which occur so that
function and passed as arguments to the input () students can avoid mistakes when
function. writing programs.
- Teach main () method creation.
• A few candidates, instead of directly calculating
discount, calculated it as a slab. - Give sufficient practice to the
students in writing many programs
• A few candidates were unable to write the main of this type.
function.

19
MARKING SCHEME
Question 4
import java.util.*; Steps
class ShowRoom Class name
{
Declaration of Variables
String name;
long mobno; Default constructor
double cost; void input ()
double dis; 3 Inputs
double amount;
4 conditions and calculations
ShowRoom( )
{ amount = cost – dis
name = " "; void display () with Output statements
cost=0; Object creation & function call
mobno=0;
dis = 0.0; Mnemonic code / Variable description
amount=0.0;
}
void input()
{
Scanner sc = new Scanner(System.in);
System.out.println("enter name, mobile no and cost");
name=sc.next();
mobno=sc.nextLong();
cost=sc.nextDouble();
}
void calculate()
{
if(cost <=10000)
{
dis=0.05*cost;
}
else if(cost >10000 && cost <=20000)
{
dis=0.1*cost;
}
else if(cost >20000 && cost <=35000)
{
dis=0.15*cost;
}
else
{
dis=0.2*cost;
}
amount = cost - dis;
}
void display()
{

20
System.out.println("Name is :"+name);
System.out.println("Mobile no is :"+mobno);
System.out.println("Amount :"+ amount);
}
public static void main (String arg[])
{
ShowRoom ob =new ShowRoom();
ob.input();
ob.calculate();
ob.display();
}
}

Question 5
Using the switch-case statement, write a menu driven program to do the following: [15]

(a) To generate and print Letters from A to Z and their Unicode

Letters Unicode

A 65

B 66

. .

. .

. .

Z 90

(b) Display the following pattern using iteration (looping) statement:

1 2

1 2 3

1 2 3 4

1 2 3 4 5

21
Comments of Examiners
(a) Many candidates answered this question correctly. Suggestions for teachers
Some common errors observed were: - Explain clearly the switch case
(i) unable to develop menu driven programs using construct with syntax.
switch case.
(ii) wrote two separate programs instead of one menu - Teach the difference between loop
driven program. and nested loop with examples.
(iii) no knowledge of type conversion. - Explain the importance of break
(iv) did not accept choice in the menu. statement.
(v) Initial and final values of looping statements - Explain how to obtain the ASCII
were incorrect in some answer scripts. code of character.
(vi) Used twenty-six different print statements to
- Demonstrate type conversion on the
display the Unicode characters. computer.
(vii) Missed out break statement.
(viii) In the switch statement, wrote s in capital - Drill objective type exercises based
terminated with a semicolon i.e. Switch (ch);. on the type conversion.

(b) Many students - Teach the concept of pattern printing


with nested loop through a lot of
(i) Wrote pattern without nested for loop. programs.
(ii) Used five printing statements for displaying the - Explain the purpose of outer and
pattern. inner loop in the nested loop as outer
(iii) Used print statement in place of println () loop is for number of lines and inner
statement. loop is for each line considering that
many elements are to be printed.
- Emphasise on < and > sign and its
effect on the output.

MARKING SCHEME
Question 5
import java.util.*;
class menu
{
public static void main (String args[])
{
Scanner obj = new Scanner (System.in);
int choice,x;
System.out.println(" enter 1 for unicode of letters, 2 Pattern");
choice = obj.nextInt();
switch(choice)
{

22
case 1: System.out.println(" Letters "+ “ " + " Unicode");
for (char c='A'; c<='Z'; c++)
{
Steps
x=c;
Menu with Input choice
System.out.println( c +" "+ x);
switch(choice) with {
}
/* OR case1 :

char x; loop

for (int i=65;i<=90;i++) Assignment

{ x=(char)i; Output Statement

System.out.println(x +" "+ i); break

}*/ case 2:

break; outer loop

case 2: inner loop

for (int i=1; i<=5;i++) printing

{ new line

for (int j=1; j<=i; j++ ) Mnemonic code / variable description

{
System.out.print(j+" ");
}
System.out.println();
}
} // End of switch
}// End of main
}// End of class

23
[15]
Question 6
Write a program to input 15 integer elements in an array and sort them in ascending order
using the bubble sort technique.

Comments of Examiners
Suggestions for teachers
Most of the candidates were able to write this program
- Teach correct syntax of the array
correctly. However, some of the common mistakes
creation and where to mention the size
observed were: of the array with various datatypes.
(i) Array was not created properly. - Explain the difference between array
(ii) Array input was written without using a loop. initialization and creation.

(iii) String input been taken. - Demonstrate on the computer that for
array input / output / any operation,
(iv) In sorting part, outer loop was written as - for (int index starts from 0 and ends
i=1;i<=15;i++) inner loop - for(int j=0 ; j<=15 ; <a.length.
j++). - Clarify that each array element is
(v) Swapping was not done correctly a[j] =a[j+1]; accessed using its index /subscript.
a[j+1]=temp; temp was not assigned any value. - Interpret the technique of sorting with
(vi) Syntax of the method to input value into array being examples.
incorrect a[ ] =sc.next() or nextint();. - Spell out the purpose of outer loop
and inner loop in an array.
- Show swapping on the computer.

MARKING SCHEME
Question 6
import java.util.*;
class Bubble
{ public static void main(String[]args)
{
Scanner abc = new Scanner (System.in);
int a[] = new int[15];
System.out.println("Enter elements");
for (int i=0;i<15;i++) // OR i< a.length
{
a[i]=abc.nextInt();
}//end of for

int temp;
for (int i=0;i<a.length-1;i++) // OR i <14
{
for (int j=0;j<(a.length-1)-i;j++) // OR j<14-i
{
24
if(a[j]>a[j+1]) Steps
{
temp=a[j]; Array Declaration
a[j]=a[j+1]; Input
a[j+1] =temp;
}//if Sorting: Outer loop (< a. length-1 or < 14)
}//inner Inner loop (< (a.length-1) –i or <14-i )
}//outer
check
}//main swap
}//end class
int temp
Mnemonic codes / Variable description

Question 7
Design a class to overload a function series () as follows: [15]

(a) void series (int x, int n) – To display the sum of the series given below:

x1 + x2 + x3 + ……………… xn terms

(b) void series (int p) – To display the following series:

0, 7, 26, 63 ……………. p terms

(c) void series ( ) – To display the sum of the series given below:
1 1 1 1
+ + ................
2 3 4 10

25
Comments of Examiners
(a) The concept of overloading was not clear to some Suggestions for teachers
candidates: The common errors made by candidates
in this part were: - Teach the concept of function
overloading. Lay stress that function
(i) Different functions with different names were over loading needs same method
used. name and different parameters as per
(ii) Attempted as three sub parts (a), (b) and (c ). requirement of the question.
(iii) Single function was used to define all the three - Emphasise that initialisation of the
logics. variable which is used to accumulate
(iv) Different function name, i.e., other than series the sum is very important.
() was used.
- Give adequate practice to the
(v) Instead of print statement, return statement was students in programs of different
used. types of series.
(vi) In the first function the variable sum was not
declared. - Ensure that programs to display
various types of series such as even
(vii) Sum of the series was not found, only each
numbers, odd numbers, square of
term of the series was printed. numbers, cube of numbers are done
(b) Most candidates did not find the computation of in the classroom.
(i * i * i) – 1. Several candidates did the initialization - Show output on the computer.
of loop variable with 0. Several candidates did not
- Explain the importance of greater
use the type casting in the calculation. Function
than (>) or less than (<) operator in
Parameters as well as input was found in the function the looping statements.
in some answer scripts. A few candidates added the
term instead of displaying it. - Clarify the effect of writing output
statement with in the loop and
(c) Several candidates did not declare the variable sum outside the loop clearly.
as double. Many candidates did not declare it at all.
- Explain the reason for the loop to
Some candidates in the for loop, instead of i=2, wrote
start from 2 instead of 1.
i=1. Some candidates wrote Output statement inside
for loop. A few candidates did not calculate the sum - Explain with snippets, how to set
of the series. loop based on numerator or
denominator.

26
MARKING SCHEME
Question 7
class Overload Steps
{ Function prototype with 2 parameters
public static void series (int x , int n) Declaration and initialization of double sum
{ for loop
double sum=0.0; Using math function and adding terms
for (int i=1;i<=n;i++) Displaying sum
{ Second function with one parameter

sum=sum+ Math.pow(x,i); Declaration and initialization of double sum

} for loop

System.out.println(sum); Finding term and displaying


Third function with no parameter
}
for loop
public static void series (int p)
Finding sum
{
Displaying
for (int i=1; i<=p; i++)
Mnemonic codes / variable description
System.out.println((i*i*i)-1);
}
public static void series ()
{
double sum=0.0;
for (int i=2; i<=10;i++)
{
sum=sum+(double)1/i;
}
System.out.print("Sum= "+sum);
}//end of function

27
Question 8 [15]
Write a program to input a sentence and convert it into uppercase and count and display the
total number of words starting with a letter 'A'.
Example:

Sample Input: ADVANCEMENT AND APPLICATION OF INFORMATION


TECHNOLOGY ARE EVER CHANGING.

Sample Output: Total number of words starting with letter 'A' = 4.

Comments of Examiners
Majority of the candidates answered this question correctly.
However, in this question variety of logic was used to Suggestions for teachers
write the program. The common errors observed in this
- Explain the concept of string
program were: thoroughly, giving adequate practice
(i) Not added a space before or after the string. to the students in all the string
functions.
(ii) Extracting the part of the string was not done
correctly. - Clarify commonly used string
functions using examples.
(iii) Instead of checking for A, a character was accepted
- Clearly spell out the importance of
and checked for that character.
length ().
(iv) Instead of nextLine(), next() was written. - Lay stress that index of String starts
(v) In the for loop, index started from 1 instead of 0. with 0.
For (int i=1; i<=s.length();i++). - Explain to the students that every
(vi) Counter variable was not initialised to 0. function of String is needed to be
used with String object/variable, e.g.
(vii) The counter variable was initialised inside for s1. length ().
loop. - Illustrate the necessity and
(viii) Output statement was written inside for loop to initialization of the counter variable
display count. through example programs.

(ix) Next character after space was taken as ch+1. - Demonstrate the difference between
the statements s1. charAt(i+1) and
(x) String functions were called/invoked without s1. charAt(ch+1).
String Variable/object.

28
MARKING SCHEME
Question 8
import java.util.*;
class loop Steps
{ Variable declaration and initialization
public static void main (String args[]) Input & convert to uppercase
{ Finding length
Scanner sc=new Scanner (System.in); loop
String str; char ch, ch1; int c=0; Extraction of a characters ( ch & ch1)
System.out.println("Enter a sentence"); Checking for first character & increment counter
str= sc.nextLine(); Checking for rest of the characters & increment counter
str=str.toUpperCase(); Output
int len= str.length(); Variable description / Mnemonic codes
for (int i=0; i<len-1;i++)
{
ch= str.charAt(i);
ch1=str.charAt(i+1);
if (i==0 && ch=='A')
c++;
else if (ch==' ' && ch1=='A')
c++;
}
System.out.println("Number of words started with letter 'A' ="+c);
}
}

Question 9
A tech number has even number of digits. If the number is split in two equal halves, then the [15]
square of sum of these halves is equal to the number itself. Write a program to generate and
print all four digits tech numbers.
Example:
Consider the number 3025
Square of sum of the halves of 3025 = (30+25)2
= (55)2
= 3025 is a tech number.

29
Comments of Examiners
Most of the candidates attempted this question
correctly. However, the common mistakes in this Suggestions for teachers
program were: - Explain extraction of digits from a
(i) Instead of the code for generating all the four number using n %100 and n /100
digits tech number, a number from the user was with an example.
accepted. - Clarify the looping /iterative
(ii) Only the logic for the example given in the construct with lot of examples.
question paper, i.e., 3025 was accepted.
(iii) A four-digit number into two equal halves was not - Give practice to the students in multi
digit-based programs.
split.
(iv) Instead of n%100 and n/100 respectively, n%10 - Instruct the students to read the
and n/10 were used. questions carefully.
(v) Both the halves as per the question were not
summed up.
(vi) Instead of calculating square of the sum, 2 to the
sum was multiplied.
(vii) Instead of printing the required tech number, the message It is a tech number was printed.

MARKING SCHEME
Question 9
class Q9 Steps
{ Declaration of variables
public static void main (String loop
args[])
Finding the first half and second half of the
{
number
int x,i,j,k, n;
Adding the two halves
for (x=1000; x<=9999; x++)
Finding the square
{
Checking the original number with the
i= x%100; square
j= x/100; Displaying the output
n= i+j; Mnemonic codes / Variable description
k=n* n;
if(x== k)
System.out.println(x);
}
}

30
GENERAL COMMENTS

Topics found
• Use of Math.max() and Math.abs().
difficult/
• Extraction of character using substring () .
confusing by • Variable declaration with initial value.
candidates • Object creation.
• Type casting
• Extraction of word.
• Loops for sorting elements in an array.
• Constructor concept.
• Program for printing the series (0, 7, 26, 63...).
• Dividing the four-digit number into two halves.
• Principles and features.
• Bits and Bytes.
• Keyword for class variable.
• Name of different tokens.
• Conversion of data type.
• Return type of different functions.
• Continue statement.
• Declaration of instance variables and their initialisation.
• Creation of object and method call.
• Generation of UNICODE characters.
• Sorting technique (inner loop condition).

31
• Follow the concepts given in the scope of the syllabus.
Suggestions
• Clarify the concepts and practise them both, on the paper and on the
for computer.
candidates • Solve a lot of problems based on all the concepts.
• Learn the syntax and working of every construct properly, with
suitable examples.
• Comprehend the key terms/definitions and then learn.
• Practise Library class and its various functions.Check its output on the
computer to understand their working.
• Develop the habit to do dry run of a program, which you write.
This will help in better understanding of concepts and aid in solving
questions.
• Apply simple logic in programs to get desired output.
• Complete the assignments and cross check on the computer for their
proper working. Get the assignments checked by your teacher.
• Solve previous years’ ICSE question papers to
understand the types of questions asked and how to attempt an ICSE
question paper.
• Check output-based questions on the computer.
• Design your own questions for string functions, math functions, loops
- for, while, do while, etc.
• Check for the logic for different variety of numbers-based questions
and develop a logic for the same.
• Do not resort to rote learning this subject but understand and practise
the concepts learnt regularly.
• Follow a proper study schedule when preparing for the examination.

32

You might also like