Mês e estação do ano em Socket TCP!

5 respostas
jnsilvaleite

Como criar um sistema que verifica qual é a estação do ano, utilizando sockets tcp, o cliente deverá solicitar o mês do ano e enviar ao servidor. O servidor verificará qual é a estação daquele mês e enviará a resposta ao cliente. O cliente deve imprimir a resposta.

verão - dezembro até março
outuno - março até junho
inverso - junho até setembro
primavera - setembro até dezembro.

como sou iniciante em JAVA, o máximo que eu consegui foi isso:

NO CLIENTE

import <a href="http://java.net">java.net</a>.<em>;

import <a href="http://java.io">java.io</a>.</em>;

import javax.swing.JOptionPane;
public class Cliente {

public static void main(String[]args)throws Exception{

Socket Socketcliente = new Socket(localhost, 6078 ) ;

BufferedReader Entrada = new BufferedReader(new InputStreamReader(Socketcliente.getInputStream()));

PrintStream ps = new PrintStream(Socketcliente.getOutputStream());

String mesdoano = JOptionPane.showInputDialog(Digite o mes do ano:);

NO SERVIDOR

import <a href="http://java.net">java.net</a>.<em>;

import <a href="http://java.io">java.io</a>.</em>;

import javax.swing.JOptionPane;
public class Servidor{

public static void main(String[]args)throws Exception{

ServerSocket servidor = new ServerSocket(6078 ) ;

Socket Socketcliente = new  Socket();

JOptionPane.showMessageDialog(null, Servidor Aguardando Conexões);

Socketcliente = servidor.accept();

JOptionPane.showMessageDialog(null, Conexão Estabelecida!);

BufferedReader Entrada = new BufferedReader(new InputStreamReader(Socketcliente.getInputStream()));

PrintStream ps = new PrintStream(Socketcliente.getOutputStream());

String mesdoano = “”;

String recebida = “”;

mesdoano = Entrada.readLine();

Alguém poderia me ajudar a desennvolver esse sistema?

5 Respostas

Foxlol

Bom, isso deve ajudar em alguma coisa:

http://www.guj.com.br/article.show.logic?id=126

http://www.guj.com.br/article.show.logic?id=8

http://java.sun.com/javase/6/docs/api/java/util/Calendar.html

Flw

lina

Oi,

Bem vindo ao GUJ!

O seu problema está na comunicação socket ou no calculo para as estações do ano ?

Analisando seu código, falta o tratamendo de SEND no CLIENT e RECEIVE no SERVER…

Tchauzin!

jnsilvaleite

lina:
Oi,

Bem vindo ao GUJ!

O seu problema está na comunicação socket ou no calculo para as estações do ano ?

Analisando seu código, falta o tratamendo de SEND no CLIENT e RECEIVE no SERVER…

Tchauzin!

Olá amigo, como sou iniciante em JAVA, toh estudando sozinho e com a ajuda do FORUM GUI, o meu problema esta no calculo para as estações do ano, na comunicação eu entendi direitinho, se vc puder me ajudar, ficarei agradecido!!!

lina

Oi,

Olá amigo,

Eu sou princesa e não principe. rs

Bom, não poderei ajudar na sua lógica para o calculo de datas pois estou um pouco na correria aqui..
Porém, tenho um exemplo que poderá ajuda-lo a bola essa lógica.

Segue:

public static void main(String args[]) {
		
		String 
		meses[] = {"Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho","Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro"};
		
		int 
		diasmes[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
		
		String primavera = "primavera", verao = "verão", outono = "outono", inverno = "inverno";
		
		String estacoes[] = { inverno, inverno, primavera, primavera, primavera, verao, verao, verao, outono, outono, outono, inverno};
		
		for (int mes = 0; mes < 12; mes++) {
			
			System.out.println
			(
				meses[mes] + " é um mês do(a)" +
				estacoes[mes] + " com " +
				diasmes[mes] + " dias."
			);
		}
	}

Tchauzin!

Foxlol

Tenta algo como:

List<Integer> mesesVerao = new ArrayList<Integer>();

mesesVerao.add(Calendar.DECEMBER);

...

Faz isso para cada estação, ai no seu metodo de verificar a estação vc faz uma verificação para cada estação:

if (mesesVerao.contains(mes)) {
   return "Verão";
}

...

+/- por aí

Mas dá pra fazer bem melhor, tipo, criar uma classe para cada estação…e a classe contém os meses dela.

Ai vc faria tipo:

if (Verao.isMesEstacao(mes)) {
   return Verao.DESCRICAO;
}

Criar uma interface Estacao, a qual todas estações implementam, com o método isMesEstacao.

BOm, já dá pra brinca ae.

Flw

Criado 21 de outubro de 2009
Ultima resposta 21 de out. de 2009
Respostas 5
Participantes 3