Buscar

AP2 - Computação I - 2016-1 - gabarito

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 Avaliação Presencial – AP2 
2016.1 
Disciplina: Computação I 
Coordenador da Disciplina: Edgar Eller Junior 
 
Nome: 
Matrícula: Pólo: ________________________ 
ORIENTAÇÕES PARA A AVALIAÇÃO: 
 
1. Prova sem consulta e sem uso de máquina de calcular. 
2. Use caneta para preencher o seu nome e assinar nas folhas de questões e nas folhas 
de respostas. 
3. Você pode usar lápis para responder as questões de formulação de algoritmos. 
4. Todas as respostas devem ser transcritas nas folhas de respostas. As respostas nas 
folhas de questões não serão corrigidas. 
 
1) O procedimento abaixo calcula, de acordo com a fórmula descrita, e imprime a 
variância do conjunto de números armazenado no vetor Dados. Recebe dois 
parâmetros de entrada, um vetor de números reais e um inteiro representando o 
tamanho do vetor. Complete o algoritmo nos espaços entre os comentários 
seguindo as instruções. (2,5 pts) 
Fórmula da variância: 
 
Procedimento calcVar( Real[ ] Dados, Inteiro N ) 
Inicio 
Inteiro i, soma=0, med, temp=0, var 
Para ( i=0 ; i<N ; i=i+1 ) Faça 
 soma = soma + Dados[i] 
Fim Para 
med = soma / N 
Para ( i=0 ; i<N ; i=i+1 ) Faça 
 temp = temp + ( Dados[i] - med )^2 
Fim Para 
var = temp / N 
Imprimir “A variância da distribuição é: “ + var 
Fim 
 
 
 
 
2) Opção B 
 
Algoritmo adjProd( ) 
Inicio 
Inteiro i, produto=0, temp, vetor[500] 
Para ( i = 0 ; i<500 ; i=i+1 ) Faça 
 Imprimir “Digite um número não nulo da posição” + i 
Ler vetor[i] 
Fim Para 
 Para ( i = 0 ; i<497 ; i=i+1 ) Faça 
 temp = vetor[i] * vetor[i+1] * vetor[i+2] 
 Se ( temp >produto ) Então 
 produto = temp 
 Fim Se 
Fim Para 
Imprimir “O valor do maior produto entre 3 números adjacentes é:” + produto 
Fim 
 
 
3) Construa uma função que receba uma matriz quadrada de números reais e 
retorne a diferença entre o somatório de seus elementos(números) pares e 
ímpares. (2,5 pts) 
Inteiro calcSoma( Real[ ][ ] matriz, Inteiro dim ) 
Inicio 
 Inteiro i,j 
 Real diferenca, par, impar 
 Para ( i = 0 ; i < dim ; i=i+1 ) Faça 
 Para ( j = 0 ; j < dim ; j=j+1 ) Faça 
 Se ( matriz[i][j] % 2 == 0 ) Então 
 par = par + matriz[i][i] 
 Senão 
 impar = impar + matriz[i][i] 
 Fim Se 
 Fim Para 
 Fim Para 
 diferenca = par - impar 
 Retorne diferenca 
Fim 
 
4) Utilizando recursividade, construa uma função que receba um número inteiro 
n e retorne o fatorial deste número. (2,5 pts) 
Inteiro fatorial( Inteiro n ) 
 Início 
 Se ( n==0 | n==1 ) 
 Retorne 1 
 Senão 
 Retorne n*fatorial(n-1) 
 Fim Se 
Fim

Continue navegando