Prévia do material em texto
Disciplina: Algoritmo e Programação (LIN12)
Avaliação: Avaliação II - Individual FLEX ( Cod.:514785) ( peso.:1,50)
Legenda: Resposta Certa Sua Resposta Errada
1. Um programa de computador é basicamente um algoritmo escrito em alguma
linguagem de programação. Para manipular as informações e poder fazer cálculos e
verificações com elas, o computador precisa mantê-las em memória durante a
execução do programa em estruturas que são conhecidas como variáveis. Dado o
seguinte código em pseudocódigo na linguagem portugol, qual o valor das variáveis
x e y, respectivamente, após sua execução?
a) 6 e 12.
b) 3 e 4.
c) 8 e 6.
d) 6 e 6.
2. Um algoritmo é uma interpretação, é um passo a passo de um determinado problema
do mundo real, estabelecendo todos os passos na busca de uma solução. Para
resolver problemas que utilizem expressões aritméticas, fazemos o uso dos
operadores aritméticos que são símbolos utilizados para efetuarmos cálculos
matemáticos. Os operadores aritméticos são utilizados somente com dados do tipo
inteiro e do tipo real. Considerando o algoritmo anexo para realizar uma determinada
operação aritmética, classifique V para as sentenças verdadeiras e F para as falsas:
Algoritmo "calcula_soma"
var
valor1 : real
valor2 : real
inicio
escreva ("informe o valor1 :" )
leia(valor1)
escreva ("informe o valor2 :" )
leia(valor2)
Se (valor2 >= valor1) entao
valor2:= (valor1 + valor2)/2
fimse
escreva (valor2)
Fimalgoritmo
https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=RkxYMTY3MQ==&action2=TElOMTI=&action3=NTE0Nzg1&action4=MjAyMC8x&action5=MjAyMC0wNS0wM1QwMzowMDowMC4wMDBa&prova=MTY4MDI1MDA=#questao_1%20aria-label=
https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=RkxYMTY3MQ==&action2=TElOMTI=&action3=NTE0Nzg1&action4=MjAyMC8x&action5=MjAyMC0wNS0wM1QwMzowMDowMC4wMDBa&prova=MTY4MDI1MDA=#questao_2%20aria-label=
( ) Se forem informados os seguintes valores (20 e 20), o resultado será 30.
( ) O tipo de dado para a variável Valor2 neste cenário deve ser o mesmo do tipo da
variável Valor1 (inteiro).
( ) Ao executar o algoritmo apresentado, ele apresentará sempre a mensagem com
o conteúdo da variável Valor2.
( ) Se forem informados os seguintes valores (20 e 10), não será apresentado
nenhuma mensagem.
Assinale a alternativa que apresenta a sequência CORRETA:
a) F - F - V - F.
b) V - F - F - V.
c) F - V - V - F.
d) V - V - F - V.
3. A estrutura de repetição permite ao desenvolvedor criar um bloco de instruções que
poderá ser executado por diversas vezes, respeitando determinada condição
preestabelecida. Com base nas atribuições às variáveis definidas e no algoritmo
anexo, analise as sentenças a seguir:
I- Ao atribuir os valores 5, 4, 2 e 0 às variáveis CONT, RES, X e N,
respectivamente, o resultado impresso será 5.
II- Ao atribuir os valores 1, 3, 1, 3 às variáveis CONT, RES, X e N, respectivamente,
o resultado impresso será 6.
III- Ao atribuir os valores 4, 3, 0, 2 às variáveis CONT, RES, X e N,
respectivamente, o resultado impresso será 10.
IV- Ao atribuir os valores 2, 2, 2, 2 às variáveis CONT, RES, X e N,
respectivamente, o resultado impresso será 8.
Assinale a alternativa CORRETA:
a) As sentenças I e IV estão corretas.
b) Somente a sentença III está correta.
c) As sentenças I e II estão corretas.
https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=RkxYMTY3MQ==&action2=TElOMTI=&action3=NTE0Nzg1&action4=MjAyMC8x&action5=MjAyMC0wNS0wM1QwMzowMDowMC4wMDBa&prova=MTY4MDI1MDA=#questao_3%20aria-label=
d) As sentenças II, III e IV estão corretas.
4. As linguagens de programação suportam estrutura de seleção e repetição para definir
a ordem em que instruções, expressões e chamadas de função são executadas e/ou
avaliadas. Acerca das estruturas de repetição do VISUALG, analise as afirmativas a
seguir:
I- A estrutura REPITA ATE, repete uma sequência de comandos até que uma
determinada condição (especificada através de uma expressão lógica) seja satisfeita.
II- Apenas a estrutura PARA-FAÇA pode ser utilizada para se repetir um conjunto
de comandos uma determinada quantidade de vezes.
III- Uma estrutura de repetição possibilita executar um bloco de comando, repetidas
vezes, até que seja encontrada uma solução para o cálculo matemático envolvido.
IV- PARA-FAÇA é a estrutura de repetição comumente adotada no percorrimento de
um vetor.
Assinale a alternativa CORRETA:
a) As afirmativas I e IV estão corretas.
b) As afirmativas II, III e IV estão corretas.
c) Somente a afirmativa II está correta.
d) Somente a afirmativa IV está correta.
5. Vetores e matrizes são estruturas de dados homogêneas que permitem o
armazenamento de vários valores ao mesmo tempo. No entanto, todo valor
armazenado em um mesmo vetor ou matriz deve possuir o mesmo tipo de dado
associado, ou seja, um vetor/matriz de valores inteiros só pode armazenar valores
inteiros. Com base nesse conceito, escreva um algoritmo que leia 5 valores e
armazene todos eles. Em seguida, o algoritmo deverá exibir quantos valores
positivos estão armazenados no vetor. Analise o código e classifique V para as
sentenças verdadeiras e F para as falsas:
( ) O algoritmo apresenta erros na declaração das variáveis.
( ) O algoritmo somente executará até inserir um valor negativo.
( ) A mensagem com a quantidade de valores negativos, está dentro do loop.
( ) A variável "negativos" armazenará os valores negativos.
Algoritmo "atividade"
var
valores : vetor [1..5] de real
i, negativos : inteiro
inicio
negativos <- 0
Para i <- 1 ate 5 faca
escreva("Informe um valor: ")
Leia(valores[i])
fimpara
Para i <- 1 ate 5 faca
Se (valores[i] < 0) entao
https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=RkxYMTY3MQ==&action2=TElOMTI=&action3=NTE0Nzg1&action4=MjAyMC8x&action5=MjAyMC0wNS0wM1QwMzowMDowMC4wMDBa&prova=MTY4MDI1MDA=#questao_4%20aria-label=
https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=RkxYMTY3MQ==&action2=TElOMTI=&action3=NTE0Nzg1&action4=MjAyMC8x&action5=MjAyMC0wNS0wM1QwMzowMDowMC4wMDBa&prova=MTY4MDI1MDA=#questao_5%20aria-label=
negativos <- negativos + 1
fimse
fimpara
Escreva(negativos, " valores eram negativos.")
Fimalgoritmo
Assinale a alternativa que apresenta a sequência CORRETA:
a) F - F - F - V.
b) F - V - V - V.
c) V - F - F - V.
d) V - V - F - F.
6. Diante da crescente necessidade de armazenar a informação, é importante que esta
seja armazenada de forma ordenada, seja por ordem alfabética, por idade, localidade
ou outro item sobre o qual é necessário trabalhar. No que tange aos modelos de
ordenação, analise as sentenças a seguir:
I- No método de ordenação Bubble Sort, a ideia é percorrer um vetor diversas vezes,
realizando a comparação entre dois elementos, até que os elementos de maior valor
fiquem alocados no final do vetor.
II- O método Quicksort vasculha repetidamente o vetor, selecionando um elemento
de cada vez e colocando-o na posição correta da sequência.
III- O método Quicksort utiliza um elemento chamando pivô.
IV- O método Selection Sort utiliza o conceito de selecionar o elemento mais apto
para cada posição.
V- O método Bubble Sort é adequado para aplicações comerciais em que há uma
grande quantidade de dados.
Assinale a alternativa CORRETA:
a) As sentenças I, II e V estão corretas.
b) As sentenças III e V estão corretas.
c) As sentenças I, III e IV estão corretas.
d) As sentenças I, II e IV estão corretas.
7. O fatorial de um número é calculado pela multiplicação desse número por todos os
seus antecessores até chegar ao número 1. A representação dofatorial é : n! = n . (n -
1) . (n - 2) . (n - 3)! O código anexo, desenvolvido em Visual G, faz o cálculo do
fatorial. Com base nesse código, classifique V para as sentenças verdadeiras e F para
as falsas:
https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=RkxYMTY3MQ==&action2=TElOMTI=&action3=NTE0Nzg1&action4=MjAyMC8x&action5=MjAyMC0wNS0wM1QwMzowMDowMC4wMDBa&prova=MTY4MDI1MDA=#questao_6%20aria-label=
https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=RkxYMTY3MQ==&action2=TElOMTI=&action3=NTE0Nzg1&action4=MjAyMC8x&action5=MjAyMC0wNS0wM1QwMzowMDowMC4wMDBa&prova=MTY4MDI1MDA=#questao_7%20aria-label=
( ) O procedimento "obtervalor" não tem nenhum processamento.
( ) Caso seja passado o valor 4, o retorno será 24.
( ) O programa principal apenas faz a chamada do procedimento e da função.
( ) A ordem de execução do algoritmo abaixo será: obtervalor depois a funcao
fatorial e por último o principal.
Assinale a alternativa que apresenta a sequência CORRETA:
Algoritmo "FATORIAL"
var valor : inteiro
procedimento obtervalor
var x : inteiro
inicio
escreva("Digite um número:")
leia(x)
valor <- x
fimprocedimento
funcao fatorial(v:inteiro) : inteiro
inicio
se v <= 2 entao
retorne v
senao
retorne v * fatorial(v-1)
fimse
fimfuncao
inicio
obtervalor
escreva("O fatorial de ",valor," é ",fatorial(valor))
fimalgoritmo
a) F - F - V - V.
b) V - V - V - F.
c) V - V - F - F.
d) F - F - F - V.
8. Utilizamos o comando "CASO" para que seja possível escolher uma opção dentre
https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=RkxYMTY3MQ==&action2=TElOMTI=&action3=NTE0Nzg1&action4=MjAyMC8x&action5=MjAyMC0wNS0wM1QwMzowMDowMC4wMDBa&prova=MTY4MDI1MDA=#questao_8%20aria-label=
várias existentes, sem a necessidade de se usar diversos "Se..Então". Com base nessa
estrutura, analise o cenário apresentado no enunciado do algoritmo: "Foi requerido o
desenvolvimento de um algoritmo que solicitasse as 4 notas de um aluno e calculasse
a média". Após o cálculo, verificar a situação do aluno, seguindo as regras:
- Se a nota inferior a 4 está reprovado.
- Acima de 8 aprovado.
- No intervalo de 4 a 8 em exame.
- Senão a nota está incorreta.
Algoritmo "nota_semestre"
var
Nota1, Nota2, Nota3, Nota4, Media: Real
Inicio
Escreva ("Digite a Primeira nota: ")
Leia (Nota1)
Escreva ("Digite a Segunda nota: ")
Leia (Nota2)
Escreva ("Digite a Terceira nota: ")
Leia (Nota3)
Escreva ("Digite a Quarta nota: ")
Leia (Nota4)
media:=(Nota1+Nota2+Nota3+Nota4)/4
escolha media
...
Sobre o trecho de código que complementa o algoritmo, assinale a alternativa
CORRETA:
a) caso 0 e 3
escreval("Reprovado.")
caso 4 e 7
escreval("Em exame final.")
senao
escreval("Nota inválida.")
fimescolha
Fimalgoritmo
b) caso 0 e 3
escreval("Reprovado.")
caso 4 e 7
escreval("Em exame final.")
caso 8 e 10
escreval("Aprovado")
senao
escreval("Nota inválida.")
fimescolha
Fimalgoritmo
c) caso 0,1,2,3
escreval("Reprovado.")
caso 4 ate 7
escreval("Em exame final.")
caso 8 ate 10
escreval("Aprovado")
outrocaso
escreval("Nota inválida.")
fimescolha
Fimalgoritmo
d) caso nota entre 1 e 3
escreval("Reprovado.")
caso >4 e < 7
escreval("Em exame final.")
caso > 8
escreval("Aprovado")
outrocaso
escreval("Nota inválida.")
fimescolha
Fimalgoritmo
9. Durante a execução de um algoritmo, precisamos identificar se o resultado da divisão
é um valor exato, ou se vai restar um valor. Para facilitar essa tarefa, a maioria das
linguagens de programação usam funções que geram esse resultado como o DIV e o
MOD. Com base no código apresentado, analise as mensagens e os valores que serão
apresentados após a execução e classifique V para as sentenças verdadeiras e F para
as falsas:
( ) Se for informado o valor 28, somente os resultados de A e C serão apresentados.
( ) O programa não funciona, pois não há nenhum cálculo.
( ) Se for informado o valor 10, somente os resultados de A e C serão apresentados.
( ) Os cálculos realizados nas mensagens estão incorretos.
Algoritmo "real_inteiro1"
Var
valor_teste :inteiro
Inicio
escreva ("informe um número ")
leia(valor_teste)
Se ( valor_teste mod 10) > 2 entao
escreval( "A =>> ",2*(5/20) + 30/(15*2))
escreval( "C =>> ",35 div 6 - 2)
senao se ( 23 mod 4 ) = 3 entao
escreval("B =>> ", 35 div 6 + 2 )
escreval("D =>> ",35 div 6 * 2 )
fimse
Fimalgoritmo
Assinale a alternativa que apresenta a sequência CORRETA:
a) V - F - F - F.
b) F - V - V - V.
c) V - F - V - F.
d) F - F - F - V.
https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=RkxYMTY3MQ==&action2=TElOMTI=&action3=NTE0Nzg1&action4=MjAyMC8x&action5=MjAyMC0wNS0wM1QwMzowMDowMC4wMDBa&prova=MTY4MDI1MDA=#questao_9%20aria-label=
10. Com o objetivo de acessar os dados de modo mais eficiente, existe a possibilidade de
desenvolver algoritmos que realizarão a ordenação desses dados em ordem numérica
ou alfabética. Para tanto, existem diversos métodos que podem ser implementados
para tal tarefa. Com base nessa informação, assinale a alternativa CORRETA que
apresenta três métodos de ordenação:
a) Bubble Sort; Quicksort e Order Now.
b) Selection Sort, Bubble Sort e Quicksort.
c) Heap Sort; Quicksort e Agile Sort.
d) Slowsort; Insertion Sort e Merge Sort.
https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=RkxYMTY3MQ==&action2=TElOMTI=&action3=NTE0Nzg1&action4=MjAyMC8x&action5=MjAyMC0wNS0wM1QwMzowMDowMC4wMDBa&prova=MTY4MDI1MDA=#questao_10%20aria-label=