Factorial Numbers


Socket Programming:

	Performing factorial of a number


Server End:

import java.net.*;
import java.util.*;
import java.io.*;

public class Server
{
	public static void main(String arr[]) throws Exception
	{
	ServerSocket ss=new ServerSocket(12345);
	Socket s=ss.accept();
	DataInputStream din=new DataInputStream(s.getInputStream());
	DataOutputStream dout=new DataOutputStream(s.getOutputStream());

	String str=din.readUTF();
	int n= Integer.parseInt(str);
	int temp=1;

	for(int i=2;i<=n;i++)
		temp=temp*i;

	System.out.println("Performing factorial...");
	dout.writeUTF(temp+"");
	dout.flush();

	din.close();
	dout.close();
	s.close();
	ss.close();
	}
}





Client End:

import java.net.*;
import java.util.*;
import java.io.*;
import java.util.*;

public class Client
{
	public static void main(String arr[]) throws Exception
	{
	Socket s=new Socket("localhost",12345);
	Scanner sc=new Scanner(System.in);
	DataInputStream din=new DataInputStream(s.getInputStream());
	DataOutputStream dout=new DataOutputStream(s.getOutputStream());

	System.out.print("Enter the factorial target number: ");
	int n=sc.nextInt();
	dout.writeUTF(n+"");
	dout.flush();

	String str=din.readUTF();
	System.out.println("From Server: Factorial=>  "+str);


	din.close();
	dout.close();
	s.close();
	}
}




Output:


Client end:

$ javac Client1.java
$ java Client1
Enter the factorial target number: 6
From Server: Factorial=>  720
$ 



Server End:

$ javac Server1.java
$ java Server
Performing factorial...
$ 


Share:

0 comments