Logo Passei Direto
Buscar

Prova de Grau B_ Amorim

Ferramentas de estudo

Questões resolvidas

Uma cooperativa de energia solar desenvolveu um sistema para calcular automaticamente a remuneração de seus produtores parceiros. De acordo com o regulamento da cooperativa: produtores que gerarem mais de 5.000 kWh no mês recebem um bônus de 10% sobre o valor a receber; produtores que gerarem até 5.000 kWh recebem apenas o valor base de sua produção. Visando facilitar a manutenção e reutilização do código, o programador decidiu criar uma função específica para calcular a remuneração final dos produtores. O programa foi implementado da seguinte forma: #include float calcularBonus(float energia, float pagamento) { if(energia > 5000) { pagamento = pagamento + (pagamento * 0.10); } return pagamento; } int main() { float energia = 6200; float pagamento = 3000; pagamento = calcularBonus(energia, pagamento); printf("\nPagamento final: R$ %.2f", pagamento); return 0; } Considerando a execução do programa e os conceitos de modularização e passagem de parâmetros em Linguagem C, analise as afirmativas a seguir.
Assinale a alternativa correta.
I. A função calcularBonus() retornará o valor R$ 3.300,00 para a função main().
II. Após a chamada da função, a variável pagamento da função principal main() passará a armazenar o valor R$ 3.300,00.
III. A linha de comando pagamento = calcularBonus(energia, pagamento) é responsável por armazenar no programa principal na variável pagamento, o valor retornado pela função calcularBonus ;
IV. Se o comando return pagamento; fosse removido da função, o valor atualizado NÃO poderia ser devolvido à função principal main() da forma apresentada.
a. Apenas I, II e III.
b. I, II, III e IV.
c. Apenas I e II.
d. Apenas II, III e IV.

Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Questões resolvidas

Uma cooperativa de energia solar desenvolveu um sistema para calcular automaticamente a remuneração de seus produtores parceiros. De acordo com o regulamento da cooperativa: produtores que gerarem mais de 5.000 kWh no mês recebem um bônus de 10% sobre o valor a receber; produtores que gerarem até 5.000 kWh recebem apenas o valor base de sua produção. Visando facilitar a manutenção e reutilização do código, o programador decidiu criar uma função específica para calcular a remuneração final dos produtores. O programa foi implementado da seguinte forma: #include float calcularBonus(float energia, float pagamento) { if(energia > 5000) { pagamento = pagamento + (pagamento * 0.10); } return pagamento; } int main() { float energia = 6200; float pagamento = 3000; pagamento = calcularBonus(energia, pagamento); printf("\nPagamento final: R$ %.2f", pagamento); return 0; } Considerando a execução do programa e os conceitos de modularização e passagem de parâmetros em Linguagem C, analise as afirmativas a seguir.
Assinale a alternativa correta.
I. A função calcularBonus() retornará o valor R$ 3.300,00 para a função main().
II. Após a chamada da função, a variável pagamento da função principal main() passará a armazenar o valor R$ 3.300,00.
III. A linha de comando pagamento = calcularBonus(energia, pagamento) é responsável por armazenar no programa principal na variável pagamento, o valor retornado pela função calcularBonus ;
IV. Se o comando return pagamento; fosse removido da função, o valor atualizado NÃO poderia ser devolvido à função principal main() da forma apresentada.
a. Apenas I, II e III.
b. I, II, III e IV.
c. Apenas I e II.
d. Apenas II, III e IV.

Prévia do material em texto

Incorreto Atingiu 0,00 de 1,00
Na linguagem C existem apenas funções, enquanto que em outras linguagens existem dois tipos distintos de
rotinas – as funções e os procedimentos. Em C a diferença entre funções e procedimentos é que uma
função tem sempre um tipo e um valor de retorno associados, enquanto um procedimento não devolve
qualquer valor. Assim, a forma de invocar funções e procedimentos também é diferente. Não tendo um valor
de retorno, um procedimento é invocado como se se tratasse de uma instrução simples.
Em C existe uma palavra reservada - void – que permite indicar que uma função não devolve qualquer tipo.
É habitual, encontrar a palavra reservada void para indicar que uma função não recebe qualquer parâmetro,
assim, uma função que “retorna void” é chamada normalmente de Procedimento.
DAMAS, Luís. Linguagem C. Tradução João Araújo Ribeiro, Orlando Bernardo Filho. 10.ed. Rio de Janeiro:
LTC, 2007.
Com base nestes conceitos, auxilie o programador da empresa a selecionar a função correta para o cálculo
de desconto que serão atribuídos aos produtos na campanha de promoção de aniversário da empresa. O
corpo principal do programa já foi desenvolvido pelo programador, onde este invoca/chama a função que vai
receber o valor do produto e o percentual de desconto que será aplicado. Esta função deve retornar para o
main() o valor reajustado , já com o desconto aplicado.
Analise o código da função principal main() já desenvolvida pelo programador da empresa:
#include
main(void)
{
 float desconto,valor_final, preco;
 preco=1000;
 desconto= float (10)/100;
 valor_final = calculo(preco,desconto);
 printf("%.2f",valor_final);
}
 
