Buscar

2018 1 Gabarito AD1 ComputacaoII

Prévia do material em texto

UNIVERSIDADE FEDERAL FLUMINENSE 
ESCOLA DE ENGENHARIA INDUSTRIAL METALÚRGICA DE VOLTA REDONDA
CURSO DE ENGENHARIA DE PRODUÇÃO
Fundação Centro de Ciências e Educação Superior a Distância do Estado do Rio de Janeiro
Centro de Educação Superior a Distância do Estado do Rio de Janeiro
Gabarito da Avaliação a Distância No.1 – AD I
Período: 2018-1
Disciplina: Computação II
Coordenador da Disciplina: Yoisell Rodríguez Núñez
Data: 20/02/2017
Questão 1) [2,0 pontos]
Faça um algoritmo que leia a idade de uma pessoa expressa em anos, meses e dias e escreva a idade 
dessa pessoa expressa apenas em dias. Considerar ano com 365 dias e mês com 30 dias.
Resposta:
import java.util.Scanner;
public class IdadePessoa{//Inicio da Classe
 public static void main(String[] args){//Inicio da Função main
 Scanner ler = new Scanner(System.in); //Criando objeto Scanner
//Declarando as variáveis envolvidas
int dia;
int mes;
int ano;
int anoAtual = 2017; // subtrair o ano de nasc pelo ano atual 
// para chegar a idade
int anoDias; // anos em dias
int mesDias; // mes em dias
int idadeFinal;
UNIVERSIDADE FEDERAL FLUMINENSE 
ESCOLA DE ENGENHARIA INDUSTRIAL METALÚRGICA DE VOLTA REDONDA
CURSO DE ENGENHARIA DE PRODUÇÃO
Fundação Centro de Ciências e Educação Superior a Distância do Estado do Rio de Janeiro
Centro de Educação Superior a Distância do Estado do Rio de Janeiro
System.out.print("Digite o dia de nascimento: ");
dia = input.nextInt();
System.out.print("Digite o mês do nascimento: ");
mes = input.nextInt();
System.out.print("Digite o ano do nascimento: ");
ano = input.nextInt();
mesDias = mes*30;
anoDias = (anoAtual - ano)*365;
idadeFinal = anoDias + mesDias + dia;
System.out.printf(" %s ", idadeFinal);
}
}
UNIVERSIDADE FEDERAL FLUMINENSE 
ESCOLA DE ENGENHARIA INDUSTRIAL METALÚRGICA DE VOLTA REDONDA
CURSO DE ENGENHARIA DE PRODUÇÃO
Fundação Centro de Ciências e Educação Superior a Distância do Estado do Rio de Janeiro
Centro de Educação Superior a Distância do Estado do Rio de Janeiro
Questão 2) [2,0 pontos]
O cardápio da Lanchonete Bom Apetite é o seguinte:
Escrever um algoritmo que leia o código do item pedido, a quantidade e calcule o valor a ser pago por 
aquele lanche. Considere que a cada execução somente será calculado um item.
Resposta:
import java.util.Scanner;
public class ValorCardapio{//Inicio da Classe
 public static void main(String[] args){//Inicio da Função main
 Scanner entrada = new Scanner(System.in); //Criando objeto Scanner
System.out.println("Digite o código do Lanche:");
int codigoLanche = entrada.nextInt();
System.out.println("Digite a quantidade de Lanches ("+ 
codigoLanche + "):");
int qntd = entrada.nextInt();
double valor = 0;
String produto = "produto";
switch (codigo){
case 100:
UNIVERSIDADE FEDERAL FLUMINENSE 
ESCOLA DE ENGENHARIA INDUSTRIAL METALÚRGICA DE VOLTA REDONDA
CURSO DE ENGENHARIA DE PRODUÇÃO
Fundação Centro de Ciências e Educação Superior a Distância do Estado do Rio de Janeiro
Centro de Educação Superior a Distância do Estado do Rio de Janeiro
produto = "Cachorro quente";
valor = 1.10;
break;
case 101:
produto = "Bauru simples";
valor = 1.30;
break;
case 102:
produto = "Buaru c/ ovo";
valor = 1.50;
break;
case 103:
produto = "Hambuguer";
valor = 1.10;
break;
case 104:
produto = "Cheeseburger";
valor = 1.30;
break;
case 105:
produto = "Refrigerante";
valor = 1.00;
UNIVERSIDADE FEDERAL FLUMINENSE 
ESCOLA DE ENGENHARIA INDUSTRIAL METALÚRGICA DE VOLTA REDONDA
CURSO DE ENGENHARIA DE PRODUÇÃO
Fundação Centro de Ciências e Educação Superior a Distância do Estado do Rio de Janeiro
Centro de Educação Superior a Distância do Estado do Rio de Janeiro
break;
}
double valorPagar = valor*qntd; //Calculando o valor total a 
 // ser pago
System.out.println("Valor total do pedido("+ qntd +" x "+ 
produto +"):R$ "+ valorPagar);
}
}
UNIVERSIDADE FEDERAL FLUMINENSE 
ESCOLA DE ENGENHARIA INDUSTRIAL METALÚRGICA DE VOLTA REDONDA
CURSO DE ENGENHARIA DE PRODUÇÃO
Fundação Centro de Ciências e Educação Superior a Distância do Estado do Rio de Janeiro
Centro de Educação Superior a Distância do Estado do Rio de Janeiro
Questão 3) [2,0 pontos]
Seja o seguinte algoritmo:
Faça um teste de mesa e complete o quadro a seguir para os seguintes valores:
UNIVERSIDADE FEDERAL FLUMINENSE 
ESCOLA DE ENGENHARIA INDUSTRIAL METALÚRGICA DE VOLTA REDONDA
CURSO DE ENGENHARIA DE PRODUÇÃO
Fundação Centro de Ciências e Educação Superior a Distância do Estado do Rio de Janeiro
Centro de Educação Superior a Distância do Estado do Rio de Janeiro
Resposta:
x y z = x*y + 5 z ≤ 0 0 < z ≤ 100 z > 100 Resposta
3 2 3*2 + 5 = 11 NÃO SIM NÃO 'B'
150 3 150*3 + 5 = 
455
NÃO NÃO SIM 'C'
7 -1 7*(-1) + 5 = -2 SIM NÃO NÃO 'A'
-2 5 (-2)*5 + 5 = -5 SIM NÃO NÃO 'A'
50 3 50*3 + 5 = 155 NÃO NÃO SIM 'C'
UNIVERSIDADE FEDERAL FLUMINENSE 
ESCOLA DE ENGENHARIA INDUSTRIAL METALÚRGICA DE VOLTA REDONDA
CURSO DE ENGENHARIA DE PRODUÇÃO
Fundação Centro de Ciências e Educação Superior a Distância do Estado do Rio de Janeiro
Centro de Educação Superior a Distância do Estado do Rio de Janeiro
Questão 4) [2,0 pontos] 
Faça um programa em Java que receba a idade de uma pessoa e classifique-a seguindo os critérios 
abaixo:
Idade Classificação
0 a 2 anos Recém-nascido
3 a 11 anos Criança
12 a 19 anos Adolescente
20 a 55 anos Adulto
Acima de 55 
anos
Idoso
Se a idade informada for menor que zero informar que a idade, neste caso, e inválida.
Resposta:
import java.util.Scanner;
public class IdadeClassificacao {
 public static void main(String[] args) {
 Scanner ler = new Scanner(System.in);
 int idade;
 System.out.printf("Informe a idade da pessoa:\n");
 idade = ler.nextInt();
 System.out.printf("\n%d = ", idade);
 if (idade < 0)
 System.out.printf("Erro: idade inválida !!!.\n");
UNIVERSIDADE FEDERAL FLUMINENSE 
ESCOLA DE ENGENHARIA INDUSTRIAL METALÚRGICA DE VOLTA REDONDA
CURSO DE ENGENHARIA DE PRODUÇÃO
Fundação Centro de Ciências e Educação Superior a Distância do Estado do Rio de Janeiro
Centro de Educação Superior a Distância do Estado do Rio de Janeiro
 else if ((idade >= 0) && (idade <= 2))
 System.out.printf("Recém-nascido.\n");
 else if ((idade >= 3) && (idade <= 11))
 System.out.printf("Criança.\n");
 else if ((idade >= 12) && (idade <= 19))
 System.out.printf("Adolescente.\n");
 else if ((idade >= 20) && (idade <= 55))
 System.out.printf("Adulto.\n");
 else
 System.out.printf("Idoso.\n");
 }
}
UNIVERSIDADE FEDERAL FLUMINENSE 
ESCOLA DE ENGENHARIA INDUSTRIAL METALÚRGICA DE VOLTA REDONDA
CURSO DE ENGENHARIA DE PRODUÇÃO
Fundação Centro de Ciências e Educação Superior a Distância do Estado do Rio de Janeiro
Centro de Educação Superior a Distância do Estado do Rio de Janeiro
Questão 5) [2,0 pontos]
Desenvolva um algoritmo em Java que leia 3 valores inteiros e efetue o cálculo das raízes reais da 
equação de 2º grau utilizando a fórmula de Bhaskara. Se não for possível calcular as raízes, mostre 
uma mensagem correspondente.
Obs.: não é possível divisão por 0 (zero) e a raíz quadrada de número negativo é um número 
complexo.
Resposta:
import java.util.Scanner;
public class FormulaBhaskara {
 public static void main(String[] args) {
 int a, b, c;
 float delta, x1, x2;
 System.out.printf("Digite os valores:\n");
 Scanner v1 = new Scanner(System.in);System.out.print("Digite o valor de A:\n"); 
 a = v1.nextInt(); 
 if (a = 0){ 
System.out.println("Valor não aceito, tente novamente\n"); 
System.exit(0); 
 }
 System.out.print("Digite o valor de B:\n"); 
 b = v1.nextInt(); 
 System.out.print("Digite o valor de C:\n"); 
 c = v1.nextInt(); 
 // cálculo do delta (discriminante) de Bhaskara 
delta = b * b - 4 * a * c; // Uma outra alternativa seria utilizar 
UNIVERSIDADE FEDERAL FLUMINENSE 
ESCOLA DE ENGENHARIA INDUSTRIAL METALÚRGICA DE VOLTA REDONDA
CURSO DE ENGENHARIA DE PRODUÇÃO
Fundação Centro de Ciências e Educação Superior a Distância do Estado do Rio de Janeiro
Centro de Educação Superior a Distância do Estado do Rio de Janeiro
 // Math.pow(b,2) ao invés de b*b 
if (delta > 0) {
x1 = (float) ((-b + Math.sqrt(delta)) / (2 * a));//cálculo 1a raiz
x2 = (float) ((-b - Math.sqrt(delta)) / (2 * a));//cálculo 2a raiz
 System.out.println("\n Valor da raiz X' = " + x1 
 + "\n Valor da raiz X'' = " + x2); 
} else { 
System.out.println("As duas raízes são complexas conjugadas"); 
} 
 } 
}
Observações:
− É importante destacar que, as respostas acima são “possíveis respostas”. Não existe apenas 
uma resposta para os exercícios solicitados, já que cada aluno poderá implementar os 
algoritmos de uma forma diferente. O mais importante é que os algoritmos sejam 
implementados corretamente na linguagem adotada do curso – Java.
− Os alunos deverão enviar um documento com as respostas em formato .doc ou .pdf (via 
plataforma).
− No documento deverá aparecer em detalhes (com comentários) os códigos bem como a 
simulação de alguns exemplos (printScreen (captura) da tela com algumas execuções do 
programa).
− Alunos : Data limite para entrega da AD1 --> 20/02, conforme Cronograma.
− Tutores a distância: Data limite para enviar as notas da AD1 --> 04/03, conforme 
Cronograma.

Outros materiais