Buscar

Gabarito APOL 4 Lógica de Programação e Algoritmos

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

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

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ê viu 3, do total de 20 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

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

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ê viu 6, do total de 20 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

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

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ê viu 9, do total de 20 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

Prévia do material em texto

11/07/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/76772/novo/1 1/20
APOL 4
PROTOCOLO: 2016062913544319C1A2EALAN DIEK DA SILVA GUIMARÃES - RU: 1354431 Nota: 100
Disciplina(s):
Lógica de Programação e Algoritmos
Data de início: 29/06/2016 10:42
Prazo máximo entrega: - 
Data de entrega: 30/06/2016 20:27
Questão 1/10
Para o algoritmo abaixo, qual deveria ser a saída para uma matriz 2X2? 
algoritmo "matriz"
 
var
 
  matriz:vetor[1..10,1..10] de inteiro
  i,j,m,n:inteiro
 
inicio
 
escreval("***** Entrada de Dados *****")
escreval("")
escreva("Digite o numero de linhas e o numero de colunas para matriz:")
leia(m,n)
para i de 1 ate m  faca
  para j de 1 ate n faca
       escreva("Digite um valor para linha:",i," coluna:",j,":")
       matriz[i,j]<­j+1
  fimpara
fimpara
 
limpatela
 
escreval("***** Resultados da matriz *****")
para i de 1 ate m faca
  para j de 1 ate n faca
     escreva(matriz[i,j])
  fimpara
     escreval("")
11/07/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/76772/novo/1 2/20
fimpara
 
fimalgoritmo
A 2 3 
2 3
B 2 1 
2 1
C 2 0 
2 0
D 4 2 
4 2
Questão 2/10
Para o algoritmo abaixo, qual a melhor declaração de variáveis? 
algoritmo "vetores"
inicio
//seção de comandos
 
   escreval("Digite o número de elementos do vetor:")
   leia(n)
   para i de 1 ate n faca
     escreval("Digite um numero qualquer:")
     leia(v[i])
   fimpara
   
   escreval("Digite um valor qualquer para inserir no vetor:")
   leia(valor)
   escreval("Digite a posição do vetor")
   leia(posicao)
   
   para i de n ate 2 passo ­1 faca
      se (i>=posicao) entao
         v[i+1]<­v[i]
      fimse
      se (posicao=i) entao
Você acertou!
11/07/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/76772/novo/1 3/20
         v[i]<­valor
      fimse
 
   fimpara
 
   para i de 1 ate n+1 faca
      escreval(v[i])
   fimpara
fimalgoritmo 
A var 
  i,n,posicao : inteiro
  valor:real
  v: vetor [1..50] de real 
B var 
  i,posicao : inteiro
  valor:real
  v: vetor [1..50] de real
C var 
  i,n,posicao : inteiro
  v: vetor [1..50] de real
D var 
  i,n: inteiro
  valor:real
  v: vetor [1..50] de real
Questão 3/10
Para o algoritmo abaixo, qual melhor código a ser inserido antes do final do algoritmo para SOMAR os números positivos 
e os números negativos e apresentar as respectivas somas? 
algoritmo "vetores"
var
  i,j,k,n : inteiro 
  v: vetor [1..50] de real
  vp: vetor [1..50] de real
  vn: vetor [1..50] de real
  aux: real 
Você acertou!
11/07/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/76772/novo/1 4/20
inicio 
//seção de comandos
 
   escreval("Digite o número de elementos do vetor:")
   leia(n)
   para i de 1 ate n faca
     escreval("Digite um numero qualquer:")
     leia(v[i])
   fimpara
   limpatela 
   k<­0 
   j<­0
   para i de 1 ate n faca
     se (v[i]>0) entao
        k<­k+1
        vp[k]<­v[i]
     senao
        j<­j+1
        vn[j]<­v[i]
     fimse
   fimpara 
   escreval("Positivos:") 
   para i de 1 ate j faca
      escreval(vp[i])
   fimpara
   
   escreval("Negativos:")
   para i de 1 ate k faca
      escreval(vn[i])
   fimpara
