• Nenhum resultado encontrado

aula 13 - lablog

N/A
N/A
Protected

Academic year: 2021

Share "aula 13 - lablog"

Copied!
5
0
0

Texto

(1)

Ano: 2015 ROTEIRO PARA AULA DE LABORATÓRIO DE LÓGICA DE PROGRAMAÇÃO - LOG

SEMANAS: 17/08/2015 a 21/08/2015 e 24/08/2015 a 28/08/2015 AULAS 13 – Exercícios de Aplicação

1. OBJETIVO(S)

- REVISAR pontos principais do conteúdo desenvolvido no primeiro semestre. - Elaborar e testar algoritmo(s) da(s) solução(ões), usando o IDE jGRASP. - Treinar estrutruras de controle da linguagem Java.

2. MATERIAL UTILIZADO

Alunos: Lápis ou caneta, borracha, papel ou microcomputador, com o IDE jGRASP. Professor: Lousa Branca e canetas para quadro branco e / ou microcomputador, com o IDE jGRASP.

3. PROCEDIMENTO

Os alunos devem resolver os exercícios a seguir, com suporte do professor (revisão do assunto e / ou indicação de caminhos para solução), quando necessário.

4. EXERCÍCIOS

I. Desenvolver os exercícios seguintes no IDE jGRASP, usando linguagem Java.

II. Para cada exercício desta lista, depois de criar as classes solicitadas no exercício, criar outra classe (“Teste”, por exemplo), que contrenha o método main( ). A finalidade dessa classe Teste é instanciar objeto(s) da(s) classe(s) criada(s) e chamar (testar) os métodos nela(s) desenvolvidos.

III. No método main( ), usar o método showInputDialog() para entrada de dados e showMessageDialog() para exibição dos resultados do programa (estes métodos estão na classe JOptionPane do package javax.swing).

4.1 Escreva a classe Desconto. O atributo único desta classe é o percentualDeDesconto(double), que é iniciado pelo único parâmetro do método construtor. Escreva um método de acesso e um método modificador. O valor principal (sobre o qual será aplicado o desconto) é passado como parâmetro ao método calculaDesconto(), que deve retornar o valor do desconto em reais.

4.2 Escrever, em linguagem Java, uma classe Copo. Esta classe tem o único atributo capacidade (double), que corresponde à quantidade de líquido que pode ser colocado no copo (em mililitros). Escrever, nesta classe:

(2)

Ano: 2015 b) Método construtor que inicia o atributo com valor passado por parâmetro

(lembrar que o atributo deve ter valor superior a zero);

c) Método de acesso e método modificador para o atributo (lembrar que o atributo deve ter valor superior a zero);

d) O método calculaNumeroDeCopos(), que recebe por parâmetro um valor, em litros, e retorna a quantidade de copos necessária para armazenar toda a água. Dado: 1 litro = 1000 mililitros.

4.3 Um programador foi contratado por uma agência de viagens para escrever um programa em Java, com uma classe que tenha métodos que calculem a conversão de reais para dólar de acordo com os atributos valorDeCompra e o valorDeVenda (ambos double). Então, escreva uma classe ConversorMonetário que inclua os seguintes métodos:

a) Construtor, que inicializa os atributos com valor igual a 1.0; b) Modificadores e de acesso;

c) imprimirValores() que imprime os valores de compra e de venda;

d) venderDolar() que recebe como parâmetro uma quantia em dólares e retorna o valor correspondente em reais;

e) comprarDolar() que recebe como parâmetro uma quantia em dólares e devolve o valor correspondente em reais.

Obs.: Lembrar que os valores dos atributos não podem ser negativos.

4.4 Escrever, em linguagem Java, uma classe EquacaoSegundoGrau que possui 3 atributos do tipo double correspondentes aos coeficientes a, b e c de uma equação do segundo grau. Escrever um método para carregar valores nestes atributos e, em seguida, escreva os métodos seguintes:

a) delta() que deve calcular e retornar o valor do delta da fórmula de Bhaskara.

b) temRaízesReais() deve retornar um valor boolean (true, se existem raízes reais, caso contrário retorna false);

