String Handling (2)
String Handling (2)
Kakarla’s
INTERNATIONAL SCHOOL, HYDERABAD
Revision Worksheet
String Handling
Name:
Subject: Computer Applications
Class X Sec: __ , Roll No.____
Question 1
A string is:
1. A set of letters
2. A set of letters and digits
3. A set of letters, digits and special characters
4. All the above
Answer
All the above
Reason — A string literal may consist of a set of letters, a set of letters and digits or a
set of letters, digits and special characters.
Question 2
A string internally creates:
1. An integer array
2. A numeric array
3. A character array
4. A double type array
Answer
A character array
Reason — String data type creates a character array to store a set of characters in
different cells.
Question 3
If a string contains 12 characters, what will be the index of the last character?
1. 12
2. 11
3. 10
4. 0
Answer
11
Reason — A String data type manages character array for storing a string character-
wise starting from 0th subscript. Hence, the index number of the characters starts
from 0 (zero) and ends with (k-1), if k is length of the string. Hence, the last index will
be 11 (12-1), as 12 is the size of the string.
Question 4
What will be the value stored in the variable 'c' if the following statement is executed?
c = "COMPUTER".charAt("COMPUTER ".indexOf('P'))
1. 3
2. 4
3. P
4. M
Answer
P
Page 1 of 60
Reason — charAt(int index) returns a character from the given index of the string
and indexOf(char ch) returns the index of first occurrence of a character in the
string.
Since P is at 3rd position so indexOf('P') will return 3 and charAt(3) function will
return the character at the third index i.e., 'P'. So, the given statement is solved as
follows:
c = "COMPUTER".charAt("COMPUTER ".indexOf('P'))
⇒ c = "COMPUTER".charAt(3)
⇒ c = 'P'
Question 5
Which of the following functions is used to remove leading and trailing white spaces
from the string?
1. trim( )
2. trail( )
3. truncate( )
4. slice( )
Answer
trim( )
Reason — trim( ) function is used to remove leading and trailing white spaces from
the string.
Question 6
What will be the output of the following program snippet?
s1 = "COMPUTER";
s2 = "computer";
System.out.println(s1.equals(s2));
1. True
2. False
3. 0
4. 1
Answer
False
Reason — equals() method treats uppercase and lowercase characters differently. So,
the two strings will not be considered equal and the boolean value 'false' will be
returned.
Question 7
What will be the output of the following program snippet?
str1 = "AMAN";
str2 = "AMIT";
System.out.println(str1.compareTo(str2));
1. 8
2. 0
3. -8
4. 2
Answer
-8
Reason — compareTo() returns a negative value if the first string is smaller than the
second string in terms of the ASCII values of the corresponding characters.
"AMAN" and "AMIT" differ at the third character with 'A' and 'I', respectively. So,
Page 2 of 60
output of compareTo() method will be ASCII Code of 'A' - ASCII Code of 'I' ⇒ 65 - 73 ⇒
-8.
Question 8
Which of the following packages contain string functions?
1. java.awt
2. java.string
3. java.math
4. java.lang
Answer
java.lang
Reason — Java Class Library contains a class called String which is available under
java.lang package.
Fill in the blanks
Question 1
concat() method is used to join two strings.
Question 2
The output of the following statement, when executed:
System.out.println("COMPUTER".charAt(4)); is U.
Question 3
The output of the statement, when executed:
System.out.println("Object Oriented".length()); is 15.
Question 4
Plus ( + ) operator is used to concatenate two strings.
Question 5
String declaration is terminated by the symbol semicolon ( ; ).
Question 6
Character literal is enclosed within single quotes (').
Question 7
The return type of the statement equals( ) is boolean.
Question 8
The output of "VIDYALAYA".substring(2,5) will result in DYA
Write down the syntax to perform the following tasks
Question 1
To check whether a character(chr) is in upper case or not.
Answer
boolean res = Character.isUpperCase(chr);
Question 2
To compare two Strings(str1, str2) are same or not.
Answer
boolean res = str1.equals(str2);
Question 3
To extract the last character of a word(wd) stored in the variable chr.
Answer
char chr = wd.charAt(wd.length() - 1);
Question 4
To return the first occurrence of 'a' in the word "applications".
Answer
Page 3 of 60
int res = "applications".indexOf('a');
Question 5
To replace the word "old" with the word "new" in a given String st = "old is always old"
Answer
String str = st.replace("old", "new");
Question 6
To check if the second character of a String(str) is in upper case.
Answer
boolean res = Character.isUpperCase(str.charAt(1));
Predict the output of the following
Question 1
String str = "Computer Applications" + 1 + 0;
System.out.println("Understanding" + str);
Answer
Output
UnderstandingComputer Applications10
Explanation
In the first line, + operator concatenates 1 and 0 to the end of "Computer
Applications" so str becomes "Computer Applications10". Next line prints
"UnderstandingComputer Applications10" to the console.
Question 2
String n1 = "46", n2 = "64";
int total = Integer.parseInt(n1) + Integer.parseInt(n2);
System.out.println("The sum of " + "46 " + "and" + " 64" + " is " + total);
Answer
Output
The sum of 46 and 64 is 110
Explanation
Integer.parseInt() method will convert the strings n1 and n2 to their corresponding
numerical integers. So, 46 and 64 are added as numerical values and the result 110
is stored in int variable total.
Question 3
boolean p;
p = ("BLUEJ".length() > "bluej".length()) ? true: false;
Answer
Output
false
Explanation
Both "BLUEJ" and "bluej" have the same length 5. So, condition of ternary operator is
false and false is assigned to boolean variable p.
Question 4
String str = "Information Technology";
int p;
p = str.indexOf('n');
System.out.println(p);
Page 4 of 60
Answer
Output
1
Explanation
str.indexOf('n') will return the first index of n in str which is 1. So, the output of this
program is 1.
Question 5
String str1 = "Information Technology";
String str2 = "information technology";
boolean p = str1.equalsIgnoreCase(str2);
System.out.println("The result is " + p);
Answer
Output
The result is true
Explanation
str1.equalsIgnoreCase(str2) will do a case insensitive comparison of str1 and str2. As
both strings contain the same characters if we ignore the case so it returns true
which is stored in boolean variable p.
Question 6
What do the following functions return?
String x = "Vision";
String y = "2020";
(a) System.out.println(x + y);
(b) System.out.println(x.length());
(c) System.out.println(x.charAt(3));
(d) System.out.println(x.equals(y));
Answer
(a) System.out.println(x + y);
Output
Vision2020
Explanation
x and y are concatenated and printed.
(b) System.out.println(x.length());
Output
6
Explanation
x.length() will give the number of characters in string x which is 6.
(c) System.out.println(x.charAt(3));
Output
i
Explanation
x.charAt(3) will return the character at index 3 of string x which is i.
(d) System.out.println(x.equals(y));
Output
false
Explanation
x.equals(y) will return false as x and y contains different characters.
Question 7
Page 5 of 60
String S1 = "Computer World";
String S2 = "COMPUTER WORLD";
String S3 = "Computer world";
String S4 = "computer world";
System.out.println(S1 + " equals "+ S2 + " " + S1.equals(S2));
System.out.println(S1 + " equals "+ S3 + " " + S1.equals(S3));
System.out.println(S1 + " equals "+ S4 + " " + S1.equals(S4));
System.out.println(S1 + " equalsIgnoreCase "+ S4 + " " + S1.equalsIgnoreCase(S4));
Answer
Output
Computer World equals COMPUTER WORLD false
Computer World equals Computer world false
Computer World equals computer world false
Computer World equalsIgnoreCase computer world true
Explanation
As the strings S1, S2, S3 and S4 differ in the case of the characters
so equals() method will return false but equalsIgnoreCase() method will return true.
Question 8
If:
String x = "Computer";
String y = "Applications";
What do the following functions return?
(i) System.out.println(x.substring(1,5));
(ii) System.out.println(x.indexOf(x.charAt(4)));
(iii) System.out.println(y + x.substring(5));
(iv) System.out.println(x.equals(y));
Answer
(i) System.out.println(x.substring(1,5));
Output
ompu
Explanation
x.substring(1,5) will return a substring of x starting at index 1 till index 4 (i.e. 5 - 1 =
4).
(ii) System.out.println(x.indexOf(x.charAt(4)));
Output
4
Explanation
x.charAt(4) returns the character at index 4 of string x which is 'u'. First index of 'u'
in x is 4 so output is 4.
(iii) System.out.println(y + x.substring(5));
Output
Applicationster
Explanation
x.substring(5) will return the substring of x starting at index 5 till the end of the
string. It is "ter". This is added to the end of string y and printed to the console as
output.
(iv) System.out.println(x.equals(y));
Page 6 of 60
Output
false
Explanation
As strings x and y are not equal so x.equals(y) returns false.
Question 9
Give the output of the following:
String n = "Computer Knowledge";
String m = "Computer Applications";
System.out.println(n.substring(0,8).concat(m.substring(9)));
System.out.println(n.endsWith("e"));
Answer
Output
ComputerApplications
true
Explanation
n.substring(0,8) returns the substring of n starting at index 0 till 7 (i.e. 8 - 1 = 7)
which is "Computer". m.substring(9) returns the substring of m starting at index 9
till the end of the string which is "Applications". concat() method joins "Computer"
and "Applications" together to give the output as ComputerApplications.
Question 10
Give the output of the following statements:
String x[] = {"SAMSUNG", "NOKIA", "SONY", "MICROMAX", "BLACKBERRY"};
(i) System.out.println(x[1]);
(ii) System.out.println(x[3].length());
Answer
(i) System.out.println(x[1]);
Output
NOKIA
Explanation
x[1] gives the second element of the array x which is "NOKIA"
(ii) System.out.println(x[3].length());
Output
8
Explanation
x[3].length() gives the number of characters in the fourth element of the array x.
Question 11
Give the output of the following string functions:
(i) "ACHIEVEMENT".replace('E', 'A')
(ii) "DEDICATE".compareTo("DEVOTE")
Answer
(i) "ACHIEVEMENT".replace('E', 'A')
Output
ACHIAVAMANT
Explanation
All 'E's are replaced with 'A's.
(ii) "DEDICATE".compareTo("DEVOTE")
Output
-18
Page 7 of 60
Explanation
"DEDICATE" and "DEVOTE" differ at the third character with 'D' and 'V', respectively.
So, output of compareTo() method will be ASCII Code of 'D' - ASCII Code of 'V' ⇒ 68 -
86 ⇒ -18.
Question 12
Consider the following String array and give the output
String arr[]= {"DELHI", "CHENNAI", "MUMBAI", "LUCKNOW", "JAIPUR"};
System.out.println(arr[0].length() > arr[3].length());
System.out.print(arr[4].substring(0,3));
Output
false
JAI
Explanation
As length of the string "DELHI" is less than that of "LUCKNOW" so first output is
false.
arr[4].substring(0,3) will return the substring of "JAIPUR" starting at index 0 till
index 2 (i.e. 3 - 1 = 2).
Case-Study based question
Your friend is trying to write a program to find and display the frequency of vowels in
a string. Due to confusion in the syntax of some of the statements, he could not
complete the program and has left some places blank marked with ?1?, ?2?, ?3? and
?4? to be filled with expression/function. The incomplete program is shown below:
import java.util.*;
class Vowels
{
public static void main(String args[])
{
Scanner ...?1?... = new Scanner(System.in);
String st;
int i, b, v = 0;
char chr;
System.out.println("Enter a string");
st = ............?2?............; // to input a string
st = ............?3?...........; // to convert the string into uppercase
b = st.length();
for( i = 0 ; i < b ; i++)
{
chr = ............?4?............; // to extract a character
if(chr == 'A' || chr == 'E' || chr == 'I' || chr == 'O' || chr == 'U')
v = v + 1;
}
System.out.println("No. of Vowels = " + v);
}
}
Based on the above discussion, answer the following questions:
(a) What expression/function will be filled in place of ?1?
(b) What expression/function will be filled in place of ?2?
Page 8 of 60
(c) What expression/function will be filled in place of ?3?
(d) What expression/function will be filled in place of ?4?
Answer
(a) in
(b) in.nextLine();
(c) st.toUpperCase();
(d) st.charAt(i);
The completed program is given below for reference:
import java.util.*;
class Vowels
{
public static void main(String args[])
{
Scanner in = new Scanner(System.in);
String st;
int i, b, v = 0;
char chr;
System.out.println("Enter a string");
st = in.nextLine(); // to input a string
st = st.toUpperCase(); // to convert the string into uppercase
b = st.length();
for( i = 0 ; i < b ; i++)
{
chr = st.charAt(i); // to extract a character
if(chr == 'A' || chr == 'E' || chr == 'I' || chr == 'O' || chr == 'U')
v = v + 1;
}
System.out.println("No. of Vowels = " + v);
}
}
Differentiate between the following
Question 1
equals() and ==
Answer
equals() ==
Example: Example:
String s1 = new String("hello"); String s1 = new
String s2 = new String("hello"); String("hello");
boolean res = s1.equals(s2); String s2 = new
System.out.println(res); String("hello");
boolean res = s1 == s2;
Page 9 of 60
equals() ==
It checks if contents of
It compares two strings lexicographically. two strings are same or
not.
Converts all characters of the String Converts all characters of the String
object to lower case. object to upper case.
Example: Example:
String str = "HELLO"; String str = "hello";
System.out.println(str.toLowerCase()); System.out.println(str.toUpperCase());
Output of this code snippet will be Output of this code snippet will be
hello. HELLO.
Question 4
charAt() and substring()
Answer
charAt() substring()
Page 10 of 60
charAt() substring()
Example: Example:
String str = "Hello"; String str = "Hello";
char ch = str.charAt(1); String subStr = str.substring(1);
System.out.println(ch); System.out.println(subStr);
Page 11 of 60
endsWith() tests if the string object ends with the string specified as its argument.
startsWith() tests if the string object starts with the string specified as its argument.
Consider the below example:
public class Example {
public static void main(String args[]) {
String str = "ICSE Computer Applications";
System.out.println("Does " + str + " starts with ICSE? " + str.startsWith("ICSE"));
System.out.println("Does " + str + " ends with tions? " + str.endsWith("tions"));
}
}
Here, both str.startsWith("ICSE") and str.endsWith("tions") returns 'true' as str starts
with "ICSE" and ends with "tions".
Describe the purpose of the following functions with their syntax
Question 1
toUpperCase()
Answer
It converts a string into upper case characters. If any character is already in
uppercase or is a special character then it will remain same.
Syntax:
String <variable-name> = <string-variable>.toUpperCase();
Question 2
trim()
Answer
It removes all leading and trailing space from the string.
Syntax:
String <variable-name> = <string-variable>.trim();
Question 3
toLowerCase()
Answer
It converts a string into lowercase characters. If any character is already in lowercase
or is a special character then it will remain same.
Syntax:
String <variable-name> = <string-variable>.toLowerCase();
Question 4
length()
Answer
It returns the length of the string i.e. the number of characters present in the string.
Syntax:
int <variable-name> = <string-variable>.length();
Question 5
replace()
Answer
It replaces a character with another character or a substring with another substring
at all its occurrences in the given string.
Syntax:
String <variable-name> = <string-variable>.replace(<character or substring to
replace>, <new character or substring>);
Page 12 of 60
Question 6
compareTo()
Answer
It compares two strings lexicographically. It results in the difference of the ASCII
codes of the corresponding characters. Its return type is int.
Syntax:
int <variable-name> = <string-variable>.compareTo(<string-variable2>);
Question 7
reverse()
Answer
It is a method of StringBuffer class and it is used to reverse the sequence of
characters.
Syntax:
<StringBuffer-Variable>.reverse();
Question 8
indexOf()
Answer
It returns the index of the first occurrence of the specified character within the string
or -1 if the character is not present.
Syntax:
int <variable-name> = <string-variable>.indexOf(<character>);
Question 9
startWith()
Answer
It tests if the string object starts with the string specified as its argument.
Syntax:
boolean <variable-name> = <string-variable>.startWith(<string>);
Question 10
equalsIgnoreCase()
Answer
It ignores the case of the characters and checks if the contents of two strings are
same or not.
Syntax:
boolean <variable-name> = <string-variable>.equalsIgnoreCase(<string>);
Solutions to Unsolved Java Programs based on Strings
Question 1
Write a program to input a sentence. Find and display the following:
(i) Number of words present in the sentence
(ii) Number of letters present in the sentence
Assume that the sentence has neither include any digit nor a special character.
import java.util.Scanner;
Page 13 of 60
String str = in.nextLine();
/*
* Number of words in a sentence are one more than
* the number of spaces so incrementing wCount by 1
*/
wCount++;
Question 2
Write a program in Java to accept a word/a String and display the new string after
removing all the vowels present in it.
Sample Input: COMPUTER APPLICATIONS
Sample Output: CMPTR PPLCTNS
import java.util.Scanner;
char ch = Character.toUpperCase(str.charAt(i));
if (ch == 'A' ||
ch == 'E' ||
ch == 'I' ||
ch == 'O' ||
ch == 'U') {
continue;
}
Page 15 of 60
Question 3
Write a program in Java to accept a name(Containing three words) and display only
the initials (i.e., first letter of each word).
Sample Input: LAL KRISHNA ADVANI
Sample Output: L K A
import java.util.Scanner;
Page 16 of 60
Output
Question 4
Write a program in Java to accept a name containing three words and display the
surname first, followed by the first and middle names.
Sample Input: MOHANDAS KARAMCHAND GANDHI
Sample Output: GANDHI MOHANDAS KARAMCHAND
import java.util.Scanner;
/*
* Get the last index
* of space in the string
*/
int lastSpaceIdx = name.lastIndexOf(' ');
Page 17 of 60
Output
Question 5
Write a program in Java to enter a String/Sentence and display the longest word and
the length of the longest word present in the String.
Sample Input: “TATA FOOTBALL ACADEMY WILL PLAY AGAINST MOHAN BAGAN”
Sample Output: The longest word: FOOTBALL: The length of the word: 8
import java.util.Scanner;
word = "";
}
else {
word += ch;
}
}
Page 18 of 60
System.out.println("The longest word: " + lWord +
": The length of the word: " + lWord.length());
}
}
Output
Question 6
Write a program in Java to accept a word and display the ASCII code of each
character of the word.
Sample Input: BLUEJ
Sample Output:
ASCII of B = 66
ASCII of L = 76
ASCII of U = 85
ASCII of E = 69
ASCII of J = 74
import java.util.Scanner;
Page 19 of 60
Output
Question 7
Write a program in Java to accept a String in upper case and replace all the vowels
present in the String with Asterisk (*) sign.
Sample Input: "TATA STEEL IS IN JAMSHEDPUR"
Sample output: T*T* ST**L *S *N J*MSH*DP*R
import java.util.Scanner;
System.out.println(newStr);
}
}
Page 20 of 60
Output
Question 8
Write a program in Java to enter a sentence. Frame a word by joining all the first
characters of each word of the sentence. Display the word.
Sample Input: Vital Information Resource Under Seize
Sample Output: VIRUS
import java.util.Scanner;
System.out.println(word);
}
}
Output
Page 21 of 60
Question 9
Write a program in Java to enter a sentence. Display the words which are only
palindrome.
Sample Input: MOM AND DAD ARE NOT AT HOME
Sample Output: MOM
DAD
import java.util.Scanner;
if (isPalin)
System.out.println(word);
word = "";
}
else {
word += ch;
}
}
}
}
Page 22 of 60
Output
Question 10
Write a program to accept a sentence. Display the sentence in reversing order of its
word.
Sample Input: Computer is Fun
Sample Output: Fun is Computer
import java.util.Scanner;
Page 23 of 60
Question 11
Write a program to input a sentence and display the word of the sentence that
contains maximum number of vowels.
Sample Input: HAPPY NEW YEAR
Sample Output: The word with maximum number of vowels: YEAR
import java.util.Scanner;
char ch = Character.toUpperCase(str.charAt(i));
if (ch == 'A' ||
ch == 'E' ||
ch == 'I' ||
ch == 'O' ||
ch == 'U') {
count++;
}
Question 12
Consider the sentence as given below:
Blue bottle is in Blue bag lying on Blue carpet
Write a program to assign the given sentence to a string variable. Replace the
word Blue with Red at all its occurrence. Display the new string as shown below:
Red bottle is in Red bag lying on Red carpet
public class KboatStringReplace
{
public static void main(String args[]) {
String str = "Blue bottle is in Blue bag lying on Blue carpet";
str += " ";
String newStr = "";
String word = "";
String target = "Blue";
String newWord = "Red";
int len = str.length();
System.out.println(newStr);
}
}
Page 25 of 60
Output
Question 13
Write a program to accept a word and convert it into lower case, if it is in upper case.
Display the new word by replacing only the vowels with the letter following it.
Sample Input: computer
Sample Output: cpmpvtfr
import java.util.Scanner;
if (str.charAt(i) == 'a' ||
str.charAt(i) == 'e' ||
str.charAt(i) == 'i' ||
str.charAt(i) == 'o' ||
str.charAt(i) == 'u') {
}
else {
newStr = newStr + ch;
}
}
System.out.println(newStr);
}
}
Page 26 of 60
Output
Question 14
Write a program to input a sentence. Create a new sentence by replacing each
consonant with the previous letter. If the previous letter is a vowel then replace it
with the next letter (i.e., if the letter is B then replace it with C as the previous letter
of B is A). Other characters must remain the same. Display the new sentence.
Sample Input : ICC WORLD CUP
Sample Output : IBB VOQKC BUQ
import java.util.Scanner;
Page 27 of 60
}
else {
newStr = newStr + prevChar;
}
}
}
System.out.println(newStr);
}
}
Output
Question 15
A 'Happy Word' is defined as:
Take a word and calculate the word's value based on position of the letters in
English alphabet. On the basis of word’s value, find the sum of the squares of
its digits. Repeat the process with the resultant number until the number
equals 1 (one). If the number ends with 1 then the word is called a 'Happy
Word'.
Write a program to input a word and check whether it a ‘Happy Word’ or not. The
program displays a message accordingly.
Sample Input: VAT
Place value of V = 22, A= 1, T = 20
[Hint: A = 1, B = 2, ----------, Z = 26]
Solution:
22120 ⇒ 22 + 22 + 12 + 22 + 02 = 13
⇒ 12 + 32 = 10
⇒ 12 + 02 = 1
Sample Output: A Happy Word
import java.util.Scanner;
if (isHappy)
System.out.println("A Happy Word");
else
System.out.println("Not a Happy Word");
}
}
Output
Page 29 of 60
Question 16
Write a program to input a sentence. Count and display the frequency of each letter
of the sentence in alphabetical order.
Sample Input: COMPUTER APPLICATIONS
Sample Output:
Character Frequency Character Frequency
A 2 O 2
C 2 P 3
I 1 R 1
L 2 S 1
M 1 T 2
N 1 U 1
import java.util.Scanner;
System.out.println("Character\tFrequency");
for (int i = 0; i < freqMap.length; i++) {
if (freqMap[i] > 0) {
System.out.println((char)(i + 65)
+ "\t\t" + freqMap[i]);
}
}
}
}
Output
Page 31 of 60
Question 17
Write a program to accept a string. Convert the string into upper case letters. Count
and output the number of double letter sequences that exist in the string.
Sample Input: "SHE WAS FEEDING THE LITTLE RABBIT WITH AN APPLE"
Sample Output: 4
import java.util.Scanner;
}
}
Output
Question 18
Special words are those words which start and end with the same letter.
Example: EXISTENCE, COMIC, WINDOW
Palindrome words are those words which read the same from left to right and vice-
versa.
Example: MALYALAM, MADAM, LEVEL, ROTATOR, CIVIC
All palindromes are special words but all special words are not palindromes.
Write a program to accept a word. Check and display whether the word is a
palindrome or only a special word or none of them.
import java.util.Scanner;
if (isPalin) {
System.out.println("Palindrome");
}
else {
System.out.println("Special");
}
}
else {
System.out.println("Neither Special nor Palindrome");
}
}
}
Output
Question 19
Page 33 of 60
Write a program to input a sentence. Convert the sentence into upper case letters.
Display the words along with frequency of the words which have at least a pair of
consecutive letters.
Sample Input: MODEM IS AN ELECTRONIC DEVICE
Sample Output:
MODEM
DEVICE
Number of words containing consecutive letters: 2
import java.util.Scanner;
word = "";
}
else {
word += str.charAt(i);
}
Page 34 of 60
Output
Question 20
Write a program to accept a word (say, BLUEJ) and display the pattern:
(a)
BLUEJ
BLUE
BLU
BL
B
import java.util.Scanner;
Page 35 of 60
Output
(b)
J
EE
UUU
LLLL
BBBBB
import java.util.Scanner;
Page 36 of 60
(c)
BLUEJ
LUEJ
UEJ
EJ
J
import java.util.Scanner;
Question 21
Write a program to display the pattern:
(a)
ABCDE
BCDE
CDE
DE
E
public class KboatStringPattern
{
Page 37 of 60
public static void main(String args[]) {
String word = "ABCDE";
int len = word.length();
(b)
A
BC
DEF
GHIJ
KLMNO
public class KboatStringPattern
{
public static void main(String args[]) {
char ch = 'A';
Page 38 of 60
Output
(c)
ABCDE
ABCDA
ABCAB
ABABC
AABCD
public class KboatStringPattern
{
public static void main(String args[]) {
String word = "ABCDE";
int len = word.length();
Page 39 of 60
Question 22
Write a program to generate a triangle or an inverted triangle till n terms based upon
the User’s choice of the triangle to be displayed.
Example 1:
Input: Type 1 for a triangle and
Type 2 for an inverted triangle
Enter your choice 1
Enter the number of terms 5
Sample Output:
*****
****
***
**
*
Example 2:
Input: Type 1 for a triangle and
Type 2 for an inverted triangle
Enter your choice 2
Enter the number of terms 5
Sample Output:
ABCDE
ABCD
ABC
AB
A
import java.util.Scanner;
switch (choice) {
case 1:
for (int i = 0; i <= n; i++) {
for (int j = 0; j < i; j++) {
System.out.print(' ');
}
for (int k = i; k <= n; k++) {
System.out.print('*');
}
System.out.println();
Page 40 of 60
}
break;
case 2:
n += 64;
for (int i = n; i >= 65; i--) {
for (int j = 65; j <= i; j++) {
System.out.print((char)j);
}
System.out.println();
}
break;
default:
System.out.println("Incorrect choice");
break;
}
}
}
Output
Page 41 of 60
Question 23
Write a program to generate a triangle or an inverted triangle based upon User’s
choice.
Example 1:
Input: Type 1 for a triangle and
Type 2 for an inverted triangle
Enter your choice 1
Enter a word : BLUEJ
Sample Output:
B
LL
UUU
EEEE
JJJJJ
Example 2:
Input: Type 1 for a triangle and
Type 2 for an inverted triangle
Enter your choice 2
Enter a word : BLUEJ
Sample Output:
BLUEJ
BLUE
BLU
BL
B
import java.util.Scanner;
switch (choice) {
case 1:
for(int i = 0; i < len; i++) {
for(int j = 0; j <= i; j++) {
System.out.print(word.charAt(i));
}
System.out.println();
}
Page 42 of 60
break;
case 2:
for(int i = len - 1; i >= 0; i--) {
for(int j = 0; j <= i; j++) {
System.out.print(word.charAt(j));
}
System.out.println();
}
break;
default:
System.out.println("Incorrect choice");
break;
}
}
}
Output
Page 43 of 60
Question 24
Using the switch statement, write a menu driven program for the following:
(a) To print the Floyd’s triangle:
1
2 3
4 5 6
7 8 9 10
11 12 13 14 15
(b) To display the following pattern:
I
IC
ICS
ICSE
For an incorrect option, an appropriate error message should be displayed.
import java.util.Scanner;
switch (ch) {
case 1:
int a = 1;
for (int i = 1; i <= 5; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(a++ + "\t");
}
System.out.println();
}
break;
case 2:
String s = "ICSE";
for (int i = 0; i < s.length(); i++) {
for (int j = 0; j <= i; j++) {
System.out.print(s.charAt(j) + " ");
}
System.out.println();
}
break;
default:
Page 44 of 60
System.out.println("Incorrect Choice");
}
}
}
Output
Question 25
Write a program in Java to store 10 different country names and their capitals in two
different Single Dimensional Arrays (SDA). Display the country names (that starts
with a vowel) along with their capitals in the given format.
Country Names Capital
xxxx xxxx
xxxx xxxx
import java.util.Scanner;
Page 45 of 60
for (int i = 0; i < SIZE; i++) {
System.out.print("Enter country name: ");
countries[i] = in.nextLine();
System.out.print("Enter its capital: ");
capitals[i] = in.nextLine();
}
System.out.println("Country Names\t\tCapital");
for (int i = 0; i < SIZE; i++) {
char ch = Character.toUpperCase(countries[i].charAt(0));
if (ch == 'A' ||
ch == 'E' ||
ch == 'I' ||
ch == 'O' ||
ch == 'U') {
System.out.println(countries[i] + "\t\t" + capitals[i]);
}
}
}
}
Page 46 of 60
Output
Page 47 of 60
Question 26
(a) Write a program in Java to store 20 different names and telephone numbers of
your friends in two different Single Dimensional Arrays (SDA). Now arrange all the
names in alphabetical order and display all the names along with their respective
telephone numbers using selection sort technique.
import java.util.Scanner;
//Selection Sort
for (int i = 0; i < SIZE - 1; i++) {
int min = i;
for (int j = i + 1; j < SIZE; j++) {
if (names[j].compareToIgnoreCase(names[min]) < 0) {
min = j;
}
}
String temp = names[min];
names[min] = names[i];
names[i] = temp;
long t = telNos[min];
telNos[min] = telNos[i];
telNos[i] = t;
}
System.out.println("Name\tTelephone Number");
for (int i = 0; i < SIZE; i++) {
System.out.println(names[i] + "\t" + telNos[i]);
}
}
}
Page 48 of 60
Output
Page 49 of 60
(b) Write a program to accept 10 names in a Single Dimensional Array (SDA). Display
the names whose first letter matches with the letter entered by the user.
Page 50 of 60
Sample Input:
Aman Shahi
Akash Gupta
Suman Mishra
and so on ..........
Sample Output:
Enter the alphabet: A
Aman Shahi
Akash Gupta
.....
.....
import java.util.Scanner;
Page 51 of 60
Output
Question 27
Write a program to input twenty names in an array. Arrange these names in
ascending order of letters, using the bubble sort technique.
Sample Input:
Rohit, Devesh, Indrani, Shivangi, Himanshu, Rishi, Piyush, Deepak, Abhishek,
Kunal, .....
Sample Output:
Abhishek, Deepak, Devesh, Himanshu, Indrani, Kunal, Piyush, Rishi, Rohit,
Shivangi, .....
import java.util.Scanner;
Page 52 of 60
String names[] = new String[20];
System.out.println("Enter 20 names:");
for (int i = 0; i < names.length; i++) {
names[i] = in.nextLine();
}
//Bubble Sort
for (int i = 0; i < names.length - 1; i++) {
for (int j = 0; j < names.length - 1 - i; j++) {
if (names[j].compareToIgnoreCase(names[j + 1]) > 0) {
String temp = names[j + 1];
names[j + 1] = names[j];
names[j] = temp;
}
}
}
System.out.println("\nSorted Names");
for (int i = 0; i < names.length; i++) {
System.out.println(names[i]);
}
}
}
Page 53 of 60
Output
Page 54 of 60
Page 55 of 60
Question 28
Write a program in Java to input the names of 10 cities in a Single Dimensional
Array. Display only those names which begin with a consonant but end with a vowel.
Sample Input: Kolkata, Delhi, Bengaluru, Jamshedpur, Bokaro, .......
Sample Output: Kolkata
Delhi
Bengaluru
Bokaro
....
....
import java.util.Scanner;
if (letter == 'A' ||
letter == 'E' ||
letter == 'I' ||
letter == 'O' ||
letter == 'U')
return true;
return false;
}
Page 56 of 60
Output
Question 29
Write a program in Java to store 10 words in a Single Dimensional Array. Display
only those words which are Palindrome.
Sample Input: MADAM, TEACHER, SCHOOL, ABBA, .........
Sample Output: MADAM
ABBA
..........
..........
import java.util.Scanner;
Page 57 of 60
System.out.println("Enter 10 words:");
System.out.println("\nPalindrome Words:");
if (isPalin)
System.out.println(words[i]);
}
}
}
Output
Page 58 of 60
Question 30
Write a program to accept the names of 10 cities in a single dimensional string array
and their STD (Subscribers Trunk Dialling) codes in another single dimension integer
array. Search for the name of a city input by the user in the list. If found, display
"Search Successful" and print the name of the city along with its STD code, or else
display the message "Search unsuccessful, no such city in the list".
import java.util.Scanner;
int idx;
for (idx = 0; idx < SIZE; idx++) {
if (city.compareToIgnoreCase(cities[idx]) == 0) {
break;
}
}
Page 59 of 60
Output
Page 60 of 60