Spurthy College Of Science And Management Studies
BANGALORE UNIVERSITY
BACHELOR OF COMPUTER APPLICATIONS (BCA)
BCA504P : JAVA PROGRAMMING LAB
PART - A
1. Write a program to find factorial of list of number reading input as command
line argument.
2. Write a program to display all prime numbers between two limits.
3. Write a program to sort list of elements in ascending and descending order and
show the exception handling.
4. Write a program to implement all string operations.
5. Write a program to find area of geometrical figures using method.
6. Write a program to implement constructor overloading by passing different
number of parameter of different types.
7. Write a program to create student report using applet, read the input using text
boxes and display the o/p using buttons.
8. Write a program to calculate bonus for different departments using method
overriding.
9. Write a program to implement thread, applets and graphics by implementing
animation of ball moving.
10. Write a program to implement mouse events and keyboard events.
PART – B
During practical examination the External and Internal examiners may prepare
examquestion paper related to theory syllabus apart from Part-A. (A minimum of
10Programs has to be prepared).
Note :
a) The candidate has to write both the programs One from Part-A and other from
Part-B and execute one program as of External examiner choice.
b) A minimum of 10 Programs has to be done in Part-B and has to be maintained
in
the Practical Record.
c) Scheme of Evaluation is as follows:
Writing two programs - 10 Marks
Execution of one program - 10 Marks
Formatting the Output - 05 Marks
Viva - 05 Marks
Record - 05 Marks
Total - 35 Marks
Dept of BCA Page 1
Spurthy College Of Science And Management Studies
BCA504P – JAVA Programming Lab Manual
PART A
1. Write a program to find factorial of list of number reading input as
command line argument.
Source Code
public class Factorial
{
public static void main(String args[])
{
int[] arr = new int[10];
int fact;
if(args.length==0)
{
System.out.println("No Command line arguments");
return;
}
for (int i=0; i<args.length;i++)
{
arr[i]=Integer.parseInt(args[i]);
}
for(int i=0;i<args.length;i++)
{
fact=1;
while(arr[i]>0)
{
fact=fact*arr[i];
arr[i]--;
}
System.out.println("Factorial of "+ args[i]+"is
: "+fact);
}
}
}
Dept of BCA Page 2
Spurthy College Of Science And Management Studies
2. Write a program to display all prime numbers between two limits.
Source Code
class Prime
{
public static void main(String args[])
{
int i,j;
if(args.length<2)
{
System.out.println("No command line Argruments ");
return;
}
int num1=Integer.parseInt(args[0]);
int num2=Integer.parseInt(args[1]);
System.out.println("Prime number between"+num1+"and" +num2+"
are:");
for(i=num1;i<=num2;i++)
{
for(j=2;j<i;j++)
{
int n=i%j;
if(n==0)
{
break;
}
}
if(i==j)
{
System.out.println(" "+i);
}
}
}
3. Write a program to sort list of elements in ascending and descending
order and show the exception handling.
Source Code
class Sorting
Dept of BCA Page 3
Spurthy College Of Science And Management Studies
{
public static void main(String args[])
{
int a[] = new int[5];
try
{
for(int i=0;i<5;i++)
a[i]=Integer.parseInt(args[i]);
System.out.println("Before Sorting\n");
for(int i=0;i<5;i++)
System.out.println(" " + a[i]);
bubbleSort(a,5);
System.out.println("\n\n After Sorting\n");
System.out.println("\n\nAscending order \n");
for(int i=0;i<5;i++)
System.out.print(" "+a[i]);
System.out.println("\n\nDescending order \n");
for(int i=4;i>=0;i--)
System.out.print(" "+a[i]);
}
catch(NumberFormatException e)
{
System.out.println("Enter only integers");
}
catch(ArrayIndexOutOfBoundsException e)
{
System.out.println("Enter only 5 integers");
private static void bubbleSort(int [] arr, int length)
{
int temp,i,j;
for(i=0;i<length-1;i++)
{
for(j=0;j<length-1-i;j++)
{
if(arr[j]>arr[j+1])
{
temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
Dept of BCA Page 4
Spurthy College Of Science And Management Studies
}
}
}
4. Write a program to implement all string operations.
Source code
class StringOperation
{
public static void main(String args[])
{
String s1="Hello";
String s2="World";
System.out.println("The strings are "+s1+"and"+s2);
int len1=s1.length();
int len2=s2.length();
System.out.println("The length of "+s1+" is :"+len1);
System.out.println("The length of "+s2+" is :"+len2);
System.out.println("The concatenation of two strings =
"+s1.concat(s2));
System.out.println("First character of
"+s1+"is="+s1.charAt(0));
System.out.println("The uppercase of
"+s1+"is="+s1.toUpperCase());
System.out.println("The lower case of
"+s2+"is="+s2.toLowerCase());
System.out.println(" the letter e occurs at
position"+s1.indexOf("e")+"in"+s1);
System.out.println("Substring of "+s1+"starting from
index 2 and ending at 4 is = "+s1.substring(2,4));
System.out.println("Replacing 'e' with 'o' in "+s1+"is
="+s1.replace('e','o'));
boolean check = s1.equals(s2);
if(check==false)
System.out.println(""+s1+" and "+s2+" are not
same");
else
System.out.println("" + s1+" and " + s2+"are same");
Dept of BCA Page 5
Spurthy College Of Science And Management Studies
5. Write a program to find area of geometrical figures using method.
Source code:
import java.io.*;
class Area
{
public static double circleArea(double r)
{
return Math.PI*r*r;
}
public static double squareArea(double side)
{
return side*side;
}
public static double rectArea(double width, double height)
{
return width*height;
}
public static double triArea(double base, double height1)
{
return 0.5*base*height1;
}
public static String readLine()
{
String input=" ";
BufferedReader in=new BufferedReader(new
InputStreamReader(System.in));
try
{
input = in.readLine();
}catch(Exception e)
{
System.out.println("Error" + e);
}
return input;
}
Dept of BCA Page 6
Spurthy College Of Science And Management Studies
public static void main(String args[])
{
System.out.println("Enter the radius");
Double radius=Double.parseDouble(readLine());
System.out.println("Area of circle = " +
circleArea(radius));
System.out.println("Enter the side");
Double side=Double.parseDouble(readLine());
System.out.println("Area of square =
"+squareArea(side));
System.out.println("Enter the Width");
Double width=Double.parseDouble(readLine());
System.out.println("Enter the height");
Double height=Double.parseDouble(readLine());
System.out.println("Area of Rectangle = " +
rectArea(width,height));
System.out.println("Enter the Base");
Double base=Double.parseDouble(readLine());
System.out.println("Enter the Height");
Double height1=Double.parseDouble(readLine());
System.out.println("Area of traingle
="+triArea(base,height1));
6. Write a program to implement constructor overloading by passing
different number of parameter of different types.
Source code
public class Box
{
int length,breadth,height;
Box()
{
length=breadth=height=2;
System.out.println("Intialized with default
constructor");
}
Box(int l, int b)
{
length=l;
breadth=b;
Dept of BCA Page 7
Spurthy College Of Science And Management Studies
height=2;
System.out.println("Initialized with
parameterized constructor having 2 params");
Box(int l, int b, int h)
{
length=l;
breadth=b;
height=h;
System.out.println("Initialized with parameterized
constructor having 3 params");
public int getVolume()
{
return length*breadth*height;
public static void main(String args[])
{
Box box1 = new Box();
System.out.println("The volume of Box 1 is :"+
box1.getVolume());
Box box2 = new Box(10,20);
System.out.println("Volume of Box 2 is :" +
box2.getVolume());
Box box3 = new Box(10,20,30);
System.out.println("Volume of Box 3 is :" +
box3.getVolume());
7. Write a program to create student report using applet, read the input
using text boxes and display the o/p using buttons.
Source code
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
Dept of BCA Page 8
Spurthy College Of Science And Management Studies
/* <applet code="StudentReport.class",width=500 height=500>
</applet>*/
public class StudentReport extends Applet implements
ActionListener
{
Label lblTitle,lblRegno,lblCourse,lblSemester,lblSub1,
lblSub2;
TextField txtRegno,txtCourse,txtSemester,txtSub1,txtSub2;
Button cmdReport;
String rno="", course="",
sem="",sub1="",sub2="",avg="",heading="";
public void init()
{
GridBagLayout gbag= new GridBagLayout();
GridBagConstraints gbc = new GridBagConstraints();
setLayout(gbag);
lblTitle = new Label("Enter Student Details");
lblRegno= new Label("Register Number");
txtRegno=new TextField(25);
lblCourse=new Label("Course Name");
txtCourse=new TextField(25);
lblSemester=new Label("Semester ");
txtSemester=new TextField(25);
lblSub1=new Label("Marks of Subject1");
txtSub1=new TextField(25);
lblSub2=new Label("Marks of Subject2");
txtSub2=new TextField(25);
cmdReport = new Button("View Report");
// Define the grid bag
gbc.weighty=2.0;
gbc.gridwidth=GridBagConstraints.REMAINDER;
gbc.anchor=GridBagConstraints.NORTH;
gbag.setConstraints(lblTitle,gbc);
//Anchor most components to the right
gbc.anchor=GridBagConstraints.EAST;
gbc.gridwidth=GridBagConstraints.RELATIVE;
gbag.setConstraints(lblRegno,gbc);
gbc.gridwidth=GridBagConstraints.REMAINDER;
gbag.setConstraints(txtRegno,gbc);
gbc.gridwidth=GridBagConstraints.RELATIVE;
gbag.setConstraints(lblCourse,gbc);
Dept of BCA Page 9
Spurthy College Of Science And Management Studies
gbc.gridwidth=GridBagConstraints.REMAINDER;
gbag.setConstraints(txtCourse,gbc);
gbc.gridwidth=GridBagConstraints.RELATIVE;
gbag.setConstraints(lblSemester,gbc);
gbc.gridwidth=GridBagConstraints.REMAINDER;
gbag.setConstraints(txtSemester,gbc);
gbc.gridwidth=GridBagConstraints.RELATIVE;
gbag.setConstraints(lblSub1,gbc);
gbc.gridwidth=GridBagConstraints.REMAINDER;
gbag.setConstraints(txtSub1,gbc);
gbc.gridwidth=GridBagConstraints.RELATIVE;
gbag.setConstraints(lblSub2,gbc);
gbc.gridwidth=GridBagConstraints.REMAINDER;
gbag.setConstraints(txtSub2,gbc);
gbc.anchor=GridBagConstraints.CENTER;
gbag.setConstraints(cmdReport,gbc);
add(lblTitle);
add(lblRegno);
add(txtRegno);
add(lblCourse);
add(txtCourse);
add(lblSemester);
add(txtSemester);
add(lblSub1);
add(txtSub1);
add(lblSub2);
add(txtSub2);
add(cmdReport);
cmdReport.addActionListener(this);
}
public void actionPerformed(ActionEvent ae)
{
try{
if(ae.getSource() == cmdReport)
{
rno=txtRegno.getText().trim();
course=txtCourse.getText().trim();
sem=txtSemester.getText().trim();
sub1=txtSub1.getText().trim();
sub2=txtSub2.getText().trim();
avg="Avg Marks:" + ((Integer.parseInt(sub1) +
Integer.parseInt(sub2))/2);
Dept of BCA Page 10
Spurthy College Of Science And Management Studies
rno="Register No:" + rno;
course="Course :"+ course;
sem="Semester :"+sem;
sub1="Subject1 :"+sub1;
sub2="Subject2 :"+sub2;
heading="Student Report";
removeAll();
showStatus("");
repaint();
}
}catch(NumberFormatException e)
{
showStatus("Invalid Data");
}
}
public void paint(Graphics g)
{
g.drawString(heading,30,30);
g.drawString(rno,30,80);
g.drawString(course,30,100);
g.drawString(sem,30,120);
g.drawString(sub1,30,140);
g.drawString(sub2,30,160);
g.drawString(avg,30,180);
}
8. Write a program to calculate bonus for different departments using
method overriding.
Source code
abstract class Department
{
double salary,bonus,totalsalary;
public abstract void calBonus(double salary);
public void displayTotalSalary(String dept)
{
System.out.println(dept+"\t"+salary+"\t\t"+bonus+"\t"+total
salary);
}
}
class Accounts extends Department
{
Dept of BCA Page 11
Spurthy College Of Science And Management Studies
public void calBonus(double sal)
{
salary = sal;
bonus = sal * 0.2;
totalsalary=salary+bonus;
}
}
class Sales extends Department
{
public void calBonus(double sal)
{
salary = sal;
bonus = sal * 0.3;
totalsalary=salary+bonus;
}
}
public class BonusCalculate
{
public static void main(String args[])
{
Department acc = new Accounts();
Department sales = new Sales();
acc.calBonus(10000);
sales.calBonus(20000);
System.out.println("Department \t Basic Salary \t Bonus
\t Total Salary");
System.out.println("-----------------------------------
---------------------------");
acc.displayTotalSalary("Accounts Dept");
sales.displayTotalSalary("Sales Dept");
System.out.println("-----------------------------------
----------------------------");
}
}
9. Write a program to implement thread, applets and graphics by
implementing animation of ball moving.
Source code :
import java.awt.*;
import java.applet.*;
/* <applet code="MovingBall.class" height=300
width=300></applet> */
public class MovingBall extends Applet implements Runnable
{
Dept of BCA Page 12
Spurthy College Of Science And Management Studies
int x,y,dx,dy,w,h;
Thread t;
boolean flag;
public void init()
{
w=getWidth();
h=getHeight();
setBackground(Color.yellow);
x=100;
y=10;
dx=10;
dy=10;
}
public void start()
{
flag=true;
t=new Thread(this);
t.start();
}
public void paint(Graphics g)
{
g.setColor(Color.blue);
g.fillOval(x,y,50,50);
}
public void run()
{
while(flag)
{
if((x+dx<=0)||(x+dx>=w))
dx=-dx;
if((y+dy<=0)||(y+dy>=h))
dy=-dy;
x+=dx;
y+=dy;
repaint();
try
{
Thread.sleep(300);
}
catch(InterruptedException e)
{}
}
}
public void stop()
{
t=null;
flag=false;
}
}
Dept of BCA Page 13
Spurthy College Of Science And Management Studies
10. Write a program to implement keyboard events.
Source code:
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
/*<applet code="KeyBoardEvents" width=400
height=400></applet>*/
public class KeyBoardEvents extends Applet implements
KeyListener
{
String str="";
public void init()
{
addKeyListener(this);
requestFocus();
}
public void keyTyped(KeyEvent e)
{
str+=e.getKeyChar();
repaint(0);
public void keyPressed(KeyEvent e)
{
showStatus("Key Pressed");
}
public void keyReleased(KeyEvent e)
{
showStatus("Key Released");
}
public void paint(Graphics g)
{
g.drawString(str,15,15);
}
}
Dept of BCA Page 14
Spurthy College Of Science And Management Studies
PART B
1) Write a java program to check whether the given string or
number is palindrome or not.
Source code:
import java.util.*;
class Palindrome
public static void main(String args[])
String original, reverse = ""; // Objects of String class
Scanner in = new Scanner(System.in);
System.out.println("Enter a string/number to check if it is a
palindrome");
original = in.nextLine();
int length = original.length();
for ( int i = length - 1; i >= 0; i-- )
reverse = reverse + original.charAt(i);
if (original.equals(reverse))
System.out.println("Entered string/number is a
palindrome.");
else
System.out.println("Entered string/number isn't a
palindrome.");
2) Write a java program to find whether the given no is Armstrong
or not.
Dept of BCA Page 15
Spurthy College Of Science And Management Studies
Source code:
import java.util.Scanner;
public class armstrong2
public static void main(String[] args) {
int num, number, temp, total = 0;
System.out.println("Ënter 3 Digit Number");
Scanner scanner = new Scanner(System.in);
num = scanner.nextInt();
scanner.close();
number = num;
for( ;number!=0;number /= 10)
temp = number % 10;
total = total + temp*temp*temp;
if(total == num)
System.out.println(num + " is an Armstrong number");
else
System.out.println(num + " is not an Armstrong number");
3) Write a java program to print the given pattern.
1
Dept of BCA Page 16
Spurthy College Of Science And Management Studies
2 4
3 6 9
Source code:
public class pattern2
public static void main(String[] args)
int lines=10;
int i=1;
int j;
for(i=1;i<=lines;i++){// this loop is used to print the lines
for(j=1;j<=i;j++){// this loop is used to print lines
System.out.print(i*j+" ");
System.out.println("");
4. Write a Java Program to calculate simple interest
Source code
import java.util.Scanner;
public class JavaExample
public static void main(String args[])
float p, r, t, sinterest;
Scanner scan = new Scanner(System.in);
System.out.print("Enter the Principal : ");
Dept of BCA Page 17
Spurthy College Of Science And Management Studies
p = scan.nextFloat();
System.out.print("Enter the Rate of interest : ");
r = scan.nextFloat();
System.out.print("Enter the Time period : ");
t = scan.nextFloat();
scan.close();
sinterest = (p * r * t) / 100;
System.out.print("Simple Interest is: " +sinterest);
5. Write a Java program to reverse a number using while Loop
Source code
import java.util.Scanner;
class ReverseNumberWhile
public static void main(String args[])
int num=0;
int reversenum =0;
System.out.println("Input your number and press enter: ");
//This statement will capture the user input
Scanner in = new Scanner(System.in);
//Captured input would be stored in number num
num = in.nextInt();
//While Loop: Logic to find out the reverse number
while( num != 0 )
Dept of BCA Page 18
Spurthy College Of Science And Management Studies
reversenum = reversenum * 10;
reversenum = reversenum + num%10;
num = num/10;
System.out.println("Reverse of input number is: "+reversenum);
6. Write a Java program to sum the elements of an array
Source code
class SumOfArray
public static void main(String args[])
int[] array = {10, 20, 30, 40, 50, 10};
int sum = 0;
//Advanced for loop
for( int num : array)
sum = sum+num;
System.out.println("Sum of array elements is:"+sum);
7. Write a Java Program to count the total number of characters in a
string
Source code
Dept of BCA Page 19
Spurthy College Of Science And Management Studies
public class CountCharacter
public static void main(String[] args)
String string = "The best of both worlds";
int count = 0;
//Counts each character except space
for(int i = 0; i < string.length(); i++)
if(string.charAt(i) != ' ')
count++;
//Displays the total number of characters present in the
given string
System.out.println("Total number of characters in a string:
" + count);
8. Write a Java Program to check Even or Odd number
Source code
import java.util.Scanner;
class CheckEvenOdd
public static void main(String args[])
Dept of BCA Page 20
Spurthy College Of Science And Management Studies
int num;
System.out.println("Enter an Integer number:");
//The input provided by user is stored in num
Scanner input = new Scanner(System.in);
num = input.nextInt();
/* If number is divisible by 2 then it's an even number
* else odd number*/
if ( num % 2 == 0 )
System.out.println("Entered number is even");
else
System.out.println("Entered number is odd");
9. Write a Java program to calculate area of Square
Source code
import java.util.Scanner;
class SquareAreaDemo
public static void main (String[] args)
System.out.println("Enter Side of Square:");
//Capture the user's input
Scanner scanner = new Scanner(System.in);
//Storing the captured value in a variable
double side = scanner.nextDouble();
//Area of Square = side*side
double area = side*side;
Dept of BCA Page 21
Spurthy College Of Science And Management Studies
System.out.println("Area of Square is: "+area);
10. Write a Java program to print Fibonacci series
Source code
class FibonacciExample1
public static void main(String args[])
int n1=0,n2=1,n3,i,count=10;
System.out.print(n1+" "+n2);//printing 0 and 1
for(i=2;i<count;++i)//loop starts from 2 because 0 and 1 are
already printed
n3=n1+n2;
System.out.print(" "+n3);
n1=n2;
n2=n3;
END OF FILE
Dept of BCA Page 22