Com base na diferença entre função e procedimento e conforme necessidade relatada da empresa, analise
as alternativas.
 
 É correto o que se apresenta em:
a. I e III 
b. I e II
12/10/26, 19:02 Prova de Grau B: Revisão da tentativa | AVA Uniftec
https://ava.uniftec.com.br/mod/quiz/review.php?attempt=992156&cmid=1162057 1/20
c. II e III Alternativa Incorreta !
d. Nenhuma alternativa
e. I, II e III
Sua resposta está incorreta.
A resposta correta é:I e III 
12/10/26, 19:02 Prova de Grau B: Revisão da tentativa | AVA Uniftec
https://ava.uniftec.com.br/mod/quiz/review.php?attempt=992156&cmid=1162057 2/20
Questão 2 Correto Atingiu 1,00 de 1,00
Adaptado Enade 2021) Nos programas na Linguagem C, os operadores são utilizados para realizar
comparações, cálculos, entre outros, conforme exemplificado a seguir.
• Operadores aritméticos: ( *, /, %, +, - );
• Operadores relacionais: ( , >=, ==, != );
• Operadores lógicos: ( ! , && , || ).
Considere o programa a seguir cuja função é calcular e apresentar um bônus salarial de 12 % apenas aos
funcionários que recebem salários entre R$ 2.500,00 a R$3.500,00, inclusive. Para os salários que não
estão neste critério deve ser apresentada apenas uma mensagem que o salário não está nos critérios de
bônus.
 
 
Com base nos operadores e na lógica de programação apresentada, assinale a opção que representa a
linha 7 na estrutura de decisão do algoritmo para atender corretamente aos critérios da tarefa.
 
