Upload
magesh-karthik
View
1.236
Download
1
Embed Size (px)
Citation preview
/*Program for Rational numbers
@Author III CSE
@Version 1.0
*/
import java.io.*;
import java.util.*;
class Rational
{
int n,d;
/* This constructor to get Numerator and Denominator value*/
Rational(int x,int y)
{
n=x;
d=y;
System.out.println("NUMERATOR="+n);
System.out.println("DENOMINATOR="+d);
System.out.println("BEFORE SIMPLIFICATION="+n+"/"+d);
}
/* This method finds the reduce form of Numerator and Denominator value*/
public void reducedform()
{
if(n<d)
{
for(int i=2;i<=n;i++)
{
while((n%i)==0 && (d%i)==0)
{
n=n/i;
d=d/i;
}
}
}
else
{
for(int i=2;i<=d;i++)
{
while((n%i)==0 && (d%i)==0)
{
n=n/i;
d=d/i;
}
}
}
}
void display()
{
System.out.println("Reduced form="+n+"/"+d);
}
public static void main(String args[])
{
Scanner S=new Scanner(System.in);
System.out.println("******ENTER NUMERATOR VALUE******");
int A=S.nextInt();
System.out.println("******ENTER DENOMINATOR VALUE******");
int B=S.nextInt();
Rational R=new Rational(A,B);
R.reducedform();
R.display();
}
}
OUTPUT:
D:\Java\jdk1.5.0_03\bin>javac Rational.java
D:\ Java\jdk1.5.0_03\bin>java Rational
******ENTER NUMERATOR VALUE******
50
******ENTER DENOMINATOR VALUE******
100
NUMERATOR=50
DENOMINATOR=100
BEFORE SIMPLIFICATION=50/100
Reduced form=1/2
D:\ Java\jdk1.5.0_03\bin>java Rational
******ENTER NUMERATOR VALUE******
60
******ENTER DENOMINATOR VALUE******
20
NUMERATOR=60
DENOMINATOR=20
BEFORE SIMPLIFICATION=60/20
Reduced form=3/1
D:\ Java\jdk1.5.0_03\bin>
/*Program for user defined package-date class
@Author III CSE
@Version 1.0
*/
package Date;
import java.util.GregorianCalendar;
public class CurrentDate
{
public void MDY()
{
GregorianCalendar cal = new GregorianCalendar();
int month = cal.get(GregorianCalendar.MONTH);
int year = cal.get(GregorianCalendar.YEAR);
int day = cal.get(GregorianCalendar.DAY_OF_MONTH);
System.out.println("Current date : " + day + "/" + (month + 1) + "/" + year);
}
public void HMS()
{
GregorianCalendar cal = new GregorianCalendar();
String am_pm;
int hour = cal.get(GregorianCalendar.HOUR);
int minute = cal.get(GregorianCalendar.MINUTE);
int second = cal.get(GregorianCalendar.SECOND);
if(cal.get(GregorianCalendar.AM_PM) == 0)
am_pm = "PM";
else
am_pm = "AM";
System.out.println("Current Time : " + hour + ":" + minute + ":" + second + " " + am_pm);
}
}
/***Application Program with imported User Defined Package***/
import Date.*;
class DISPLAY
{
public static void main(String args[])
{
CurrentDate D=new CurrentDate();
System.out.println("**************");
D.MDY();
System.out.println("**************");
D.HMS();
}
}
OUTPUT:
D:\Java\jdk1.5.0_03\bin>cd Date
D:\ Java\jdk1.5.0_03\bin\Date>set path=” D:\Java\jdk1.5.0_03\bin”
D:\ Java\jdk1.5.0_03\bin\Date>javac CurrentDate.java
D:\ Java\jdk1.5.0_03\bin\Date>cd..
D:\ Java\jdk1.5.0_03\bin>javac DISPLAY.java
D:\ Java\jdk1.5.0_03\bin>java DISPLAY
**************
Current date : 08/10/2010
**************
Current Time : 07:10:27 AM
D:\ Java\jdk1.5.0_03\bin>
/***************PROGRAM FOR LISP-LIST IN JAVA****************/
import java.util.*;
class LispList
{
public Object CAR()
{
return(link.getFirst());
}
public List CDR()
{
return(link.subList(1,link.size()));
}
public void CONS(LinkedList a)
{
link.offerFirst(a);
}
public void CONS(int i)
{
link.offerFirst(i);
}
public void CONS(String s)
{
link.offerFirst(s);
}
public Object getList()
{
return link;
}
public int getSize()
{
return (link.size());
}
private LinkedList link=new LinkedList();
}
public class LispListTest
{
public static void main(String args[])
{
LispList lisp=new LispList();
Scanner read=new Scanner(System.in);
LinkedList l=new LinkedList();
System.out.println("Enter three integer elements to store in LinkedList");
l.addFirst(read.nextInt());
l.addFirst(read.nextInt());
l.addFirst(read.nextInt());
lisp.CONS(l);
System.out.println("Enter two integers to concatenate into a lisp list");
lisp.CONS(read.nextInt());
lisp.CONS(read.nextInt());
System.out.println("Enter a string to concatenate into a lisp list");
lisp.CONS(read.next());
System.out.println("Elements in the lisp list"+lisp.getList());
System.out.println("size of the lisp list"+lisp.getSize());
System.out.println("result of car operation in Lisp list"+lisp.CAR());
System.out.println("result of car operation in Lisp list"+lisp.CDR());
}
}
OUTPUT:
D:\Java\jdk1.5.0_03\bin>javac LispListTest.java
D:\ Java\jdk1.5.0_03\bin>java LispListTest
Enter three integer elements to store in LinkedList
12 28 34
Enter two integers to concatenate into a lisp list
98 21
Enter a string to concatenate into a lisp list
java
Elements in the lisp list [java 21 98[34 28 12]]
size of the lisp list 4
result of car operation in Lisp list java
result of car operation in Lisp list [21 98[34 28 12]]
D:\ Java\jdk1.5.0_03\bin>
/**************PROGRAM FOR ADT STACK INTERFACE****************/
import java.util.*;
import java.lang.*;
interface stackDemo
{
public void push(int v);
public void pop();
}
class linkedlist implements stackDemo
{
LinkedList list = new LinkedList();
public void push(int v)
{
list.addFirst(v);
System.out.println(list);
}
public void pop()
{
list.removeFirst();
System.out.println(list);
}
}
class arraylist implements stackDemo
{
static int n=0;
ArrayList list = new ArrayList();
public void push(int v)
{
list.add(v);
n++;
System.out.println(list);
}
public void pop()
{
list.remove(--n);
System.out.println(list);
}
}
class stackall
{
public static void main(String args[])
{
int ch,lk,ak;
System.out.println("STACK IMPLEMENTATION USING ARRAY AND LINKED LIST");
System.out.println("ENTER YOUR CHOICE");
System.out.println("1.STACK IMPLEMENTATION USING LINKED LIST");
System.out.println("2.STACK IMPLEMENTATION USING ARRAY");
Scanner S=new Scanner(System.in);
ch=S.nextInt();
switch(ch)
{
case 1:
System.out.println("1.STACK IMPLEMENTATION USING LINKED LIST");
linkedlist L= new linkedlist();
Scanner T=new Scanner(System.in);
do
{
System.out.println("ENTER YOUR CHOICE 1.PUSH 2.POP");
lk=T.nextInt();
switch(lk)
{
case 1:
System.out.print("Enter elements : ");
int n = T.nextInt();
L.push(n);
break;
case 2:
try
{
L.pop();
System.out.println(L);
}
catch(NoSuchElementException k)
{
System.out.println("EMPTY STACK:"+k);
}
break;
default:
System.out.println("INVALID CHOICE");
break;
}
}while(lk<=2);
case 2:
System.out.println("1.STACK IMPLEMENTATION USING Array");
arraylist A= new arraylist();
Scanner x=new Scanner(System.in);
do
{
System.out.println("ENTER YOUR CHOICE 1.PUSH 2.POP");
ak=x.nextInt();
switch(ak)
{
case 1:
System.out.print("Enter elements : ");
int u = x.nextInt();
A.push(u);
break;
case 2:
try
{
A.pop();
System.out.println(A);
}
catch(ArrayIndexOutOfBoundsException km)
{
System.out.println("EMPTY STACK:"+km);
}
break;
default:
System.out.println("INVALID CHOICE");
break;
}
}while(ak<=2);
default:
System.out.println("INVALID CHOICE");
break;
}
}
}
OUTPUT:
D:\Java\jdk1.5.0_03\bin>javac stackall.java
D:\ Java\jdk1.5.0_03\bin>java stackall
STACK IMPLEMENTATION USING ARRAY AND LINKED LIST
ENTER YOUR CHOICE
1.STACK IMPLEMENTATION USING LINKED LIST
2.STACK IMPLEMENTATION USING ARRAY
1
1.STACK IMPLEMENTATION USING LINKED LIST
ENTER YOUR CHOICE 1.PUSH 2.POP
1
Enter elements : 25
[25]
ENTER YOUR CHOICE 1.PUSH 2.POP
1
Enter elements : 50
[50, 25]
ENTER YOUR CHOICE 1.PUSH 2.POP
2
[25]
ENTER YOUR CHOICE 1.PUSH 2.POP
2
[]
ENTER YOUR CHOICE 1.PUSH 2.POP
2
EMPTY STACK:java.util.NoSuchElementException
ENTER YOUR CHOICE 1.PUSH 2.POP
6
INVALID CHOICE
1.STACK IMPLEMENTATION USING Array
ENTER YOUR CHOICE 1.PUSH 2.POP
1
Enter elements : 90
[90]
ENTER YOUR CHOICE 1.PUSH 2.POP
1
Enter elements : 66
[90, 66]
ENTER YOUR CHOICE 1.PUSH 2.POP
1
Enter elements : 88
[90, 66, 88]
ENTER YOUR CHOICE 1.PUSH 2.POP
2
[90, 66]
ENTER YOUR CHOICE 1.PUSH 2.POP
2
[90]
ENTER YOUR CHOICE 1.PUSH 2.POP
2
[]
ENTER YOUR CHOICE 1.PUSH 2.POP
2
EMPTY STACK:java.lang.ArrayIndexOutOfBoundsException: -1
ENTER YOUR CHOICE 1.PUSH 2.POP
9
INVALID CHOICE
INVALID CHOICE
D:\ Java\jdk1.5.0_03\bin>
/****************PROGRAM FOR INHERITANCE AND POLYMORPHISM***********/
import java.io.*;
import java.util.*;
abstract class vehicle
{
String name;
double weight;
int wheels;
abstract void display();
}
class car extends vehicle
{
public car(String name,double weight,int wheels)
{
this.name=name;
this.weight=weight;
this.wheels=wheels;
System.out.println("NAME:"+name);
System.out.println("WEIGHT:"+weight);
System.out.println("NO.OF WHEELS:"+wheels);
}
public void display()
{
System.out.println("*********CAR DETAILS*********");
System.out.println("NAME:"+name);
System.out.println("WEIGHT:"+weight);
System.out.println("NO.OF WHEELS:"+wheels);
}
}
class Trucks extends vehicle
{
public Trucks(String name,double weight,int wheels)
{
this.name=name;
this.weight=weight;
this.wheels=wheels;
System.out.println("NAME:"+name);
System.out.println("WEIGHT:"+weight);
System.out.println("NO.OF WHEELS:"+wheels);
}
public void display()
{
System.out.println("*********TRUCKS DETAILS*********");
System.out.println("NAME:"+name);
System.out.println("WEIGHT:"+weight);
System.out.println("NO.OF WHEELS:"+wheels);
}
}
class hierarchy
{
public static void main(String arg[])
{
Scanner S=new Scanner(System.in);
System.out.println("***********CAR**********");
System.out.println("***********ENTER CAR NAME**********");
String x=S.next();
System.out.println("***********ENTER CAR WEIGHT**********");
double y=S.nextDouble();
System.out.println("***********ENTER NO.OF WHEELS IN CAR**********");
int z=S.nextInt();
System.out.println("***********ENTER TRUCKS NAME**********");
String u=S.next();
System.out.println("***********ENTER TRUCKS WEIGHT**********");
Double v=S.nextDouble();
System.out.println("***********ENTER NO.OF WHEELS IN TRUCKS **********");
int w=S.nextInt();
car C=new car(x,y,z);
Trucks T=new Trucks(u,v,w);
C.display();
T.display();
}
}
OUTPUT:
D:\Java\jdk1.5.0_03\bin>javac hierarchy.java
D:\ Java\jdk1.5.0_03\bin>java hierarchy
***********CAR**********
***********ENTER CAR NAME**********
BENZ
***********ENTER CAR WEIGHT**********
10000
***********ENTER NO.OF WHEELS IN CAR**********
4
***********ENTER TRUCKS NAME**********
mahindra
***********ENTER TRUCKS WEIGHT**********
50000
***********ENTER NO.OF WHEELS IN TRUCKS **********
4
NAME:BENZ
WEIGHT:10000.0
NO.OF WHEELS:4
NAME:mahindra
WEIGHT:50000.0
NO.OF WHEELS:4
*********CAR DETAILS*********
NAME:BENZ
WEIGHT:10000.0
NO.OF WHEELS:4
*********TRUCKS DETAILS*********
NAME:mahindra
WEIGHT:50000.0
NO.OF WHEELS:4
D:\ Java\jdk1.5.0_03\bin>
/*****************PROGRAM FOR SERIALIZATION ********************/
/*****************SerializationWrite.java********************************/
import java.io.*;
import java.util.*;
class Currency implements Serializable
{
protected String currency;
protected int amount;
public Currency(String cur, int amt)
{
this.currency = cur;
this.amount = amt;
}
public String toString()
{
return currency + amount;
}
public String dollarToRupee(int amt)
{
return "Rs" + amt * 45;
}
}
class Rupee extends Currency
{
public Rupee(int amt)
{
super("Rs",amt);
}
}
class Dollar extends Currency
{
public Dollar(int amt)
{
super("$",amt);
}
}
public class SerializationWrite
{
public static void main(String args[])
{
Random r = new Random();
try
{
Currency currency;
FileOutputStream fos = new FileOutputStream("serial.txt");
ObjectOutputStream oos = new ObjectOutputStream(fos);
System.out.println("Writing to file using Object Serialization:");
for(int i=1;i<=10;i++)
{
Object[] obj = { new Rupee(r.nextInt(200)),new Dollar(r.nextInt(200)) };
currency = (Currency)obj[r.nextInt(2)]; // RANDOM Objects for Rs and $
System.out.println(currency);
oos.writeObject(currency);
oos.flush();
}
oos.close();
}
catch(Exception e)
{
System.out.println("Exception during Serialization: " + e);
}
}
}
/********************** SerializationRead.java**********************************/
import java.io.*;
import java.util.*;
public class SerializationRead
{
public static void main(String args[])
{
try
{
Currency obj;
FileInputStream fis = new FileInputStream("serial.txt");
ObjectInputStream ois = new ObjectInputStream(fis);
System.out.println("Reading from file using Object Serialization:");
for(int i=1;i<=10;i++)
{
obj = (Currency)ois.readObject();
if((obj.currency).equals("$"))
System.out.println(obj + " = " + obj.dollarToRupee(obj.amount));
else
System.out.println(obj + " = " + obj);
}
ois.close();
}
catch(Exception e)
{
System.out.println("Exception during deserialization." + e);
}
}
}
OUTPUT:
D:\Java\jdk1.5.0_03\bin>javac SerializationWrite.java
D:\ Java\jdk1.5.0_03\bin>java SerializationWrite
Writing to file using Object Serialization:
Rs65
$173
Rs30
$73
$48
Rs180
$65
Rs39
$32
$44
D:\Java\jdk1.5.0_03\bin>javac SerializationRead..java
D:\ Java\jdk1.5.0_03\bin>java SerializationRead.
Reading from file using Object Serialization:
Rs65 = Rs65
$173 = Rs7785
Rs30 = Rs30
$73 = Rs3285
$48 = Rs2160
Rs180 = Rs180
$65 = Rs2925
Rs39 = Rs39
$32 = Rs1440
$44 = Rs1980
D:\ Java\jdk1.5.0_03\bin>
/*****************PROGRAM FOR SCIENTIFIC CALCULATOR *******************/
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class calculatorpanel extends JPanel
{
JButton display;
JPanel panel;
double result;
String lastcommand,a;
boolean start;
public calculatorpanel()
{
setLayout(new BorderLayout());
result=0;
lastcommand="=";
start=true;
display=new JButton("0");
display.setEnabled(false);
add(display,BorderLayout.NORTH);
ActionListener insert=new insertAction();
ActionListener command=new commandAction();
panel=new JPanel();
panel.setLayout(new GridLayout(4,5));
addbutton("sin",command);addbutton("7",insert);addbutton("8",insert);
addbutton("9",insert);addbutton("/",command);
addbutton("cos",command);addbutton("4",insert);addbutton("5",insert);
addbutton("6",insert);addbutton("*",command);
addbutton("tan",command);addbutton("1",insert);addbutton("2",insert);
addbutton("3",insert);addbutton("+",command);
addbutton("sqrt",command);addbutton("0",insert);addbutton(".",insert);
addbutton("=",command);addbutton("-",command);
add(panel,BorderLayout.CENTER);
}
void addbutton(String label,ActionListener listener)
{
JButton button=new JButton(label);
button.addActionListener(listener);
panel.add(button);
}
public void calculate(double x)
{
if(lastcommand.equals("+"))
result+=x;
else if(lastcommand.equals("-"))
result-=x;
else if(lastcommand.equals("*"))
result*=x;
else if(lastcommand.equals("/"))
result/=x;
else if(lastcommand.equals("="))
result=x;
else if(lastcommand.equals("sin"))
result=Math.sin(Math.toRadians(x));
else if(lastcommand.equals("cos"))
result=Math.cos(Math.toRadians(x));
else if(lastcommand.equals("tan"))
result=Math.tan(Math.toRadians(x));
else if(lastcommand.equals("sqrt"))
result=Math.sqrt(x);
display.setText(" "+result);
}
class insertAction implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
String input=e.getActionCommand();
if(start)
{
display.setText(" ");
start=false;
}
display.setText(display.getText()+input);
}
}
class commandAction implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
String command=e.getActionCommand();
if(start)
{
if(command.equals("-"))
{
display.setText(command);
start=false;
}
else
lastcommand=command;
}
else
{
calculate(Double.parseDouble(display.getText()));
lastcommand=command;
start=true;
}
}
}
}
class calculatorframe extends JFrame
{
public calculatorframe()
{
setSize(350,250);
setTitle("Calculator");
setLocationByPlatform(true);
Toolkit kit=Toolkit.getDefaultToolkit();
Image im=kit.getImage("U:\\calicon.jpg");
setIconImage(im);
calculatorpanel panel=new calculatorpanel();
add(panel);
}
}
class calci
{
public static void main(String args[])
{
calculatorframe cf=new calculatorframe();
cf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
cf.setVisible(true);
}
}
/*******PROGRAM FOR MULTITHREADED--PRIME AND FIBONACCI NUMBER********/
import java.util.*;
import java.io.*;
class Fibonacci extends Thread
{
private PipedWriter out = new PipedWriter();
public PipedWriter getPipedWriter()
{
return out;
}
public void run()
{
Thread t = Thread.currentThread();
t.setName("Fibonacci");
System.out.println(t.getName() + " thread started");
int fibo1=0,fibo2=1,fibo=0;
while(true)
{
try
{
fibo = fibo1 + fibo2;
if(fibo>100000)
{
out.close();
break;
}
out.write(fibo);
sleep(100);
}
catch(Exception e)
{
System.out.println("Fibonacci:"+e);
}
fibo1=fibo2;
fibo2=fibo;
}
System.out.println(t.getName() + " thread exiting");
}
}
class Prime extends Thread
{
private PipedWriter out1 = new PipedWriter();
public PipedWriter getPipedWriter()
{
return out1;
}
public void run()
{
Thread t= Thread.currentThread();
t.setName("Prime");
System.out.println(t.getName() + " thread Started...");
int prime=1;
while(true)
{
try
{
if(prime>100000)
{
out1.close();
break;
}
if(isPrime(prime))
out1.write(prime);
prime++;
sleep(0);
}
catch(Exception e)
{
System.out.println(t.getName() + " thread exiting.");
System.exit(0);
}
}
}
public boolean isPrime(int n)
{
int m=(int)Math.round(Math.sqrt(n));
if(n==1 || n==2)
return true;
for(int i=2;i<=m;i++)
if(n%i==0)
return false;
return true;
}
}
public class PipedIo
{
public static void main(String[] args) throws Exception
{
Thread t=Thread.currentThread();
t.setName("Main");
System.out.println(t.getName() + " thread Started...");
Fibonacci fibonacci = new Fibonacci();
Prime prime = new Prime();
PipedReader fpr = new PipedReader(fibonacci.getPipedWriter());
PipedReader ppr = new PipedReader(prime.getPipedWriter());
fibonacci.start();
prime.start();
int fib=fpr.read(), prm=ppr.read();
System.out.println("The numbers common to PRIME and FIBONACCI:");
while((fib!=-1) && (prm!=-1))
{
while(prm<=fib)
{
if(fib==prm)
System.out.println(prm);
prm=ppr.read();
}
fib=fpr.read();
}
System.out.println(t.getName() + " thread exiting");
}
}
OUTPUT:
D:\ Java\jdk1.5.0_03\bin>javac PipedIo.java
D:\ Java\jdk1.5.0_03\bin>java PipedIo
Main thread Started...
Fibonacci thread started
Prime thread Started...
The numbers common to PRIME and FIBONACCI:
1
2
3
5
13
89
233
1597
Fibonacci thread exiting
28657
Main thread exiting
Prime thread exiting.
D:\ Java\jdk1.5.0_03\bin>
/*****************PROGRAM FOR SIMPLE OPAC SYSTEM FORLIBRARY*******************/
EVENT DRIVEN
import java.sql.*; import java.awt.*;
import java.awt.event.*;
import javax.swing.*; public class Datas extends JFrame implements ActionListener
{
JTextField id;
JTextField name; JButton next;
JButton addnew;
JPanel p; static ResultSet res;
static Connection conn;
static Statement stat;
public Datas() {
super("Our Application");
Container c = getContentPane(); c.setLayout(new GridLayout(5,1));
id = new JTextField(20);
name = new JTextField(20); next = new JButton("Next BOOK");
p = new JPanel();
c.add(new JLabel("ISBN",JLabel.CENTER));
c.add(id); c.add(new JLabel("Book Name",JLabel.CENTER));
c.add(name);
c.add(p); p.add(next);
next.addActionListener(this);
pack();
setVisible(true); addWindowListener(new WIN());
}
public static void main(String args[]) {
Datas d = new Datas();
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
conn = DriverManager.getConnection("jdbc:odbc:custo"); // custo is the DSN Name
stat = conn.createStatement(); res = stat.executeQuery("Select * from Customers"); // Customers is the table name
res.next();
}
catch(Exception e)
{
System.out.println("Error" +e);
}
d.showRecord(res); }
public void actionPerformed(ActionEvent e)
{ if(e.getSource() == next)
{
try
{ res.next();
}
catch(Exception ee) {} showRecord(res);
}
} public void showRecord(ResultSet res)
{
try
{ id.setText(res.getString(1));
name.setText(res.getString(2));
} catch(Exception e) {}
}
//Inner class WIN implemented
class WIN extends WindowAdapter
{ public void windowClosing(WindowEvent w)
{
JOptionPane jop = new JOptionPane(); jop.showMessageDialog(null,"Database","Thanks",JOptionPane.QUESTION_MESSAGE);
}
} //end of WIN class
}//end of Datas class
CONCURRENT
import java.sql.*;
import java.sql.DriverManager.*;
class Ja {
String bookid,bookname;
int booksno; Connection con;
Statement stmt;
ResultSet rs;
Ja() {
try
{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con=DriverManager.getConnection("jdbc:odbc:cust");
} catch(Exception e)
{
System.out.println("connection error");
} }
void myput()
{ try
{
stmt=con.createStatement(); rs=stmt.executeQuery("SELECT * FROM cust1");
while(rs.next())
{
booksno=rs.getInt(1); bookid=rs.getString(2);
bookname=rs.getString(3);
System.out.println("\n"+ booksno+"\t"+bookid+"\t"+bookname); }
rs.close();
stmt.close();
con.close(); }
catch(SQLException e)
{ System.out.println("sql error");
}
} }
class prog1
{ public static void main(String arg[])
{
Ja j=new Ja(); j.myput();
}
}
OUTPUT:
D:\ Java\jdk1.5.0_03\bin>javac Ja.java
D:\ Java\jdk1.5.0_03\bin>java prog1
1 10 JAVA
2 20 C++
3 30 C#
/**************PROGRAM FOR MULTI-THREADED ECHO SERVER********************/
/******************************* chatclient .java**********************************/
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.net.*;
class chatclient extends Frame implements ActionListener,Runnable
{
TextArea ta;
TextField tf;
BufferedReader br;
PrintWriter pw;
public static void main(String args[])
{
chatclient cc=new chatclient("ChatClient",args[0],4040);
cc.show();
cc.setSize(300,400);
}
chatclient(String title,String address,int port)
{
super(title);
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent we)
{
System.exit(0);
}});
ta=new TextArea(10,60);
ta.setEditable(false);
add(ta,BorderLayout.CENTER);
tf=new TextField(" ",10);
tf.addActionListener(this);
add(tf,BorderLayout.SOUTH);
try
{
Socket s=new Socket(address,port);
InputStream is=s.getInputStream();
InputStreamReader isr=new InputStreamReader(is);
br=new BufferedReader(isr);
OutputStream os=s.getOutputStream();
pw=new PrintWriter(os,true);
}
catch(Exception e)
{
System.out.println(e);
}
Thread thread=new Thread(this);
thread.start();
}
public void actionPerformed(ActionEvent ae)
{
try
{
String str=tf.getText();
pw.println(str);
tf.setText(" ");
}
catch(Exception e)
{
System.out.println(e);
}
}
public void run()
{
try
{
while(true)
{
String str=br.readLine();
ta.append(str+"\n");
}
}
catch(Exception e)
{
System.out.println(e);
}
}
}
/*************************** chatserver .java***********************************/
import java.net.*;
import java.util.*;
class chatserver
{
static Vector serverthreads;
public static void main(String args[])
{
try
{
serverthreads=new Vector();
ServerSocket ss=new ServerSocket(4040);
while(true)
{
Socket s=ss.accept();
serverthread st=new serverthread(s);
st.start();
serverthreads.addElement(st);
}
}
catch(Exception e)
{
System.out.println(e);
}
}
public synchronized static void echoAll(String str)
{
Enumeration e=serverthreads.elements();
while(e.hasMoreElements())
{
try
{
serverthread st=(serverthread)e.nextElement();
st.echo(str);
}
catch(Exception ae)
{
System.out.println(ae);
}
}
}
}
/****************************** serverthread .java*********************************/
import java.io.*;
import java.net.*;
class serverthread extends Thread
{
private BufferedReader br;
private PrintWriter pw;
public serverthread(Socket socket)
{
try
{
InputStream is=socket.getInputStream();
InputStreamReader isr=new InputStreamReader(is);
br=new BufferedReader(isr);
OutputStream os=socket.getOutputStream();
pw=new PrintWriter(os,true);
}
catch(Exception e)
{
System.out.println(e);
}
}
public void run()
{
try
{
while(true)
{
String str=br.readLine();
chatserver.echoAll(str);
}
}
catch(Exception e)
{
System.out.println(e);
}
}
public void echo(String str)
{
try
{
pw.println(str);
}
catch(Exception e)
{
System.out.println(e);
}
} }
OUTPUT:
D:\ Java\jdk1.5.0_03\bin>javac ServerThread.java
D:\ Java\jdk1.5.0_03\bin>javac chatserver.java
D:\Java\jdk1.5.0_03\bin>java chatserver
D:\Java\jdk1.5.0_03\bin>javac chatclient.java
D:\Java\jdk1.5.0_03\bin>java chatclient 192.168.15.143
D:\Java\jdk1.5.0_03\bin>java chatclient 192.168.15.143
D:\Java\jdk1.5.0_03\bin>java chatclient 192.168.15.143
/*********************** PROGAMMER’S EDITOR IN JAVA************************/
/* Client Frame Design with width=600 & height=500*/
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.InputStreamReader;
import javax.swing.*;
import javax.swing.border.Border;
import javax.swing.text.Element;
import java.util.StringTokenizer;
public class Client implements ActionListener,MouseListener,MouseMotionListener
{
/************ Components *****************/
JFrame frame;
JTextArea jta1;
public JTextArea jta2;
JTextArea jta3;
JButton jb1;
JButton jb2;
JButton jb3;
JButton jb4;
JLabel jl1;
JLabel jl2;
JLabel jl3;
JScrollPane jsp1;
JScrollPane jsp2;
JScrollPane jsp3;
JTabbedPane jtp1;
JTabbedPane jtp2;
JTabbedPane jtp3;
JMenuBar jm;
JMenu open;
JMenu exit;
JMenu file;
JMenu help;
JMenu compile;
JMenu run;
JMenu opt;
/************ Variables *****************/
String line;
String option;
String className;
String pureFile;
File f2;
File f3;
public Client()
{
frame=new JFrame("XDoS Compiler");
frame.setLayout(null);
frame.setBounds(300,10,200,200);
frame.setSize(900,650);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jta1=new JTextArea(300,400);
jsp1=new JScrollPane(jta1);
jsp1.setBounds(10, 10, 670, 200);
jsp1.setEnabled(false);
Border etchedBdr1 = BorderFactory.createEtchedBorder();
jta1.setBorder(etchedBdr1);
//frame.add(jsp1);
jta2=new JTextArea(300,400);
jsp2=new JScrollPane(jta2);
jsp2.setBounds(10, 280, 670, 150);
Border etchedBdr2 = BorderFactory.createEtchedBorder();
jta2.setBorder(etchedBdr2);
jta2.setEditable(false);
//frame.add(jsp2);
jta3=new JTextArea(300,400);
jsp3=new JScrollPane(jta3);
jsp3.setBounds(10, 450, 670, 150);
Border etchedBdr3 = BorderFactory.createEtchedBorder();
jta3.setBorder(etchedBdr3);
//frame.add(jsp3);
jl1=new JLabel();
jl1.setBounds(500, 380, 670, 150);
frame.add(jl1);
jl2=new JLabel();
jl2.setBounds(550, 380, 670, 150);
frame.add(jl2);
jl3=new JLabel();
jl3.setBounds(600, 380, 670, 150);
frame.add(jl3);
jb1=new JButton("Browse");
jb1.setBounds(50, 235, 100, 20);
jb1.addActionListener(this);
//frame.add(jb1);
jb2=new JButton("compile");
jb2.setBounds(200, 235, 100, 20);
jb2.addActionListener(this);
//frame.add(jb2);
jb3=new JButton("Send");
jb3.setBounds(550, 235, 100, 20);
jb3.addActionListener(this);
//frame.add(jb3);
jb4=new JButton("Run");
jb4.setBounds(400, 235, 100, 20);
jb4.addActionListener(this);
//frame.add(jb4);
jtp1=new JTabbedPane();
jtp1.addTab( "untitled.java", jsp1 );
jtp1.setBounds(10, 40, 670, 400);
UIManager.put("TabbedPane.selected", Color.green);
jtp1.set ForegroundAt(0,Color.BLUE);
jtp1.setBackgroundAt(0,Color.BLUE);
frame.add(jtp1);
jtp2=new JTabbedPane();
jtp2.addTab( "Result", jsp2 );
jtp2.setBounds(10, 450, 670, 150);
frame.add(jtp2);
jtp3=new JTabbedPane();
jtp3.addTab( "Reply", jsp3 );
jtp3.setBounds(700, 40, 180, 560);
frame.add(jtp3);
jm=new JMenuBar();
file=new JMenu("File");
file.setMnemonic('F');
opt=new JMenu("Option");
opt.setMnemonic('O');
opt.setEnabled(false);
jm.add(file);
jm.add(opt);
compile=new JMenu("Compile");
compile.setMnemonic('C');
Action action3 = new AbstractAction("Compile")
{
public void actionPerformed(ActionEvent e)
{
compile();
}
};
JMenuItem item3 = file.add(action3);
opt.add(item3);
run=new JMenu("Run");
run.setMnemonic('R');
Action action4 = new AbstractAction("Run")
{
public void actionPerformed(ActionEvent e)
{
run();
}
};
JMenuItem item4 = file.add(action4);
opt.add(item4);
help=new JMenu("Help");
jm.add(help);
open=new JMenu("open");
Action action1 = new AbstractAction("Open")
{
public void actionPerformed(ActionEvent e)
{
open();
}
};
JMenuItem item1 = file.add(action1);
file.add(item1);
exit=new JMenu("Exit");
Action action2 = new AbstractAction("Exit")
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
};
JMenuItem item2 = file.add(action2);
file.add(item2);
jm.setBounds(5, 0, 880, 30);
frame.add(jm);
frame.setResizable(false);
frame.setVisible(true);
jta1.addMouseListener(this);
jta1.addMouseMotionListener(this);
jtp1.addMouseListener(this);
jtp2.addMouseListener(this);
}
public void mouseClicked(MouseEvent ew)
{
if(ew.getSource()==jta1)
{
jl3.setText("Line-No: "+Integer.toString(getCurrentLineNumber()));
}
else if(ew.getSource()==jtp2)
{
if(jtp1.isShowing())
{
frame.remove(jtp1);
jtp2.setBounds(10, 40, 670, 560);
jl1.setBounds(500, 535, 670, 150);
jl2.setBounds(550, 535, 670, 150);
jl3.setBounds(600, 535, 670, 150);
jta2.addMouseMotionListener(this);
jl3.setText("Line-No: "+Integer.toString(getCurrentLineNumber()));
}
else
{
frame.add(jtp1);
jtp2.setBounds(10, 450, 670, 150);
jl1.setBounds(500, 380, 670, 150);
jl2.setBounds(550, 380, 670, 150);
jl3.setBounds(600, 380, 670, 150);
jta2.removeMouseMotionListener(this);
}
}
else if(ew.getSource()==jtp1)
{
if(jtp2.isShowing())
{
frame.remove(jtp2);
frame.remove(jtp3);
jtp1.setBounds(10, 40, 870, 560);
jl1.setBounds(500, 535, 670, 150);
jl2.setBounds(550, 535, 670, 150);
jl3.setBounds(600, 535, 670, 150);
}
else
{
frame.add(jtp2);
frame.add(jtp3);
jtp1.setBounds(10, 40, 670, 400);
jl1.setBounds(500, 380, 670, 150);
jl2.setBounds(550, 380, 670, 150);
jl3.setBounds(600, 380, 670, 150);
}
}
}
public void mouseEntered(MouseEvent ew) {}
public void mouseExited(MouseEvent ew) {}
public void mousePressed(MouseEvent ew) {}
public void mouseReleased(MouseEvent ew) {}
public void mouseMoved(MouseEvent e)
{
jl1.setText("X-: "+Integer.toString(e.getX()));
jl2.setText("Y-: "+Integer.toString(e.getY()));
}
public void mouseDragged(MouseEvent e) {}
public void actionPerformed(ActionEvent ae) {}
public void open()
{
JFileChooser fileChooser = new JFileChooser();
fileChooser.addChoosableFileFilter(new MyFilter());
int select=fileChooser.showOpenDialog(frame);
if(select==JFileChooser.APPROVE_OPTION)
{
File file=fileChooser.getSelectedFile();
String filename=fileChooser.getSelectedFile().getName();
try
{
FileInputStream fis=new FileInputStream(file);
int n=fis.available();
byte dat[]=new byte[n];
fis.read(dat);
String data=new String(dat);
jtp1.setTitleAt(0, filename);
jta1.setText(data);
opt.setEnabled(true);
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
public int getCurrentLineNumber()
{
int line;
int caretPosition = jta1.getCaretPosition();
Element root = jta1.getDocument().getDefaultRootElement();
line = root.getElementIndex(caretPosition) + 1;
return line;
}
public void compile()
{
try
{
jtp2.setTitleAt(0,"Compile");
String ta1=jta1.getText().trim();
StringBuffer sb=new StringBuffer(ta1);
int id1=ta1.indexOf("public class");
int id2=ta1.indexOf(" ",id1+13);
String name=ta1.substring(id1, id2).trim();
StringTokenizer st3=new StringTokenizer(name,"\n");
System.out.println(st3.countTokens());
String word=st3.nextToken().toString().trim();
System.out.println(word+"*");
StringTokenizer st4=new StringTokenizer(word," ");
System.out.println(st4.countTokens());
st4.nextToken();
st4.nextToken();
pureFile=st4.nextToken().toString().trim();
className=pureFile+".java";
//System.out.println(st4.nextElement().toString().trim()+"*");
FileOutputStream f=new FileOutputStream(className);
f.write(ta1.getBytes());
f.close();
f2=new File(className);
f3=new File(pureFile+".class");
System.out.println(f2.getAbsolutePath());
String path=f2.getAbsolutePath();
int a1=path.indexOf("\\");
int a2=path.lastIndexOf("\\");
System.out.println(a1+" "+a2);
String colan=path.substring(0, a1).trim();
String location=path.substring(0, a2+1).trim();
System.out.println(colan);
System.out.println(location);
compiler(className);
}
catch (Exception err)
{
err.printStackTrace();
}
//option=JOptionPane.showInputDialog(null,"Enter Destination System
Name","Destination",1).toString();
//System.out.println(option);
// jta2.setText(line);
}
public void run()
{
jtp2.setTitleAt(0,"Run");
runer(pureFile);
}
public static void main(String args[])
{
try
{
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
}
catch (Exception e) { }
new Client();
}
public void compiler(String name)
{
try
{
jta2.setText("");
jta2.append("Compilation Started.....\n");
jta2.append("Proceed.....\n");
jta2.setForeground(Color.blue);
String callAndArgs= "cmd /c compile.bat "+name;
Process p =Runtime.getRuntime().exec(callAndArgs);
BufferedReader br=new BufferedReader(new InputStreamReader(p.getInputStream()));
String str=br.readLine();
while(str!=null)
{
System.out.println(str);
str=br.readLine();
}
File f1 = new File("error.txt");
FileReader fr = new FileReader(f1);
BufferedReader br1 = new BufferedReader(fr);
StringBuffer sb1 = new StringBuffer();
String eachLine = br1.readLine();
while (eachLine != null)
{
jta2.setForeground(Color.RED);
sb1.append(eachLine);
sb1.append("\n");
eachLine= br1.readLine();
}
jta2.append(sb1.toString());
//input.close();
if(f1.length()==0)
{
jta2.append("Compiled Successfully........\n");
jta2.append("Done........");
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
public void runer(String name)
{
try
{
jta3.setText("");
String callAndArgs= "cmd /c run.bat "+name;
Process p =Runtime.getRuntime().exec(callAndArgs);
BufferedReader br=new BufferedReader(new InputStreamReader(p.getInputStream()));
String str=br.readLine();
while(str!=null)
{
System.out.println(str);
str=br.readLine();
}
File f1 = new File("output.txt");
FileReader fr = new FileReader(f1);
BufferedReader br1 = new BufferedReader(fr);
StringBuffer sb1 = new StringBuffer();
String eachLine = br1.readLine();
while (eachLine != null)
{
sb1.append(eachLine);
sb1.append("\n");
eachLine = br1.readLine();
}
String sp=sb1.toString();
StringBuffer st=new StringBuffer(sp);
System.out.println(st.length());
int indx=sp.indexOf(">");
int r=1;
while(indx != -1)
{
System.out.println(Integer.toString(indx)+"*");
System.out.println(st);
st.insert(indx+r, "\n");
indx=sp.indexOf(">",indx+1);
r++;
System.out.println(Integer.toString(indx)+"#");
}
jta2.setText(st.toString());
f2.deleteOnExit();
f3.deleteOnExit();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
class MyFilter extends javax.swing.filechooser.FileFilter
{
public boolean accept(File file)
{
return file.isDirectory() || file.getName().endsWith(".java");
}
public String getDescription()
{
return "*.java";
}
}
/* Test Frame Design */
import javax.swing.*;
import java.awt.*;
public class Test
{
public Test()
{
JFrame f = new JFrame("Test");
f.setLayout(new FlowLayout());
JTextField jt1 = new JTextField(25);
f.add(jt1);
f.setVisible(true);
f.setSize(200,200);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String args[])
{
new Test();
}
}
OUTPUT: