ICSE Class 10 Computer Applications (Java) 2011 Solved Question Paper - ICSE J
ICSE Class 10 Computer Applications (Java) 2011 Solved Question Paper - ICSE J
(Theory)
Two Hours
Question 1.
(b) What does the token ‘keyword’ refer to in the context of Java? Give an example for
keyword. [2]
Ans. Keywords are reserved words which convey special meanings to the compiler and cannot be
used as identifiers. Example of keywords : class, public, void, int
(c) State the difference between entry controlled loop and exit controlled loop. [2]
Ans. In an entry controlled loop, the loop condition is checked before executing the body of the
loop. While loop and for loop are the entry controlled loops in Java.
In exit controlled loops, the loop condition is checked after executing the body of the loop. do-
while loop is the exit controlled loop in Java.
Question 2.
(a) State the total size in bytes, of the arrays a [4] of char data type and p [4] of float data
type. [2]
Ans. char is two bytes. So a[4] will be 2*4=8 bytes.
float is 4 bytes. So p[4] will be 4*4=16 bytes.
1 String n = “Computer Knowledge”;
2 String m = “Computer Applications”;
3 System.out.println(n.substring (0,8). concat (m.substring(9)));
4 System.out.println(n.endsWith(“e”));
1 ComputerApplications
2 true
Question 3
(a) Analyse the following program segment and determine how many times the loop will be
executed and what will be the output of the program segment ? [2]
1 int p = 200;
2 while(true)
3 {
4 if (p<100)
5 break;
6 p=p‐20;
7 }
8 System.out.println(p);
Ans.p values changes as follows : 200, 180, 160, 140, 120, 100, 80. So, the loop executes six
times and value of p is 80.
1 int k = 5, j = 9;
2 k += k++ – ++j + k;
3 System.out.println("k= " +k);
4 System.out.println("j= " +j);
Ans.
1 k = 6
2 j = 10
Explanation:
k += k++ – ++j + k
k = k + k++ – ++j + k
k = 5 + 5 – 10 + 6
k=6
j = 10 as it has been incremented in the ++j operation.
(ii) [2]
1 double b = ‐15.6;
2 double a = Math.rint (Math.abs (b));
3 System.out.println("a= " +a);
Ans.
1 a =16.0
1 class Age {
2
3 int age;
4
5 public Age() {
6 age = ‐1;
7 }
8
9 public Age(int age) {
10 this.age = age;
11 }
12 }
(d) Give the prototype of a function search which receives a sentence sentnc and a word wrd
and returns 1 or 0 ? [2]
Ans.
1 public boolean function ( sentence sentnc, word wrd )
or
1 public int function ( sentence sentnc, word wrd )
1 z = ( 5 * Math.pow ( x, 3 ) + 2 * y ) / ( x + y )
(f) Write a statement each to perform the following task on a string: [2]
(i) Find and display the position of the last space in a string s.
(ii) Convert a number stored in a string variable x to double data type
Ans. (i) System.out.println(s.lastIndexOf(” “);
(ii) Double.parseDouble(x)
(i) Write one difference between Linear Search and Binary Search . [2]
Ans. Linear search can be used with both sorted and unsorted arrays. Binary search can be used
only with sorted arrays.
The answers in this Section should consist of the Programs in either Blue J environment or any
program environment with Java as the base.
Each program should be written using Variable descriptions/Mnemonic Codes such that the logic of
the program is clearly depicted.
Flow-Charts and Algorithms are not required.
Question 4.
Ans.
1 import java.util.Scanner;
2
3 public class mobike {
4
5 int bno;
6 int phno;
7 String name;
8 int days;
9 int charge;
10
11 public void input() {
12 Scanner scanner = new Scanner(System.in);
13 System.out.print("Enter bike number: ");
14 bno = scanner.nextInt();
15 System.out.print("Enter phone number: ");
16 phno = scanner.nextInt();
17 System.out.print("Enter your name: ");
18 name = scanner.next();
19 System.out.print("Enter number of days: ");
20 days = scanner.nextInt();
21 }
22
23 public void compute() {
24 if (days <= 5) {
25 charge = 500 * days;
26 } else if (days <= 10) {
27 charge = 5 * 500 + (days ‐ 5) * 400;
28 } else {
29 charge = 5 * 500 + 5 * 400 + (days ‐ 10) * 200;
30 }
31 }
32
33 public void display() {
34 System.out.println("Bike No. \tPhone No. \t No. of Days \t Charge");
35 System.out.println(bno + "\t" + phno + "\t" + days + "\t" + charge);
36 }
37 }
Question 5.
Write a program to input and sort the weight of ten people. Sort and display them in descending
order using the selection sort technique. [15]
Ans.
1 import java.util.Scanner;
2
3 public class SelectionSort {
4
5 public void program() {
6 Scanner scanner = new Scanner(System.in);
7 int[] weights = new int[10];
8 System.out.println("Enter weights: ");
9 for (int i = 0; i < 10; i++) {
10 weights[i] = scanner.nextInt();
11 }
12 for (int i = 0; i < 10; i++) {
13 int highest = i;
14 for (int j = i + 1; j < 10; j++) { if (weights[j] >
weights[highest]) {
15 highest = j;
16 }
17 }
18 int temp = weights[highest];
19 weights[highest] = weights[i];
20 weights[i] = temp;
21 }
22 System.out.println("Sorted weights:");
23 for (int i = 0; i < 10; i++) {
24 System.out.println(weights[i]);
25 }
26 }
27 }
Question 6.
Write a program to input a number and print whether the number is a special number or not. (A
number is said to be a special number, if the sum of the factorial of the digits of the number is
same as the original number). [15]
Ans.
1 import java.util.Scanner;
2
3 public class SpecialNumber {
4
5 public int factorial(int n) {
6 int fact = 1;
7 for (int i = 1; i <= n; i++) { fact = fact * i;
} return fact; } public int sumOfDigita(int num) { int
sum = 0; while (num > 0) {
8 int rem = num % 10;
9 sum = sum + rem;
10 num = sum / 10;
11 }
12 return sum;
13 }
14
15 public boolean isSpecial(int num) {
16 int fact = factorial(num);
17 int sum = sumOfDigita(fact);
18 if (sum == num) {
19 return true;
20 } else {
21 return false;
22 }
23 }
24
25 public void check() {
26 Scanner scanner = new Scanner(System.in);
27 System.out.print("Enter a number: ");
28 int num = scanner.nextInt();
29 if (isSpecial(num)) {
30 System.out.println("It is a special number");
31 } else {
32 System.out.println("It is not a special number");
33 }
34 }
35
36 }
Question 7
Write a program to accept a word and convert it into lowercase if it is in uppercase, and display the
new word by replacing only the vowels with the character following it. [15]
Example
Sample Input : computer
Sample Output : cpmpvtfr
Ans.
1 import java.util.Scanner;
2
3 public class StringConversion {
4
5 public static void convert() {
6 Scanner scanner = new Scanner(System.in);
7 System.out.print("Enter a String: ");
8 String input = scanner.next();
9 input = input.toLowerCase();
10 String answer = "";
11 for (int i = 0; i < input.length(); i++) {
12 char c = input.charAt(i);
13 if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u') {
14 answer = answer + (char) (c + 1);
15 } else {
16 answer = answer + c;
17 }
18 }
19 System.out.println(answer);
20 }
21
22 }
Question 8.
Design a class to overload a function compare ( ) as follows: [15]
(a) void compare (int, int) – to compare two integer values and print the greater of the two integers.
(b) void compare (char, char) – to compare the numeric value of two character with higher numeric
value
(c) void compare (String, String) – to compare the length of the two strings and print the longer of
the two.
Ans.
1 public class Overloading {
2
3 public void compare(int a, int b) {
4 int max = Math.max(a, b);
5 System.out.println(max);
6 }
7
8 public void compare(char a, char b) {
9 char max = (char) Math.max(a, b);
10 System.out.println(max);
11 }
12
13 public void compare(String a, String b) {
14 if (a.length() > b.length()) {
15 System.out.println(a);
16 } else if (a.length() < b.length()) {
17 System.out.println(b);
18 } else {
19 System.out.println(a);
20 System.out.println(b);
21 }
22 }
23 }
Question 9
Write a menu driven program to perform the following . (Use switch-case statement) [15]
(a) To print the series 0, 3, 8, 15, 24 ……. n terms (value of ‘n’ is to be an input by the user).
(b) To find the sum of the series given below:
S = 1/2+ 3/4 + 5/6 + 7/8 … 19/20
Ans.
1 import java.util.Scanner;
2
3 public class Menu {
4
5 public void series1(int n) {
6 for (int i = 1; i <= n; i++) {
7 int term = i * i ‐ 1;
8 System.out.print(term + " ");
9 }
10 }
11
12 public double series2(int n) {
13 double sum = 0;
14 for (int i = 1; i <= n; i++) {
15 sum = sum + (double) (2 * i ‐ 1) / (2 * i);
16 }
17 return sum;
18 }
19
20 public void menu() {
21 Scanner scanner = new Scanner(System.in);
22 System.out.println("1. Print 0, 3, 8, 15, 24... n tersm");
23 System.out.println("2. Sum of series 1/4 + 3/4 + 7/8 + ... n terms");
24 System.out.print("Enter your choice: ");
25 int choice = scanner.nextInt();
26 System.out.print("Enter n: ");
27 int n = scanner.nextInt();
28 switch (choice) {
29 case 1:
30 series1(n);
31 break;
32 case 2:
33 double sum = series2(n);
34 System.out.println(sum);
35 break;
36 default:
37 System.out.println("Invalid choice");
38 }
39 }
40
41 public static void main(String[] args) {
42 Menu menu = new Menu();
43 menu.menu();
44 }
45 }
Yashvi Kandoi
January 27, 2014 at 5:24 pm
What is the answer to question 9, series one of the 2011 icse board paper of computer science of
class 10?
The series is 0, 3, 8, 15, 24. We have incorrectly mentioned it as 0, 3, 7, 15, 24. The error has been
corrected and the solution has also been updated.
kritika
February 25, 2014 at 7:56 am