c) (c) raízesReais() deve imprimir as raízes reais, quando existirem; caso não existam, deve ser exibida uma mensagem, dizendo que não há raízes reais. Obs.1: O valor de a deve ser diferente de zero (sugestão: use um do...while para induzir o usuário a digitar um valor válido para o atributo a).

Obs.2: Para calcular a raiz quadrada, você pode utilizar o método Math.sqrt(). Obs.3: Não é para criar novos atributos na classe.

4.5 Escreva uma classe denominada Pessoa. A classe deve possuir: a) Atributos:

• peso – peso da pessoa é um número real positivo; • altura – altura da pessoa é um número real positivo.

(3)

Ano: 2015 b) Um método construtor que inicialize os atributos com valores recebidos por parâmetros. (Verifique se valor do parâmetro é válido; caso não seja, o atributo deve ser inicializado com zero).

c) Métodos de acesso e modificadores para cada atributo.

d) Método que calcula e retorna o IMC (índice de massa corporal) de uma pessoa. e) Método que informe a condição física de uma pessoa, conforme o seu IMC, utilizando if’s e else’s aninhados.

f) Método que informe a condição física da pessoa, conforme o seu IMC. Considerar a mesma tabela e utilizar operadores lógicos.

Dados: IMC = massa / (altura * altura).

IMC Condição Física Abaixo de 18,5 Abaixo do peso ideal Entre 18,5 e 24,9 Peso normal

Entre 25,0 e 29,9 Acima do peso (sobrepeso) Entre 30,0 e 34,9 Obesidade grau I

Entre 35,0 e 39,9 Obesidade grau II 40,0 e acima Obesidade grau III

4.6 Escrever, em linguagem Java, a classe Compra. Os atributos únicos desta classe são o valorDaCompra (double), em reais, o numeroDeParcelas (int), que são iniciados por parâmetros do método construtor (lembrar que os atributos devem ter valor superior a zero, no caso do primeiro atributo e igual ou superior a 1, no caso do segundo), nomeDoCliente (String) e cpfDoCliente (String). Escrever, nesta classe: a) Métodos de acesso e modificadadores para os dois atributos (lembrar que os

atributos devem ter valor superior a zero, no caso do primeiro atributo e igual ou superior a 1, no caso do segundo);

b) O método valorAPagar(), sem parâmetros, que deve retornar o valor a ser pago à vista, pago no ato da compra (se numeroDeParcelas = 1), com desconto de 7%, ou o valor da 1.a parcela, também pago no ato da compra (se numeroDeParcelas > 1);

c) Um método, para imprimir a nota de compra, que deve conter o nome do estabelecimento, o CNPJ do mesmo, os dados do cliente, o valor da compra, o número de parcelas e o valor pago no ato da compra (de acordo com o item b acima).

4.7 Escrever, em linguagem Java, a classe NumerosInteiros, com seu único atributo numero (int). (Obs.: Não é para criar novos atributos na classe). Escever também nessa classe:

a) Método construtor padrão (sem parâmetros), que inicia o atributo numero com o valor 0;

b) Método construtor, que inicia o atributo numero por meio de parâmetro; c) Métodos de acesso e modificador para o atributo;

(4)

Ano: 2015 d) Um método que recebe um número inteiro por parâmetro e que calcula e retorna o resultado da soma do valor do parâmetro com o valor do atributo numero;

e) Um método que recebe um número inteiro por parâmetro e que calcula e retorna o resultado da multiplicação do valor do parâmetro com o valor do atributo numero;

f) Um método que retorna o valor absoluto do atributo numero (não é para usar o método Math.abs() ) ;

g) Um método que retorna o quadrado do atributo numero;

h) Um método que retorna o atributo numero, convertido para double (usar casting);

i) Um método que calcula e retorna o inverso do atributo numero ( 1 / numero ) usar o atributo numero convertido (casting) para double;

j) Um método que retorne a String “ é par.”, se o atributo numero é par; caso contrário, deve retornar a String “ é ímpar.”;

k) Um método que retorne a String “ é primo.”, se o atributo numero é primo; caso contrário, deve retornar a String “ não é primo.”;

l) Um método que calcula e retorna o valor da raiz quadrada do valor absoluto do atributo número (usar Math.sqrt() );

m) Um método que calcule e retorne a soma de todos os números inteiros positivos até o valor do absoluto do atributo numero;

