programación de red de sockets java
//==============Server.java===================//
importar java.io.IOException;
importar java.net.ServerSocket;
importar java.net.Socket;
servidor de clase pública {
p>public static void main(String[] args) lanza IOException {
ServerSocket s = new ServerSocket(12345);
System.out.println( "El servidor está listo, inicie el cliente.");
Socket so = s.accept();
byte[] buff = new byte[1024];
int read = so.getInputStream().read(buff);
String[] abc=new String(buff, 0, read).split("\\D ");
int a = Integer.parseInt(abc[0]);
int b = Integer.parseInt(abc[1]); .parseInt(abc [2]);
if(!cbt(a, b, c))
so.getOutputStream().write("Los datos de entrada no pueden formar un triángulo.".getBytes ());
else
so.getOutputStream().write(getArea(a, b, c).getBytes());
entonces.getOutputStream().flush();
así.close();
s.close(); >
cadena estática privada getArea(int a, int b, int c) {
float s = (a b c)/2f;
return "Área: " Math.sqrt (s*(s-a )*(s-b)*(s-c));
}
cbt booleano estático privado (int a, int b, int c) {
return agt ;0amp;amp;bgt;0amp;amp;cgt;0amp;amp;a bgt;camp;amp;b cgt;aamp;amp;a cgt;b;
}
}
//==================Cliente.java============== ======= ===//
importar java.io.IOException;
importar java.net.Socket;
importar java. net.UnknownHost
Excepción;
cliente de clase pública {
public static void main(String[] args) lanza UnknownHostException, IOException {
System.out.println("Entrada Los tres lados del triángulo están separados por comas, como por ejemplo: (3, 4, 5) ");
byte[] buff=new byte[64];
int r = System .in.read(buff);
String ipaddr = "localhost"; //Si la situación cambia, no cambiará al depurar en esta máquina
Socket, por lo que = new Socket(ipaddr, 12345);
so.getOutputStream().write(new String(buff, 0, r).getBytes());
r = so. getInputStream().read (buff);
so.close();
String rs = new String(buff, 0, r); .out.println( rs);
}
}
//Inicie primero el servidor, luego el cliente