Program – no. of words starts with Vowel


Write a Java program to input a sentence and count the number of words that start with a vowel (A, E, I, O, U). The program should be case-insensitive and display the count.

Example:
Input: "An elephant is outside the umbrella"
Output: Number of words starting with a vowel: 4

import java.util.Scanner;

public class VowelWordCounter {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        // Input sentence
        System.out.print("Enter a sentence: ");
        String sentence = sc.nextLine();
        sc.close();

        int vowelWordCount = 0;
        int length = sentence.length();
        boolean isWord = false; // Flag to track a new word

        for (int i = 0; i < length; i++) {
            char ch = sentence.charAt(i);

            // Check if current character is a letter (indicating start of a word)
            if (Character.isLetter(ch)) {
                if (!isWord) { // New word detected
                    isWord = true;
                    char firstChar = Character.toLowerCase(ch); // Convert to lowercase
                    if ("aeiou".indexOf(firstChar) != -1) { // Check if it starts with a vowel
                        vowelWordCount++;
                    }
                }
            } else {
                isWord = false; // Reset flag when encountering space or punctuation
            }
        }

        // Output the count
        System.out.println("Number of words starting with a vowel: " + vowelWordCount);
    }
}

Loops through each character in the sentence.
Detects the start of a word (first letter after a space or punctuation).
Checks if the first letter is a vowel (aeiou).
Counts only words that start with vowels.

Output:

Enter a sentence: An elephant is outside the umbrella
Number of words starting with a vowel: 4

Binary Search


import java.util.Scanner;

public class BinSearch

{   public static void main(String args[])

{    int c, first, last, middle, n, search, array[];

Scanner in = new Scanner(System.in);

System.out.println("Enter number of elements");

n = in.nextInt();

array = new int[n];

System.out.println("Enter " + n + " integers");

for (c = 0; c < n; c++)

array[c] = in.nextInt();

System.out.println("Enter value to find");

search = in.nextInt();

first  = 0;

last   = n - 1;

middle = (first + last)/2;

while( first <= last )

{

if ( array[middle] < search )

first = middle + 1;

else if ( array[middle] == search )

{

System.out.println(search + "found at location " + (middle + 1) + ".");

break;

}

else

last = middle - 1;

middle = (first + last)/2;

}

if ( first > last )

System.out.println(search + " is not present in the list.\n");

}

}

Linear Search / Sequential Search


to check if  an element is present in the given list, we compare key element (search element)  with every element in the list. If the number is found then display success otherwise the list doesn’t contain the element, that we are searching displays Search Unsuccessful.

import java.io.*;
public class LinearSearch{
public static void main(String args[]) throws IOException{
InputStreamReader read=new InputStreamReader(System.in);
BufferedReader br=new BufferedReader(read);
int a[]= new int[20];
int i, size, item, flag=0;
System.out.println(“Enter the size of the array:”);
size=Integer.parseInt(br.readLine());
System.out.println(“Enter the elements of the array:”);
for (i=0;i<size;i++){
a[i]=Integer.parseInt(br.readLine());
}
System.out.println(“Element to search:”);
item=Integer.parseInt(br.readLine());
for(i=0;i<size;i++){
if(item==a[i])
{
flag=1;
break;
}       }

if(flag==1)
System.out.println(item+”found in position”+(i+1));
else
System.out.println(“Search Unsuccessful”);

}}

 

Output:

Enter the size of the array:

5

Enter the elements of the array:

45

25

41

42

56

Element to search:

41

41 found in position 3

Design a class to overload a function compare()


Design a class Perform to overload a function  as follows:
(i) void compare (int, int)    – to compare two integer values and print the greater of the two integers.
(ii) void compare(char, char)  – to compare the numeric value of two characters and print with the higher numeric value.
(iii)void compare(String, String)  –  to compare the length of the two strings and print the longer of the two.

Answer:

class Perform
{
void compare(int m, int n)
{
if(m > n)
System.out.println(“The first number is greater”+m);
else
System.out.println(“The second  number is greater”+n);
}
void compare(char c, char d)
{
if(c > d)
System.out.println(“The first character is greater and the numeric  value”+(int)c);
else
System.out.println(“The second character is greater and the numeric  value”+(int)d);
}
void compare(String s1, String s2)
{
if(s1.compareTo(s2) > 0)
System.out.println(“The first string is longer”+s1);
else
System.out.println(“The second string is longer”+s2);
}

}

Program to check an alphabet using method


class Alphabet
{
 public void checkVowel(char ch)
{
if(ch==‘a’||ch==‘e’||ch==‘i’||ch==‘o’||ch==‘u’||ch==‘A’||ch==‘E’||ch==‘I’||ch==‘O’||ch==‘U’)
{
System.out.println(“Given alphabet “+ch+” is an Vowel”);
}
else if((ch>=‘a’&&ch<=‘z’)||(ch>=‘A’&&ch<=‘Z’))
System.out.println(“Given alphabet “+ch+” is Consonant”);
else
System.out.println(“Not an alphabet”);
}
public static void main(String[ ] arg)
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

System.out.println(“Enter a character : “);

char chr=(char)br.read();

checkVowel(chr);

}

}

Analyze the given code fragment


Analyze the given program segment and answer the following questions :
(i) Write the output of the code snippet.
(ii) How many times does the body of the loop gets executed?

for(int a=5; a<=20; a+=5)
{
if(a%3 == 0)
break;
else
if(a%5 == 0)
System.out.println(a);
continue;
}

answer :
(i) 5 10
(ii) 3 times

Working :

When a = 5,
if(a%3 == 0) is false
if(a%5 == 0) is true
so it prints ‘5’
Loop executed 1 time.

When a = 10,
if(a%3 == 0) is false
if(a%5 == 0) is true
so it prints ‘10’
Loop executed 2 times.

When a = 15,
if(a%3 == 0) is true
so, break is encountered and loop terminates.
Loop executed 3 times.

 

ISC Computer Science Practical – Marking pattern


ISC Computer science —  practical paper(30 marks)

Marking procedure for practical paper

Total Marks : 30

Algorithm : 3 marks

Program : 5 marks

Comments/Mnemonics code : 2 marks

Printed code that compiled correctly : 2 marks

Run the code and get correct output : 5 marks

Viva – 3 marks

Programs done in lab class throughout the year : 10 marks ( 5 from external examiner and 5 mark from your computer teacher)