n) Um método que retorne, em uma String, a tabuada do atributo numero; Exemplo: se o atributo numero for igual a 3, a String deve ser

“Tabuada do 3 1 x 3 = 3 2 x 3 = 6 3 x 3 = 9 4 x 3 = 12 5 x 3 = 15 6 x 3 = 18 7 x 3 = 21 8 x 3 = 24 9 x 3 = 27 10 x 3 = 30 “

o) Um método que calcule e retorne o valor do fatorial do valor absoluto do atributo numero;

p) Um método que armazene e retorne numa String, a série de Fibonacci, cuja quantidade de termos seja igual ao valor absoluto do atributo numero;

q) Um método que determine e retorne, em uma String, os divisores inteiros do atributo numero;

r) O método potencia, que calcula e retorna o resultado (double) de nx, sendo x um número inteiro fornecido por parâmetro e n é o valor do atributo numero convertido para double (Obs.: não é para usar o método Math.pow() );

s) Um método que retorne a String “é capícua”, se o atributo número for uma capícua; caso contrário, o método deve retornar “não é capícua”. Obs.: 12321, 5234325 e 898 são capícuas;

(5)

Ano: 2015 t) Um método que retorne o valor (double) aproximado da constante matemática π (PI), usando a soma da série 4 / 1 – 4 / 3 + 4 / 5 – 4 / 7 + 4 / 9 - ... ± 4 / numero ; faça com que o programa (ou seja, o método main() ) exiba o resultado dessa soma e também o valor de Math.PI, para fins de comparação.

5 REFERÊNCIAS

LOPES, ANITA. GARCIA, GUTO. Introdução à Programação: 500 algoritmos resolvidos. Rio de Janeiro: Elsevier, 2002.

SALIBA, WALTER. Técnicas de Programação: uma abordagem estruturada. São Paulo: MAKRON, 1992.

FORBELLONE, A. L. V. EBERSPACHER, H. F. Lógica de Programação: a construção de algoritmos e estruturas de dados. São Paulo, 2000.

PUGA, S. RISSETTI, G. Lógica de Programação e Estruturas de Dados com aplicações em Java. 2 ed. São Paulo: Pearson, 2009.

SALVETTI, D. D. BARBOSA, L. M. Algoritmos. São Paulo: Pearson, 1998.

MANZANO, J. A. N. G. OLIVEIRA, J. F. DE. Algortimos: Lógica para Desenvolvimento de Programação de Computadores. São Paulo: Érica, 2012.

CARBONI, I. F. Lógica de Programação. São Paulo: Pioneira Thomson Learning, 2003. GOLDMAN, A. KON, F. SILVA, P. J. S. Introdução à Ciência da Computação com Java e

Orientação a Objetos. Disponível em

http://ccsl.ime.usp.br/files/books/intro-java-cc.pdf.

Referências

Documentos relacionados

Por isso, quando a quantidade de Oxigênio Dissolvido na água diminui, os peixes não conseguem compensar esta.. Diminuição, ficando prejudicados e,

O Museu Digital dos Ex-votos, projeto acadêmico que objetiva apresentar os ex- votos do Brasil, não terá, evidentemente, a mesma dinâmica da sala de milagres, mas em

nhece a pretensão de Aristóteles de que haja uma ligação direta entre o dictum de omni et nullo e a validade dos silogismos perfeitos, mas a julga improcedente. Um dos

Equipamentos de emergência imediatamente acessíveis, com instruções de utilização. Assegurar-se que os lava- olhos e os chuveiros de segurança estejam próximos ao local de

Tratando-se de uma revisão de literatura, o presente trabalho utilizou-se das principais publicações sobre as modificações de parâmetros técnicos observados em corredores,

17 CORTE IDH. Caso Castañeda Gutman vs.. restrição ao lançamento de uma candidatura a cargo político pode demandar o enfrentamento de temas de ordem histórica, social e política

O enfermeiro, como integrante da equipe multidisciplinar em saúde, possui respaldo ético legal e técnico cientifico para atuar junto ao paciente portador de feridas, da avaliação

*-XXXX-(sobrenome) *-XXXX-MARTINEZ Sobrenome feito por qualquer sucursal a que se tenha acesso.. Uma reserva cancelada ainda possuirá os dados do cliente, porém, não terá