Você está na página 1de 2

LP2A4 – Exercícios

Aula 3 – Comunicação de Aplicações em Rede

Instruções para entrega das listas de exercícios:


Meio de Entrega: Os arquivos das resoluções das listas de exercícios devem ser entregues exclusivamente no
ambiente Moodle (http://eadcampus.spo.ifsp.edu.br). Não serão aceitos links para repositórios externos.
Forma de Entrega: Para exercícios com uma única classe, deve ser entregue o arquivo da classe (extensão JAVA)
referente ao exercício. Por exemplo: Exercicio3.java. Para exercícios com mais de uma classe, cada exercício deve
ter uma pasta, na qual serão colocados os arquivos JAVA referentes ao exercício. Por exemplo: Para o Exercício 4,
deve existir uma pasta “Exercicio4” contendo todos os arquivos JAVA deste exercício. Entregue apenas os
arquivos JAVA. Todas as pastas e arquivos da lista devem ser compactados em um único arquivo (extensão RAR
ou ZIP), cujo nome deverá conter a aula, o nome e o sobrenome do aluno. Por exemplo: Aula3_MariaPereira.zip.
Prazo de Entrega: O prazo de entrega está definido na própria página de exercícios do Moodle, lembrando que o
sistema bloqueia o envio de arquivos após a data e horário indicados.
Obs.: A resolução deste(s) exercício(s) deve ser feita de forma INDIVIDUAL. Listas de exercícios com uma ou mais
respostas idênticas serão desconsideradas integralmente para efeitos de nota de participação.

1. (3,0 pontos) Crie duas aplicações console em Java que simulem a comunicação entre um
servidor e um cliente por meio de sockets. A aplicação cliente deve solicitar uma conexão
ao servidor e, após aceita, deve enviar um número real (informado pelo usuário) para o
servidor. A aplicação servidora deve calcular a raiz quadrada do número recebido e
retorná-la para a aplicação cliente que, por sua vez, deve imprimir o resultado.
2. (3,0 pontos) Crie duas aplicações console em Java que simulem a transferência de um
arquivo entre computadores por meio de sockets. Assim como no exemplo apresentado
em aula, as aplicações de envio e recebimento do arquivo devem criar, cada uma, duas
conexões: uma para transferir o nome e o tamanho do arquivo (em modo texto) e outra
para enviar seu conteúdo (em modo binário). Observações:
• No envio e no recebimento de conteúdo, defina blocos de dados de 128 bytes.
• O arquivo a ser transferido deve estar na raiz do projeto. Nome do arquivo:
pneumotorax.txt. Conteúdo do arquivo:

Febre, hemoptise, dispneia e suores noturnos.


A vida inteira que podia ter sido e que não foi.
Tosse, tosse, tosse.
Mandou chamar o médico:
– Diga trinta e três.
– Trinta e três… trinta e três… trinta e três…
– Respire.
– O senhor tem uma escavação no pulmão esquerdo e o pulmão direito infiltrado.
– Então, doutor, não é possível tentar o pneumotórax?
– Não. A única coisa a fazer é tocar um tango argentino.
Pneumotórax (Manuel Bandeira)

3. (4,0 pontos) Crie duas aplicações console em Java que simulem a comunicação, por meio
de sockets, entre um servidor multithread, composto pelas classes servidora e atendente, e
um cliente. Cada vez que um cliente fizer um pedido, a classe atendente deve criar uma
thread para atendê-lo. A tarefa da thread consiste em calcular o IMC (Índice de Massa
Corpórea) do usuário. Para isso, ele deve informar seu peso e altura para a aplicação
cliente, que enviará essas informações para a aplicação atendente. Esta, por sua vez, criará
uma thread, para fazer o cálculo e retornar o resultado à aplicação cliente, que deve
apresentá-lo ao usuário. A fórmula para calcular o IMC é: IMC = peso / (altura * altura).

Você também pode gostar