Fimalgoritmo 
A
11/07/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/76772/novo/1 5/20
positivos<­0 
   negativos<­0
   escreval("Positivos:")
   para i de 1 ate j faca
      escreval(vp[i])
      positivos<­positivos+1
   fimpara
  
   escreval("Negativos:")
   para i de 1 ate k faca
      escreval(vn[i])
     negativos<­negativos+1
   fimpara
 
   escreval(“Total de Positivos:”,positivos)
   escreval(“Total de Negativos:,negativos) 
B positivos<­0 
   negativos<­0
   escreval("Positivos:")
   para i de 1 ate j faca
      escreval(vp[i])
      positivos<­positivos+vp[i]
   fimpara
  
   escreval("Negativos:")
   para i de 1 ate k faca
      escreval(vn[i])
     negativos<­negativos+vn[i]
   fimpara
 
   escreval(“Soma Positivos:”,positivos)
   escreval(“Soma Negativos:",negativos)
C
Você acertou!
11/07/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/76772/novo/1 6/20
 positivos<­0 
   negativos<­0
   escreval("Positivos:")
   para i de 1 ate j faca
      escreval(vp[i])
   fimpara
  
   escreval("Negativos:")
   para i de 1 ate k faca
      escreval(vn[i])
   fimpara
 
   escreval(“Total de Positivos:”,positivos)
   escreval(“Total de Negativos:,negativos) 
D escreval("Positivos:") 
   para i de 1 ate j faca
      escreval(vp[j])
      positivos<­positivos+vp[i]
   fimpara
  
   escreval("Negativos:")
   para i de 1 ate k faca
      escreval(vn[k])
     negativos<­negativos+vn[i]
   fimpara
 
   escreval(“Total de Positivos:”,positivos)
   escreval(“Total de Negativos:,negativos)
Questão 4/10
Para o algoritmo abaixo, identifique qual a parte de código preencheria a lacuna em aberto. O algoritmo faz a distribuição 
11/07/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/76772/novo/1 7/20
dos números em outros dois vetores, um vetor só com o zero e os números positivos e outro só com números negativos: 
algoritmo "vetores"
var
 
  i,j,k,n : inteiro
  v: vetor [1..50] de real
  vp: vetor [1..50] de real
  vn: vetor [1..50] de real
  
  aux: real
  
inicio
//seção de comandos
    escreval("Digite o número de elementos do vetor:")
   leia(n)
   para i de 1 ate n faca
     escreval("Digite um numero qualquer:")
     leia(v[i])
   fimpara
    limpatela
+­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­+ 
  
  
  
+­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­+ 
   escreval("Positivos:")
   para i de 1 ate k faca
      escreval(vp[i])
   fimpara
   
   escreval("Negativos:")
   para i de 1 ate j faca
      escreval(vn[i])
   fimpara
fimalgoritmo
A
11/07/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/76772/novo/1 8/20
 para i de 1 ate n faca 
     se (v[i]>1) entao
        k<­k+1
        vp[k]<­v[i]
     senao
        j<­j+1
        vn[j]<­v[i]
     fimse
    fimpara
B    k<­0 
   j<­0
   para i de 1 ate n faca
     se (v[i]>=0) entao
        k<­k+1
        vp[k]<­v[i]
     senao
        j<­j+1
        vn[j]<­v[i]
     fimse 
   fimpara
C para i de 1 ate n faca 
     se (v[i]>0) entao
        k<­k+1
        vp[i]<­v[i]
     senao
        j<­j+1
        vn[i]<­v[i]
     fimse 
fimpara
D
Você acertou!
11/07/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/76772/novo/1 9/20
1. k<­0
j<­0
para i de 1 ate n faca
     se (v[i]>0) entao
        vp[k]<­v[i]
     senao
        vn[j]<­v[i]
     fimse 
   fimpara
Questão 5/10
Para o algoritmo abaixo, qual deveria ser a saída para uma matriz 2X3? 
algoritmo "matriz"
 
var
 
  matriz:vetor[1..10,1..10] de inteiro
  i,j,m,n:inteiro
 
inicio
 
escreval("***** Entrada de Dados *****")
escreval("")
escreva("Digite o numero de linhas e o numero de colunas para matriz:")
leia(m,n)
para i de 1 ate m  faca
  para j de 1 ate n faca
       escreva("Digite um valor para linha:",i," coluna:",j,":")
       matriz[i,j]<­j+1
  fimpara
fimpara
 
limpatelaescreval("***** Resultados da matriz *****")
para i de 1 ate m faca
  para j de 1 ate n faca
     escreva(matriz[i,j])
  fimpara
     escreval("")
11/07/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/76772/novo/1 10/20
fimpara
 
fimalgoritmo
A 2 1 3 
2 1 3
B 1 2 3 
1 2 3
C 2 3 4 
2 3 4
D 2 2 2 
2 2 2
Questão 6/10
Para o algoritmo abaixo, qual deveria ser o resultado exibido para uma matriz 3X3? 
algoritmo "matriz"
 
var
 
  matriz:vetor[1..10,1..10] de inteiro
  i,j,m,n:inteiro
 
inicio
 
escreval("***** Entrada de Dados *****")
escreval("")
escreva("Digite o numero de linhas e o numero de colunas para matriz:")
leia(m,n)
para i de 1 ate m  faca
  para j de 1 ate n faca
       escreva("Digite um valor para linha:",i," coluna:",j,":")
       matriz[i,j]<­i+1
  fimpara
fimpara
 
limpatela
 
Você acertou!
11/07/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/76772/novo/1 11/20
escreval("***** Resultados da matriz *****")
para i de 1 ate m faca
  para j de 1 ate n faca
     escreva(matriz[i,j])
  fimpara
     escreval("")
fimpara
 
fimalgoritmo
A 1 1 1 
2 2 2
3 3 3
B 2 2 2 
3 3 3
4 4 4
C 2 2 2 
2 2 2
3 3 3
D 1 1 1 
3 3 3
5 5 5
Questão 7/10
Para o algoritmo abaixo, quais as saídas que representam a execução correta? 
algoritmo "vetores"
var
   i,n,posicao : inteiro
  valor:real
  v: vetor [1..50] de real
   aux: real
 inicio
//seção de comandos
    escreval("Digite o número de elementos do vetor:")
   leia(n)
   para i de 1 ate n faca
     escreval("Digite um numero qualquer:")
Você acertou!
11/07/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/76772/novo/1 12/20
     leia(v[i])
   fimpara
     escreval("Digite um valor qualquer para inserir no vetor:")
   leia(valor)
   escreval("Digite a posição do vetor")
   leia(posicao)
     para i de n ate 2 passo ­1 faca
      se (i>=posicao) entao
         v[i+1]<­v[i]
      fimse
      se (posicao=i) entao
         v[i]<­valor
      fimse
    fimpara
    para i de 1 ate n+1 faca
      escreval(v[i])
   fimpara
 fimalgoritmo
A 5 
 
1
2
3
4
5
 
100
3
 
1
2
100
3
3
4
5 
B
11/07/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/76772/novo/1 13/20
5 
 
1
2
3
4
5
 
100
3
 
1
2
100
3
4
5
C 5 
 
1
2
3
4
5
 
100
3
 
1
2
3
100
4
5
Você acertou!
11/07/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/76772/novo/1 14/20
D 5 
 
1
2
3
4
5
 
100
3
 
1
2
3
4
5
100
100
100
Questão 8/10
Para o algoritmo abaixo, explique a necessidade de se utilizar as variáveis k e j:
11/07/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/76772/novo/1 15/20
algoritmo "vetores"
var
  i,j,k,n : inteiro
  v: vetor [1..50] de real
  vp: vetor [1..50] de real
  vn: vetor [1..50] de real
  aux: real
inicio
//seção de comandos
   escreval("Digite o número de elementos do vetor:")
   leia(n)
   para i de 1 ate n faca
     escreval("Digite um numero qualquer:")
     leia(v[i])
   fimpara
  
   limpatela
 
   k<­0
   j<­0
   para i de 1 ate n faca
     se (v[i]>0) entao
        k<­k+1
11/07/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/76772/novo/1 16/20
        vp[k]<­v[i]
     senao
        j<­j+1
        vn[j]<­v[i]
     fimse
    
   fimpara
 
   escreval("Positivos:")
   para i de 1 ate k faca
      escreval(vp[i])
   fimpara
  
   escreval("Negativos:")
   para i de 1 ate j faca
      escreval(vn[i])
   fimpara
Fimalgoritmo
A As variáveis k e j são utilizadas para que os vetores "vp" e "vn" tenham suas posições preenchidas,
respectivamente, com os valores positivos e negativos do vetor "n", definindo a quantidade de
elementos de cada um destes vetores.
B As variáveis k e j são utilizadas para acumular a soma dos valores positivos e negativos do vetor "n".
C As variáveis k e j são utilizadas para separar os valores dos números positivos e negativos do vetor
"n".
Você acertou!
11/07/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/76772/novo/1 17/20
D As variáveis k e j são utilizadas como contéudos dos vetores "vp" ­ valores positivos e "vn" ­ valores
negativos.
Questão 9/10
Para o algoritmo abaixo, qual deveria ser a saída para uma matriz 5X5? 
algoritmo "matriz"
 
var
 
  matriz:vetor[1..10,1..10] de inteiro
  i,j,m,n:inteiro
 
inicio
 
escreval("***** Entrada de Dados *****")
escreval("")
escreva("Digite o numero de linhas e o numero de colunas para matriz:")
leia(m,n)
para i de 1 ate m  faca
  para j de 1 ate n faca
       escreva("Digite um valor para linha:",i," coluna:",j,":")
       matriz[i,j]<­j+i
  fimpara
fimpara
 
limpatela
 
escreval("***** Resultados da matriz *****")
para i de 1 ate m faca
  para j de 1 ate n faca
     escreva(matriz[i,j])
  fimpara
     escreval("")
fimpara
 
fimalgoritmo
A
11/07/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/76772/novo/1 18/20
2 3 4 5 6 
4 5 6 7 8
5 6 7 8 9
6 7 8 9 10
7 8 9 10 11
B 2 3 4 5 6 
3 4 5 6 7
4 5 6 7 8
5 6 7 8 9
6 7 8 9 10
C 1 3 4 5 6 
2 5 6 7 8
3 6 7 8 9
4 7 8 9 10
5 8 9 10 11
D 1 2 3 4 5 
2 4 5 6 7
3 5 6 7 8
4 6 7 8 9
5 7 8 9 10
Questão 10/10
Para o algoritmo abaixo, qual é o código mais adequado a incluir para calcular a quantidade de números ímpares? 
algoritmo "matriz_par"
var
 
  m:vetor[1..3,1..3] de inteiro
  resto, qtpar,i,j:inteiro
 
inicio
 
qtpar <­0
 
escreval("***** Entrada de Dados *****")
escreval("")
para i de 1 ate 3 faca
Você acertou!
Conforme apresentado no material e videoaulas .

11/07/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/76772/novo/1 19/20
  para j de 1 ate 3 faca
       escreva("Digite um valor para linha:",i," coluna:",j,":")
       leia(m[i,j])
        resto<­m[i,j] mod 2
        se(resto=0) entao
           qtpar<­qtpar+1
        fimse
  fimpara
fimpara
 
limpatela
 
escreval("***** Resultados da matriz *****")
para i de 1 ate 3 faca
  para j de 1 ate 3 faca
     resto<­m[i,j] mod 2
     se(resto=0) entao
        escreval("Linha:",i," Coluna:",j," Numero=",m[i,j])
     fimse
  fimpara
fimpara
escreval("Quantidade de numeros pares: ", qtpar)
 
 
 
fimalgoritmo
A resto<­m[i,j] mod 2 
se(resto<>0) entao
     qtimpar<­qtimpar+1
fimse 
B resto<­m[i,j] mod 2 
se(resto<>0) entao
     qtimpar<­qtimpar+m[i,j]
fimse 
C
Você acertou!
11/07/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/76772/novo/1 20/20
resto<­m[i,j] mod 2 
se(resto=~0) entao
     qtimpar<­qtimpar+1
fimse 
D resto<­m[i,j] mod 2 
se(resto=0) entao
     qtimpar<­qtimpar+1
fimse

Outros materiais