1) Assunto: Sequência a simples - Projetos de acessibilidade do

Propaganda
Programe – Seção Java
Lista de Exercícios 1
Gabarito – Caixas de diálogo/Console
http://intervox.nce.ufrj.br/~napilhadigital/
Nota geral (1): Os gabaritos são listados apresentando suas programações em Java com entrada em
caixas de diálogo e saída de dados no console. Os enunciados são apresentados novamente para facilitar
análises comparativas das soluções do estudante com as do PROGRAME.
Nota geral (2): É importante para o estudante chegar nesta seção com seus próprios códigos já prontos,
pois o estudo fica comprovado, já que o aprendizado da lógica de programação vai de encontro com
bastante treino, investindo em tentativas e erros.
Nota geral (3): Sugestão do site: as soluções criadas com IDE Eclipse, contendo pacotes (packages). As
classes foram organizadas pelos pacotes (packages) de acordo com o grau básico de evolução dos
exercícios. Portanto, a seguir são apresentadas instruções que solicitam a definição da área de trabalho
(Switch Workspace), criação do projeto chamado “Projeto_Inicial” que conterá 3 pacotes, batizados
respectivamente como: basico_1, basico_2 e basico_3. Cada pacote possui 2 classes, onde cada classe faz
referência a solução de um determinado exercício.
“File” => “Switch Workspace”
“File” => “New” => “Java” => “Java Project” => “Projeto_Inicial”.
No projeto “Projeto_Inicial”, criar o pacote: “basico_1”.
No projeto “Projeto_ Inicial”, criar o pacote: “basico_2”.
No projeto “Projeto_ Inicial ”, criar o pacote: “basico_3”.
No pacote “basico_1”, criar a classe: “Exercício1_caixas_console”.
No pacote “basico_1”, criar a classe: “Exercício2_caixas_console”.
No pacote “basico_2”, criar a classe: “Exercício3_caixas_console”
No pacote “basico_2”, criar a classe: “Exercicio4_caixas_console”.
No pacote “basico_3”, criar a classe: “Exercício5_caixas_console”.
No pacote “basico_3”, criar a classe: “Exercício6_caixas_console”.
Exercício 1:
Ler id, nome, altura, sexo, peso e idade de 1 pessoa que trabalha na sala comercial da Tia Albinha.
Ao final, apresentar os dados lidos.
package basico_1;
import java.text.DecimalFormat;
import javax.swing.JOptionPane;
public class Exercicio1_caixas_console {
public static void main (String args[]) {
// Declaração das variáveis
int id, idade;
String nome, sexo;
float altura, peso;
// "formatarNumero" é o objeto da classe DecimalFormat.
// "formatarNumero" é usado no programa para formatar as casas decimais.
// Para utilizar a classe DecimalFormat é necessário a linha import java.text.DecimalFormat;
DecimalFormat formatarNumero = new DecimalFormat("0.00");
// Leitura de dados
id = Integer.parseInt(JOptionPane.showInputDialog
(null,"\nDigite o número para identificar a pessoa: ","Leitura da IDENTIFICAÇÃO",JOptionPane.PLAIN_MESSAGE));
nome = JOptionPane.showInputDialog
(null,"\nDigite o nome: ","Leitura do NOME",JOptionPane.PLAIN_MESSAGE);
altura = Float.parseFloat(JOptionPane.showInputDialog
(null,"\nDigite a altura (Use o ponto no lugar da vírgual): ","Leitura da ALTURA",JOptionPane.PLAIN_MESSAGE));
sexo = JOptionPane.showInputDialog
(null,"\nDigite o sexo (Feminino/Masculino): ","Leitura do SEXO",JOptionPane.PLAIN_MESSAGE);
peso = Float.parseFloat(JOptionPane.showInputDialog
(null,"\nDigite a peso (Use o ponto no lugar da vírgula): ","Leitura do PESO",JOptionPane.PLAIN_MESSAGE));
idade = Integer.parseInt(JOptionPane.showInputDialog
(null,"\nDigite a idade: ","Leitura da IDADE",JOptionPane.PLAIN_MESSAGE));
// Apresentação dos valores lidos
System.out.println("\nAPRESENTANDO DOS VALORES LIDOS");
System.out.println("Identificação: "+id);
System.out.println("Nome: "+nome);
System.out.println("Altura: "+formatarNumero.format(altura));
System.out.println("Sexo: "+sexo);
System.out.println("Peso: "+formatarNumero.format(peso));
System.out.println("Idade: "+idade);
} // Final do método principal
} // Final da classe Exercicio1_caixas_console
Exercício 2:
Ler id, nome, altura, sexo, peso e idade de 1 pessoa que trabalha na sala comercial da Tia Albinha.
Ao final, apresentar os dados lidos. Imprimir a frase: "Os dados lidos são de uma MULHER!", caso O sexo seja
Feminino. Caso contrário, imprimir a frase: "Os dados lidos são de um HOMEM!", caso o sexo seja Masculino.
package basico_1;
import java.text.DecimalFormat;
import javax.swing.JOptionPane;
public class Exercicio2_caixas_console {
public static void main (String args[]) {
// Declaração das variáveis
int id, idade;
String nome, sexo;
float altura, peso;
// "formatarNumero" é o objeto da classe DecimalFormat.
// "formatarNumero" é usado no programa para formatar as casas decimais.
// Para utilizar a classe DecimalFormat é necessário a linha import java.text.DecimalFormat;
DecimalFormat formatarNumero = new DecimalFormat("0.00");
// Leitura de dados
id = Integer.parseInt(JOptionPane.showInputDialog
(null,"\nDigite o número para identificar a pessoa: ","Leitura da IDENTIFICAÇÃO",JOptionPane.PLAIN_MESSAGE));
nome = JOptionPane.showInputDialog
(null,"\nDigite o nome: ","Leitura do NOME",JOptionPane.PLAIN_MESSAGE);
altura = Float.parseFloat(JOptionPane.showInputDialog
(null,"\nDigite a altura (Use o ponto no lugar da vírgula): ","Leitura da ALTURA",JOptionPane.PLAIN_MESSAGE));
sexo = JOptionPane.showInputDialog
(null,"\nDigite o sexo (Feminino/Masculino): ","Leitura do SEXO",JOptionPane.PLAIN_MESSAGE);
peso = Float.parseFloat(JOptionPane.showInputDialog
(null,"\nDigite a peso (Use o ponto no lugar da vírgula): ","Leitura do PESO",JOptionPane.PLAIN_MESSAGE));
idade = Integer.parseInt(JOptionPane.showInputDialog
(null,"\nDigite a idade: ","Leitura da IDADE",JOptionPane.PLAIN_MESSAGE));
if (sexo.equalsIgnoreCase("Feminino"))
JOptionPane.showMessageDialog(null, "Os dados lidos são de uma MULHER");
else
JOptionPane.showMessageDialog(null, "Os dados lidos são de um HOMEM");
// Apresentação dos valores lidos
System.out.println("\nAPRESENTANDO DOS VALORES LIDOS");
System.out.println("Identificação: "+id);
System.out.println("Nome: "+nome);
System.out.println("Altura: "+formatarNumero.format(altura));
System.out.println("Sexo: "+sexo);
System.out.println("Peso: "+formatarNumero.format(peso));
System.out.println("Idade: "+idade);
} // Final do método principal
} // Final da classe Exercicio2_caixas_console
Exercício 3:
Ler id, nome, altura, sexo, peso e idade de 3 pessoas que trabalham na sala comercial da Tia Albinha.
Calcular: a média das alturas das pessoas; qual o peso da pessoa mais pesada?
Ao final, apresentar os resultados dos cálculos solicitados.
package basico_2;
import java.text.DecimalFormat;
import javax.swing.JOptionPane;
public class Exercicio3_caixas_console {
public static void main (String args[]) {
// Declaração das variáveis
int id = 0, idade = 0, i;
String nome = null, sexo = null;
float altura = 0, peso = 0, maisPesada = 0, mediaAltura, somaAltura = 0;
// "formatarNumero" é o objeto da classe DecimalFormat.
// "formatarNumero" é usado no programa para formatar as casas decimais.
// Para utilizar a classe DecimalFormat é necessário a linha import java.text.DecimalFormat;
DecimalFormat formatarNumero = new DecimalFormat("0.00");
for (i=1;i<=3;i++) {
// Leitura de dados
id = Integer.parseInt(JOptionPane.showInputDialog(null,"\nDigite o número para identificar a pessoa: ","Leitura da
IDENTIFICAÇÃO",JOptionPane.PLAIN_MESSAGE));
nome = JOptionPane.showInputDialog
(null,"\nDigite o nome: ","Leitura do NOME",JOptionPane.PLAIN_MESSAGE);
altura = Float.parseFloat(JOptionPane.showInputDialog(null,"\nDigite a altura (Use o ponto no lugar da vírgula): ","Leitura
da ALTURA",JOptionPane.PLAIN_MESSAGE));
sexo = JOptionPane.showInputDialog
(null,"\nDigite o sexo (Feminino/Masculino): ","Leitura do SEXO",JOptionPane.PLAIN_MESSAGE);
peso = Float.parseFloat(JOptionPane.showInputDialog
(null,"\nDigite a peso (Use o ponto no lugar da vírgula): ","Leitura do PESO",JOptionPane.PLAIN_MESSAGE));
idade = Integer.parseInt(JOptionPane.showInputDialog
(null,"\nDigite a idade: ","Leitura da IDADE",JOptionPane.PLAIN_MESSAGE));
// Cálculos
somaAltura +=altura;
if (peso>maisPesada) maisPesada=peso;
// Apresentação dos valores lidos
System.out.println("\nAPRESENTANDO DOS VALORES LIDOS");
System.out.println("Identificação: "+id);
System.out.println("Nome: "+nome);
System.out.println("Altura: "+formatarNumero.format(altura));
System.out.println("Sexo: "+sexo);
System.out.println("Peso: "+formatarNumero.format(peso));
System.out.println("Idade: "+idade);
} // final do bloco de repetição
// Cálculo da média das alturas das pessoas.
mediaAltura = somaAltura/3;
// Imprimindo os valores processados.
System.out.println("\n");
System.out.println("\nMédia das alturas das pessoas: "+formatarNumero.format(mediaAltura));
System.out.println("Peso da pessoa mais pesada: "+formatarNumero.format(maisPesada));
} // Final do método principal
} // Final da classe Exercicio3_caixas_console
Exercício 4:
Ler id, nome, altura, sexo, peso e idade para um número indeterminado de pessoas que trabalham na sala comercial da
Tia Albinha.
Aplicar com o conceito de FLAG. Calcular: o nome da mulher mais alta; o nome e a idade do homem mais velho;
quantidade de pessoas que foram cadastradas; quantidade de homens do cadastro; total de mulheres do cadastro.
Ao final, apresentar os resultados dos cálculos.
package basico_2;
import java.text.DecimalFormat;
import javax.swing.JOptionPane;
class Exercicio4_caixas_console {
public static void main (String args[]) {
// Declaração das variáveis
int flag=1;
int id = 0, idade = 0, i;
String nome = null, sexo = null;
float altura = 0, peso = 0;
int idadeMaisVelha = 0, quantPessoas = 0, quantMulher = 0, quantHomem = 0;
String nomeMaisAlta = null, nomeHomemMaisVelho = null;
float maisAlta = 0;
// "formatarNumero" é o objeto da classe DecimalFormat.
// "formatarNumero" é usado no programa para formatar as casas decimais.
// Para utilizar a classe DecimalFormat é necessário a linha import java.text.DecimalFormat;
DecimalFormat formatarNumero = new DecimalFormat("0.00");
while (flag!=0) {
// Leitura de dados
id = Integer.parseInt(JOptionPane.showInputDialog
(null,"\nDigite o número para identificar a pessoa: ","Leitura da IDENTIFICAÇÃO",JOptionPane.PLAIN_MESSAGE));
nome = JOptionPane.showInputDialog
(null,"\nDigite o nome: ","Leitura do NOME",JOptionPane.PLAIN_MESSAGE);
altura = Float.parseFloat(JOptionPane.showInputDialog
(null,"\nDigite a altura (Use o ponto no lugar da vírgula): ","Leitura da ALTURA",JOptionPane.PLAIN_MESSAGE));
sexo = JOptionPane.showInputDialog
(null,"\nDigite o sexo (Feminino/Masculino): ","Leitura do SEXO",JOptionPane.PLAIN_MESSAGE);
peso = Float.parseFloat(JOptionPane.showInputDialog
(null,"\nDigite a peso (Use o ponto no lugar da vírgula): ","Leitura do PESO",JOptionPane.PLAIN_MESSAGE));
idade = Integer.parseInt(JOptionPane.showInputDialog
(null,"\nDigite a idade: ","Leitura da IDADE",JOptionPane.PLAIN_MESSAGE));
// Cálculos
if (sexo.equalsIgnoreCase("Feminino"))
{
if (altura>maisAlta)
{
maisAlta = altura;
nomeMaisAlta = nome;
} // final do then
quantMulher++;
} // final do then
else
{
if (idade>idadeMaisVelha)
{ idadeMaisVelha = idade;
nomeHomemMaisVelho = nome;
} // final do then
quantHomem++;
} // final do else
quantPessoas++;
// Apresentação dos valores lidos
System.out.println("\n");
System.out.println("APRESENTANDO OS VALORES LIDOS");
System.out.println("Identificação: "+id);
System.out.println("Nome: "+nome);
System.out.println("Altura: "+formatarNumero.format(altura));
System.out.println("Sexo: "+sexo);
System.out.println("Peso: "+formatarNumero.format(peso));
System.out.println("Idade: "+idade);
// Leitura de reposição (para controlar a repetição)
flag = Integer.parseInt(JOptionPane.showInputDialog
(null,"\nPara continuar o cadastro, digite [1]. Para finalizar e ver os cálculos, digite [0]: ",
"Controle da repetição",JOptionPane.PLAIN_MESSAGE));
} // final do bloco de repetição
// Imprimindo os cálculos processados.
System.out.println("\n");
System.out.println("Nome da mulher mais alta: "+nomeMaisAlta);
System.out.println("Nome do homem mais velho: "+nomeHomemMaisVelho);
System.out.println("Idade do homem mais velho: "+idadeMaisVelha);
System.out.println("Quantidade de pessoas do cadastro: "+quantPessoas);
System.out.println("Quantidade de homens do cadastro: "+quantHomem);
System.out.println("Total de mulheres do cadastro: "+quantMulher);
} // Final do método principal
} // Final da classe Exercicio4_caixas_console
Exercício 5:
Criar um vetor de 5 posições para cadastrar as mensalidades de uma turma de aula particular da Tia Lúcia. Calcular
quantos reais a Tia receberá. Ao final da programação, apresentar todos os valores lidos e o cálculo processado.
package basico_3;
import java.text.DecimalFormat;
import javax.swing.JOptionPane;
public class Exercicio5_caixas_console {
public static void main (String args[]) {
// Declaração de variáveis
int i;
float soma = 0;
float Vetor[] = new float[5];
// "formatarNumero" é o objeto da classe DecimalFormat.
// "formatarNumero" é usado no programa para formatar as casas decimais.
// Para utilizar a classe DecimalFormat é necessário a linha import java.text.DecimalFormat;
DecimalFormat formatarNumero = new DecimalFormat("0.00");
// Leitura das mensalidades dos 5 alunos.
for (i=0;i<=4;i++) {
Vetor[i] = Float.parseFloat(JOptionPane.showInputDialog
(null,"\nDigite a "+(i+1)+"a. mensalidade: ","Aula particular - Tia Lúcia",JOptionPane.PLAIN_MESSAGE));
soma +=Vetor[i];
} // final do bloco de repetição
// Apresentação das mensalidades lidas.
String Resultado="\nAPRESENTAÇÃO DAS MENSALIDADES LIDAS"+"\n";
for (i=0;i<=4;i++) {
System.out.println((i+1)+"a. Mensalidade: "+formatarNumero.format(Vetor[i]));
} // final do bloco de repetição
System.out.println("\nRESULTADO DO CÁLCULO");
System.out.println("Soma das mensalidades lidas: "+formatarNumero.format(soma));
} // Final do método principal
} // Final da classe Exercicio5_caixas_console
Exercício 6:
Criar uma matriz de 2x2 que permita o armazenamento das idades de 4 pessoas de uma turma de aula particular da Tia
Lúcia. Descobrir qual a idade da pessoa mais velha e a média das idades lidas. Imprimir todas as idades lidas além dos
resultados dos cálculos processados.
package basico_3;
import java.text.DecimalFormat;
import javax.swing.JOptionPane;
public class Exercicio6_caixas_console {
public static void main (String args[]) {
// Declaração de variáveis
int i,j = 0;
int somaIdade = 0, maisVelha = 0;
int Matriz[][] = new int[2][2];
float mediaIdade;
// "formatarNumero" é o objeto da classe DecimalFormat.
// "formatarNumero" é usado no programa para formatar as casas decimais.
// Para utilizar a classe DecimalFormat é necessário a linha import java.text.DecimalFormat;
DecimalFormat formatarNumero = new DecimalFormat("0.00");
// Leitura das idades.
for (i=0;i<=1;i++) {
for (j=0;j<=1;j++) {
Matriz[i][j] = Integer.parseInt(JOptionPane.showInputDialog
(null,"\nDigite a idade para posição ["+(i+1)+","+(j+1)+"] da matriz: ","Leitura de
IDADES",JOptionPane.PLAIN_MESSAGE));
somaIdade +=Matriz[i][j];
if (Matriz[i][j]>maisVelha) {
maisVelha = Matriz[i][j];
} // final do bloco do então
} // final do bloco de repetição – j
} // final do bloco de repetição - i
mediaIdade = somaIdade/4;
// Apresentação das idades lidas.
String Resultado="\nAPRESENTAÇÃO DAS IDADES LIDAS"+"\n";
for (i=0;i<=1;i++) {
for (j=0;j<=1;j++) {
System.out.println("Idade - Posição da matriz ["+(i+1)+","+(j+1)+"] : "+Matriz[i][j]);
} // final do bloco de repetição - j
} // final do bloco de repetição - i
System.out.println("\nRESULTADO DO CÁLCULO");
System.out.println("Idade da pessoa mais velha: "+maisVelha);
System.out.println("Média das idades lidas: "+formatarNumero.format(mediaIdade));
} // Final do método principal
} // Final da classe Exercicio6_caixas_console
Download