a. if((salario >= 2500.00) || (salario 2500) && (valor = 2500.00) && (salario 2500.00) || (salario = 2500.00) && (valor 
main(void)
{
 float salario, bonus;
printf("Digite o salário do funcionário:");
 scanf("%f", &salario);
 if((salario >= 2500.00) && (salario = 2500.00) && (salario 
int main(void) {
 int MAT[3][2];
 int i , j , x, total=0, w;
 for( i =0; iserá ‘#’ ou ‘o’, dependendo do retorno da função marca(). O trecho de código a seguir foi
elaborado para produzir determinado padrão no painel. (Adaptado Enade 2017 - Gestão da Tecnologia da
Informação).
 
 
Nesta situação, se o valor de n for igual a 3, o padrão que será produzido no painel é:
a.
# o #
o # o
# o #
b.
o # o
# # #
o # o
12/10/26, 19:02 Prova de Grau B: Revisão da tentativa | AVA Uniftec
https://ava.uniftec.com.br/mod/quiz/review.php?attempt=992156&cmid=1162057 8/20
c.
# o o
# # o
# # #
d.
# # #
o # #
o o #
e.
# o o
o # o
o o #
Alternativa Incorreta.
Sua resposta está incorreta.
Código para teste da questão:
#include
int marca (int x, int y)
{ 
 if ((x == y) || (x 
 printf("\nClassificacao = %c ", clas);
 printf("\nSalario = %.2f ", salario);
 printf("\nBonus = %.2f ", bonus);
 printf("\nSalario final = %.2f ", bonus+salario); 
 }
}
A resposta correta é:I, II e III
12/10/26, 19:02 Prova de Grau B: Revisão da tentativa | AVA Uniftec
https://ava.uniftec.com.br/mod/quiz/review.php?attempt=992156&cmid=1162057 13/20
Questão 7 Correto Atingiu 1,00 de 1,00
Uma cooperativa de energia solar desenvolveu um sistema para calcular automaticamente a remuneração
de seus produtores parceiros.
De acordo com o regulamento da cooperativa:
produtores que gerarem mais de 5.000 kWh no mês recebem um bônus de 10% sobre o valor a
receber;
produtores que gerarem até 5.000 kWh recebem apenas o valor base de sua produção.
Visando facilitar a manutenção e reutilização do código, o programador decidiu criar uma função específica
para calcular a remuneração final dos produtores.
O programa foi implementado da seguinte forma:
#include 
 
float calcularBonus(float energia, float pagamento)
{
 if(energia > 5000)
 {
 pagamento = pagamento + (pagamento * 0.10);
 }
 return pagamento;
}
 
int main()
{
 float energia = 6200;
 float pagamento = 3000;
 pagamento = calcularBonus(energia, pagamento);
 printf("\nPagamento final: R$ %.2f", pagamento);
 return 0;
}
 
Considerando a execução do programa e os conceitos de modularização e passagem de parâmetros em
Linguagem C, analise as afirmativas a seguir.
I. A função calcularBonus() retornará o valor R$ 3.300,00 para a função main().
II. Após a chamada da função, a variável pagamento da função principal main() passará a armazenar o
valor R$ 3.300,00.
III. A linha de comando pagamento = calcularBonus(energia, pagamento) é responsável por armazenar
no programa principal na variável pagamento, o valor retornado pela função calcularBonus ;
IV. Se o comando return pagamento; fosse removido da função, o valor atualizado NÃO poderia ser
devolvido à função principal main() da forma apresentada.
 
Assinale a alternativa correta.
a. Apenas I, II e III.
b. I, II, III e IV. Alternativa Correta. Parabéns !
12/10/26, 19:02 Prova de Grau B: Revisão da tentativa | AVA Uniftec
https://ava.uniftec.com.br/mod/quiz/review.php?attempt=992156&cmid=1162057 14/20
c. Apenas I e II.
d. Apenas II, III e IV.
Sua resposta está correta.
Gabarito : I, II, III e IV.
Justificativa: A alternativa I, II, III e IV. está correta.
Quando afunção é chamada, os valores recebidos pela função calcularBonus são:
energia = 6200
pagamento = 3000
Como a produção de energia é superior a 5.000 kWh, a função aplica o bônus de
10%:
3000 + (3000 × 0,10)
3000 + 300
3300
Em seguida, a instrução:
return pagamento;
 
devolve o valor atualizado de 3300 para a função principal.
O comando:
pagamento = calcularBonus(energia, pagamento);
recebe o valor retornado e o armazena novamente na variável pagamento da função
main().
Dessa forma, ao executar a instrução:
printf("Pagamento final: R$ %.2f\n", pagamento);
o valor exibido como saída será:
Pagamento final: R$ 3300,00
 
Afirmativa 
 Situação Justificativa
I Verdadeira 
 A função calcula o bônus e retorna R$ 3.300,00.
II Verdadeira O valor retornado é armazenado em pagamento na
main().
III Verdadeira A atribuição recebe e armazena o valor retornado pela
função. 
IV Verdadeira Sem return, a função não devolveria o resultado para a
main().
 
A resposta correta é:I, II, III e IV.
12/10/26, 19:02 Prova de Grau B: Revisão da tentativa | AVA Uniftec
https://ava.uniftec.com.br/mod/quiz/review.php?attempt=992156&cmid=1162057 15/20
, ,
Questão 8 Correto Atingiu 1,00 de 1,00
Considere a seguinte função em C (o operador && em C significa um “e” lógico):
 
 
Sendo A = 18 e B = 12, o valor impresso no comando printf("%d ", a+b ) na linha 13 é: 
 
Escolha uma opção:
a. 40
b. 0
c. 24
d. 6
e. 12
Sua resposta está correta.
12/10/26, 19:02 Prova de Grau B: Revisão da tentativa | AVA Uniftec
https://ava.uniftec.com.br/mod/quiz/review.php?attempt=992156&cmid=1162057 16/20
p
A resposta correta é: 6
Questão 9 Correto Atingiu 1,00 de 1,00
Uma empresa de comércio eletrônico utiliza um sistema para monitorar os pedidos
realizados ao longo do dia. Pedidos com valor superior a R$ 500,00 são
considerados de alto valor e devem ser contabilizados para fins de análise
estratégica.
A tabela a seguir apresenta os valores de seis pedidos processados pelo sistema:
 Pedido Valor (R$) 
P1 350,00
P2 620,00
P3 480,00
P4 890,00
P5 250,00
P6 710,00
 
Considere o seguinte trecho de programa em linguagem C:
 
int pedidos[6] = {350, 620, 480, 890, 250, 710};
int i;
int altoValor = 0;
 
for( i = 0; i 500){
 altoValor++;
 }
}
 
Considerando os dados apresentados e a execução do trecho do programa,
assinale a alternativa correta.
a. O valor final da variável altoValor será igual a 6.
b. O laço de repetição é encerrado ao encontrar o primeiro pedido superior a R$ 500,00.
12/10/26, 19:02 Prova de Grau B: Revisão da tentativa | AVA Uniftec
https://ava.uniftec.com.br/mod/quiz/review.php?attempt=992156&cmid=1162057 17/20
c. O algoritmo identifica dois pedidos com valor superior a R$ 500,00.
d. O algoritmo contabiliza apenas o último pedido com valor superior a R$ 500,00.
e. O algoritmo identifica três pedidos com valor superior a R$
500,00.
Alternativa correta.
Parabéns !
Sua resposta está correta.
Gabarito correto: O algoritmo identifica três pedidos com valor superior a R$
500,00. 
Justificativa:
A alternativa O algoritmo identifica três pedidos com valor superior a R$ 500,00
 está correta porque o laço for percorre todos os elementos do vetor e incrementa a
variável altoValor sempre que encontra um pedido com valor superior a R$ 500,00.
Analisando os valores:
350 → Não contabiliza
620 → Contabiliza
480 → Não contabiliza
890 → Contabiliza
250 → Não contabiliza
710 → Contabiliza
Assim, existem 3 pedidos com valor superior a R$ 500,00 (620, 890 e 710). Ao final
da execução, a variável altoValor terá valor igual a 3.
O laço não é interrompido durante a execução e analisa todos os elementos
armazenados no vetor.
A resposta correta é:
O algoritmo identifica três pedidos com valor superior a R$ 500,00.
12/10/26, 19:02 Prova de Grau B: Revisão da tentativa | AVA Uniftec
https://ava.uniftec.com.br/mod/quiz/review.php?attempt=992156&cmid=1162057 18/20
Questão 10 Correto Atingiu 1,00 de 1,00
Uma rede de supermercados utiliza um sistema para registrar as vendas realizadas por suas filiais ao longo
da semana. Para armazenar esses dados, os desenvolvedores implementaram uma matriz em linguagem C,
na qual:
cada linha representa uma filial;
cada coluna representa um dia da semana.
A declaração utilizada foi:
float vendas[4][7];
 
Com base nos conceitos de matrizes em linguagem C, analise as afirmativas a seguir.
I. A matriz possui 4 linhas e 7 colunas, totalizando 28 posições de armazenamento.
II. O elemento localizado na terceira linha e na quinta coluna pode ser acessado por: vendas[3][5]
III. O primeiro elemento da matriz é acessado por : vendas[0][0]
 
Assinale a alternativa correta.
a. Apenas I.
b. Apenas I e III. Alternativa Correta. Parabéns !
c. Apenas II e III.
d. I, II e III.
Sua resposta está correta.
Gabarito correto : Apenas I e III. 
Justificativa: A afirmativa I está correta porque a matriz possui 4 linhas e 7
colunas, totalizando:
4 × 7 = 28 elementos
A afirmativa II está incorreta. Como a indexação inicia em zero, a terceira linha
corresponde ao índice 2 e a quinta coluna corresponde ao índice 4. Portanto, o
acesso correto seria: vendas[2][4]
A afirmativa III também está correta, pois em Linguagem C a indexação inicia em
zero. Assim, o primeiro elemento da matriz é acessado por: vendas[0][0]
A resposta correta é:Apenas I e III.
12/10/26, 19:02 Prova de Grau B: Revisão da tentativa | AVA Uniftec
https://ava.uniftec.com.br/mod/quiz/review.php?attempt=992156&cmid=1162057 19/20
12/10/26, 19:02 Prova de Grau B: Revisão da tentativa | AVA Uniftec
https://ava.uniftec.com.br/mod/quiz/review.php?attempt=992156&cmid=1162057 20/20

Mais conteúdos dessa disciplina