Buscar

AP2_2016 2

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

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 Presencial – AP II
Período: 2016-2
Disciplina: Computação II
Coordenador da Disciplina: Yoisell Rodríguez Núñez
Questão 1. [1,0 ponto] 
Implemente a lógica para realização de saques em um caixa eletrônico considerando 
que o mesmo armazena cédulas de R$100,00, R$50,00, R$20,00, R$10,00, R$5,00, 
R$2,00 e R$1,00 e devem ser entregues ao cliente o menor número possível de 
cédulas.
Resposta:
import java.util.Scanner;
public class CaixaEletronico {
public static void main(String[] args) {
//Cédulas disponíveis no caixa eletrônico
int[] cedulas = {100, 50, 20, 10, 5, 2, 1};
//Quantidade total de cédulas entregues ao cliente
int quantidadeTotal = 0;
 //valor a ser sacado pelo cliente
int valorReais;
System.out.print("Digite o valor a ser sacado pelo cliente: ");
valorReais = input.nextInt();
//Percorrendo todas as cédulas disponíveis no caixa eletrônico
for(int i = 0; i < cedulas.length; i++) {
 //Quantidade de cédulas para o valor cédulas[i]
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
 int quantidadeCedulas = valorReais/cedulas[i];
//Impressão da quantidade de cédulas
System.out.println("Quantidade de cédulas de "+ cedulas[i] + 
 ": " +quantidadeCedulas );
 //Resto da divisão
valorReais %= cedulas[i];
//Quantidade total de cédulas entregues ao cliente
quantidadeTotal += quantidadeCedulas;
}
 //Impressão
System.out.println("Quantidade total: "+quantidadeTotal);
 }
}
Resultado obtido durante a execução do código para valorReais = 143:
Quantidade de cedulas de 100: 1
Quantidade de cedulas de 50: 0
Quantidade de cedulas de 20: 2
Quantidade de cedulas de 10: 0 
Quantidade de cedulas de 5: 0
Quantidade de cedulas de 2: 1
Quantidade de cedulas de 1: 1
Quantidade total: 5
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. [3,0 pontos] 
Ler uma matriz A quadrada de ordem 3 e a seguir verificar se a matriz informada é 
uma matriz identidade. Para que uma matriz seja matriz identidade ela tem que ser 
quadrada e os elementos que pertencerem à diagonal principal devem ser iguais a 1 e o 
restante dos elementos iguais a zero. Observação: A matriz identidade também é 
chamada de matriz unidade.
Resposta:
import java.util.Scanner;
public class MatrizIdentidade {
 public static void main(String[] args) {
 Scanner ler = new Scanner(System.in);
 int n = 3; // ordem da matriz quadrada
 int i, j;
 int m[][] = new int[n][n]; // matriz quadrada
// entrada de dados
 for (i=0; i<n; i++) {
 System.out.printf("Informe os elementos da %da. linha:\n", (i+1));
 for (j=0; j<n; j++) {
 System.out.printf("m[%d][%d] = ", i, j);
 m[i][j] = ler.nextInt();
 }
 System.out.printf("\n");
 }
// processamento: verificando se a matriz informada é uma matriz identidade
 boolean midentidade = true;
 for (i=0; (i<n)&&(midentidade==true); i++) {
 for (j=0; (j<n)&&(midentidade==true); j++) {
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
// verificando se o elemento da diagonal principal não é igual a 1
 if ((i == j) && (m[i][j] != 1))
 midentidade = false; // não é uma matriz identidade
// verificando se o elemento que não pertence a diag. principal não é igual a 0
 else if ((i != j) && (m[i][j] != 0))
 midentidade = false; // não é uma matriz identidade
 }
 }
// saída: exibindo a matriz informada e indicando se ela é uma matriz identidade
 System.out.printf("\n");
 for (i=0; i<n; i++) {
 System.out.printf("%da. linha: ", (i+1));
 for (j=0; j<n; j++) {
 System.out.printf("%d ", m[i][j]);
 }
 System.out.printf("\n");
 }
 if (midentidade == true)
 System.out.printf("\nA matriz informada é uma matriz identidade.\n");
 else System.out.printf("\nA matriz informada \"nao\" é uma matriz 
identidade.\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 3. [3,0 pontos] 
Crie um Programa que implemente e escreva o Triângulo de Pascal em um arquivo de 
saída. Neste Triângulo, cada elemento é igual à soma dos elementos que lhe ficam 
imediatamente acima, caso o elemento não seja nem o primeiro nem o último da sua 
linha. Senão, o elemento é um. A dimensão do Triângulo deve ser passada como 
parâmetro de entrada. Se a dimensão for seis, o seu programa deve reproduzir o seguinte 
arquivo:
Triangulo de Pascal de dimensão 6: 
1
1 1
1 2 1 
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
Um exemplo de uso desse programa seria java TriPascal 6 saida.txt, onde saida.txt é 
o nome do arquivo de saída.
Resposta:
import java.util.Scanner;
public class TrianguloPascal {
public static void main(String[] args) {
 Scanner ler = new Scanner(System.in);
System.out.printin(“Digite o número de linhas desejadas para o Triângulo de 
Pascal: ”)
int nlinhas = ler.nextint();
int tpascal[][];
tpascal=newint[nlinhas][nlinhas]
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
for(int x=0; x<nlinhas; x++) {
System.out.printf("\n");
for(int y=0; y<=x; y++){
if(y=0){
tpascal[x][y]=1;
}
if(x==y){
tpascal[x][y]=1;
}
if((y!=0) && (x!=0)){
tpascal[x][y]=tpascal[x-1][y-1]+tpascal[x+1][y];
}
System.out.printf(tpascal[x][y]+” ”)
}
}
}
}
Questão 4. [3,0 pontos] 
Faça uma função que receba um vetor de números reais e um número inteiro. O 
procedimento deve ordenar os elementos do vetor. Caso o valor do número inteiro 
passado for maior que zero, a ordem deve ser crescente. Caso contrário, a ordem deve 
ser decrescente.
Resposta:
import java.util.Scanner;
public class OrdenarVetor {
public static void main(double[]vet, int ordem) {
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
 Scanner ler = new Scanner(System.in);
double menor, maior;
int pos;
if(ordem>0){
for(int i=0; i<vet.lenght; i++){
menor=vet[i];
pos=i;
for(int j=0; j<vet.length; j++)
if(vet[j]<menor){
menor=vet[j];
pos=j;
}
if(pos!=i){
double aux=vet[i];
vet[i]=menor;
vet[pos]=aux;
}
}
}
else{
for(int i=0; i<vet.length; i++){
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ânciado Estado do Rio de Janeiro
Centro de Educação Superior a Distância do Estado do Rio de Janeiro
maior=vet[i];
pos=i;
for(int j=0; j<vet.length; j++)
if(vet[j]>maior){
maior=vet[j];
pos=j;
}
if(pos!=i){
double aux=vet[i];
vet[i]=maior;
vet[pos]=aux;
}
}
}
}
Observação:
 É 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 pode 
implementar os algoritmos de uma forma diferente. O que realmente importa é 
que os algoritmos sejam implementados corretamente (na linguagem adotada do 
curso – Java).

Continue navegando